Red Hat Training
A Red Hat training course is available for Red Hat OpenStack Platform
8장. 노드 배치 제어
director의 기본 동작은 일반적으로 profile 태그를 기반으로 각 역할의 노드를 무작위로 선택하는 것입니다. 그러나 director는 특정 노드 배치를 정의하는 기능을 제공합니다. 이 방법은 다음 작업을 수행하는 데 유용합니다.
-
controller-0,controller-1등 특정 노드 ID 할당 - 사용자 정의 호스트 이름 할당
- 특정 IP 주소 할당
- 특정 가상 IP 주소 할당
네트워크용 예측 가능한 IP 주소, 가상 IP 주소 및 포트를 수동으로 설정하면 할당 풀의 필요성이 완화됩니다. 그러나 새 노드를 쉽게 확장하려면 각 네트워크에 할당 풀을 유지하는 것이 좋습니다. 정적으로 정의된 IP 주소가 할당 풀 외부에 있는지 확인합니다. 할당 풀 설정에 대한 자세한 내용은 7.2절. “네트워크 환경 파일 생성” 을 참조하십시오.
8.1. 특정 노드 ID 할당
다음 절차에서는 특정 노드에 노드 ID를 할당합니다. 노드 ID의 예로는 controller-0,controller-1,compute-0,compute-1 등이 있습니다.
첫 번째 단계는 Nova 스케줄러가 배포 시 일치하는 노드별 기능으로 ID를 할당하는 것입니다. 예를 들면 다음과 같습니다.
openstack baremetal node set --property capabilities='node:controller-0,boot_option:local' <id>
이렇게 하면 기능 node:controller-0 을 노드에 할당합니다. 모든 노드에 대해 0부터 시작하여 고유한 연속 인덱스를 사용하여 이 패턴을 반복합니다. 지정된 역할(Controller, Compute 또는 각 스토리지 역할)에 대한 모든 노드가 동일한 방식으로 태그되는지 또는 Nova 스케줄러가 기능과 올바르게 일치하지 않는지 확인합니다.
다음 단계는 스케줄러 힌트를 사용하여 각 노드의 기능과 일치하는 Heat 환경 파일(예: scheduler_hints_env.yaml)을 생성하는 것입니다. 예를 들면 다음과 같습니다.
parameter_defaults:
ControllerSchedulerHints:
'capabilities:node': 'controller-%index%'
이러한 스케줄러 힌트를 사용하려면 Overcloud 생성 중에 overcloud deploy 명령에 ' scheduler_hints_env.yaml' 환경 파일을 포함합니다.
다음 매개변수를 통해 각 역할에 대해 동일한 접근 방식을 사용할 수 있습니다.
-
컨트롤러 노드의
ControllerSchedulerHints -
컴퓨팅 노드의
NovaComputeSchedulerHints. -
Block Storage 노드의
BlockStorageSchedulerHints -
Object Storage 노드의
ObjectStorageSchedulerHints -
Ceph Storage 노드의
CephStorageSchedulerHints -
[ROLE]SchedulerHintsfor custom roles.[ROLE]을 역할 이름으로 교체합니다.
노드 배치는 프로필 일치보다 우선 순위를 지정합니다. 예약 실패를 방지하려면 프로필 일치(컴퓨팅,제어 등)용으로 설계된 플레이버가 아닌 배포에 기본 baremetal 플레이버를 사용합니다. 예를 들면 다음과 같습니다.
$ openstack overcloud deploy ... --control-flavor baremetal --compute-flavor baremetal ...