Chapter 23. Identifying virtual devices with tags
23.1. Tagging virtual devices
In Red Hat OpenStack Platform, if you launch a VM instance with multiple network interfaces or block devices, you can use device tagging to communicate the intended role of each device to the instance operating system. Tags are assigned to devices at instance boot time, and are available to the instance operating system through the metadata API and the configuration drive (if enabled).
Procedure
To tag virtual devices, use the tag parameters,
--block-device
and--nic
, when creating instances.Example
$ 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
The resulting tags are added to the existing instance metadata and are available through both the metadata API, and on the configuration drive.
In this example, the following devices section populates the metadata:
Sample contents of the
meta_data.json
file:{ "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"] } ] }
The device tag metadata is available using
GET /openstack/latest/meta_data.json
from the metadata API.If the configuration drive is enabled, and mounted under
/configdrive
in the instance operating system, the metadata is also present in/configdrive/openstack/latest/meta_data.json
.