第 7 章 配置 SR-IOV 部署
在 Red Hat OpenStack Platform NFV 部署中,当您通过虚拟资源配置从实例到共享 PCIe 资源时,您可以使用单根 I/O 虚拟化(SR-IOV)提高性能。
本节包括必须为拓扑和用例修改的示例。如需更多信息,请参阅 NFV 的硬件要求。
先决条件
RHOSP undercloud。
在部署 overcloud 之前,您必须安装和配置 undercloud。如需更多信息,请参阅使用 director 安装和管理 Red Hat OpenStack Platform。
注意RHOSP director 通过您在模板和自定义环境文件中指定的键值对修改 SR-IOV 配置文件。您不能直接修改 SR-IOV 文件。
-
访问
stack用户的 undercloud 主机和凭据。 - 访问包含 NIC 的主机。
确保保持 NIC 固件更新。
yum或dnf更新可能无法完成固件更新。如需更多信息,请参阅您的厂商文档。
流程
使用 Red Hat OpenStack Platform (RHOSP) director 在 SR-IOV 环境中安装和配置 RHOSP。高级步骤有:
-
按照 使用 director 配置 overcloud 网络中的说明,创建网络配置文件
network_data.yaml以为您的 overcloud 配置 物理网络。 - 生成角色和镜像文件。
- 为 SR-IOV 配置 PCI 透传设备。
- 添加特定于角色的参数和配置覆盖。
- 创建裸机节点定义文件。
- 为 SR-IOV 创建 NIC 配置模板。
- (可选) 分区 NIC。
置备 overcloud 网络和 VIP。
如需更多信息,请参阅:
- 使用 director 安装和管理 Red Hat OpenStack Platform 指南中的 配置和置备 overcloud 网络定义。
- 使用 director 安装和管理 Red Hat OpenStack Platform 指南中的为 overcloud 配置和置备网络 VIP。
置备 overcloud 裸机节点。
有关更多信息,请参阅使用 director 安装和管理 Red Hat OpenStack Platform 指南中的 为 overcloud 置备裸机节点。
- 部署 SR-IOV overcloud。
7.1. 为 SR-IOV 生成角色和镜像文件 复制链接链接已复制到粘贴板!
Red Hat OpenStack Platform (RHOSP) director 使用角色为节点分配服务。在 SR-IOV 环境中部署 RHOSP 时,ComputeSriov 是 RHOSP 安装提供的默认角色,它除默认的计算服务外,还包括 NeutronSriovAgent 服务。
undercloud 安装需要一个环境文件来确定从何处获取容器镜像以及如何存储它们。
先决条件
-
访问
stack用户的 undercloud 主机和凭据。
流程
-
以
stack用户的身份登录 undercloud。 Source
stackrc文件:source ~/stackrc
$ source ~/stackrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 生成一个名为
roles_data_compute_sriov.yaml的新角色数据文件,其中包含Controller和ComputeSriov角色:openstack overcloud roles \ generate -o /home/stack/templates/roles_data_compute_sriov.yaml \ Controller ComputeSriov
$ openstack overcloud roles \ generate -o /home/stack/templates/roles_data_compute_sriov.yaml \ Controller ComputeSriovCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注意如果您在 RHOSP 环境、OVS-DPDK、SR-IOV 和 OVS 硬件卸载中使用多种技术,则仅生成一个角色数据文件来包含所有角色:
openstack overcloud roles generate -o /home/stack/templates/\ roles_data.yaml Controller ComputeOvsDpdk ComputeOvsDpdkSriov \ Compute:ComputeOvsHwOffload
$ openstack overcloud roles generate -o /home/stack/templates/\ roles_data.yaml Controller ComputeOvsDpdk ComputeOvsDpdkSriov \ Compute:ComputeOvsHwOffloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow 要生成镜像文件,请运行
openstack tripleo container image prepare命令。需要以下输入:-
您在之前步骤中生成的角色数据文件,如
roles_data_compute_sriov.yaml。 适合您的网络服务机制驱动程序的 SR-IOV 环境文件:
ML2/OVN 环境
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-sriov.yamlML2/OVS 环境
/usr/share/openstack-tripleo-heat-templates/environments/services/neutron-sriov.yaml示例
在本例中,为 ML2/OVN 环境生成
overcloud_images.yaml文件:sudo openstack tripleo container image prepare \ --roles-file ~/templates/roles_data_compute_sriov.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-sriov.yaml \ -e ~/containers-prepare-parameter.yaml \ --output-env-file=/home/stack/templates/overcloud_images.yaml
$ sudo openstack tripleo container image prepare \ --roles-file ~/templates/roles_data_compute_sriov.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-sriov.yaml \ -e ~/containers-prepare-parameter.yaml \ --output-env-file=/home/stack/templates/overcloud_images.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
-
您在之前步骤中生成的角色数据文件,如
- 注意角色数据文件的路径和文件名以及您创建的镜像文件。您稍后会在部署 overcloud 时使用这些文件。
后续步骤