Azure VMでスポットインスタンスを建ててみた

ついにAzureにもスポットVMが導入されたので、早速試してみました。

スポットVMとは

VMを構築する際にスポットVMを適用させることで、ランニングコストを下げることが出来る仕組みで、AWSでは大分前からリリースされていた機能です。仕組みもEC2のスポットインスタンスとほとんど変わらず、Azure側でリソースが不足した場合には問答無用でシャットダウンされます

Azureの余剰リソースを使うことで安くリソースを使うことが出来る仕組みになっています。

用途

基本的には「いつでもシャットダウンされても良い」ワークロードで動いているVMが適切です。

開発環境や中断しても大丈夫なバッチ処理、ロードバランサ配下のアプリケーションサーバなどでスポットインスタンスの利用を検討できると思います。

やってみた

まだプレビュー版なので手順は変わるかもしれませんが、実際にやってみましょう。今回はCentOS8.0のVMをスポットインスタンスで建ててみましょう。

削除の種別

スポットインスタンスが削除される条件を指定することが出来ます。

ここで「価格または容量」を選択すると、「スポットインスタンスのコストが閾値を超えた段階でシャットダウンさせる」という条件を追加することが出来ます。決められたランニングコストをキープしたい場合にはこれを使います。

あとは普通にVMを建てるときの手順と変わりません。仮想ネットワークの設定なども同じです。

ちなみに、12月のAzureもくもく会@札幌ではマイクラサーバを建てるためだけにスポットインスタンスを使いました。

実はマイクラで遊んだこと無かったんですが、確かに沼にはまりそうなんですが、スポットインスタンス使えば何かしらのタイミングで消えるので沼にはまるの防げそう?(そうじゃない)