LabHub
学习 学习路径 课程

虚拟化与 QEMU/KVM

快照的两种方式

在 LabHub 中继续学习

한국어 원문으로 표시합니다.

목표

qcow2 의 내부 스냅샷외부 스냅샷을 모두 만들어 보고, 두 방식의 차이를 실제 파일 구조로 확인합니다.

왜 중요한가

내부 스냅샷은 파일 하나로 관리되어 편하지만 백업이 어렵습니다 — 원본이 계속 바뀌기 때문입니다. 외부 스냅샷은 현재 이미지를 백킹으로 삼는 새 오버레이를 만들어 원본을 그 시점에 얼어붙게 합니다. 그래서 백업 도구가 원본을 안전하게 복사할 수 있고, 이것이 실무 백업 워크플로의 표준입니다. 되돌리기도 오버레이를 버리는 것으로 끝나 단순합니다. 대신 파일이 늘어나고 체인 관리가 필요합니다.

주의: VM 이 실행 중일 때 qemu-img 로 이미지를 건드리면 안 됩니다. 이 실습은 정지 상태에서만 진행합니다.

단계

  1. /root/snap 디렉터리를 만들고 /root/snap/disk.qcow2 를 1G qcow2 로 만드세요.
  2. before-upgrade 라는 이름의 내부 스냅샷을 만드세요.
  3. 스냅샷 목록을 /root/snap/list1.txt 로 저장하세요. before-upgrade 가 보여야 합니다.
  4. after-patchrollback-point 두 개를 더 만들고, 목록을 /root/snap/list3.txt 로 저장하세요. 스냅샷이 정확히 3개여야 합니다.
  5. before-upgrade 스냅샷을 적용(되돌리기)하고, 그 명령의 종료 코드를 /root/snap/applied.txtrc=0 형식으로 적으세요.
  6. after-patch 스냅샷을 삭제하고, 남은 목록을 /root/snap/list2.txt 로 저장하세요. 스냅샷이 정확히 2개여야 합니다.
  7. 외부 스냅샷을 만드세요. disk.qcow2 를 백킹으로 하는 /root/snap/disk.ext1.qcow2 를 만들고, 백킹 체인 출력을 /root/snap/chain.txt 로 저장하세요.
  8. /root/snap/compare.txt 를 다음 4줄로 만드세요. INTERNAL_COUNT=<6번 이후 남은 내부 스냅샷 개수> / EXTERNAL_FILES=2 / BACKUP_FRIENDLY=external / ROLLBACK_INTERNAL=-a

참고

실습 이미지 준비

/root/snap 디렉터리를 만들고 /root/snap/disk.qcow2 를 1G qcow2 로 만드세요.

앞 실습과 별개의 새 이미지를 쓰세요. 크기는 작아도 됩니다.

내부 스냅샷 생성

before-upgrade 라는 이름의 내부 스냅샷을 만드세요.

qemu-img snapshot 의 -c 가 생성입니다. 이름을 인자로 줍니다.

스냅샷 목록

스냅샷 목록을 /root/snap/list1.txt 로 저장하세요. before-upgrade 가 보여야 합니다.

-l 은 ID, TAG, 크기, 시각을 표로 보여 줍니다. 머리말 줄이 있으니 개수를 셀 때 주의하세요.

여러 시점 만들기

after-patchrollback-point 두 개를 더 만들고, 목록을 /root/snap/list3.txt 로 저장하세요. 스냅샷이 정확히 3개여야 합니다.

같은 명령을 이름만 바꿔 반복하면 됩니다. 목록에 세 개가 보여야 합니다.

스냅샷 되돌리기

before-upgrade 스냅샷을 적용(되돌리기)하고, 그 명령의 종료 코드를 /root/snap/applied.txtrc=0 형식으로 적으세요.

-a 는 지정한 스냅샷 시점으로 이미지 내용을 되돌립니다. 목록 자체는 남습니다.

스냅샷 삭제

after-patch 스냅샷을 삭제하고, 남은 목록을 /root/snap/list2.txt 로 저장하세요. 스냅샷이 정확히 2개여야 합니다.

-d 로 하나를 지우면 목록에서 사라집니다. 남은 개수를 확인하세요.

외부 스냅샷 만들기

외부 스냅샷을 만드세요. disk.qcow2 를 백킹으로 하는 /root/snap/disk.ext1.qcow2 를 만들고, 백킹 체인 출력을 /root/snap/chain.txt 로 저장하세요.

현재 이미지를 백킹으로 하는 새 오버레이를 만드는 것이 곧 외부 스냅샷입니다.

두 방식 비교표

/root/snap/compare.txt 를 다음 4줄로 만드세요. INTERNAL_COUNT=<6번 이후 남은 내부 스냅샷 개수> / EXTERNAL_FILES=2 / BACKUP_FRIENDLY=external / ROLLBACK_INTERNAL=-a

값은 앞 단계에서 실제로 확인한 것이어야 합니다. 백업 친화성은 원본이 고정되는지로 판단하세요.