Google Compute Engine
Google Compute Engine (以下GCE) は、Googleが提供しているGoogle Cloud Platform (以下GCP) のサービスの一つであり、クラウド上にサーバインスタンスを立ち上げることができます。普段エンジニアの皆さんはGCEをどのように活用しているでしょうか?本番サーバ用途で長期に渡り運用したり、開発用にサーバを立ち上げたり、バッチを実行するために一時的に利用したりなど、様々な利用方法があるでしょう。
気になるのは料金ですが、Amazonが提供しているAWS EC2ではリザーブドインスタンスを利用するかどうか、利用するなら期間はどれくらいかなど考慮する必要がありました。一方、GCEは自動的に割引が適用されるため、エンジニア自身が本番用のサーバインスタンスを何年利用するのかなど考える必要はありませんでした。
しかし、GCEでも一点だけ考慮することにより、今以上に割安になる選択肢があります。それがプリエンプティブル仮想マシンです。
プリエンプティブル仮想マシン
プリエンプティブル仮想マシンとは、インスタンスの有効期間が24時間と短いインスタンスのことであり、その分料金が割安になります。24時間しかインスタンスが生存できないため、本番サーバ用途の目的では利用できません。バッチジョブや一時的な開発用途に利用することが想定されます。また近年であれば、機械学習などの学習用途で立ち上げるのもいいでしょう。GPUマシンは非常に高額ですので、プリエンプティブル仮想マシンであればインスタンスを立ち下げ忘れても、24時間で立ち下がるため高額請求につながる心配はありません。
プリエンプティブル仮想マシンを立ち上げる
ではプリエンプティブル仮想マシンとして立ち上げるにはどうすればいいのでしょうか。それはGCEのコンソール画面においてサーバインスタンスを立ち上げるときの設定で、可用性ポリシーのプリエンプティブの項目を「ON」にするだけです。
具体的には「インスタンスの作成」画面の「作成」ボタンの少し上に「Management, security, disks, networking, sole tenancy」と書かれている箇所があります。
これをクリックすると、インスタンスの細かな設定を行うことができるのですが、この「管理」タブに「プリエンプティブル」の設定があります。これを「ON」に変更しましょう。設定は以上です。あとは「作成」ボタンを押下するだけです。
プリエンプティブル仮想マシンの料金
ではプリエンプティブル仮想マシンがどの程度安くなるのでしょうか。インスタンスタイプにより差がありますが、ここではn1-standard-2で比較しましょう。またプリエンプティブル仮想マシンが24時間生存するインスタンスですので、ここでは24時間あたりの金額としましょう。
|
料金 (24時間) |
通常 |
$2.928 |
プリエンプティブル |
$0.636 (通常の21.7%) |
結果、プリエンプティブル仮想マシンは通常時の約1/5の料金となりました。仮に1ヶ月分の料金で計算しても、プリエンプティブル仮想マシンは通常時の約1/3の料金となります。このコストパフォーマンスは非常に高いですね。GPUマシンも同様に選択可能ですので、機械学習を行っているエンジニアにとっては朗報です。
まとめ
今回の紹介でGCEのプリエンプティブル仮想マシンに興味を持って頂けたものと思います。利用目的が限られてきますが、バッチの実行や機械学習などに利用するといいでしょう。
- プリエンプティブル仮想マシンは、24時間限定のサーバインスタンスである。
- インスタンスの作成時に、プリエンプティブルの項目を「ON」にするだけの設定。
- 料金が通常時の約1/5とコストパフォーマンスが高い。
プリエンプティブル仮想マシンについては、Google公式でも丁寧に説明されています。せひ参考にして下さい。
https://cloud.google.com/preemptible-vms/?hl=ja