はじめに
Fargate SpotについてAWS SAAの学習中にその存在を知り、どこかで利用してみたいと考えていました。
とある案件においてピッタリな開発用環境に遭遇しましたので、節約効果を期待して実際に数か月間試してみた際の記録となります。
対象の環境について
- 社内の小規模な開発用環境であり、落ちても特に構わないという状況である(重要)
- 既にFargateを利用している
- 開発チーム内に、余りにも落ちすぎて鬱陶しかったりしたら考えようぜ、一旦試してから考えよう的な温かい雰囲気が漂っていました(これも重要)
注意点
Fargate SpotではAWS上の余剰リソースを安く(7割引!)利用できる反面、予告なくインスタンスが停止する可能性があります。(※正確には終了2分前に警告を通知してくれます)
その為、本番環境などで利用される際は耐障害性、特に中断への耐性といった観点から本当に問題が無いのか事前に十分検討する必要があります。
乗り換え方
既にFargateを利用されている場合であれば、ECSサービスの更新時にCompute options⇒Capacity providerからFARGATE_SPOT
を選択する事で利用を開始出来るかと思います。
私が設定を試みた際には当初Fargate Spotが選択肢として表示されない状態だったのですが、こちらの記事を参考にさせていただきクラスタの設定を更新したところ、FARGATE_SPOT
が選択可能となりました。
乗り換えてみた結果
約5か月前に乗り換えたところ導入直後から目に見えて料金が下がり、単位時間辺りの料金を改めて計算したところ綺麗に7割引となっていました!!
懸念していた停止頻度については様々な要因が絡んでくるかと思いますので一概には言えないとは思うのですが、当環境においては導入後に落ちたところを見た者がいないという状況になっており、良い意味で逆に不安になってくるレベルとなっています1回落ちるところを見て安心したい
利用料金
乗り換えは7月下旬に実施しました(赤青が混ざっているタイミング)8月から目に見えて料金が下がっているかと思います。
利用CPU時間
メモリとほぼ同様の傾向にありますが、料金と見比べることで単位時間当たりのコストが目に見えて落ちていることが分かるかと思います。
利用メモリ時間
おわりに
気になっていたFargate Spotを実際に試してみたところ、設定が容易で節約効果が非常に大きく、懸念されていた停止頻度も小さいと大満足の結果となりました!
効果が想像以上でしたので現在は本番利用の検討を進めています🍀
特に以下のような要素を持つ環境であれば導入が容易かと感じましたので、検討してみる価値は大いにあるかと思います!
- 開発用といった理由から落ちても特に構わない(or 耐障害性バッチリな)環境である
- 既にFargateを利用している
今回参考にさせていただいた記事