docs/doc/source/node_management/openstack/configuring-a-flavor-to-use-a-generic-pci-device.rst
Ron Stone f125a8b892 Remove spurious escapes (r8,dsR8)
This change addresses a long-standing issue in rST documentation imported from XML.
That import process added backslash escapes in front of various characters. The three
most common being '(', ')', and '_'.
These instances are removed.

Signed-off-by: Ron Stone <ronald.stone@windriver.com>
Change-Id: Id43a9337ffcd505ccbdf072d7b29afdb5d2c997e
2023-03-01 11:19:04 +00:00

4.0 KiB

Configure a Flavor to Use a Generic PCI Device

To provide access to a generic passthrough device, you must use a flavor with an extra specification identifying the device alias.

The Nova scheduler attempts to schedule the on a host containing the device. If no suitable compute node is available, the error No valid host was found is reported. If a suitable compute node is available, then the scheduler attempts to instantiate the in a node with direct access to the device, subject to the PCI NUMA Affinity extra specification.

Caution

When this extra spec is used, an eligible host node is required for each virtual node in the instance. If this requirement cannot be met, the instantiation fails.

You can use the interface or the to add a alias extra specification. From the interface, use the Custom Extra Spec selection in the Create Flavor Extra Spec drop-down menu. For the Key, use pci_passthrough:alias.

image

Note

To edit the alias for a QuickAssist- device, you can use the Update Flavor Metadata dialog box accessible from the Flavors page. This supports editing for a QuickAssist- alias only. It cannot be used to edit the Alias for GPU devices or multiple devices.

To access the Update Flavor Metadata dialog box, go to the Flavors page, open the Edit Flavor drop-down menu, and then select Update Metadata.

To be available for use by , the device must be exposed, and it must also have a PCI alias. To expose a device, see Exposing a Generic PCI Device Using the CLI <exposing-a-generic-pci-device-using-the-cli> or Expose a Generic PCI Device for Use by VMs <expose-a-generic-pci-device-for-use-by-vms>. To assign a PCI alias, see Configuring a PCI Alias in Nova <configuring-a-pci-alias-in-nova>

  • Use the openstack flavor set command to add the extra spec.

    ~(keystone_admin)$ openstack flavor set flavor_name --property "pci_passthrough:alias"="pci_alias[:number_of_devices]"

    where

    <flavor_name>

    is the name of the flavor

    <pci_alias>

    is the PCI alias of the device

    Note

    The parameter pci_passthrough:alias is used for both passthrough devices and devices.

    Depending on the device type, the following default alias options are available:

    qat-vf

    Exposes an Intel AV-ICE02 VPN Acceleration Card for access. For more information, see SR-IOV Encryption Acceleration <sr-iov-encryption-acceleration>.

    The following device specific options are available for qat-vf:

    qat-dh895xcc-vf

    qat-c62x-vf

    Note

    Due to driver limitations, passthrough access for the Intel AV-ICE02 VPN Acceleration Card (qat-pf option) is not supported.

    Note

    On a system with multiple cards that use the same default alias, you must assign and use a unique alias for each one.

    <number_of_devices>

    is the number of or passthrough devices to expose to the VM

    For example, to make two QuickAssist devices available to a guest:

    ~(keystone_admin)$ openstack flavor set <flavor_name> --property "pci_passthrough:alias"="qat-dh895xcc-vf:2"

    To make multiple devices available, use the following command:

    ~(keystone_admin)$ openstack flavor set flavor_name --property "pci_passthrough:alias"="gpu:1, qat-c62x-vf:2"