前提 †
- オンラインでバックアップ
- PCIパススルーを設定している仮想マシンはオフラインでしか取れない。
やり方 †
バックアップ用スクリプトの使い方説明(英語)
https://github.com/lamw/ghettoVCB
- 以下のサイトからバックアップ用スクリプトをダウンロードする
バックアップスクリプト(ghettoVCB.sh)
https://github.com/lamw/ghettoVCB/archive/master.zip
- ESXiから見えるバックアップ先のメディアを用意する
SATAに接続したHDD、iSCSI、NFSなど
- 解凍&展開
# cd /vmfs/volumes/datastore1/~
# unzip ghettoVCB-master.zip~
# mv ghettoVCB-master ghettoVCB~
# cd ghettoVCB~
- 設定ファイル編集
# vi ghettoVCB.conf
VM_BACKUP_VOLUME=/vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB #バックアップ保存先
VM_BACKUP_ROTATION_COUNT=3 #バックアップは3世代~
- バックアップ対象の仮想マシン名を記述
# vi backup_vmlist.txt
WEB
MAIL
- オンラインバックアップの実行
# ./ghettoVCB.sh -f ./backup_vmlist.txt -g ./ghettoVCB.conf
Logging output to "/tmp/ghettoVCB-2014-09-17_16-12-19-274597.log" ...
2014-09-17 16:12:19 -- info: ============================== ghettoVCB LOG START ==============================
2014-09-17 16:12:19 -- debug: Succesfully acquired lock directory - /tmp/ghettoVCB.work
2014-09-17 16:12:19 -- debug: HOST VERSION: VMware ESXi 5.5.0 build-1623387
2014-09-17 16:12:19 -- debug: HOST LEVEL: VMware ESXi 5.5.0 Update 1
2014-09-17 16:12:19 -- debug: HOSTNAME: esxi.hanzou.jp
2014-09-17 16:12:19 -- info: CONFIG - USING GLOBAL GHETTOVCB CONFIGURATION FILE = ./ghettoVCB.conf
2014-09-17 16:12:19 -- info: CONFIG - VERSION = 2013_26_11_2
2014-09-17 16:12:19 -- info: CONFIG - GHETTOVCB_PID = 274597
2014-09-17 16:12:19 -- info: CONFIG - VM_BACKUP_VOLUME = /vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB
2014-09-17 16:12:19 -- info: CONFIG - VM_BACKUP_ROTATION_COUNT = 3
2014-09-17 16:12:19 -- info: CONFIG - VM_BACKUP_DIR_NAMING_CONVENTION = 2014-09-18_01-12-19
2014-09-17 16:12:19 -- info: CONFIG - DISK_BACKUP_FORMAT = thin
2014-09-17 16:12:19 -- info: CONFIG - POWER_VM_DOWN_BEFORE_BACKUP = 0
2014-09-17 16:12:20 -- info: CONFIG - ENABLE_HARD_POWER_OFF = 0
2014-09-17 16:12:20 -- info: CONFIG - ITER_TO_WAIT_SHUTDOWN = 3
2014-09-17 16:12:20 -- info: CONFIG - POWER_DOWN_TIMEOUT = 5
2014-09-17 16:12:20 -- info: CONFIG - SNAPSHOT_TIMEOUT = 15
2014-09-17 16:12:20 -- info: CONFIG - LOG_LEVEL = debug
2014-09-17 16:12:20 -- info: CONFIG - BACKUP_LOG_OUTPUT = /tmp/ghettoVCB-2014-09-17_16-12-19-274597.log
2014-09-17 16:12:20 -- info: CONFIG - ENABLE_COMPRESSION = 0
2014-09-17 16:12:20 -- info: CONFIG - VM_SNAPSHOT_MEMORY = 0
2014-09-17 16:12:20 -- info: CONFIG - VM_SNAPSHOT_QUIESCE = 0
2014-09-17 16:12:20 -- info: CONFIG - ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP = 0
2014-09-17 16:12:20 -- info: CONFIG - VMDK_FILES_TO_BACKUP = all
2014-09-17 16:12:20 -- info: CONFIG - VM_SHUTDOWN_ORDER =
2014-09-17 16:12:20 -- info: CONFIG - VM_STARTUP_ORDER =
2014-09-17 16:12:20 -- info: CONFIG - RSYNC_LINK = 0
2014-09-17 16:12:20 -- info: CONFIG - EMAIL_LOG = 0
2014-09-17 16:12:20 -- info:
2014-09-17 16:12:23 -- debug: Storage Information before backup:
2014-09-17 16:12:23 -- debug: SRC_DATASTORE: ESXI_DATA
2014-09-17 16:12:23 -- debug: SRC_DATASTORE_CAPACITY: 63488.0
2047.8 GB
2014-09-17 16:12:23 -- debug: SRC_DATASTORE_FREE: 1316.3 GB
2014-09-17 16:12:23 -- debug: SRC_DATASTORE_BLOCKSIZE: 1
2014-09-17 16:12:23 -- debug: SRC_DATASTORE_MAX_FILE_SIZE: 256 GB
2014-09-17 16:12:23 -- debug:
2014-09-17 16:12:23 -- debug: DST_DATASTORE: ESXI_BACKUP
2014-09-17 16:12:23 -- debug: DST_DATASTORE_CAPACITY: 16221.8
1833.4 GB
2014-09-17 16:12:23 -- debug: DST_DATASTORE_FREE: 709.7 GB
2014-09-17 16:12:23 -- debug: DST_DATASTORE_BLOCKSIZE: NA
2014-09-17 16:12:23 -- debug: DST_DATASTORE_MAX_FILE_SIZE: NA
2014-09-17 16:12:23 -- debug:
2014-09-17 16:12:24 -- debug: getVMDKs() - WEB-0.vmdk###16:
2014-09-17 16:12:25 -- info: Initiate backup for WEB
2014-09-17 16:12:25 -- info: Creating Snapshot "ghettoVCB-snapshot-2014-09-17" for WEB
/bin/vim-cmd vmsvc/snapshot.create 133 ghettoVCB-snapshot-2014-09-17 ghettoVCB-snapshot-2014-09-17 0 0
2014-09-17 16:12:27 -- debug: Waiting for snapshot "ghettoVCB-snapshot-2014-09-17" to be created
2014-09-17 16:12:27 -- debug: Snapshot timeout set to: 900 seconds
2014-09-17 16:12:27 -- debug: findVMDK() - Searching for VMDK: "WEB-0.vmdk" to backup
2014-09-17 16:12:27 -- debug: /sbin/vmkfstools -i "/vmfs/volumes/ESXI_DATA/WEB/WEB-0.vmdk" -a "lsilogic" -d "thin" "/vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB/WEB/WEB-2014-09-18_01-12-19/WEB-0.vmdk"
Destination disk format: VMFS thin-provisioned
Cloning disk '/vmfs/volumes/ESXI_DATA/WEB/WEB-0.vmdk'...
Clone: 100% done.
/bin/vim-cmd vmsvc/snapshot.remove 133 1
2014-09-17 16:17:45 -- info: Removing snapshot from WEB ...
2014-09-17 16:17:46 -- debug: Removing /vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB/WEB/WEB-2014-09-16_21-32-38
2014-09-17 16:17:46 -- info: Backup Duration: 5.35 Minutes
2014-09-17 16:17:46 -- info: Successfully completed backup for WEB!
2014-09-17 16:17:49 -- debug: Storage Information after backup:
2014-09-17 16:17:49 -- debug: SRC_DATASTORE: ESXI_DATA
2014-09-17 16:17:49 -- debug: SRC_DATASTORE_CAPACITY: 63488.0
2047.8 GB
2014-09-17 16:17:49 -- debug: SRC_DATASTORE_FREE: 1316.3 GB
2014-09-17 16:17:49 -- debug: SRC_DATASTORE_BLOCKSIZE: 1
2014-09-17 16:17:49 -- debug: SRC_DATASTORE_MAX_FILE_SIZE: 256 GB
2014-09-17 16:17:49 -- debug:
2014-09-17 16:17:49 -- debug: DST_DATASTORE: ESXI_BACKUP
2014-09-17 16:17:49 -- debug: DST_DATASTORE_CAPACITY: 16221.8
1833.4 GB
2014-09-17 16:17:49 -- debug: DST_DATASTORE_FREE: 709.7 GB
2014-09-17 16:17:49 -- debug: DST_DATASTORE_BLOCKSIZE: NA
2014-09-17 16:17:49 -- debug: DST_DATASTORE_MAX_FILE_SIZE: NA
2014-09-17 16:17:49 -- debug:
2014-09-17 16:17:51 -- debug: Storage Information before backup:
2014-09-17 16:17:51 -- debug: SRC_DATASTORE: ESXI_DATA
2014-09-17 16:17:51 -- debug: SRC_DATASTORE_CAPACITY: 63488.0
2047.8 GB
2014-09-17 16:17:51 -- debug: SRC_DATASTORE_FREE: 1316.3 GB
2014-09-17 16:17:51 -- debug: SRC_DATASTORE_BLOCKSIZE: 1
2014-09-17 16:17:51 -- debug: SRC_DATASTORE_MAX_FILE_SIZE: 256 GB
2014-09-17 16:17:51 -- debug:
2014-09-17 16:17:51 -- debug: DST_DATASTORE: ESXI_BACKUP
2014-09-17 16:17:51 -- debug: DST_DATASTORE_CAPACITY: 16221.8
1833.4 GB
2014-09-17 16:17:51 -- debug: DST_DATASTORE_FREE: 709.7 GB
2014-09-17 16:17:51 -- debug: DST_DATASTORE_BLOCKSIZE: NA
2014-09-17 16:17:51 -- debug: DST_DATASTORE_MAX_FILE_SIZE: NA
2014-09-17 16:17:51 -- debug:
2014-09-17 16:17:51 -- debug: getVMDKs() - MAIL-0.vmdk###16:
2014-09-17 16:17:52 -- info: Initiate backup for MAIL
2014-09-17 16:17:52 -- info: Creating Snapshot "ghettoVCB-snapshot-2014-09-17" for MAIL
/bin/vim-cmd vmsvc/snapshot.create 100 ghettoVCB-snapshot-2014-09-17 ghettoVCB-snapshot-2014-09-17 0 0
2014-09-17 16:17:53 -- debug: Waiting for snapshot "ghettoVCB-snapshot-2014-09-17" to be created
2014-09-17 16:17:53 -- debug: Snapshot timeout set to: 900 seconds
2014-09-17 16:17:53 -- debug: findVMDK() - Searching for VMDK: "MAIL-0.vmdk" to backup
2014-09-17 16:17:53 -- debug: /sbin/vmkfstools -i "/vmfs/volumes/ESXI_DATA/MAIL/MAIL-0.vmdk" -a "lsilogic" -d "thin" "/vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB/MAIL/MAIL-2014-09-18_01-12-19/MAIL-0.vmdk"
Destination disk format: VMFS thin-provisioned
Cloning disk '/vmfs/volumes/ESXI_DATA/MAIL/MAIL-0.vmdk'...
Clone: 100% done.
/bin/vim-cmd vmsvc/snapshot.remove 100 1
2014-09-17 16:20:31 -- info: Removing snapshot from MAIL ...
2014-09-17 16:20:31 -- debug: Removing /vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB/MAIL/MAIL-2014-09-16_21-32-38
2014-09-17 16:20:31 -- info: Backup Duration: 2.65 Minutes
2014-09-17 16:20:31 -- info: Successfully completed backup for MAIL!
2014-09-17 16:20:34 -- debug: Storage Information after backup:
2014-09-17 16:20:34 -- debug: SRC_DATASTORE: ESXI_DATA
2014-09-17 16:20:34 -- debug: SRC_DATASTORE_CAPACITY: 63488.0
2047.8 GB
2014-09-17 16:20:34 -- debug: SRC_DATASTORE_FREE: 1316.3 GB
2014-09-17 16:20:34 -- debug: SRC_DATASTORE_BLOCKSIZE: 1
2014-09-17 16:20:34 -- debug: SRC_DATASTORE_MAX_FILE_SIZE: 256 GB
2014-09-17 16:20:34 -- debug:
2014-09-17 16:20:34 -- debug: DST_DATASTORE: ESXI_BACKUP
2014-09-17 16:20:34 -- debug: DST_DATASTORE_CAPACITY: 16221.8
1833.4 GB
2014-09-17 16:20:34 -- debug: DST_DATASTORE_FREE: 709.7 GB
2014-09-17 16:20:34 -- debug: DST_DATASTORE_BLOCKSIZE: NA
2014-09-17 16:20:34 -- debug: DST_DATASTORE_MAX_FILE_SIZE: NA
2014-09-17 16:20:34 -- debug:
2014-09-17 16:20:34 -- info: ###### Final status: All VMs backed up OK! ######
2014-09-17 16:20:34 -- debug: Succesfully removed lock directory - /tmp/ghettoVCB.work
2014-09-17 16:20:34 -- info: ============================== ghettoVCB LOG END ================================
- バックアップの確認
# ls -l /vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB/WEB
drwxr-xr-x 1 root root 4096 Sep 17 16:17 WEB-2014-09-18_01-12-19
# ls -l /vmfs/volumes/ESXI_BACKUP/DAILY/ghettoVCB/MAIL
drwxr-xr-x 1 root root 4096 Sep 17 16:20 MAIL-2014-09-18_01-12-19
cronの設定 †
注意