Help us understand the problem. What is going on with this article?

GCEのプリエンプティブインスタンスがどのくらい落とされるのか調べてみた

More than 1 year has passed since last update.

概要

  1. GCEのプリエンプティブVMを延べ60日モニタリングしてみた
  2. 24時間以内に落とされることは1回しかなかった

プリエンプティブVMとは?

Google Cloud Platform(以下GCP)で提供されているプリエンプティブVMは通常の約7割引の価格で利用できるお得なVMです。以下は公式の料金表記で、通常の3分の1以下の料金であることが確認できると思います。

スクリーンショット 2018-09-16 12.13.12.png

詳細な仕様に関しては、以下のリンクが詳しいです。

プリエンプティブ VM インスタンス

プリエンプティブVMの制限

プリエンプティブルは格安で利用できる代わりに、以下のような制限があります。

  • GCP側の都合で、いつでもVMが強制終了される可能性がある
  • プリエンプティブVMは最大でも24時間で強制終了される

24時間以内に強制終了させられることはどのくらいあるのか?

プリエンプティブVMは、GCP側の都合でいつでも強制終了させられる可能性があります。では、実際にどのくらいの頻度で強制終了させられてしまうのでしょうか?

実際にプリエンプティブVMを複数立ち上げて、モニタリングしてみました。

計測方法

GKEのノードとしてプリエンプティブVMを5台配置

まず、GKE(Google Kubernetes Engine)でクラスタをプリエンプティブVMの5台構成で立ち上げました。通常のGCE(Google Compute Engine)でプリエンプティブVMを立ち上げた場合は、強制終了させられた場合に、再起動がかかりません。しかし、GKEのノードとして立ち上げた場合は、これらのVMが一つのインスタンスグループとして設定されます。インスタンスグループを設定すると、グループ内のインスタンスが予め設定されたインスタンス数よりも少なくなると、自動で新しいインスタンを立ち上げます。つまりこの構成なら、プリエンプティブVMが強制終了させられた直後に、新しいプリエンプティブVMが自動で立ち上がります。

Stackdriver Monitaringでインスタンスをモニタリング

プリエンプティブVMの起動状況は、Stackdriver Monitaringでモニタリングします。デフォルトだとGKE立ち上げ時にStackdriver Monitaringでの集計が有効になるので、特に追加で設定の必要はありません。

計測結果

上記で設定したように、5台のプリエンプティブVMを12日間動かして状況をモニタリングしてみました。

結果、12日の間で起動から24時間以内にVMが強制終了したのは、1度だけでした。今回は5台×12日観察したので、1/60という事です。それ以外は、ちょうど起動から24時間で終了していました。

まとめ: プリエンプティブVMは滅多に落とされない!

プリエンプティブVMは、従来的なVMの使い方だと検証・開発環境としてしか使えそうにありません。しかし、GCPのkubernetes Engineやインスタンスグループなどで大規模クラスタを組むことを前提として構成すれば、高性能なクラスタを格安で本番運用できるかもしれません。

特にGKEの場合は、もともとkubernetes自体がVMに状態を持たせない前提で設計することがほとんどだと思うので相性が良さそうです。機会があればプリエンプティブVMで中規模のシステムを本番運用してみたいですね・・・。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした