ESXi の仮想のマシンバックアップを取る備忘録

Environment
Photo by hyt.

ESXi の仮想のマシンバックアップを取る備忘録です.

いつもの通り結論から書くと,

ESXi の仮想マシンバックアップの定番 ghettoVCB を使うので,数多くの記事が他サイトでも見つかりますが,他サイトだと若干情報が古いところあり,

です.

ghettoVCB とは

元サイト

GitHub - lamw/ghettoVCB: ghettoVCB
ghettoVCB. Contribute to lamw/ghettoVCB development by creating an account on GitHub.

の説明によると,

ghettoVCB は VMware のVCB ツールに似た方法で ESX(i) の仮想マシンのバックアップを実行します.これは,動作中の仮想マシンのスナップショットを取得し,マスターの VMDK をバックアップし,完了すると,次のバックアップまでスナップショットを削除します.

だそうで,無償版の ESXi でも使えるいまのところほぼ唯一の選択肢っぽいです.

このようなものなので,他サイトでもよく紹介されているのですが,どうも情報が少し古いっぽく,手順等少し違う部分があったので,現時点(2023/7/9)の最新のやり方についてメモを残したものが本記事となります.

ghettoVCB の導入

他サイトだと zip ファイルをダウンロードして云々……と書いていることが多いですが,最新版だと,まず,vghetto-ghettoVCB.vib を元サイト

Releases · lamw/ghettoVCB
ghettoVCB. Contribute to lamw/ghettoVCB development by creating an account on GitHub.

から取得して,ESXi に(データストアブラウザを使っても良いし直接 wget 等を使っても良い)入れ,以下のような感じでインストールします.ここで ****** は適当なストレージ名です.

$ esxcli software vib install -v /vmfs/volumes/*******/vghetto-ghettoVCB.vib -f
Installation Result
   Message: Operation finished successfully.
   Reboot Required: false
   VIBs Installed: virtuallyGhetto_bootbank_ghettoVCB_1.0.0-0.0.0
   VIBs Removed:
   VIBs Skipped:

元サイトを見ると,

  • /opt/ghettovbc/bin: スクリプト
  • /etc/ghettovbc: 設定ファイル

のように入ると書かれていますが,実際には,

  • /opt/ghettovbc/bin: スクリプト
  • /opt/ghettovbc: 設定ファイル

に入るっぽいです.なお,アップデートやアンインストールは,

$ esxcli software vib update -v ./vghetto-ghettoVCB.vib -f
$ esxcli software vib remove -n ghettoVCB

だそうです.

ghettoVCB の使い方

使い方は他サイト等で紹介されている情報ほぼそのままです.

設定ファイル /etc/ghettovcb/ghettoVCB.conf の先頭行にある VM_BACKUP_VOLUME を自分の環境に合わせて,

$ vi /etc/vhettoVCB/ghettoVCB.conf
VM_BACKUP_VOLUME=/vmfs/volumes/********/backups
DISK_BACKUP_FORMAT=thin
VM_BACKUP_ROTATION_COUNT=3
POWER_VM_DOWN_BEFORE_BACKUP=0
ENABLE_HARD_POWER_OFF=0
.....

のように書き換えるのと,/etc/rc.local.d/local.sh ファイルの内容を,

$ vi local.sh
#!/bin/sh ++group=host/vim/vmvisor/boot

# local configuration options

# Note: modify at your own risk!  If you do/use anything in this
# script that is not part of a stable API (relying on files to be in
# specific places, specific tools, specific output, etc) there is a
# possibility you will end up with a broken system after patching or
# upgrading.  Changes are not supported unless under direction of
# VMware support.

# Note: This script will not be run when UEFI secure boot is enabled.

/bin/kill $(cat /var/run/crond.pid)
/bin/echo "0    2    *   *   1   /opt/ghettovcb/bin/ghettoVCB.sh -a -g \
/opt/ghettovcb/ghettoVCB.conf > \
/vmfs/volumes/*********/log/ghettoVCB-backup-\$(date +\\%s).log" >> /var/spool/cron/crontabs/root
/bin/sed -i -e s!dlgCore-NFS-bigboi.VM-Backups/WILLIAM_BACKUPS!*********/backups! /opt/ghettovcb/ghettoVCB.conf
crond

exit 0

のように書き換えて,ESXi を再起動するだけです.

上の場合だと,/vmfs/volumes/******/backups に全ての VM のバックアップを毎週月曜日の2時(UTC 時間であることに注意してください)に3世代分取ります.また,ログファイルが /vmfs/volumes/******/log 以下に作られます.バックアップを取る仮想マシンを指定したり,世代数を変えたりももちろんできますが,このあたりについては,元サイトの情報を参照してください.

以上

EnvironmentServer
スポンサーリンク
Following hyt!
タイトルとURLをコピーしました