上記の作業の後、実際のバックアップ処理が実行されるのだが、VCBでは、ファイルレベルでのバックアップと、仮想マシン(VMDK)レベルでのバックアップの2通りが選択できる。
ファイルレベルでは文字通り仮想OS上で認識されるファイルと同様に個々のファイルとして扱われ、ファイル単位でのリストアとなる。ファイルレベルはWindowsのゲストOSでのみ可能である。この場合、OSのイメージがバックアッププロキシにマウントされ、コピーはされない。データ転送はバックアップ時にのみ発生することになる。この方法は、特定のデータのみをバックアップおよびリストアする場合には最適だが、OS全体をリストアするのには不向きである。vLUNドライバはバックアッププロキシ上にインストールされ、VMDKファイルの使用を可能にしたり、VMDKのブロックを個々のファイルに変換したりするために使用される。
仮想マシンレベルの場合は、バックアップ対象となるVMDKファイルがまずバックアッププロキシにコピーされる。VMDK ファイルは仮想マシンの全体のイメージで、それぞれの仮想マシンがひとつのファイルとして認識される。この方法はOSレベルでのリストアには最適だが、個々のファイルのリストアには向かない。
この時点でスナップショットは静的な状態であり一貫性が保たれているので、これをバックアップする。バックアップが終了すると、マウントが解除される(またはファイルが削除される)。
なお、Veritas NetBackupでは、仮想マシン(VMDK)レベルでのバックアップの場合でも、個々のファイルをリストアする独自の機能が搭載されている(Granular Recovery Technologyと呼ばれる)。このように、バックアップソフトウェアによるVCBのサポートは、独自の機能が付加されている場合も多いので、購入の際には検討してみるとよいだろう。
VCBの最大のメリットは、VMware ESXおよび個々の仮想マシンに対するバックアップによる負荷を軽減することができる点だ。しかしながら、そのために、専用のサーバ(バックアッププロキシ)が必要になる点や、バックアッププロキシとしてサポートされるOSが現時点ではWindows 2003 Serverのみであるなど、技術上の制約もある。
また、注意すべき点は、VCBはファイルシステムのスナップショット技術であるということだ。VCBによりファイルシステムの静止点が作成されるが、これはデータベースなどのアプリケーションを意識したスナップショットではない。したがって、ファイルレベルでの一貫性は保証されるが、I/Oが発生している最中のアプリケーションレベルでの一貫性を保証するものではない。対象となるサーバで使用されているアプリケーションの種類、動作状況、バックアップによるダウンタイムが許可されるかどうかなどによって、VCBの採用を検討する必要がある。場合によっては、VCBではなくゲストOS上のバックアップソフトウェアによりアプリケーションを意識したバックアップを実行することが最適なこともある。
VCBによるバックアップは、環境やコスト、技術上の条件に合致すれば、最も推奨されるバックアップ方法であると言える。しかしながら、VCBが条件に合わない場合は、仮想OS上でのバックアップ(第2回で詳述)や、ESX Service Consoleにバックアップソフトウェアをインストールする方法(第3回で詳述)と組み合わせて設計するのがよい。結果として、1台の物理マシンで動作する仮想マシンに対して、複数のバックアップ技術を用いられることにもなり得る。従って、サーバ仮想化環境の設計の段階で、アプリケーションの特性などを理解し、どのバックアップ技術を採用するのか、またそのために必要とされるリソースの配分までを考慮することが好ましい。
次回は、ここまでで検討したバックアップ技術でも、なお残る問題について考慮してみたい。
Copyright © ITmedia, Inc. All Rights Reserved.