Hyper-V 의 Snapshot 기능
Windows Server 2008 / 2008 R2 의 Hyper-V 에는 Snapshot 기능을 포함하고 있습니다.
Snapshot 은 어느 시점 상태로 되돌아 갈 수 있는 VM의 Point in time 이미지들을 말하는 것입니다. 이것은 현재의 VM 상태 (VHD)를 보존하는 상태에서 별도의 Differencing disk file인 .AVHD 파일을 생성하므로서, 현재 Snapshot 상태에서 Windows작업 중에 어떠한 문제가 있을지라도 이 작업을 무시하고 이전으로 되돌아 갈 수 있는 이전 VM 파일의 안전성을 보장합니다.
즉, 번거로운 프로그램을 테스트 작업을 자주 진행하는 개발자 또는 예기치 않은 문제를 야기시킬 수 있는 Hotfixes, Updates 설치 등을 담당하는 시스템 관리자들에게는 유용한 기능입니다.
Snapshot 은 Online 또는 Offline VM 의 Snapshots 을 생성할 수 있습니다. Online VMs 의 경우 Snapshots 은 VM의 Worker process 에 의해 처리되며, Offline VMs의 경우 Snapshot 은 VMMS 내의 Snapshot manager 에 의해 처리됩니다. Snapshot 이 만들어 질 때 아래의 과정이 수행됩니다.
1. 지정된 위치에 현재 .퐁 파일의 Differencing hard disk 이미지인 .avhd 파일이 생성됩니다.
2. 새로운 Snapshot configuration (<GUID.xml) 이 생성됩니다.
3. VM configuration을 Snapshot configuration 파일에 복사합니다.
4. Saved state file (<GUID>.vsv) 을 복사하고 이것을 Snapshot configuration 에 Attach 합니다.
5. 새로운 <GUID>.bin 파일을 생성하고, 메모리의 내용을 이 파일에 복사합니다.
그럼 Snapshot 을 만들어질 경우 VM 파일과 Snapshot 파일이 어떻게 생성되는지 보겠습니다.
Snapshot 이 없는 상태



Snapshot #1생성



Snapshot #2 생성



Snapshot #3 생성



VM의 .bin, .vsv 파일들은 변경되지 않고 있습니다.


VM Client 를 시스템 종료 후 10여분 후 다시 켰을 때는 마지막 AVHD 파일만 변경되고 있습니다.

Snapshot #1으로 이동


Snapshot #1삭제 (Snapshots 폴더 하위 11C6C089-… 가 제거됨)


“Delete Snapshot Subtree” 로 모두 삭제

