16.8. 노드 블랙리스트 지정
업데이트된 배포를 수신하지 못하도록 오버클라우드 노드를 제외할 수 있습니다. 이 기능은 코어 heat 템플릿 컬렉션에서 업데이트된 매개변수 및 리소스 세트를 수신하지 못하도록 새 노드를 확장하고 기존 노드를 제외하려는 시나리오에서 유용합니다. 즉, 블랙리스트로 지정된 노드는 스택 작업의 영향을 받지 않습니다.
환경 파일에서 DeploymentServerBlacklist
매개변수를 사용하여 블랙리스트를 생성할 수 있습니다.
블랙리스트 설정
DeploymentServerBlacklist
매개변수는 서버 이름 목록입니다. 새 환경 파일을 작성하거나 기존 사용자 지정 환경 파일에 매개변수 값을 추가하고 파일을 배포 명령으로 전달합니다.
parameter_defaults: DeploymentServerBlacklist: - overcloud-compute-0 - overcloud-compute-1 - overcloud-compute-2
매개변수 값의 서버 이름은 실제 서버 호스트 이름이 아니라 OpenStack Orchestration(heat)에 따른 이름입니다.
openstack overcloud deploy
명령을 사용하여 이 환경 파일을 추가합니다.
$ source ~/stackrc (undercloud) $ openstack overcloud deploy --templates \ -e server-blacklist.yaml \ [OTHER OPTIONS]
heat는 업데이트된 heat 배포를 수신하지 못하도록 목록의 모든 서버를 블랙리스트로 지정합니다. 스택 작업이 완료되면 블랙리스트로 지정된 서버는 변경되지 않고 그대로 유지됩니다. 작업 중에 os-collect-config
에이전트의 전원을 끄거나 중지할 수도 있습니다.
- 노드를 블랙리스트로 지정할 때 주의하십시오. 요청된 변경 사항이 블랙리스트에서 어떻게 적용되는지 완전히 이해한 경우에만 블랙리스트를 사용하시기 바랍니다. 블랙리스트 기능을 사용하면 중단된 스택을 생성하거나 오버클라우드를 잘못 구성할 수 있습니다. 예를 들어 클러스터 구성 변경이 Pacemaker 클러스터의 모든 구성원에게 적용되는 경우 이러한 변경 중 Pacemaker 클러스터 구성원을 블랙리스트로 지정하면 클러스터가 실패할 수 있습니다.
- 업데이트 또는 업그레이드 절차 중에 블랙리스트 기능을 사용하지 마십시오. 이러한 절차에는 특정 서버의 변경 사항을 분리하는 자체 방식이 있습니다.
-
블랙리스트에 서버를 추가할 때 블랙리스트에서 서버를 삭제할 때까지 해당 노드에 대한 추가 변경이 지원되지 않습니다. 업데이트, 업그레이드, 확장, 축소, 노드 교체 등이 이에 해당합니다. 예를 들어 새 컴퓨팅 노드로 오버클라우드를 확장하는 동안 기존 컴퓨팅 노드를 블랙리스트로 지정하면 블랙리스트로 지정된 노드는
/etc/hosts
및/etc/ssh/ssh_known_hosts
에 추가된 정보가 반영되지 않습니다. 이로 인해 대상 호스트에 따라 실시간 마이그레이션이 실패할 수 있습니다. 컴퓨팅 노드는 더 이상 블랙리스트로 지정되지 않는 다음 오버클라우드 배포 중에/etc/hosts
및/etc/ssh/ssh_known_hosts
에 추가된 정보를 사용하여 업데이트됩니다./etc/hosts
및/etc/ssh/ssh_known_hosts
파일을 수동으로 수정하지 마십시오./etc/hosts
및/etc/ssh/ssh_known_hosts
파일을 수정하려면 블랙리스트 삭제 섹션에 설명된 대로 overcloud deploy 명령을 실행합니다.
블랙리스트 삭제
이후 스택 작업에 대해 블랙리스트를 지우려면 DeploymentServerBlacklist
를 편집하여 빈 배열을 사용합니다.
parameter_defaults: DeploymentServerBlacklist: []
DeploymentServerBlacklist
매개변수를 생략하지 마십시오. 매개변수를 생략하면 오버클라우드 배포에서 이전에 저장된 값을 사용합니다.