10.5. 创建裸机节点定义文件
使用 Red Hat OpenStack Platform (RHOSP) director,您可以使用定义文件为 OVS-DPDK 环境置备裸机节点。在裸机节点定义文件中,定义您要部署并分配 overcloud 角色的裸机节点的数量和属性。另外,也定义节点的网络布局。
先决条件
-
访问
stack
用户的 undercloud 主机和凭据。
流程
-
以
stack
用户的身份登录 undercloud。 Source
stackrc
文件:$ source ~/stackrc
-
按照 使用 director 的 Red Hat OpenStack Platform 置备裸机节点指南中所述,创建裸机节点定义文件,如
overcloud
-baremetal-deploy.yaml。 在
overcloud-baremetal-deploy.yaml
文件中,向 Ansible playbook 添加声明cli-overcloud-node-kernelargs.yaml
。playbook 包含在置备裸机节点时要使用的内核参数。- name: ComputeOvsDpdk ... ansible_playbooks: - playbook: /usr/share/ansible/tripleo-playbooks/cli-overcloud-node-kernelargs.yaml ...
如果要在运行 playbook 时设置任何额外的 Ansible 变量,请使用
extra_vars
属性来设置它们。如需更多信息,请参阅使用 director 安装和管理 Red Hat OpenStack Platform 指南中的 裸机节点置备属性。
注意您添加到
extra_vars
的变量应当是之前添加到 OVS-DPDK 自定义的环境文件中的 OVS-DPDK Compute 节点的特定于角色的参数。示例
- name: ComputeOvsDpdk ... ansible_playbooks: - playbook: /usr/share/ansible/tripleo-playbooks/cli-overcloud-node-kernelargs.yaml extra_vars: kernel_args: 'default_hugepagesz=1GB hugepagesz=1GB hugepages=64 iommu=pt intel_iommu=on isolcpus=2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39' tuned_isolated_cores: '2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39' tuned_profile: 'cpu-partitioning' reboot_wait_timeout: 1800 - playbook: /usr/share/ansible/tripleo-playbooks/cli-overcloud-openvswitch-dpdk.yaml extra_vars: pmd: '2,22,3,23' memory_channels: '4' socket_mem: '4096,4096' pmd_auto_lb: true pmd_load_threshold: "70" pmd_improvement_threshold: "25" pmd_rebal_interval: "2"
可选: 您可以使用 TuneD 配置集
cpu-partitioning-powersave
,将 OVS-DPDK 配置为在没有转发数据包时进入睡眠模式。要配置
cpu-partitioning-powersave
,请在裸机节点定义文件中添加以下行:... tuned_profile: "cpu-partitioning-powersave" ... - playbook: /home/stack/ospd-17.1-geneve-ovn-dpdk-sriov-ctlplane-dataplane-bonding-hybrid/playbooks/cli-overcloud-tuned-maxpower-conf.yaml - playbook: /home/stack/ospd-17.1-geneve-ovn-dpdk-sriov-ctlplane-dataplane-bonding-hybrid/playbooks/overcloud-nm-config.yaml extra_vars: reboot_wait_timeout: 900 ... pmd_sleep_max: "50" ...
示例
- name: ComputeOvsDpdk ... ansible_playbooks: - playbook: /usr/share/ansible/tripleo-playbooks/cli-overcloud-node-kernelargs.yaml extra_vars: kernel_args: default_hugepagesz=1GB hugepagesz=1GB hugepages=64 iommu=pt intel_iommu=on isolcpus=2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39 tuned_isolated_cores: 2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39 tuned_profile: cpu-partitioning reboot_wait_timeout: 1800 - playbook: /home/stack/ospd-17.1-geneve-ovn-dpdk-sriov-ctlplane-dataplane-bonding-hybrid/playbooks/cli-overcloud-tuned-maxpower-conf.yaml - playbook: /home/stack/ospd-17.1-geneve-ovn-dpdk-sriov-ctlplane-dataplane-bonding-hybrid/playbooks/overcloud-nm-config.yaml extra_vars: reboot_wait_timeout: 900 - playbook: /usr/share/ansible/tripleo-playbooks/cli-overcloud-openvswitch-dpdk.yaml extra_vars: pmd: 2,22,3,23 memory_channels: 4 socket_mem: 4096,4096 pmd_auto_lb: true pmd_load_threshold: "70" pmd_improvement_threshold: "25" pmd_rebal_interval: "2" pmd_sleep_max: "50"
-
注意您创建的裸机节点定义文件的路径和文件名。稍后,在配置 NIC 时,并在置备节点时使用
此文件作为 overcloud 节点置备
命令的输入文件。
后续步骤
其他资源
- 在 OVS-DPDK 部署中保存电源
- 使用 director 安装和管理 Red Hat OpenStack Platform中的可组合服务和自定义角色
- 为 NFV 测试的 NIC