10.5. 베어 메탈 노드 정의 파일 생성
RHOSP(Red Hat OpenStack Platform) director를 사용하여 정의 파일을 사용하여 OVS-DPDK 환경의 베어 메탈 노드를 프로비저닝합니다. 베어 메탈 노드 정의 파일에서 배포하려는 베어 메탈 노드의 수량 및 속성을 정의하고 오버클라우드 역할을 이러한 노드에 할당합니다. 노드의 네트워크 레이아웃도 정의합니다.
사전 요구 사항
-
언더클라우드 호스트 및
stack
사용자의 인증 정보에 액세스합니다.
프로세스
-
stack
사용자로 언더클라우드에 로그인합니다. stackrc
파일을 소싱합니다.$ source ~/stackrc
-
director 가이드를 사용하여 Red Hat OpenStack Platform 설치 및 관리에서 오버클라우드의 베어 메탈 노드 프로비저닝에 지시되는 대로
overcloud
-baremetal-deploy.yaml 과 같은 베어 메탈 노드 정의 파일을 생성합니다. overcloud-baremetal-deploy.yaml
파일에서 Ansible 플레이북cli-overcloud-node-kernelargs.yaml
에 선언을 추가합니다. 플레이북에는 베어 메탈 노드를 프로비저닝할 때 사용할 커널 인수가 포함되어 있습니다.- name: ComputeOvsDpdk ... ansible_playbooks: - playbook: /usr/share/ansible/tripleo-playbooks/cli-overcloud-node-kernelargs.yaml ...
플레이북을 실행할 때 추가 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
를 사용하여 패킷이 전달되지 않을 때 sleep 모드로 전환하도록 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를 구성하고 노드를 프로비저닝할 때
오버클라우드 노드 프로비저닝
명령의 입력 파일로 이 파일을 사용합니다.
다음 단계
- 10.6절. “NIC 구성 템플릿 생성” 으로 이동합니다.
추가 리소스
- OVS-DPDK 배포에 전원 저장
- director를 사용하여 Red Hat OpenStack Platform 설치 및 관리의 구성 가능 서비스 및 사용자 지정 역할
- NFV에 대해 테스트된 NIC