Configuring PCI Pass Through over Cloud
Perform the following steps to configure PCI pass through over cloud:
- Configure nova-scheduler
(controller).
Add PciPassthroughFilter filter to nova.conf with the following command:
[filter_scheduler] enabled_filters = <your filters>, PciPassthroughFilter available_filters = nova.scheduler.filters.all_filters
- Locate vendor_id and
product_id of the Adax card (compute).
Execute the following lspci commnd to show vendor_id and product_id:
lspci -v |grep -i Adax -B 2 -A 8
Sample Output:
In the above output, 14:00.0 is the PCI address of the Adax card, Using this address, the vendor_id and product_id can be listed with the following command:
lspci -nn -s 14:00.0
Sample Output:
In the above output, 14:00.0 is the PCI address of the Adax card, Using this address, the vendor_id and product_id can be listed as follows:- vendor_id=1957
- product_id=0091
- Configure nova-api
(controller).
Add Adax card to nova.conf file on the controller:
The type of the card must be type-PCI. Name can be anything.
Example:
In this example the card name is Adax1:
Note: If multiple Adax cards are connected to a host, multiple alias needs to be created. In this example, one Adax card is connected to a host.
- Update flavor with the
card name (controller or cli box).
Execute the following command:
openstack flavor set Adax --property "pci_passthrough:alias"="Adax1:1"
Note: To connect multiple Adax cards to a VM, use Adax1:2 (connect 2 cards), Adax1:3 (connect 3 cards).
- Configure nova-compute
(compute)
Whitelist Adax1 card on the compute node in nova.conf with the following command:
[pci] pci_passthrough_whitelist = "{"vendor_id":"1957","product_id":"0091"}"
- Restart the controller and
compute services.
- Restart the controller
services with the following command:
systemctl restart openstack-nova-api.service openstack-nova-conductor.service openstack-nova-consoleauth.service openstack-nova-metadata-api.service openstack-nova-scheduler.service
-
Restart the compute services with the following command:
systemctl restart openstack-nova-compute.service
- Restart the controller
services with the following command: