用户文档¶
本文档描述了osc-placement 插件的各种使用方面,包括但不限于命令行示例和解释、参考以及微版本的使用。
完整的 Placement API 参考可以在这里找到
微版本使用¶
默认情况下,所有命令都使用 1.0 Placement API 版本运行。可以使用 --os-placement-api-version 选项指定不同的微版本,例如
$ openstack resource provider aggregate list --os-placement-api-version 1.1 dc43b86a-1261-4f8b-8330-28289fe754e3
+--------------------------------------+
| uuid |
+--------------------------------------+
| 42896e0d-205d-4fe3-bd1e-100924931787 |
| 42896e0d-205d-4fe3-bd1e-100924931788 |
+--------------------------------------+
或者,可以设置 OS_PLACEMENT_API_VERSION 环境变量,例如
$ export OS_PLACEMENT_API_VERSION=1.1
$ openstack resource provider aggregate list dc43b86a-1261-4f8b-8330-28289fe754e3
+--------------------------------------+
| uuid |
+--------------------------------------+
| 42896e0d-205d-4fe3-bd1e-100924931787 |
| 42896e0d-205d-4fe3-bd1e-100924931788 |
+--------------------------------------+
Placement API 版本历史记录可以在这里找到
示例¶
本节提供一些常见的命令行使用示例。
要查看资源提供程序可用的命令列表,请运行
$ openstack resource -h
资源提供程序¶
资源提供程序命令子集具有基本的 CRUD 接口。首先,可以轻松创建
$ p=$(openstack resource provider create Baremetal_node_01 -c uuid -f value)
并重命名
$ openstack resource provider set $p --name Baremetal_node_02
+------------+--------------------------------------+
| Field | Value |
+------------+--------------------------------------+
| uuid | c33caafc-b59c-46bc-b396-19f117171fec |
| name | Baremetal_node_02 |
| generation | 0 |
+------------+--------------------------------------+
要获取与资源提供程序相关的所有分配,请对 show 命令使用 --allocations 选项
$ openstack resource provider show $p --allocations
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field | Value |
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| uuid | c33caafc-b59c-46bc-b396-19f117171fec |
| name | Baremetal_node_02 |
| generation | 4 |
| allocations | {u'45f4ccf9-36e3-4d13-8c6b-80fd6c66a195': {u'resources': {u'VCPU': 1, u'MEMORY_MB': 512, u'DISK_GB': 10}}, u'2892c6f6-6ee7-4a34-aa20-156b8216de3c': {u'resources': {u'VCPU': 1, u'MEMORY_MB': 512, u'DISK_GB': 10}}} |
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
如果资源提供程序具有分配,则无法删除它,否则只需执行
$ openstack resource provider delete $p
就完成了。
分配¶
可以通过多种方式为给定的消费者设置资源提供程序的分配。
在为单个资源提供程序设置分配时,通常最容易使用类似以下命令:
$ openstack resource provider allocation set 45f4ccf9-36e3-4d13-8c6b-80fd6c66a195 --allocation rp=dc43b86a-1261-4f8b-8330-28289fe754e3,DISK_GB=10,VCPU=1,MEMORY_MB=512
+--------------------------------------+------------+-------------------------------------------------+
| resource_provider | generation | resources |
+--------------------------------------+------------+-------------------------------------------------+
| dc43b86a-1261-4f8b-8330-28289fe754e3 | 9 | {u'VCPU': 1, u'MEMORY_MB': 512, u'DISK_GB': 10} |
+--------------------------------------+------------+-------------------------------------------------+
或者,可以针对单独的提供程序设置资源分配
$ openstack resource provider allocation set 45f4ccf9-36e3-4d13-8c6b-80fd6c66a195 --allocation rp=dc43b86a-1261-4f8b-8330-28289fe754e3,VCPU=1,MEMORY_MB=512 --allocation rp=762746bc-de0d-47a7-b47a-a14028643663,DISK_GB=10
+--------------------------------------+------------+---------------------------------+
| resource_provider | generation | resources |
+--------------------------------------+------------+---------------------------------+
| dc43b86a-1261-4f8b-8330-28289fe754e3 | 9 | {u'VCPU': 1, u'MEMORY_MB': 512} |
| 762746bc-de0d-47a7-b47a-a14028643663 | 1 | {u'DISK_GB': 10} |
+--------------------------------------+------------+---------------------------------+
在这种情况下,消费者 45f4ccf9-36e3-4d13-8c6b-80fd6c66a195 针对一个提供程序 dc43b86a-1261-4f8b-8330-28289fe754e3 具有 VCPU 和 MEMORY_MB 分配,针对另一个提供程序 762746bc-de0d-47a7-b47a-a14028643663 具有 DISK_GB 分配。
注意
在为消费者设置分配时,该命令会覆盖该消费者的任何现有分配。因此,如果您想添加或更改一个资源类别的分配,但保留其他现有的资源类别分配不变,则必须同时指定这些其他现有的未更改的分配,以免被删除。
资源类别¶
Placement 服务本身定义了一组标准的资源类别。这些标准资源类别无法修改。
用户可以创建和删除自定义资源类别,这些类别的名称前缀为 CUSTOM_。