我正在尝试使用 OpenStack Liberty 获得非 SRIOV pci-passthrough,但没有成功。
这些是遵循的步骤
- 在计算节点的 nova.conf 中创建 pci_passthrough_whitelist 为 pci_passthrough_whitelist = {"address": "0000:89:00.0", "physical_network": "test_phy_nw"}
- 由于没有使用 sriov,所以不要在 ml2 中添加 sriovnicswitch 作为机制驱动程序。并且不要进行任何 ml2 sriov 配置。不要配置 pci_passthrough_alias 因为别名不支持 BDF(地址)
- 创建一个中子网 - neutron net-create --name test_os_nw --provider:physical_network test_phy_nw --provider:physical_network_type flat。(Flat ok?还是我应该使用 vlan 或 vxlan 类型的网络?)
- 使用直接 vnic_type 创建端口 - neutron port-create --name pci.port --binding:vnic_type direct
- 使用此端口启动实例 nova boot --flavor m1.small --image ubuntu --nic port-id=$(neutron port-show pci.port -F id -f value) test.vm
这方面的两个问题
- 上述步骤是否正确?我在上述步骤中是否遗漏了任何内容?
- 实现 pci-passthrough(非 SRIOV)的过程是否与 SRIOV pci-passthrough 不同?如果它不同,你能分享一个链接吗(或者更好的是你能快速总结一下这个过程)。