(2) SVmotionの仕組み
SVmotionの仕組み
ロジックを理解しないまま運用してました本当にごめんなさい。
仮想マシンのディスク ファイルを移動する際、Storage VMotion は、先に仮想マシンの 「ホーム ディレクトリ」 を移動先に移しま す。「ホーム ディレクトリ」 には、仮想マシンに関するメタ データ、 つまり構成、スワップ、ログの各ファイルが含まれます。ホーム ディレクトリを移動したら、Storage VMotion は、仮想マシンの ストレージ ディスク ファイル全体の内容を移動先ストレージ ホ ストにコピーします。このとき、「変更ブロックのトラッキング」 により、移行プロセス中のデータの整合性が保たれます。次に、 Storage VMotion は、変更ブロックのトラッキング モジュールに 照会し、最初のコピー処理中にディスク内で書き込みがあった 領域を確認します。その後、次のコピー処理を開始して、最初の コピー処理中に変更された領域をコピーします (この処理はさら に数回発生する場合があります)。 このプロセスが完了すると、仮想マシンはサスペンドされてから レジュームされ、移行先のデータストアにある仮想マシンのホー ム ディレクトリとディスク ファイルを使用できるようになりま す。VMware ESX が仮想マシンを再度実行する前に、移行元ディ スクで最後に変更された領域が移動先にコピーされ、移行元の ホームとディスクが削除されます。 この方法によって、完全なトランザクションの整合性が保証され ます。またこのプロセスは短時間で終了するので、エンド ユーザー に影響を与えません。
https://www.vmware.com/files/jp/pdf/storage_vmotion_datasheet.pdf
↑ 古いけどロジックは同じ(はず)
クロスvMotion実装(6.0~)から、異なるデータストア間でもvMotionできるようになった
で、
1. vmdk以外のファイルを移行先ストレージにコピー
2. VMのブロッキングのトラッキングを有効にする(CBTのこと)
3. vmdk と vswap を コピー
4. 移行元を削除
CBT=仮想マシンの変更部分を追跡する機能
まあバージョンによって若干のロジックの差異はあると思うけど基本概念は同じ(はずw)