Update pci passthrough for newton

This patch reorder the section so that controller
change will be first.
It also update recent configuration change to allow
resize pci to work on the compute nodes

Change-Id: I9f5251386aece3a41c827ace84ef38350ac24b4c
This commit is contained in:
Moshe Levi 2016-07-21 09:50:06 +03:00 committed by Alexandra Settle
parent 8d546762e9
commit 1a6966b55b

View File

@ -25,49 +25,17 @@ be shared.
To enable PCI passthrough, follow the steps below:
#. Enable PCI passthrough (Compute)
#. Configure PCI devices in nova-compute (Compute)
#. Configure nova-scheduler (Controller)
#. Configure nova-api (Controller)**
#. Configure a flavor (Controller)
#. Enable PCI passthrough (Compute)
#. Configure PCI devices in nova-compute (Compute)
.. note::
The PCI device with address ``0000:41:00.0`` is as an example. Expect
to change this according to your actual environment.
Enable PCI passthrough (Compute)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enable VT-d and IOMMU. For more information, refer to steps one and two
in `Create Virtual Functions`_.
Configure PCI devices nova-compute (Compute)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#. Configure ``nova-compute`` to allow the PCI device to be passed through to
VMs. Edit ``/etc/nova/nova.conf``:
.. code-block:: ini
[default]
pci_passthrough_whitelist = { "address": "0000:41:00.0" }
Alternatively specify multiple PCI devices using whitelisting:
.. code-block:: ini
[default]
pci_passthrough_whitelist = { "vendor_id": "8086", "product_id": "10fb" }
All PCI devices matching the ``vendor_id`` and ``product_id`` are added to
the pool of PCI devices available for passthrough to VMs.
For more information about the syntax of ``pci_passthrough_whitelist``,
refer to `nova.conf configuration options`_.
#. Restart ``nova-compute`` with :command:`service nova-compute restart`.
Configure nova-scheduler (Controller)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@ -109,6 +77,57 @@ Configure a flavor to request two PCI devices, each with ``vendor_id`` as
For more information about the syntax for ``pci_passthrough:alias``, refer to
`flavor`_.
Enable PCI passthrough (Compute)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enable VT-d and IOMMU. For more information, refer to steps one and two
in `Create Virtual Functions`_.
Configure PCI devices ``nova-compute`` (Compute)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#. Configure ``nova-compute`` to allow the PCI device to be passed through to
VMs. Edit ``/etc/nova/nova.conf``:
.. code-block:: ini
[default]
pci_passthrough_whitelist = { "address": "0000:41:00.0" }
Alternatively specify multiple PCI devices using whitelisting:
.. code-block:: ini
[default]
pci_passthrough_whitelist = { "vendor_id": "8086", "product_id": "10fb" }
All PCI devices matching the ``vendor_id`` and ``product_id`` are added to
the pool of PCI devices available for passthrough to VMs.
For more information about the syntax of ``pci_passthrough_whitelist``,
refer to `nova.conf configuration options`_.
#. Specify the PCI alias for the device.
From the Newton release, to resize guest with PCI device, configure
the PCI alias on the compute node as well.
Configure a PCI alias ``a1`` to request a PCI device with a ``vendor_id`` of
``0x8086`` and a ``product_id`` of ``0x154d``. The ``vendor_id`` and
``product_id`` correspond the PCI device with address ``0000:41:00.0``.
Edit ``/etc/nova/nova.conf``:
.. code-block:: ini
[default]
pci_alias = { "vendor_id":"8086", "product_id":"154d", "device_type":"type-PF", "name":"a1" }
For more information about the syntax of ``pci_alias``, refer to
`nova.conf configuration options`_.
#. Restart ``nova-compute`` with :command:`service nova-compute restart`.
Create instances with PCI passthrough devices
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~