第 21 章 使用标签识别虚拟设备
21.1. 标记虚拟设备
在 Red Hat OpenStack Platform 中,如果您启动具有多个网络接口或块设备的虚拟机实例,您可以使用设备标记将每个设备的预期角色与实例操作系统通信。标签在实例引导时分配给设备,可通过元数据 API 和配置驱动器(如果启用)提供给实例操作系统。
流程
要标记虚拟设备,请在创建实例时使用标签参数
--block-device
和--nic
。示例
$ nova boot test-vm --flavor m1.tiny --image cirros \ --nic net-id=55411ca3-83dd-4036-9158-bf4a6b8fb5ce,tag=nfv1 \ --block-device id=b8c9bef7-aa1d-4bf4-a14d-17674b370e13,bus=virtio,tag=database-server NFVappServer
生成的标签添加到现有实例元数据中,并通过元数据 API 和配置驱动器获取。
在这个示例中,以下 devices 部分填充元数据:
meta_data.json
文件的内容示例:{ "devices": [ { "type": "nic", "bus": "pci", "address": "0030:00:02.0", "mac": "aa:00:00:00:01", "tags": ["nfv1"] }, { "type": "disk", "bus": "pci", "address": "0030:00:07.0", "serial": "disk-vol-227", "tags": ["database-server"] } ] }
设备标签元数据可使用 metadata API 中的
GET /openstack/latest/meta_data.json
。如果启用了配置驱动器,并在实例操作系统的
/configdrive
下挂载,则元数据也存在于/configdrive/openstack/latest/meta_data.json
中。