10.5. ベアメタルノード定義ファイルの作成
Red Hat OpenStack Platform (RHOSP) director を使用して、定義ファイルを使用して OVS-DPDK 環境のベアメタルノードをプロビジョニングします。ベアメタルノード定義ファイルで、デプロイするベアメタルノードの数量と属性を定義し、これらのノードにオーバークラウドロールを割り当てます。ノードのネットワークレイアウトも定義します。
前提条件
-
アンダークラウドホストへのアクセスと
stack
ユーザーの認証情報。
手順
-
アンダークラウドに
stack
ユーザーとしてログインします。 stackrc
ファイルを取得します。$ source ~/stackrc
-
director を使用した Red Hat OpenStack Platform のインストールと管理 ガイドの オーバークラウドのベアメタルノードのプロビジョニング の指示に従って、
overcloud-baremetal-deploy.yaml
などのベアメタルノード定義ファイルを作成します。 overcloud-baremetal-deploy.yaml
ファイルで、Ansible Playbookcli-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 コンピュートノードのロール固有のパラメーターと同じである必要があります。例
- 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 node provision
コマンドの入力ファイルとして使用します。
次のステップ
- 「NIC 設定テンプレートの作成」 に進みます。
関連情報
- OVS-DPDK デプロイメントにおける電力節約
- director を使用した Red Hat OpenStack Platform のインストールと管理 の コンポーザブルサービスとカスタムロール
- NFV 向けのテスト済み NIC