Google Cloud:サスペンド/レジューム機能が正式版になったので詳細を解説する

今回は最近正式版となった、VMの一時停止機能について解説します。主に、公式ドキュメントに沿って記述していきます。
2023.03.28

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

サスペンド/レジューム機能とは

パソコンを一時的にスリープ状態にしておくことで消費電力を抑えつつ、次にパソコンを触るときに以前の状態を保持したまま再開できることを言います。

少し分かりにくい表現かもしれませんが、要は休憩時に一旦ノートパソコンを閉じて、休憩終了後にまたパソコンを開くだけで元の状態から再開できるという事と同意義かと思います。

そして今回のGoogle Cloudの機能でお伝えすると、メモリ内容などを保持したままVMの一時停止を可能にする機能と言い換えることができます。

最大のメリットとしては、一時停止中はVMの料金がかからないことだと思います。

次からこの機能の詳細について、解説していきます。

概要

公式ドキュメント-VM を一時停止して再開する-

VMのインスタンスを停止せずに、一時的にVMの料金をストップさせたい時に使うのが、今回のサスペンド/レジューム機能になります。
一時停止した際には、VMは保持され(停止されない)、VMのメモリのデータをストレージに移動させます。
一時停止から再開後にVMのメモリのデータをストレージからインスタンスへ戻し、実行中のVMインスタンスに対する課金を再開させます。

【画像はイメージです】

ここで気を付けておきたいことが、VMが一時停止されている間インスタンス自体の料金はかかりませんが、メモリデータの保持に使用されるストレージに対しては料金が掛かり続けます。
また、静的IPアドレスや永続ストレージについてもVMへの接続は維持され、課金が継続されるので注意が必要です。

一時停止の利用例

公式ドキュメントに利用例が載っていたので引用します。

夜間や週末などのオフ時間に使用率が低い開発環境やテスト環境に最適。新しいVMインスタンスを作成する場合よりもコストを抑え、短時間で初期化を行うことが可能です。 仮想デベロッパーワークステーションや複雑なJavaアプリケーションなど、インスタンスの起動が完了してから、最初のリクエストを処理するまでの初期化に時間がかかるアプリケーションに最適。

一時停止の特徴

停止(TERMINATED)との違い

ゲストOSのメモリ、デバイスの状態、アプリケーションの状態が保持される

メモリの保存に必要なストレージに対して料金が掛かる

インスタンスを一時停止できる期間は最長で60日で、それを経過するとインスタンスは自動的にTERMINATED(停止)状態となる

ローカルSSDがアタッチされているインスタンスも一時停止可能だが、ローカルSSDを破棄したい場合には特別なフラグを使用する必要がある

プリエンプティブルインスタンスも一時停止可能だが、正常に一時停止する前にプリエンプション(終了)される可能性がある

【画像はイメージです】

【補足説明】
・ローカルSSDの内容は保持されません。通常ローカルSSDがアタッチされているインスタンスを一時停止するとエラーが返されてしまいますが、ローカルSSDのデータを無効にするフラグを使用しオーバーライドする事で一時停止が可能となります。ただし、内容が破棄されてしまうことに注意が必要です。
・TERMINATED(停止)となったインスタンスは、構成の設定メタデータは残りますが、メモリ内データ仮想マシン状態は失われてしまいます。

一時停止できないVM

GPUを使用するインスタンスは一時停止できない

メモリが208GB以上のインスタンスは一時停止できない

E2インスタンス(GCEの種類)は一時停止できない

Confidential VM(メモリも暗号化するVM)は一時停止できない

CSEKで保護されたディスクが接続されているVMは一時停止できない

一時停止と再開をサポートしていないOSがある

さらに制限事項として、以下のような記載があります。

ゲスト環境に組み込まれている標準プロセスを使用してインスタンスを一時停止することはできません。Ubuntu 16.04 以降の systemctl suspend コマンドは使用できません。インスタンスを一時停止するために使用できるのは、Google Cloud CLI または Compute Engine API だけです。

発生する料金

インスタンスを一時停止した際に発生する料金について、改めてまとめます。

インスタンスのメモリ

ブートディスクやインスタンスにアタッチしている追加ディスク(永続ディスク)

インスタンスに関連付けられている静的IP

【画像はイメージです】

【補足説明】
・メモリの料金については、一時停止中のVMインスタンスの料金を参照してください。
・永続ディスクの料金については、永続ディスクの料金を参照してください。

また、ソフトウェアライセンス料についての記載もあったため引用します。

VMを一時停止すると、ソフトウェアのライセンス料を節約できることがあります。たとえば、Windows VMを一時停止すると、Windowsライセンス料金は発生しません。他のイメージのライセンス料は利用規約が異なる場合があります。この場合、一時停止した場合でも料金が発生することもあります。

まとめ

今回の停止一時停止の役割の違いを理解することで、VMの料金や起動の手間を省くのに有効な活用ができると思いました。
ただ忘れてはいけないのが、VM料金は節約になるが、その他VMに付随するリソースの課金は発生したままだという事ですね。
停止では掛からなかった料金が、一時停止にしている事を忘れて料金が掛かりっぱなしになるのは怖いですね。(停止される60日後まで料金は発生しますし、、)

最後に

前職が元パーソナルトレーナーであったため、ダイエット情報や筋トレ情報を積極的に配信したいと思っています!!IT=脳=運動=体調管理⇒全ては繋がっています。

【筋肉がつかない理由①】

端的にいうと、1日に必要とするタンパク質量が足りていないことが多いです。
いくら筋トレを頑張っても、傷ついた筋肉を修復(大きく)してくれる材料となるタンパク質が体内に足りていなければ、筋肉の分解が優先され、太くなるどころか小さくなります。(筋肉がエネルギーに使われる)

また、意外と筋肉はタチが悪く、太くはなるが筋繊維の数は増えないと言われています。(確か)
自身の体重×1.5g~2.0gのタンパク質を摂取することで、筋肉を太くすることができます。(糖質と脂質の量により、タンパク質摂取量に差異あり