Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

20.39. 스냅샷 관리

다음 섹션에서는 게스트 가상 머신 스냅샷을 조작하기 위해 수행할 수 있는 작업을 설명합니다. 스냅샷 은 지정된 시점에서 게스트 가상 머신의 디스크, 메모리 및 장치 상태를 가져와서 나중에 사용할 수 있도록 저장합니다. 스냅샷에는 잠재적으로 파괴적인 작업이 되기 전에 게스트 가상 머신의 상태를 절약하기 위해 OS 이미지의 "clean" 사본을 저장하는 데 많은 용도가 있습니다. 스냅샷은 고유한 이름으로 식별됩니다. 스냅샷 속성 을 나타내는 데 사용되는 XML 형식에 대한 설명은 libvirt 업스트림 웹 사이트를 참조하십시오.
중요
Red Hat Enterprise Linux 7은 게스트 가상 머신이 일시 중지되거나 전원이 꺼지는 동안 스냅샷 생성만 지원합니다. 실행 중인 게스트의 스냅샷(예: 실시간 스냅샷이라고도 함) 생성은 Red Hat Virtualization™ 에서 사용할 수 있습니다. 자세한 내용은 서비스 담당자에게 문의하십시오.

20.39.1. 스냅샷 생성

virsh snapshot-create 명령은 게스트 가상 머신의 XML 파일에 지정된 속성을 사용하여 게스트 가상 머신의 스냅샷을 생성합니다(예: <name><description> 요소, <disks>). 스냅샷을 실행하려면 다음을 수행합니다.
# virsh snapshot-create domain XML file [--redefine [--current] [--no-metadata] [--halt] [--disk-only] [--reuse-external] [--quiesce] [--atomic]
게스트 가상 머신 이름, id 또는 uid를 게스트 가상 머신 요구 사항으로 사용할 수 있습니다. XML 요구 사항은 최소의 이름,설명디스크 요소를 포함해야 하는 문자열입니다.
나머지 선택적 인수는 다음과 같습니다.
  • --disk-only - 게스트 가상 머신의 메모리 상태가 스냅샷에 포함되지 않습니다.
  • XML 파일 문자열이 완전히 생략된 경우 libvirt는 모든 필드의 값을 선택합니다. 새 스냅샷은 snapshot-current에 나열된 대로 최신 상태가 됩니다. 또한 스냅샷에는 게스트 가상 머신 상태가 있는 일반 시스템 검사점이 아닌 디스크 상태만 포함됩니다. 디스크 스냅샷은 전체 시스템 체크포인트보다 빠르지만 디스크 스냅샷으로 되돌리려면 power cord가 예기치 않게 가져온 시점의 디스크 상태와 같기 때문에 fsck 또는 저널 리플레이가 필요할 수 있습니다. --halt--disk-only 를 혼합하면 그 때 디스크에 플러시되지 않은 데이터가 손실됩니다.
  • --halt - 스냅샷을 생성한 후 게스트 가상 머신이 비활성 상태가 됩니다. --halt--disk-only 를 혼합하면 메모리 상태 외에도 디스크로 플러시되지 않은 데이터가 손실됩니다.
  • --redefinevirsh snapshot-dumpxml 에 의해 생성된 모든 XML 요소가 유효한 경우, 스냅샷 계층 구조를 다른 머신으로 마이그레이션하고, 임시 게스트 가상 머신의 경우 계층 구조를 다시 만드는 데 사용할 수 있고 나중에 동일한 이름과 UUID로 다시 생성되거나 스냅샷 메타데이터(예: 호스트별 가상 머신의 게스트 XML)에서 가상 머신의 특정 측면을 추측하는 데 사용할 수 있습니다. 이 플래그를 제공하면 xmlfile 인수가 필수이며 --current 플래그를 지정하지 않는 한 게스트 가상 머신의 현재 스냅샷이 변경되지 않습니다.
  • --no-metadata 는 스냅샷을 생성하지만(즉, libvirt는 스냅샷을 현재 상태로 처리하지 않으며, --redefine 이 나중에 메타데이터에 대해 libvirt 를 교육하는 데 사용되지 않는 한) 스냅샷으로 되돌릴 수 없습니다.
  • --reuse-external. used 및 스냅샷 XML에서 기존 파일 대상이 있는 외부 스냅샷을 요청하는 경우 대상이 존재하고 재사용되어야 합니다. 그렇지 않으면 기존 파일의 내용이 손실되지 않도록 스냅샷이 거부됩니다.
  • --quiesce libvirt는 게스트 가상 시스템의 마운트된 파일 시스템을 정지하고 해제하려고 합니다. 그러나 게스트 가상 머신에 게스트 에이전트가 없는 경우 스냅샷 생성에 실패합니다. 스냅샷에는 가상 게스트 머신의 메모리 상태가 포함될 수 있습니다. 스냅샷은 외부이어야 합니다.
  • --Atomic 을 사용하면 libvirt에서 스냅샷이 성공하거나 변경없이 실패하도록 합니다. 모든 하이퍼바이저가 이를 지원하는 것은 아닙니다. 이 플래그를 지정하지 않으면 작업을 부분적으로 수행한 후 일부 하이퍼바이저가 실패할 수 있으며, partial changes가 발생하는지 확인하려면 virsh dumpxml 을 사용해야 합니다.
스냅샷 메타데이터가 있으면 영구 게스트 가상 머신을 정의하는 시도가 방지됩니다. 그러나 임시 게스트 가상 머신의 경우 게스트 가상 시스템이 실행을 종료할 때 스냅샷 메타데이터가 자동으로 손실됩니다(예: 제거 또는 내부 게스트 작업의 경우).