業務系というか開発系に使うので、バックアップが必須。
ということで、
gettoVCBを真剣に使うことに...
VM Exprolerも結構に良いのですが、単体で動作してくれるので
今回は gettoVCBで行きますね...
gettoVCBの一番の問題点は、既にスナップショットがあるVMはバックアップできない!
という点ですが、これは実は既に問題解決しています。
昔とか一度使ったことがある人は、できないと思い込んでいるかもしれません。
できます!
ひとまず利用手順
1.最新のgettoVCBの入手をします。
ESXi5.5(最新版)までの動作は問題ありません。
https://github.com/lamw/ghettoVCB
にアクセスして、右側下側にある Download.zip というリンクがあるのでここから
ダウンロードします。
2.ghettoVCB-master.zip というファイルがダウンロードできますから、解凍します。
3.ESXi5.xのSSHを有効にします。
コンソールでSSHを有効にし忘れてしまった人は、VmwareClientからもできます。
(1)VmwareClientから、esxサーバをホスト及びクラスタから選んで
(2)構成タブ→ソフトウェア→セキュリティ・プロファイルを選択
(3)セキュリティプロファイル(一番上)のプロパティを押す
(4)SSHというラベルをクリックして、画面右下のオプションボタンを押す
(5)あとは、サービスを起動して実行中にしてください。
4.色々と面倒なので、WinSCP+Puttyが楽ちんです。
WinSCPとPuttyをひとまずデフォでインストールしておきます。
5.Winscpを起動
SSHで、ESXサーバと接続
右側のペインから
vmfs→volumes→ESXで実装されているHDD(バックアップ元)を選んで
2で解凍したファイル類を転送。
6.WinscpからPuttyを起動して、コンソールを表示
7.vi で 先ほど転送したファイルの gettoVCB.confを開く
8.その前にバックアップ用のデータストアを準備しないといけない。
一番楽なのは、FreeNAS9を設定するのが良いかもしれない。
32bit版ならば、メモリもそんなにいらないしCPUもいらない(64bit版は最低4GBのメモリ)
NASで(iSCSIの事例が多いですが、NASでも速度はそんなに変わらない)環境を作って
VmwareClientから、NASをマウントすれば、バックアップストアのできあがり。
9.先ほどのconf ですが、
VM_BACKUP_VOLUME=/vmfs/volumes/dlgCore-NFS-bigboi.VM-b
ackups/WILLIAM_BACKUPS
DISK_BACKUP_FORMAT=thin
VM_BACKUP_ROTATION_COUNT=3
POWER_VM_DOWN_BEFORE_BACKUP=0
ENABLE_HARD_POWER_OFF=0
ITER_TO_WAIT_SHUTDOWN=3
POWER_DOWN_TIMEOUT=5
ENABLE_COMPRESSION=0
VM_SNAPSHOT_MEMORY=0
VM_SNAPSHOT_QUIESCE=0
ALLOW_VMS_WITH_SNAPSHOTS_TO_BE_BACKEDUP=1
ENABLE_NON_PERSISTENT_NFS=0
UNMOUNT_NFS=0
NFS_SERVER=172.30.0.195
NFS_VERSION=nfs
NFS_MOUNT=/nfsshare
NFS_LOCAL_NAME=nfs_storage_backup
NFS_VM_BACKUP_DIR=mybackups
SNAPSHOT_TIMEOUT=15
EMAIL_LOG=0
EMAIL_SERVER=auroa.primp-industries.com
EMAIL_SERVER_PORT=25
EMAIL_DELAY_INTERVAL=1
EMAIL_TO=auroa@primp-industries.com
EMAIL_FROM=root@ghettoVCB
WORKDIR_DEBUG=0
VM_SHUTDOWN_ORDER=
VM_STARTUP_ORDER=
1行目のバックアップ用ストアの指定
11行目が重要で、1を立てることで、スナップショット実行済のVMもバックアップができます。
あとは、ESXサーバ上の特定のサーバのバックアップを行いたいのであれば
テキストファイルを1つ作成して(例えば、backup_list.txt を同じフォルダに作って
サーバ名(VmwareClientのインベントリに表示している名前)を書いておく。
全サーバを無条件にバックアップするならば、-a オプションが使えるので、ファイルは不要。
./gettoVCB.sh -a ./gettoVCB.conf で全サーバのバックアップ
./gettoVCB.sh -f backup_list.txt ./gettoVCB.conf で指定ファイルだけをバックアップ
あとは、cronに登録すれば、毎日とか自動的にオンラインでバックアップが取れます。
restoreは色々と難しいことは考えないで
(1)元ストアのVMをDiskファイル毎削除して、
(2)バックアップストアの vmx ファイルをインベントリ登録
この時、バックアップ元ファイルを消しておけば、同名にできます
(3)インベントリの登録後に、移行で、ストアを元ストアにすれば完了ですね....