10.2. 生成角色和镜像文件
Red Hat OpenStack Platform (RHOSP) director 使用角色为节点分配服务。在 OVS-DPDK 环境中部署 RHOSP 时,ComputeOvsDpdk 是 RHOSP 安装提供的自定义角色,它除默认的计算服务外,还包括 ComputeNeutronOvsDpdk
服务。
undercloud 安装需要一个环境文件来确定从何处获取容器镜像以及如何存储它们。
先决条件
-
访问
stack
用户的 undercloud 主机和凭据。
流程
-
以
stack
用户的身份登录 undercloud。 Source
stackrc
文件:source ~/stackrc
$ source ~/stackrc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生成一个新的角色数据文件,如
roles_data_compute_ovsdpdk.yaml
,其中包含Controller
和ComputeOvsDpdk
角色:openstack overcloud roles generate \ -o /home/stack/templates/roles_data_compute_ovsdpdk.yaml \ Controller ComputeOvsDpdk
$ openstack overcloud roles generate \ -o /home/stack/templates/roles_data_compute_ovsdpdk.yaml \ Controller ComputeOvsDpdk
Copy 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:ComputeOvsHwOffload
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选: 您可以使用 TuneD 配置集
cpu-partitioning-powersave
,将 OVS-DPDK 配置为在没有转发数据包时进入睡眠模式。要配置
cpu-partitioning-powersave
,请在生成的角色数据文件中将默认的 TuneD 配置集替换为节能 TuneD 配置集cpu-partitioning-powersave
:TunedProfileName: "cpu-partitioning-powersave"
TunedProfileName: "cpu-partitioning-powersave"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
在这个生成的角色数据文件中,
/home/stack/templates/roles_data_compute_ovsdpdk.yaml
,TunedProfileName
的默认值被cpu-partitioning-powersave
替换:sed -i \ 's/TunedProfileName:.*$/TunedProfileName: "cpu-partitioning-powersave"/' \ /home/stack/templates/roles_data_compute_ovsdpdk.yaml
$ sed -i \ 's/TunedProfileName:.*$/TunedProfileName: "cpu-partitioning-powersave"/' \ /home/stack/templates/roles_data_compute_ovsdpdk.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要生成镜像文件,请运行
openstack tripleo container image prepare
命令。需要以下输入:-
您在前面步骤中生成的角色数据文件,如
roles_data_compute_ovsdpdk.yaml
。 适合您的网络服务机制驱动程序的 DPDK 环境文件:
-
ML2/OVN 环境的
neutron-ovn-dpdk.yaml
文件。 ML2/OVS 环境的
neutron-ovs-dpdk.yaml
文件。示例
在本例中,为 ML2/OVN 环境生成
overcloud_images.yaml
文件:sudo openstack tripleo container image prepare \ --roles-file ~/templates/roles_data_compute_ovsdpdk.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-dpdk.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_ovsdpdk.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/neutron-ovn-dpdk.yaml \ -e ~/containers-prepare-parameter.yaml \ --output-env-file=/home/stack/templates/overcloud_images.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
ML2/OVN 环境的
-
您在前面步骤中生成的角色数据文件,如
- 注意角色数据文件的路径和文件名以及您创建的镜像文件。您稍后会在部署 overcloud 时使用这些文件。
后续步骤