仮想化におけるストレージ・スナップショットの制限


ストレージ・スナップショットについて

SANデバイス用の管理の基本ユニットはLUN(Logical Unit Number)で、LUNはいくつかの物理ハードディスクか単体ディスクの一部から構成されたストレージ・ユニットです。

LUNの構成を設定する上でのバランスでいくつかの考慮する点があります。1xLUNは重要なアップリケーションが稼働するVMをサポートすることを目的とし高性能SSDディスクでバックアップすることがあり、他のLUNは大容量で安価なディスクでバックアップされ、そして主にVMテストで使用されます。一旦作成されれば、LUNはハイパバイザーに必要なボリューム・フォーマット(例としてVMFS ( Virtual Machine Files System) : VMware, CSV -( Cluster Shared Volume ): Hyper-Vで利用可能です。この時点でLUNは複数のVMを含みます。

ストレージ・スナップショットの制限

LUNを管理のプライマリ・ユニットとして使用するVM、ファイル、アプリケーション・レベルでの詳細な管理が必要な時には制限がもたらされます。この制限は多数のクライアントにVMを提供することでのストレージ・システムのアプローチから起因します。他のOSもSANに接続します。

●バックアップの整合性
すべてのバックアップ・テクノロジーは通常はメインの整合性レベルの1つに適合します。適合性レベルはリカバリ・ポイントの決められた整合性を指定します。バックアッププロセスで達成すべき3つの整合性レベルがあります。

・クラッシュ整合性、ファイル整合性、アプリケーション整合性

アプリケーション整合性をインプリすることはデータ損失量を最低限にし、故障時でのリストア時間を最小限にできます。ファイル・システムの整合性は二番目に要求される技術で、クラッシュ整合は最後の手段として使用されます。

SANをVMware環境でアプリケーション整合性のために使用するには、多くのベンダーはVMwareスナップショットとVMware Toolsの静止機能を使用します。残念なことにVMware Toolsは特定のアプリケーションを整合的状態にした時に、完全なアプリケーション感知状態になりません。これはアプリケーションがバックアップというよりコピーの準備をさせます。それによりアプリケーションはフル・バックアップ処理は行われず、それに伴うメンテナンス・オペレーションが行われません。さらにVMware Toolsはもっと信頼性のないプロセスを実行するような、別のゲスト・オペレーティング・システムを取り扱った時にはしばしば整合性の無い状態になります。

この問題を回避するためにSANベンダーはVM管理者に対してVMのゲスト・オペレーティング・システムにエージェント・ソフトを挿入することを要求します。この手法で要求される整合性レベルに達成するには複雑で、難しく、高価で、アプリケーション、オペレーティング・システム、ハイパーバイザー、SAN間でプロセスを停止する難しい調整が要求されます。さらにVM内部にアージェントをインストール手法ではリソース(CPU,RAM)、パフォーマンス、管理にオーバーヘッドを要求されます。

最も大きな問題はストレージ・スナップショットが発生することで精度が不足することになります。例えば同じLUNで30のVMが存在していて、ユーザは同時に一貫性のある状態ですべての30のVMを配置する必要があります。この状態ではリソース使用に大量のスパイクを発生させ、ハードウェアの停止を招くことがあります。

この問題を回避し、負荷を分散させるためには要求される整合性レベルを基に別々のLUNにVMを分散させます。もし、パフォーマンス理由ですでに特定のLUNにVMが配置されていたら?アプリケーションの整合性とパフォーマンス要求を満たすためにふくすうのLUNにLUNを再分割しますか?仮想化環境のチャレンジはスナップショット処理の限界にあります。特定のベンダーはスナップショット・プロセスは単一VMでのみ稼働可能といいます。これはアプリケーション整合性処理で、プロセスがビットバイト・レベルでLUN全体をスナップショットを行っているからです。

●ディスク・スペースの考慮

SANは通常大容量データを管理するように設計されています。しかしデータの大容量ブロックを処理する性格上、スナップショット・サイクル間の変更は、時々15MBのような大容量ブロック・サイズをしばしば必要とされます。例えば同じLUNで10KBの変更があるブロックで起こり、別のブロックで20KBがあった時にこれらの小さな変更から30MBのスナップショット・ストレージが要求されることになります。

VMをホストさせるためのLUNを選択するにはパフォーマンス要求のみだけでなく、アプリケーションの一貫性要求を考慮すべきです。さらにスナップショットから特定のデータを除くために複数のLUNにVMを分散させるべきです。また「カプセル化」も仮想化の1つのコアな手法です。VMをグループ・ファイル化することでポータビリティが向上します。

関連トピックス:

カテゴリー: VMware, Hyper-V タグ: , , , , パーマリンク

コメントを残す

メールアドレスが公開されることはありません。

 

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

この記事のトラックバック用URL