こんにちは!
今回は、私たちが普段から意識している AWS の利用費用を下げるときの思考フローとテクニックについて紹介します!
AWS の料金体系は従量課金と固定費用が混在したりと複雑な部分がありますが、本記事の AWS のコストカットのテクニックを身に着けて、手早く・賢く利用料金を最適化しましょう。
AWS の料金体系には、大きく分けて2タイプの料金体系が用意されています。
上記に加えて、AWS では利用費用の下がる料金体系がいくつか用意されていますので、気になる方はこちらのブログをご覧ください。
EC2 などのオンデマンド課金のサーバーをプロビジョニングした場合、使用量に関わらずサーバーリソースのサイズなどに応じて料金が発生します。よって、未使用・使用頻度の低いリソースにをそのままにしておくと、いつの間にかコストがかかってしまう場合があります。
本記事では、未使用・使用頻度の低いリソースを対象としたコストカットの方法として、次の3つの観点から説明します。
比較的すぐに導入できるものばかりですので、ぜひ参考にしてみてください。
最近の開発案件で、お客様より以下のような要望をいただくケースが多数あります。
私たちは、事前に AWS の利用料金を把握するためのツール「AWS Pricing Calculator」を使用し、事前にお客様へAWS の利用料金をご提示しています。
リソースの過剰なプロビジョニングや、未使用状態のリソースをそのままにしておくことで、リソースに対して過剰に費用を払っている可能性があります。ツールを使用して EC2 などのリソースの稼働時間やサイズを調整することで、コストをカットできます。
稼働スケジュールの調整は AWS Instance Schedule を、リソースサイズの最適化は Cost Explorer を用います。
AWS Instance Scheduler は、Amazon EC2 と Amazon RDS インスタンスのカスタム起動および停止スケジュールを設定できるソリューションです。
深夜や休日等、時間帯によってインスタンスが未使用状態になる場合、Amazon Instance Scheduler で稼働スケジュールを調整し、コストカットしましょう。
AWS Instance Scheduler のページからクラウドフォーメーションテンプレートをダウンロードし、使用を開始してください。
AWS のコストの可視化ツール AWS Cost Explorer を使用し、削除・サイズダウンすべきインスタンスを確認します。
まず、Cost Explorer の設定から、「EC2 リソースの推奨事項を受け取る」をチェックすることで有効にします。
次に、推奨事項をもとにサイズダウンをすべきインスタンスを決定し、ダウンサイジングや削除を選択します。
Amazon Redshift クラスターの場合、AWS マネジメントコンソールにて、クラスターの一時停止・再開スケジュールの作成が可能です。
未使用状態のクラスターを一時停止することで、オンデマンド課金が中断され、ストレージのみの課金となります。使用していないクラスターに関しては、ぜひ一時停止の対応を行いましょう。
クラスターの一時停止は、Amazon Redshift のコンソール画面から行うことができます。左メニューの「cluster(クラスター)」を選択し、該当のクラスターにチェックを入れたら「Action(アクション)」>「Pause(一時停止)」を選択します。
最後に次の画面で一時停止のタイミングを選び、実行すれば一時停止は完了です。
AWSのコスト削減・自動的なリソースモニタリング・パフォーマンス向上等に役立つ、AWS Trusted Advisor。
AWS Trusted Advisor は、以下のAWS のベストプラクティスに基づく 5 つのカテゴリにわたるチェックと推奨事項を自動で提供します。
では、AWS Trusted Advisor を使用して実際に削除対象のリソースを特定しましょう。
AWS マネジメントコンソール>Trusted Advisor>コスト最適化より、コスト最適化チェックを実行・更新します。結果をもとに、リソース削除の是非を決めます。
AWS では、データアクセス頻度に応じたストレージ層が提供されています。層によって価格帯も異なりますので、アクセス頻度の低いデータを低コストの階層に移動することでコスト削減につながります。
Amazon S3 標準ストレージクラスを使用している場合は、一定期間アクセスされていないオブジェクトを自動で低コストのクラスに移行させる「ライフサイクルポリシー」を設定しましょう。
ライフサイクルポリシーの設定によって、データを自動的に別のストレージに移動させるルールを定めることができます。この方法はアクセスパターンが決まっているデータに対して有効で、そうでないデータについては次に説明する S3 Intelligent-Tiering の使用がおすすめです。
なお、移動元・移動先のストレージは下記のように定義されており、ストレージ料金が低くなる方向にのみ移行可能です。(関連記事:Amazon S3 ライフサイクルを使用したオブジェクトの移行 | Amazon Simple Storage Service)
ストレージコストを自動的に最適化するストレージクラス「S3 Intelligent-Tiering」の使用も効果的です。
高頻度・低頻度の2つのアクセス階層が組み込まれており、アクセスパターンに応じて自動でデータを移動させることができます。アクセスの頻度が低いデータを低頻度階層に移動させることで、コストをカットできます。
Amazon リザーブドインスタンス (RI) は、Amazon EC2 の使用コストを節約できる割引料金プランです。リザーブドインスタンスを使えば、アカウント内の既存または新規のオンデマンドインスタンスに対し、割引料金を自動的に適用できます。(引用:EC2 リザーブドインスタンスの詳細)
リザーブドインスタンスは、AWSマネジメントコンソール>EC2>リザーブドインスタンスから購入可能です。
以上、AWS の利用費用を下げるときの思考フローとテクニックについて紹介しました。今日から実行したい方法ばかりですので、ご自身に合った方法を積極的に導入していきましょう。
AWS の料金最適化・コストカットは、私たちにお気軽にお問い合わせください。
スモールスタート開発支援、サーバーレス・NoSQLのことなら
ラーゲイトまでご相談ください
低コスト、サーバーレスの
モダナイズ開発をご検討なら
下請け対応可能
Sler企業様からの依頼も歓迎