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