13장. 노드 배치 제어
기본적으로 director는 노드의 프로필 태그에 따라 각 역할에 대해 임의로 노드를 선택합니다. 그러나 특정 노드 배치를 정의할 수도 있습니다. 이는 다음 시나리오에서 유용합니다.
-
특정 노드 ID(예:
controller-0
,controller-1)
할당 - 사용자 정의 호스트 이름 할당
- 특정 IP 주소 할당
- 특정 가상 IP 주소 할당
네트워크에 예측 가능한 IP 주소, 가상 IP 주소 및 포트를 수동으로 설정하면 풀 할당의 필요성이 줄어듭니다. 그러나 새 노드를 쉽게 확장할 수 있도록 각 네트워크에 대한 할당 풀을 유지하는 것이 좋습니다. 정적으로 정의된 모든 IP 주소가 할당 풀 외부에 속하는지 확인합니다.
13.1. 특정 노드 ID 할당
특정 노드에 노드 ID(예: controller-0, controller-1, compute-0
,compute
-1)
를 할당할 수 있습니다.
절차
컴퓨팅 스케줄러가 배포 시 일치하는 노드별 기능으로 ID를 할당합니다.
openstack baremetal node set --property capabilities='node:controller-0,boot_option:local' <id>
이 명령은 기능
node:controller-0
을 노드에 할당합니다. 모든 노드에 대해 0부터 시작하여 고유한 연속 인덱스를 사용하여 이 패턴을 반복합니다. 지정된 역할(Controller, Compute 또는 각 스토리지 역할)의 모든 노드에 동일한 방식으로 태그가 지정되어 있는지 또는 Compute 스케줄러가 기능과 올바르게 일치할 수 없는지 확인합니다.스케줄러 힌트를 사용하여 각 노드의 기능과 일치시키는 Heat 환경 파일(예:
scheduler_hints_env.yaml
)을 생성합니다.parameter_defaults: ControllerSchedulerHints: 'capabilities:node': 'controller-%index%'
다음 매개변수를 사용하여 다른 역할 유형에 대한 스케줄러 힌트를 구성합니다.
-
컨트롤러 노드의 ControllerSchedulerHints
입니다. -
컴퓨팅 노드의
ComputeSchedulerHints
입니다. -
블록 스토리지 노드의
BlockStorageSchedulerHints
입니다. -
오브젝트 스토리지 노드의
ObjectStorageSchedulerHints
입니다. -
Ceph Storage 노드의 CephStorageSchedulerHints
. -
[ROLE] 사용자 정의 역할을 위한 스케줄 힌트입니다
.[ROLE]
을 역할 이름으로 바꿉니다.
-
-
Overcloud 배포 명령에
scheduler_hints_env.yaml
환경 파일을 포함합니다.
노드 배치는 프로필 일치보다 우선합니다. 스케줄링 실패를 방지하려면 프로필 일치(컴퓨팅,제어
)용으로 설계된 플레이버가 아닌 배포에 기본 baremetal
플레이버
를 사용합니다. 환경 파일에서 각 플레이버 매개 변수를 baremetal로 설정합니다.
parameter_defaults: OvercloudControllerFlavor: baremetal OvercloudComputeFlavor: baremetal