8장. OVS-DPDK 배포 구성
이 섹션에서는 Red Hat OpenStack Platform 환경 내에서 OVS-DPDK(Open vSwitch)를 사용하여 DPDK를 배포합니다. 오버클라우드는 일반적으로 컨트롤러 노드, 컴퓨팅 노드 및 다른 스토리지 노드 유형과 같은 사전 정의된 역할의 노드로 구성됩니다. 이러한 각 기본 역할에는 director 노드의 코어 Heat 템플릿에 정의된 일련의 서비스가 포함되어 있습니다.
오버클라우드를 배포하려면 먼저 언더클라우드를 설치하고 구성해야 합니다. 자세한 내용은 Director 설치 및 사용 가이드 를 참조하십시오.
OVS-DPDK에 대해 OpenStack 네트워크를 최적화하려면 network-environment.yaml 파일에 설정한 OVS-DPDK 매개변수의 최적 값을 결정해야 합니다.
이 director heat 템플릿에서 수정하는 etc/tuned/cpu-partitioning- variables.conf의 isolated_cores 또는 기타 값을 편집하거나 변경하지 마십시오.
8.1. 워크플로우를 사용하여 DPDK 매개변수 파생 링크 복사링크가 클립보드에 복사되었습니다!
이 기능은 이번 릴리스에서 기술 프리뷰로 제공되므로 Red Hat에서 완전히 지원되지 않습니다. 테스트 용도로만 사용해야 하며 프로덕션 환경에 배포해서는 안 됩니다. 기술 프리뷰 기능에 대한 자세한 내용은 적용 범위 상세 정보를 참조하십시오.
DPDK의 Mistral 워크플로우 개요는 7.2절. “워크플로우 및 파생 매개변수 개요” 를 참조하십시오.
사전 요구 사항
이 워크플로에서 검색한 데이터를 제공하려면 하드웨어 검사 추가(inspection_extras)를 포함하여 Bare Metal 인트로스펙션이 활성화되어 있어야 합니다. 하드웨어 검사 추가는 기본적으로 활성화되어 있습니다. 노드 하드웨어 검사를 참조하십시오.
DPDK에 대한 워크플로우 및 입력 매개 변수 정의
다음은 OVS-DPDK 워크플로우에 제공할 수 있는 입력 매개 변수입니다.
- num_phy_cores_per_numa_node_for_pmd
- 이 input 매개변수는 DPDK NIC와 연결된 NUMA 노드에 필요한 최소 코어 수를 지정합니다. DPDK NIC와 연결되지 않은 다른 NUMA 노드에 대해 하나의 물리적 코어가 할당됩니다. 이 매개 변수는 1로 설정해야 합니다.
- huge_page_allocation_percentage
-
이 input 매개변수는 대규모 페이지로 구성할 수 있는 총 메모리(
NovaReservedHostMemory제외)의 필요한 백분율을 지정합니다.KernelArgs매개변수는 지정된huge_page_allocation_percentage를 기반으로 계산된 대규모 페이지를 사용하여 파생됩니다. 이 매개 변수는 50으로 설정해야 합니다.
워크플로우는 베어 메탈 인트로스펙션 세부 정보와 함께 이러한 입력 매개변수를 사용하여 적절한 DPDK 매개변수 값을 계산합니다.
DPDK에 대한 워크플로우 및 입력 매개변수를 정의하려면 다음을 수행합니다.
/usr/share/openstack-tripleo-heat-templates/plan-environment-derived-params.yaml파일을 로컬 디렉터리에 복사하고 사용자 환경에 맞게 입력 매개변수를 설정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow openstack overcloud deploy명령을 실행하고 다음을 포함합니다.-
update-plan-only옵션 - 역할 파일 및 해당 환경과 관련된 모든 환경 파일
--plan-environment-file선택적 인수가 있는plan-environment-derived-parms.yaml파일openstack overcloud deploy --templates --update-plan-only \ -r /home/stack/roles_data.yaml \ -e /home/stack/<environment-file> \ ... #repeat as necessary ... -p /home/stack/plan-environment-derived-params.yaml
$ openstack overcloud deploy --templates --update-plan-only \ -r /home/stack/roles_data.yaml \ -e /home/stack/<environment-file> \ ... #repeat as necessary ... -p /home/stack/plan-environment-derived-params.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
-
이 명령의 출력에는 plan-environment.yaml 파일에도 병합된 파생 결과가 표시됩니다.
OvsDpdkMemoryChannels 매개변수는 인트로스펙션 세부 정보에서 파생될 수 없습니다. 대부분의 경우 이 값은 4여야 합니다.
Derived Parameters를 사용하여 오버클라우드 배포
이러한 파생 매개변수를 사용하여 오버클라우드를 배포하려면 다음을 수행합니다.
plan-environment.yaml에서network-environment.yaml파일에 파생된 매개변수를 복사합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고이러한 매개변수는
ComputeOvsDpdk역할에만 적용되며 동일한 클러스터에 존재할 수 있는Compute또는ComputeSriov를 비롯한 다른 역할에는 적용되지 않습니다. 이러한 매개변수를 전역적으로 적용할 수 있지만 전역 매개변수는 역할별 매개변수를 통해 덮어씁니다.- 역할 파일 및 해당 환경과 관련된 모든 환경 파일을 사용하여 오버클라우드를 배포합니다. 자세한 내용은 Overcloud 배포를 참조하십시오.