우리는 CentOS 5.5 KVM 호스트를 가지고 있으며, 다양한 버전의 CentOS 및 가능하면 다른 OS로 게스트를 실행합니다.
(a) 호스트 종료시 (a) 모든 게스트에게 자동으로 ACPI 종료를 보내거나 (b) 모든 게스트를 디스크로 일시 중지 할 수 있기를 원합니다.
이들 중 하나를 수행하기위한 표준 방법이 있습니까, 아니면 롤-로즈 상황입니까? 감사!
답변
예.
virsh shutdown
명령 (또는 같이 libvirt를 사용 “종료”의 다른 구현은 virt-manager
) 완전히 종료하는 게스트 OS를 지시합니다. 매뉴얼 페이지에서 :
shutdown domain-id
Gracefully shuts down a domain. This coordinates with the domain
OS to perform graceful shutdown, so there is no guarantee that it
will succeed, and may take a variable length of time depending on
what services must be shutdown in the domain.
The exact behavior of a domain when it shuts down is set by the
on_shutdown parameter in the domain’s XML definition.
KVM을 사용하면 ACPI system_powerdown 이벤트를 보내야합니다.
Fedora 및 RHEL 6에서는 libvirt-guests
시스템 종료시 모든 게스트를 일시 중지하도록 구성된 init 스크립트가 기본 제공됩니다. 그러나 특히 마술은 아니므로 거의 수정하지 않고 이것을 CentOS 5에 복사 할 수 있습니다.
답변
이것은 최근 Fedora 및 RHEL 6의 표준 기능입니다.
답변
내가 아는 한 CentOS에 대한 표준 스크립트는 없습니다. 종료하는 데 시간이 오래 걸리는 게스트를 처리해야하므로 코드를 작성할 수 있지만 약간 위험합니다. 시간 초과 후 데이터를 삭제하면 데이터가 손상 될 수 있으며 데이터를 기다리면 종료가 중단 될 수 있습니다.
대신 재부팅하기 전에 게스트를 수동으로 종료하는 것이 좋습니다. 잠시 동안 종료 및 재부팅을 대체하는 스크립트가있었습니다. 이 스크립트는 실행중인 게스트 (가상 머신 목록에 간단한 lc)가 있는지 경고하고 실행중인 게스트가있는 경우 명령을 차단했습니다.
답변
KVM 게스트는 단지 사용자 공간 프로세스입니다. 프로세스 모니터링이 필요합니다. 가장 일반적인 것은 libvirt 인 것 같습니다 (RedHat에 의해 개발되었으므로 CentOS에서 사용할 수 있어야합니다).