ESXiでghettoVCBを導入する

はじめに

ESXiでバックアップを取るためにghettoVCBを導入する

環境

  • ESXi 6.5

事前準備

SSHの有効化

SSHを有効にしないと各種操作が行えないので予めSSHを有効にしておく
WebUIにログインし
ホスト->アクション->サービス->SSHの有効化
からSSHを有効化にしておく

インストール

データストアブラウザから
https://github.com/lamw/ghettoVCB/blob/master/vghetto-ghettoVCB.vib
上記をダウンロードしたものをアップロードしておく

SSHでログインし

1# esxcli software vib install -v /path/to/vghetto-ghettoVCB.vib -f

としてインストールを行う
インストールが出来た場合

1Installation Result
2   Message: Operation finished successfully.
3   Reboot Required: false
4   VIBs Installed: virtuallyGhetto_bootbank_ghettoVCB_1.0.0-0.0.0
5   VIBs Removed:
6   VIBs Skipped:

と結果が表示される

次にシェルスクリプトをコピーする

1# cp /opt/ghettovcb/bin/ghettoVCB.sh /path/to/

あとは環境に合わせて編集しdry-runしてテストした後に実際に実行してみて問題ないかテストする
ひとまず必要なのはバックアップデータの書き出し先なのでここだけ変更してみる

1- VM_BACKUP_VOLUME=/vmfs/volumes/mini-local-datastore-hdd/backups
2+ VM_BACKUP_VOLUME=/vmfs/volumes/ds2/backup

dry-runして問題ないか確認する

1# ./ghettoVCB.sh -m VM名 -d dryrun
2Logging output to "/tmp/ghettoVCB-2018-05-13_02-00-31-1436833.log" ...
32018-05-13 02:00:31 -- info: = ghettoVCB LOG START =
4~略~
52018-05-13 02:00:32 -- info: ###### Final status: OK, only a dryrun. ######
6
72018-05-13 02:00:32 -- info: = ghettoVCB LOG END =

とでたら問題なく実行されている
dry-runを外して実行すれば実際にバックアップが行われる
ひとまずここまで

単一環境のバックアップ

dry-runの項目で利用してる-mオプションでVM名を指定することでできる

すべての環境のバックアップ

-aオプションで稼働中のすべてのVMを対象にすることができる

特定VMのバックアップ

-f filenameで指定したVMのみバックアップを行う

特定VM以外のバックアップ

-e filenameで指定したファイルに除外リストを書いておくことで除外できる
-aと組み合わせて利用すると良いっぽい

詰まったところ

エラーでコケる

1# esxcli software vib install -v vghetto-ghettoVCB.vib -f
2 [MetadataDownloadError]
3 Could not download from depot at zip:/var/log/vmware/vghetto-ghettoVCB-offline-bundle.zip?index.xml, skipping (('zip:/var/log/vmware/vghetto-ghettoVCB-offline-bundle.zip?index.xml', '', "Error extracting index.xml from /var/log/vmware/vghetto-ghettoVCB-offline-bundle.zip: [Errno 2] No such file or directory: '/var/log/vmware/vghetto-ghettoVCB-offline-bundle.zip'"))
4        url = zip:/var/log/vmware/vghetto-ghettoVCB-offline-bundle.zip?index.xml
5 Please refer to the log file for more details.

インストールする際はフルパスで書かないといけないだけでしたが少しハマりました

1# esxcli software vib install -v /vmfs/volumes/hoge/vghetto-ghettoVCB.vib -f
2Installation Result
3   Message: Operation finished successfully.
4   Reboot Required: false
5   VIBs Installed: virtuallyGhetto_bootbank_ghettoVCB_1.0.0-0.0.0
6   VIBs Removed:
7   VIBs Skipped: