このブログを検索

2011年3月28日月曜日

ESXi4.1u1ゲストのホットバックアップ

弊社でESXiを構築した際のデフォルトなバックアップのお話。
ESXiを運用していくとゲストのバックアップとは別にゲストごと丸々バックアップを取りたいことが多々ある。

そんな時に便利なのが、以下のスクリプトである。

VMwareのサイトを探すとghettoVCB.shが検索に引っかかる。
http://communities.vmware.com/docs/DOC-8760

このコマンドをESXiのcronで毎日のように実行していけば、ホットバックアップが取れるのである。


前提条件は、ESXi(vSphere Hypervisor)のコマンドラインを使えるようにしておくだけである。
ESXiの場合、再起動するとcrontabの中身は消えてしまうので、
起動時にcronに書かれるように
/etc/rc.local

ln -s /vmfs/volumes/datastore1/vcb/ghettoVCB_1.sh /sbin/ghettoVCB.sh

cat<<_EOT_>>/var/spool/cron/crontabs/root
0 16 * * * /sbin/ghettoVCB.sh -f /sbin/ghettoVCB -l vmfs/volumes/datastore1/vcb/ghettoVCB.log
_EOT_
kill -sigterm `ps|awk '/[c]rond/ {print $1;}'`
crond

のように
リンクを張って、
crontabを書き換え、
cronをキルして、
再起動する
という手順を入れる必要がある。

そもそもghettoVCB.shはconfファイルはなく、ghettoVCB.shを直接編集するのだが、非常に長くなるので、上のVMwareのサイトを参照頂きたい。

注意点としては、ローカルディスクにまずとって、その後で、ネットワークドライブに飛ばすことをお勧めする。
でないと、延々とスナップショットが残り続けることになるのである。
(コピーが終わったら消えますけど。)
ちなみに500GB超えると数日間かかった。
ハードウェアの性能もさることながら、1Gbpsのネットワークでは何かがボトルネックになっているらしく非常に遅い。
(追記-2011.03.29-http://niriakot.blogspot.com/2011/03/opensuse.html#more NFSの高速化を書いてます。480Mbpsまで達成)
なので、ローカルHDD、それも数TBの大きいものを準備しておいて、一瞬でスナップショットをとってから、これまた、cronで移動なり、コピーなりするべきである。
これからのESXiサーバーは10Gbpsはまだ高いので、PCI-expressの空きがあるだけ、NICを搭載することをお勧めする。

なお、ESXi4.1update1になってから、まだ試していないが、
rc.local
に記述する行数が長いと最後のほうが実行されないという目(バグ?)にあっているので、あまり長い記述はお勧めしない。

ESXiは中小企業のみならず、大企業でさえも十分ローコストで使用できる仮想化プラットフォームである。
(もちろん、vSphereのenterprise版はもっといいですが、コストがかかる。)
要は如何に運用していくかということだけで、結構節約できると弊社は考えております。
ぜひ、テスト導入してみてください。
何か困ったときは弊社がヘルプ致します。
webmasyer@niriakot.jp

ではでは、また。

1 件のコメント:

  1. 追記

    設定がconfファイルとして別になってます。
    ESXi5.0に対応になってます。
    (Updated 06/28/2011)

    返信削除