15.5. Compute 노드 재부팅
Compute 노드를 재부팅하려면 다음 단계를 완료합니다. OpenStack Platform 환경에서 인스턴스 다운 타임을 최소화할 수 있도록 다음 절차에서는 재부팅할 Compute 노드에서 인스턴스를 마이그레이션하는 방법도 설명합니다. 이 작업은 다음 워크플로우에 따라 수행됩니다.
- 노드를 재부팅하기 전에 인스턴스를 다른 Compute 노드로 마이그레이션할지 여부 결정
- 새 인스턴스를 프로비저닝하지 않도록 재부팅할 Compute 노드를 선택한 뒤 비활성화
- 인스턴스를 다른 Compute 노드로 마이그레이션
- 빈 Compute 노드 재부팅
- 빈 Compute 노드 활성화
사전 요구 사항
Compute 노드를 재부팅하기 전에 노드가 재부팅되는 동안 인스턴스를 다른 Compute 노드로 마이그레이션할지 여부를 결정해야합니다.
어떤 이유로든 인스턴스를 마이그레이션 할 수 없거나 마이그레이션하지 않으려는 경우 다음과 같은 코어 템플릿 매개변수를 설정하여 Compute 노드를 재부팅 한 후의 인스턴스 상태를 제어할 수 있습니다.
NovaResumeGuestsStateOnHostBoot
-
재부팅한 후에 Compute 노드에서 인스턴스를 동일한 상태로 되돌릴지 여부를 결정합니다.
False
로 설정하면 인스턴스가 다운된 상태로 유지되며 수동으로 시작해야 합니다. 기본값은False
입니다. NovaResumeGuestsShutdownTimeout
-
재부팅하기 전에 인스턴스가 종료될 때까지 대기하는 시간(초)입니다. 이 값을
0
으로 설정하지 않는 것이 좋습니다. 기본값은 300입니다.
오버클라우드 매개변수 및 사용법에 대한 일반적인 내용은 Overcloud Parameters를 참조하십시오.
절차
-
stack
사용자로 언더클라우드에 로그인합니다. 모든 Compute 노드 및 해당 UUID를 나열합니다.
$ source ~/stackrc (undercloud) $ openstack server list --name compute
재부팅할 Compute 노드의 UUID를 확인합니다.
언더클라우드에서 Compute 노드를 선택합니다. 노드를 비활성화합니다.
$ source ~/overcloudrc (overcloud) $ openstack compute service list (overcloud) $ openstack compute service set [hostname] nova-compute --disable
Compute 노드에 모든 인스턴스를 나열합니다.
(overcloud) $ openstack server list --host [hostname] --all-projects
- 인스턴스를 마이그레이션하지 않으려면 이 단계로 건너뜁니다.
인스턴스를 다른 Compute 노드로 마이그레이션하려면 다음 명령 중 하나를 사용합니다.
인스턴스를 다른 호스트로 마이그레이션합니다.
(overcloud) $ openstack server migrate [instance-id] --live [target-host]--wait
nova-scheduler
에서 대상 호스트를 자동으로 선택하도록 합니다.(overcloud) $ nova live-migration [instance-id]
한 번에 모든 인스턴스를 실시간 마이그레이션합니다.
$ nova host-evacuate-live [hostname]
참고nova
명령으로 인해 몇 가지 사용 중단 경고가 표시될 수 있으며, 이러한 경고는 무시해도 됩니다.
- 마이그레이션이 완료될 때까지 기다립니다.
마이그레이션을 성공적으로 완료했음을 확인합니다.
(overcloud) $ openstack server list --host [hostname] --all-projects
- 선택한 Compute 노드에 남은 항목이 없을 때까지 인스턴스를 계속 마이그레이션합니다.
Compute 노드에 로그인합니다. 노드를 재부팅합니다.
[heat-admin@overcloud-compute-0 ~]$ sudo reboot
- 노드가 부팅될 때까지 기다립니다.
Compute 노드를 다시 활성화합니다.
$ source ~/overcloudrc (overcloud) $ openstack compute service set [hostname] nova-compute --enable
Compute 노드가 활성화되었는지 확인합니다.
(overcloud) $ openstack compute service list