コスト削減効果のあった4つの方法
この記事では、AWSの料金を節約するために行なっている4つの方法を紹介します。
AWSはすぐにサーバが立ち上がるし、管理不要のDBやストレージサービスなどもあって非常に便利ですが、使っていると、期待していたほど安くはないんですよね。
安くするためにいろいろ試してみて、効果のあった施策が4つあります。
1つの施策であってもコスト削減に繋がりますし、たとえわずかであったとしても半年1年と払い続けることを考えると、それなりの金額になります。
使っていないインスタンスやサービスを止めて無駄を省く
止めれば0円です(止めてもわずかにコストが生じるものもありますが)。ただ、「止めて問題ないか」ということが大ごとになりがちで、エンジニアだけで解決できないことが多いです。ある意味、管理能力を問われることになるので、マネージャーや担当営業に話を持っていってもなかなか進まないかもしれません。
取り組むときは、Trusted Advisorを用いて利用率の低いものに絞って調査していくのが効率的です。
スライド: 20180711 AWS Black Belt Online Seminar AWS Trusted Advisor
「リソースが存在していないVPC」や「インスタンスが存在していないロードバランサー」は、削除しても問題ないことが多いです。RDSも「停止」できるようになったので、使っていない開発環境などのリソースは積極的に「停止」すると効果があります。
インスタンスのスペックを見直してコストカット
そのEC2インスタンス、本当にlargeが必要ですか?mediumで十分じゃないですか?
最初はなんとなく決めたスペックであっても、しばらく運用していると、どのくらい遊んでいるか見えてきます(見えてこないのであれば、費用削減の前に監視を充実させるべきです)。「そのうち処理量が増えるから…」などと言い訳せずに、適宜スペックを見直すことが重要です。
これもまた、Trusted Advisorで利用率の低いものからあたりをつけると楽です。
また、インスタンスは世代が新しくなると費用は安くなります。m3.largeよりもm4.large、m4.largeよりもm5.largeが安いです。
開発やステージングの環境では以下の2点も意識しておくべきです。
- インスタンスのスペックを上げるのは、性能テストを行うときで十分でしょう
- RDSをマルチゾーンにするのは、フェイルオーバーのテストを行うときで十分でしょう
この施策はほぼエンジニアだけで行えますから、迷う前にトライしてみることをお勧めします。
リザーブドインスタンスを購入して割引を受ける
1年、あるいは3年、使い続けるという約束をする代わりに、費用を安くしてもらうという契約です。
また、支払いも「前払いなし」「一部だけ」「全額支払い」とあり、この順に割引が大きくなります。
逆に、1年(3年)はそれだけのコストがかかることになります。契約期間中にAWSの価格改定があったとしても、その恩恵に与ることはできません。
スライド: AWS Black Belt Techシリーズ リザーブドインスタンス & スポットインスタンス
前払いなしであれば、Webでポチポチ申し込むだけです。
ただ、使わなくても契約期間内は払い続けることになるので、マネージャーなどに「xx円/月になるけど1年(3年)払い続ける必要があります」と相談しておいたほうが良いでしょう。
スポットインスタンスを使って格安でEC2を使う
「AWSの都合でいきなり止めることがあるけど、そのかわり、格安にしておくよ」というサービスです。
停止する2分前に通知がくるので、検知して終了処理を行うようにすることは可能です。最近、Auto Scaling Groupを構成するときに、オンデマンドインスタンスとスポットインスタンスの比率を指定できるようになったので、使いやすくなったと思います。
WebのAPI処理など「遅くても5秒でレスポンスは必ず返す」ようなところや、ステージング環境として構築したECSクラスターのインスタンスには、導入しやすいです。ただ、いきなり止められるというリスクがあるので、関係者にそのリスクを納得してもらう必要があります。
コスト削減方法のまとめ
この記事では、AWSの費用を削減するための方法を4つ紹介しました。
- 使っていないインスタンスやサービスを止める
- スペックを見直す
- リザーブドインスタンスを購入する
- スポットインスタンスを使う
もっと違う方法も、探せば見つかるでしょう。ぜひこの記事をシェアして、他のコストカットの方法をお知り合いから聞き出してみてください。
コメント