
VMM 백업을 Google Drive로: 예약 내보내기, 클라우드 동기화 및 단일 파일 이름 변경 스크립트
읽는 데 12분 소요
가상 머신과 동일한 NAS에만 저장되는 VMM 백업은 진정한 의미의 백업이 아닙니다. 해당 NAS에 문제가 발생하면 두 백업 파일 모두 손실되기 때문입니다. 저희 스토리지는 Synology 및 Virtual Machine Manager NAS의 Virtual DSM 게스트로 실행되며, 오프사이트 VMM 백업은 DSM에 포함된 두 가지 무료 도구(Virtual Machine Manager의 예약 내보내기 및 Google Drive 클라우드 동기화)를 사용하여 구축했습니다. 설정하는 데는 오후 시간이 걸렸지만, 작동이 갑자기 멈춘 이유를 찾는 데는 더 오랜 시간이 걸렸습니다. 바로 이 부분이 이 NAS 호스팅 기초 문서의 목적입니다. 아래에는 정상적으로 작동하는 설정, 오류를 일으키는 파일 이름 관련 문제, 문제를 해결하는 간단한 스크립트, 그리고 자체 내보내기 분석 결과를 설명합니다.
SynoPower Club 포인트: 모든 지원 엔지니어는 백업이 1년 동안 아무 문제 없이 정상적으로 진행되다가 결국 아무것도 복원되지 않은 고객에 대한 이야기를 한 번쯤은 들어봤을 겁니다. 하지만 저는 우리 회사에서 그런 일이 벌어질 줄은 몰랐습니다. VMM 백업 작업은 인터페이스에서는 완벽하게 정상으로 보였지만, 한 호스트는 1테라바이트에 달하는 백업 파일을 쌓아두고도 정리가 되지 않았고, 다른 호스트는 13일 동안 단 하나의 파일도 생성하지 않았습니다. 숨겨진 문제는 없었습니다. 모든 문제는 아무도 읽지 않는 로그 파일에 기록되어 있었습니다. 문제를 해결하는 데는 한 시간밖에 걸리지 않았습니다. 여기서 얻은 교훈은 다른 작업과 마찬가지로 백업 파일이 실제로 어디에 있는지, 그리고 정기적으로 백업되는지 확인해야 한다는 것입니다.
완벽한 VMM 백업에 필요한 것 #
Virtual Machine Manager는 3단계 보호 기능을 제공하며, 각 단계는 서로 다른 장애 유형을 보호합니다. 효과적인 VMM 백업 계획은 이 중 하나 이상을 활용합니다.
| 층 | 원고가 있는 곳 | 무엇으로부터 보호해주는가 |
|---|---|---|
| 스냅샷 | 손님과 같은 음량 | 잘못된 업데이트 또는 게스트 내부의 오류 |
| 복제(VMM Pro) | 클러스터 내의 또 다른 NAS | NAS에 장애가 발생했지만 다른 호스트에서 신속하게 복구되었습니다. |
| 예약 내보내기 + 클라우드 동기화 | 외부 클라우드 계정 | 사이트 전체 손실: 화재, 도난, LAN 랜섬웨어 공격 |
저희는 이미 앞서 설명한 대로 6명의 게스트를 대기 호스트로 복제하고 있습니다. 3노드 Synology 가상 머신 클러스터. 복제는 건물 내에 사본을 유지합니다. 내보내기 계층은 건물 외부에 사본을 유지하는 역할을 합니다.
VMM 예약 내보내기 작동 방식 #
VMM 백업의 경우, 예약된 내보내기 기능을 사용하면 게스트 운영 체제, 디스크 및 구성의 전체 복사본이 단일 OVA 파일로 공유 폴더에 저장됩니다. 대상 폴더, 내보내기 모드, 일별, 주별 또는 월별 내보내기 주기, 그리고 보관할 최신 파일 개수를 선택할 수 있습니다. 내보내기는 게스트 운영 체제가 실행 중인 동안 실행됩니다.
두 가지 규칙을 간과하기 쉽습니다. 첫째, 내보내기는 게스트 운영 체제가 있는 호스트에서 구성되고 저장됩니다. 저장 실행 위치가 아니라 저장소의 위치를 기준으로 합니다. 클러스터 환경에서 게스트는 하나의 NAS에서 실행되지만 디스크는 다른 NAS에 저장될 수 있으며, Virtual Machine Manager 오류로 인해 잘못된 호스트에서 예약 내보내기 옵션이 비활성화됩니다. 둘째, 예약은 해당 스토리지 호스트의 시간을 사용합니다.

이 대화 상자에는 일관성 상태도 표시됩니다. 게스트에 Synology 게스트 도구가 설치되어 있지 않으면 내보내기는 전원 코드를 뽑았을 때와 동일한 상태인 크래시 일관성을 유지합니다. 이는 대부분의 워크로드에 적합하며, 게스트 도구를 설치하면 파일 시스템 일관성으로 업그레이드됩니다.
클라우드 동기화에서 VMM 백업 파일을 건너뛰는 이유는 무엇입니까? #
다음 단계는 당연히 클라우드 동기화에서 내보내기 폴더를 지정하고 모든 파일을 Google Drive에 업로드하는 것입니다. 저희는 그대로 진행했지만 VMM 백업 파일은 도착하지 않았습니다.
이유는 파일 이름 때문입니다. Virtual Machine Manager는 각 내보내기 파일에 콜론이 포함된 타임스탬프를 사용하여 파일 이름을 지정합니다.
exp_web-2026-09-25 10:29:51-6f713905-cee2-4647-94d5-a5ce6fbdc585.ova
클라우드 동기화 기능으로 해당 파일 이름이 Google Drive에 업로드되지 않아 모든 내보내기 파일이 로컬에 저장되었습니다. 파일 자체는 유효하지만, 특정 문자가 문제입니다. Virtual Machine Manager에서는 내보내기 타임스탬프 형식을 변경할 수 없으므로, 내보내기와 업로드 사이에 수정 작업을 진행해야 합니다.
흥미롭게도 예약된 내보내기에만 타임스탬프가 포함됩니다. 동일한 메뉴에서 수동으로 내보낸 경우에는 게스트 이름(예: ...)으로만 저장됩니다. spc_4C8G.ova, 그리고 클라우드 동기화는 아무 문제 없이 파일을 업로드합니다. 바로 이 때문에 간단한 수동 테스트에서는 전체 과정이 정상적으로 보이는 반면, 야간 스케줄에 따라 업로드되는 파일은 클라우드에 도달하지 못하는 경우가 발생하는 것입니다.
VMM 백업을 Google Drive에 4단계로 설정하는 방법 #
게스트 OS를 저장하는 각 호스트에서 작동하는 VMM 백업 설정입니다. Virtual Machine Manager, 클라우드 동기화 및 Google 계정이 필요하며, VMM Pro는 필요하지 않습니다.
수출 일정을 잡으세요 #
게스트 운영 체제가 저장된 호스트에서 Virtual Machine Manager를 열고 게스트 운영 체제를 선택한 다음, 작업, 내보내기, 예약 순으로 선택하고 공유 폴더를 대상으로 지정한 후 시간을 설정합니다. 보존 설정은 로컬에 보관할 복사본 수로 그대로 둡니다.
클라우드 동기화 작업을 생성합니다. #
클라우드 동기화에서 Google Drive에 연결하고 내보낸 공유 폴더를 Drive 폴더와 동기화합니다. 로컬에서 변경한 내용을 업로드하도록 방향을 설정하고, 클라우드에 이전 버전의 파일을 보관하려면 원본에서 파일이 삭제되더라도 대상에서 파일을 삭제하지 않는 옵션을 선택합니다.
이름 변경 스크립트를 추가하세요 #
이 문서의 스크립트를 NAS에 저장하고 루트 권한으로 매시간 실행되는 작업 스케줄러 작업을 생성하세요. 이 스크립트는 완료된 내보내기 파일의 이름을 콜론 없이 변경하고 게스트별로 최신 복사본을 유지합니다.
첫 번째 업로드를 확인하세요 #
다음 내보내기 후, 이름이 변경된 파일이 내보내기 폴더에 나타나는지, 클라우드 동기화에서 업로드되었다고 보고하는지, 그리고 Google Drive의 파일 크기가 원본과 일치하는지 확인하십시오.

VMM 백업에 사용되는 이름 변경 스크립트 #
이 스크립트는 VMM 백업 체인에서 유일하게 사용자 정의된 부분이며, 두 가지 작업을 수행합니다. 첫째, 완료된 각 내보내기 파일의 이름을 콜론(:)을 대시(-)로 바꿔 변경합니다. 둘째, 내보내기 폴더에는 각 게스트의 최신 복사본만 유지합니다. 이 스크립트는 15분 동안 변경되지 않은 파일만 수정하므로, 아직 작성 중인 내보내기 파일은 절대 이름을 변경하지 않습니다.
#!/bin/bash # vm-export-cloud.sh - VMM 내보내기를 클라우드 동기화로 업로드할 수 있도록 합니다. # # VMM 내보내기 이름 " -YYYY-MM-DD HH:MM:SS- .ova". Cloud Sync는 이름에 ":"가 포함된 파일을 업로드하지 않습니다. 즉, 아직 기록 중인 내보내기 파일은 처리하지 않습니다. 내보내기가 완료되면 ":"를 "-"로 바꿔 파일 이름을 변경합니다. 이렇게 하면 Cloud Sync에서 해당 파일을 인식하고, 게스트별로 가장 최근에 이름이 변경된 내보내기 파일만 유지합니다. (VMM 자체의 보존 기능은 이름이 변경된 파일을 더 이상 인식하지 못하므로, 보존은 여기서 수행됩니다.) 사용법: vm-export-cloud.sh EXPORT_DIR KEEP [--apply] --apply 옵션이 없으면 실행될 내용만 출력됩니다. set -u DIR=${1:?EXPORT_DIR}; KEEP=${2:?KEEP}; APPLY=${3:-} MIN_AGE_MIN=15 # 완료된 내보내기는 이 긴 시간 동안 변경되지 않습니다. LOG="$(dirname "$(readlink -f "$0")")/vm-export-cloud.log" say() { echo "$(date '+%F %T') $*"; [ "$APPLY" = "--apply" ] && echo "$(date '+%F %T') $*" >> "$LOG"; } run() { if [ "$APPLY" = "--apply" ]; then "$@"; else echo " (dry-run) $*"; fi; } [ -d "$DIR" ] || { say "ERROR export folder 누락됨: $DIR"; 종료 1; } # 1. 완료된 내보내기 이름 변경 찾기 "$DIR" -maxdepth 1 -type f -name '*:*.ova' -mmin +$MIN_AGE_MIN -print0 | while IFS= read -r -d '' f; do if command -v fuser >/dev/null 2>&1 && fuser -s "$f" 2>/dev/null; then say "건너뛰기(사용 중): $(basename "$f")"; continue fi new="$DIR/$(basename "$f" | tr ':' '-')" say "이름 변경: $(basename "$f") -> $(basename "$new")" run mv -n "$f" "$new" 완료 # 2. 게스트별로 이름이 변경된 최신 내보내기를 유지합니다(타임스탬프는 이름에 포함됨) { find "$DIR" -maxdepth 1 -type f -name '*.ova' ! -name '*:*' -printf '%f\n' [ "$APPLY" = "--apply" ] || find "$DIR" -maxdepth 1 -type f -name '*:*.ova' -mmin +$MIN_AGE_MIN -printf '%f\n' | tr ':' '-' } | sort -u | sed -E 's/^(.*)-([0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}-[0-9]{2}-[0-9]{2})-.*\.ova$/\1\t\2\t&/' | awk -F'\t' 'NF==3' | sort -t$'\t' -k1,1 -k2,2r | awk -F'\t' -v keep="$KEEP" '{ n[$1]++; if (n[$1] > keep) print $3 }' | while IFS= read -r old; do say "delete (beyond newest $KEEP): $old" run rm -f -- "$DIR/$old" done say "done: $(find "$DIR" -maxdepth 1 -name '*.ova' | wc -l) $DIR, $(df -h "$DIR" | awk 'NR==2{print $4" free"}')에 내보내기"
먼저 마지막 인수를 빼고 실행해 보세요. 그러면 이름이 바뀌거나 삭제되는 항목만 출력됩니다. 출력 결과가 만족스러우면 마지막 인수를 추가하여 실행되도록 예약하세요. 저희 작업 스케줄러는 루트 권한으로 매시간 다음과 같은 명령어를 사용하여 실행되며, 내보내기 폴더당 하나의 작업이 생성됩니다.
bash /volume1/@vm-export-cloud/vm-export-cloud.sh "/volume3/VM_BK_Export" 3 --apply
콜론 규칙의 유용한 부작용 중 하나는 Cloud Sync가 스크립트가 파일 이름을 변경하기 전까지는 내보내기 파일을 업로드할 수 없다는 점입니다. 그리고 스크립트는 완료된 파일의 이름만 변경합니다. 따라서 작성이 완료된 내보내기 파일은 클라우드에 절대 도달하지 않습니다.
스크립트가 VMM 백업 보존을 처리하는 이유는 무엇일까요? #
Virtual Machine Manager는 자체적인 보존 설정을 가지고 있으며, 생성하는 각 내보내기 파일을 기록하는 방식으로 작동합니다. 스크립트가 파일 이름을 변경하면 Virtual Machine Manager는 더 이상 해당 파일을 인식하지 못하고 삭제하지 않습니다. 따라서 보존 관리는 스크립트 자체에서 이루어지며, 파일 이름의 타임스탬프를 기준으로 게스트별 파일 복사본 수를 계산합니다.
클라우드 동기화 측면에서 체크박스 하나로 Google Drive에서 어떤 일이 발생할지 결정됩니다. 하지만 그 문구가 오해하기 쉽습니다. 원본 폴더에서 파일을 삭제하더라도 대상 폴더에서는 파일을 삭제하지 마십시오.. 이 옵션을 선택 해제하면 Google Drive가 NAS를 미러링하여 동일한 세 개의 복사본을 유지합니다. 이 옵션을 선택하면 클라우드에 업로드된 모든 내보내기 파일이 저장되므로 랜섬웨어 공격에 대한 방어에는 더 안전하지만, 수동으로 정리하기 전까지는 저장 용량이 계속 증가합니다.
자사 수출 감사 결과 밝혀진 사실 #
이 설정을 하기 전에는 VMM 백업이 약 한 달 동안 두 프로덕션 호스트 모두에서 실행되고 있었습니다. 대시보드 대신 파일을 확인해 보니 세 건의 오류가 발견되었습니다.
- 한 호스트에서 데이터 보존 기능이 조용히 중단되었습니다. Virtual Machine Manager에서 내보내기 추적에 사용하는 소규모 데이터베이스를 내보내기 폴더에 생성할 수 없어서 실행할 때마다 오류가 기록되었고 이전 내보내기 파일이 삭제되지 않았습니다. 한 호스트에는 1테라바이트의 OVA 파일이 쌓여 97% 용량 초과 오류가 발생했습니다.
- 최대 고객사가 수출을 중단했습니다. 84GB 용량의 내보내기 파일이 남은 공간에 더 이상 들어가지 않아, 아무런 알림도 없이 3일 연속으로 실패했습니다.
- 아무런 방향성도 없는 세 개의 일정표. 설정 변경으로 인해 세 개의 내보내기 일정의 대상이 비어 있게 되었습니다. 그 이후로 매분마다 2만 번 이상 유효하지 않은 공유 이름 오류가 발생했고, 이 저장소에 대한 일정을 포함하여 아무것도 내보내지지 않았습니다.
이 모든 상황은 정상적인 사용 환경에서 VMM 백업 실패로 나타나지 않았습니다. 게스트 운영 체제는 정상적으로 작동했고, 스토어는 주문을 처리했으며, 복제는 대기 호스트에 사본을 유지했습니다. 유일한 오프사이트 사본인 내보내기 레이어가 단순히 중단된 것입니다. 이제 우리는 스케줄을 변경할 때마다 내보내기 폴더와 클라우드 동기화 업로드 목록을 확인합니다.

VMM 백업을 위한 대역폭 및 스토리지 계획 #
VMM 백업 내보내기는 모두 전체 복사본을 생성하며, 증분 복사본을 생성하지 않으므로 일정을 선택하기 전에 크기를 확인해야 합니다. 저희 고객사는 5GB 규모의 소규모 웹사이트부터 84GB 규모의 파트너 웹사이트까지 다양하며, 이 스토어 자체의 내보내기 용량은 약 7GB입니다. 모든 고객사를 합산하면 일일 일정에 따라 하루에 100GB가 넘는 용량이 업로드됩니다.
Google Drive는 사용자당 24시간에 750GB, 최대 5TB의 파일을 업로드할 수 있도록 허용하므로 용량 제한 자체가 문제는 되는 경우는 드뭅니다. 문제는 업로드 시간과 클라우드 저장 공간입니다. 모든 게스트의 복사본을 클라우드에 세 개씩 보관하려면 일일 총 업로드 용량의 세 배에 해당하는 Drive 공간이 필요하며, 모든 복사본을 클라우드에 보관하는 경우에는 더 많은 공간이 필요합니다. 규모가 크고 변경 속도가 느린 게스트의 경우, 특히 복제 기능을 통해 일상적인 복구가 이미 이루어지고 있다면 주간 단위로 내보내는 것으로도 충분한 경우가 많습니다.
Synology 도구를 사용하여 백업을 구축하는 이유 #
이 VMM 백업 체인의 모든 구성 요소는 DSM에 포함되어 제공됩니다. Virtual Machine Manager는 게스트를 내보내고, 클라우드 동기화는 이를 업로드하며, 작업 스케줄러는 스크립트를 실행하고, 동일한 NAS 장치에 파일을 저장하고 스토리지를 운영합니다. 게스트별로 라이선스를 구매해야 하는 백업 에이전트도 없고, 별도의 백업 서버를 유지 관리할 필요도 없습니다.
우리가 비용을 지불하는 부분은 호스트 간 보호 기능을 추가하는 부분입니다. VMM Pro 라이센스 대기 서버로 복제하기 위해, Virtual DSM 라이센스 추가 DSM 손님을 위한 것입니다. 어떤 에디션이 필요한지 고민 중이시라면, 저희 제품을 참고하세요. Virtual Machine Manager와 VMM Pro 비교 그것을 다룹니다.
VMM 백업 제한 사항 및 주의 사항 #
내보내기는 특정 시점의 전체 복사본입니다. 게스트 툴을 사용하지 않는 경우, 충돌 시에도 동일한 상태를 유지하므로 게스트 내부의 데이터베이스는 정전 후와 동일하게 복구됩니다. 가장 중요한 게스트를 최소 한 번은 복원 테스트를 해보세요.
클라우드에서 VMM 백업을 복원하려면 먼저 전체 파일을 다운로드해야 합니다. 84GB 파일을 내보내는 데 일반적인 사무실 인터넷 연결에서는 몇 시간이 걸리므로, 클라우드 백업은 심각한 재해 발생 시에만 사용하는 것이지 일상적인 실수를 복구하기 위한 용도는 아닙니다. 스냅샷 및 복제 기능을 사용하면 이러한 문제를 훨씬 빠르게 해결할 수 있습니다.
클라우드 동기화는 업로드 전에 파일을 암호화할 수 있으며, 고객 데이터가 저장된 게스트 NAS의 경우 이 기능을 활성화하는 것이 좋습니다. 암호화 암호는 보호하려는 NAS와 연관되지 않은 곳에 보관하십시오.
마지막으로, 이름 변경 스크립트는 내보내기 이름 형식에 따라 달라집니다. 향후 Virtual Machine Manager 업데이트에서 형식이 변경되면 스크립트가 더 이상 파일을 인식하지 못하게 됩니다. 업데이트 후에도 내보내기가 제대로 인식되는지 확인하는 가장 빠른 방법은 테스트 모드를 사용하는 것입니다.
자주 묻는 질문 #
VMM 백업을 Google Drive에 저장하려면 VMM Pro 용량의 메모리가 필요한가요? #
아니요. 예약 내보내기는 무료 Virtual Machine Manager 버전에 포함되어 있으며, 클라우드 동기화 및 작업 스케줄러는 DSM에 기본으로 제공됩니다. VMM Pro 버전은 호스트 간 복제 기능을 추가하는데, 이는 별도의 계층으로 제공됩니다.
클라우드 동기화가 VMM 내보내기 파일을 업로드하지 못하는 이유는 무엇입니까? #
Virtual Machine Manager는 내보내기 파일 이름에 콜론이 포함된 타임스탬프를 넣는데, 클라우드 동기화에서 해당 이름으로 Google Drive에 업로드되지 않습니다. 콜론을 제거하여 최종 파일 이름을 변경하면 문제가 해결됩니다.
Virtual Machine Manager는 예약된 내보내기를 어디에 저장하나요? #
게스트 스토리지가 있는 호스트의 공유 폴더에 저장됩니다. 게스트가 실행 중인 호스트에는 저장되지 않습니다. 예약은 해당 스토리지 호스트에서만 구성할 수 있습니다.
VMM 백업 내보내기는 일관성이 있습니까? #
Synology 게스트 툴이 없으면 내보내기 파일이 갑작스러운 전원 손실과 같은 오류로 인해 충돌할 수 있습니다. 게스트 툴을 게스트 내부에 설치하면 내보내기 파일이 시스템 일관성을 유지하게 됩니다.
내보내기용 사본을 몇 개 보관해야 할까요? #
저희는 각 게스트 OS의 최신 복사본 3개를 NAS에 보관합니다. 클라우드 동기화 옵션에 따라 클라우드는 해당 복사본을 미러링하거나 모든 복사본을 보관할 수 있습니다.
스크립트가 미완성된 내보내기 파일을 업로드할까요? #
아니요. 15분 동안 변경되지 않은 파일만 이름이 바뀌며, 클라우드 동기화는 파일 이름이 바뀌기 전에는 내보내기 파일을 업로드할 수 없습니다.
VMM 백업은 하루에 얼마나 많은 대역폭을 사용합니까? #
내보내기할 때마다 게스트의 전체 사본이 생성됩니다. 매일 내보내는 게스트의 크기를 모두 더하면, 저희는 하루에 100GB를 훨씬 넘는데, 이는 Google Drive의 일일 업로드 제한인 750GB 이내입니다.
원격 VMM 백업 없이 복제만으로 충분할까요? #
복제는 NAS 장애 발생 시에도 데이터를 보호하지만, 복사본은 같은 건물 내에 보관됩니다. 반면, 오프사이트로의 데이터 전송은 전체 사이트 손실에 대비한 보안을 제공하므로, 이 두 가지 기능을 함께 사용하는 것이 가장 효과적입니다.
참고 자료 및 비디오 튜토리얼 #
- Virtual Machine Manager의 가상 머신, 수출에 관한 지식 센터 문서입니다.
- 클라우드 동기화 도움말, 동기화 방향 및 작업 설정을 포함합니다.
- Google Drive 저장 용량 및 업로드 제한, 일일 업로드 제한은 750GB입니다.
- Synology VMM 백서, 가상 머신용 데이터 보호 계층에 관하여.
- DSM의 작업 스케줄러, 이름 변경 스크립트를 예약된 작업으로 실행하기 위한 것입니다.
이 과정에서 사용되는 도구에 대한 비디오: 클라우드 동기화, 그리고 Synology NAS에서 가상 머신 내보내기 및 마이그레이션.
오프사이트 복사본 외에 호스트 간 복제를 추가하고 싶으신가요? 지금 바로 문의하세요! VMM Pro 라이센스, 또는 이 사이트의 나머지 부분이 어떻게 운영되는지 읽어보세요. NAS 호스팅 기초 시리즈.