13년차의 서버실

서버, 인프라, 홈랩 기술 블로그

Proxmox 백업 vzdump 완전 정리 — 스냅샷 말고 진짜 백업 걸기

지난 ZFS 글에서 “스냅샷은 백업이 아니다”라고 했습니다. 그럼 Proxmox에서 진짜 백업은 어떻게 할까요? 답은 vzdump입니다. VM·컨테이너를 통째로 백업하는 Proxmox 내장 도구인데, 솔직히 저도 아직 예약 백업을 안 걸어둔 상태라 이번 기회에 제대로 정리합니다.

1. vzdump이 하는 일

vzdump은 VM/LXC 전체를 하나의 아카이브로 백업합니다. 스냅샷(같은 디스크 안의 되돌리기)과 달리, 별도 스토리지(NAS 등)에 복제본을 만드는 진짜 백업입니다.

  • 디스크가 통째로 죽어도 복구 가능
  • 다른 노드·다른 서버로 이전 가능
  • 보관 개수를 정해 자동 로테이션

2. 백업 모드 3가지

모드 다운타임 특징
snapshot 거의 없음 실행 중 백업(권장)
suspend 잠깐 정지 중간 안전성
stop 완전 정지 가장 일관적

대부분 snapshot 모드면 충분합니다. 실행 중인 서비스를 멈추지 않고 백업하니까요(단, DB처럼 일관성이 중요하면 stop 고려).

3. 수동 백업 — 한 줄

# LXC 113을 NAS 스토리지에 snapshot 모드로 백업
vzdump 113 --mode snapshot --storage nas-backup --compress zstd

# 여러 개 한 번에
vzdump 112 113 124 --mode snapshot --storage nas-backup --compress zstd

--compress zstd는 빠르고 압축률도 좋아 요즘 표준입니다. 백업 파일은 지정한 스토리지(예: NAS)에 .vma.zst(VM) / .tar.zst(LXC)로 쌓입니다.

4. 예약 백업 (여기가 진짜 핵심)

수동은 잊어버립니다. Proxmox 웹UI Datacenter → Backup → Add에서 예약을 겁니다. 핵심 설정은 —

  • 대상: 백업할 VM/LXC 선택(또는 전체)
  • 스토리지: 반드시 다른 디스크/NAS(같은 풀에 백업하면 의미 없음)
  • 스케줄: 예) 매일 새벽 3시
  • 보관(Retention): 일 7 / 주 4 / 월 3 등
# /etc/pve/jobs.cfg 에 생성되는 예약 백업(예시)
vzdump: backup-daily
	schedule 03:00
	storage nas-backup
	mode snapshot
	compress zstd
	prune-backups keep-daily=7,keep-weekly=4

5. 복구

백업이 있으면 복구는 간단합니다. 웹UI에서 백업 파일 선택 → Restore, 또는 CLI로:

# LXC 복구 (새 ID 113으로)
pct restore 113 /mnt/nas-backup/dump/vzdump-lxc-113-....tar.zst --storage local-zfs

중요: 백업은 복구 테스트까지 해봐야 진짜 백업입니다. 한 번쯤 테스트 ID로 복구해 정상 부팅을 확인해 두세요.

6. 정리 — 스냅샷 + vzdump = 완성

스냅샷은 위험한 작업 직전의 빠른 되돌리기, vzdump은 다른 스토리지에 두는 진짜 백업입니다. 둘은 역할이 다르니 둘 다 써야 합니다. 저처럼 “스냅샷은 하는데 예약 백업은 아직”인 분이라면, 오늘 Datacenter → Backup에서 매일 백업 하나만 걸어두세요. 미래의 내가 고마워할 겁니다.