|
6月 16
|
このサイトが動いているサーバはVMware ESXi上のLinux OSで動いている。
仕事柄、ある製品のサポートもしているのだが、再現確認が必要な場合、今までは実機を使用して動作確認・解析を行っていた。この場合、複数のお客さんの疑似環境を作る必要に迫られたときが大変。当然スケジュールを組んで進めていくのだが、OSが異なったりすると毎回実機にOSをインストールする羽目に。一部、クライアントで動くVMwareも使用していたのだが、何せサーバ関連のサポートなので、必ず複数台必要となり、クライアントを圧迫。そんな矢先、これが出てきたので飛びついた。しかも、ESXiは無償!なのでSOHOな当方には助かる。(当然企業ユースには高機能版が販売されています)
前置きが長くなったが、ESXiを使っていて一番困るのが、「ゲストOSのバックアップ」である。ゲストOSを止めてバックアップ(コールドバックアップ)するのであれば、別段問題は無いのだが、サーバ絡みなので動作中でもバックアップを取る必要がある。しかし、VMware Consolidated Backup(VCB)は有償・・・。ならば、コマンドで何とかしてしまえと言うことで、以下に手順を。
- ゲストOSのIDを取得
~ # vim-cmd vmsvc/getallvms - バックアップしたいゲストOSのスナップショットを採取
~ # vim-cmd vmsvc/snapshot.create [ゲストOSのID] [スナップショット名]
このスナップショットを取ることにより、本来読み込みまでロックされている.vmdkファイルのコピーが可能になります。 - ファイルのコピー
コピー方法は、環境によりけりなので、いくつか例を。 - ESXiサーバに外部ディスクを直接アタッチしている場合は、そのマウントしているボリュームにコピーすればOK。ちなみに当方は、別のLinuxサーバボリュームをネットワークマウントしているので、そこにコピーしています。
- 外部のWindowsやNASに転送する場合は、WinSCP(日本語版)なんかを使ってネットワークコピーすればOK。
- コピーが終わったら、スナップショットを解放。
~ # vim-cmd vmsvc/snapshot.removeall [ゲストOSのID]
もし、元が壊れてこのバックアップから起動したい場合は、ゲストOS名-xxxxx.vmdkの「-xxxxx」を取り除いて起動してあげれば立ち上がります。
まぁ、あくまで私の環境での覚え書き程度ですので、先人の方々のサイトを見た方がためになると思い・・・(ry
