メンテナンス イベント中のライブ マイグレーション

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。
{# END}

仮想マシン(VM)インスタンスの基盤となるハードウェアの計画的なメンテナンス イベント中、Compute Engine は VM を別のホストに移動する場合があります。Compute Engine は、ホスト イベント中に VM を実行し続けるために、同じゾーン内の別のホストへの VM のライブ マイグレーションを実行します。ホスト イベントの詳細については、ホスト イベントについてをご覧ください。

ライブ マイグレーションを行うと、Google Cloud はワークロードの中断、VM の再起動、VM のプロパティ(IP アドレス、メタデータ、ブロック ストレージ データ、アプリケーションのステータス、ネットワーク設定など)の変更を行わずにメンテナンスを実行できます。

計画的なホスト イベント中に VM を実行し続けるだけでなく、ライブ マイグレーションにより、次の状況でも VM の実行を継続できます。

  • インフラストラクチャのメンテナンス。ホスト ハードウェア、データセンターのネットワークと電力網、ホスト OS と BIOS が含まれます。

  • セキュリティ関連の更新とシステム構成の変更。セキュリティ パッチのインストール、ホスト OS イメージとパッケージのストレージ用のホスト ルート パーティションのサイズ変更などのイベントが含まれます。

  • ハードウェアの障害。メモリ、CPU、ネットワーク インターフェース カード、ディスクの障害が含まれます。ハードウェアが完全に故障した場合やライブ マイグレーションができない場合、VM は停止して自動的に再起動され、Compute Engine は hostError をログに記録します。

Compute Engine は、ホスト メンテナンス ポリシーがマイグレーションに設定されている VM のライブ マイグレーションのみを実行します。ホスト メンテナンス ポリシーを変更する方法については、VM ホスト メンテナンス ポリシーを設定するをご覧ください。

ライブ マイグレーションとローカル SSD

Compute Engine では、ローカル SSD が接続された VM をライブ移行できます。計画メンテナンス前に、VM と一緒にローカル SSD を新しいマシンに移行できます。

制限事項

次の VM タイプでは、ライブ マイグレーションはサポートされていません。

  • Confidential VMsConfidential VMs は、停止して、必要に応じて再起動するように設定する必要があります。Compute Engine は、Confidential VMs が終了する 60 分前に通知を行います。メンテナンス イベントの通知の詳細については、ライブ マイグレーションの通知取得をご覧ください。

  • GPU が接続されている VM。GPU が接続された VM インスタンスは、停止して、必要に応じて再起動するように設定する必要があります。Compute Engine は、GPU を使用する VM インスタンスが停止する 60 分前に通知を行います。メンテナンス イベントの通知の詳細については、ライブ マイグレーションの通知取得をご覧ください。

    GPU を使用するホストのメンテナンス方法については、GPU のドキュメントのホスト メンテナンスの処理をご覧ください。

  • Cloud TPUCloud TPU はライブ マイグレーションをサポートしていません。

  • プリエンプティブル VMプリエンプティブル VM には、ライブ マイグレーションを構成することができません。プリエンプティブル インスタンスのメンテナンス動作は、デフォルトで TERMINATE に設定されており、このオプションは変更できません。プリエンプティブル インスタンスに対して自動再起動オプションは設定できませんが、プリエンプティブル VM は、プリエンプト後に、[VM インスタンスの詳細] ページから再度手動で起動できます。

    インスタンスを非プリエンプティブルに変更する必要がある場合は、プリエンプティブル インスタンスからブートディスクを切断、プリエンプティブルに構成されていない新しいインスタンスにブートディスクをアタッチします。また、ブートディスクのスナップショットを作成し、それを使用してプリエンプティブなしで新しいインスタンスを作成することもできます。

  • Spot VMs. Spot VM は、動作中にライブ マイグレーションで標準 VM に移行することはできません。また、メンテナンス イベントの際に自動的に再起動するように設定することもできません。

ライブ マイグレーションのプロセス

VM がライブ移行されるようスケジュール設定されている場合、Google Cloud は通知を行います。ライブ マイグレーション中、Google Cloud は最小の中断時間(通常は 1 秒未満)を確保します。VM がライブ移行できるよう設定されていない場合、Compute Engine はホスト メンテナンス中に VM を終了します。ホストイベント中に停止し、必要に応じて再起動するVM。

Google Cloud が実行中の VM をあるホストから別のホストに移行する場合、VM の完全な状態を、ゲスト OS やそれらと通信する対象にとって透過的な方法で、移行元から移行先に移行させます。作業をシームレスに行うため、この移行には多くのコンポーネントが関係していますが、その概要を以下で説明します。

ゲスト オペレーティング システムを再起動せずに、VM とその各リソースを新しいホストシステムに移行する。
ライブ マイグレーションのコンポーネント

このプロセスでは、まず、現在のホストマシンから VM を強制的に削除することを通知します。BIOS の新しいバージョンのリリースを示すファイル変更、ハードウェアの定期メンテナンス、予知されるハードウェア障害による自動信号などにより通知が開始されます。

Google Cloud のクラスタ管理ソフトウェアは、これらのイベントを継続的に監視し、ストレージの使用率、1 つの顧客が同時に移行可能な VM の数などのデータセンターの制御ポリシーに基づいてプロセスのスケジュールを設定します。

VM が移行対象に選択されると、Google Cloud はゲストに移行が近いことを通知します。待ち時間が経過すると、ターゲット ホストが選択され、移行するソース VM を受け取るための、新しい、空のターゲット VM をセットアップするように求められます。ソースとターゲットの間の接続を確立するために、認証が使用されます。

VM の移行は次の 3 段階で行われます。

  1. ソース ブラウンアウト。大半の状態が移行元から移行先に送信されていますが、VM はまだ移行元で実行されています。たとえば、Google Cloud はゲストのメモリをすべて移行先にコピーすると同時に、移行元で変更されたページの追跡を行っています。ソース ブラウンアウトの時間は、ゲストメモリのサイズやページの変更率に比例します。

  2. ブラックアウト。非常に短い時間ですが、VM の実行が停止します。VM は一時停止状態になり、移行先での VM の再開に必要な残りの状態がすべて送信されます。ソース ブラウンアウトの状態送信が収穫逓減ポイントに達すると、VM がブラックアウト段階に入ります。ゲスト VM が変更を行う割合に応じて、送信するメモリのバイト数を決定するアルゴリズムが利用されます。

    ブラックアウト イベント中は、システム クロックが最大 5 秒先に進んでいるように見えます。ブラックアウト イベントが 5 秒を超えると、Google Cloud は VM ゲスト パッケージの一部として含まれるデーモンを使用して、クロックを停止して再同期します。

  3. ターゲット ブラウンアウト。VM が移行先の VM で実行されます。この段階では移行元の VM も存在し、移行先の VM にサポート機能を提供します。たとえば、ネットワーク ファブリックが移行先の VM の最新のロケーションを取得できるまで、移行元の VM が移行先の VM にパケット転送サービスを提供します。

最後に、移行が完了し、システムによって移行元の仮想マシンが削除されます。 VM ログで移行が行われたことを確認できます。

手動ライブ マイグレーション

ワークロードを実行しながら、VM を別のノードまたはノード群に移動させることをおすすめします。単一テナンシーを使用すると、VM を特定の単一テナントノードまたはノードのグループに移動できます。VM をノードのグループに移動すると、Compute Engine はそのノードを配置するノードを決定します。単一テナンシーについては、単一テナンシーの概要をご覧ください。

単一テナント VM を別のノードまたはノード群に移動させるには、ライブ マイグレーションを手動で開始します。ライブ マイグレーションを手動で開始して、マルチテナント VM を単一テナンシーに移動させることもできます。詳しくは、VM を手動でライブ マイグレーションするをご覧ください。

次のステップ