AWSのコスト削減|まず取り組むべきことや具体的なコスト削減の方法
「オンプレミスからAWSへの移行によって、想定していたよりもコストがかかっている」という声は少なくありません。AWSはコストを意識して利用しなければ、際限なく費用がかさんでしまいます。コストを最適化するためには、AWSの料金の仕組みや適切に運用する方法について理解しておくことが大切です。この記事では、AWSのコスト削減・最適化について詳細に解説します。
●AWSにかかるコスト
AWSにはさまざまなサービスがあります。サービスによって料金体系は異なりますが、そのほとんどは従量課金制です。
従量課金制とは、サービスの利用量に応じて料金が高くなるシステムのことです。利用状況を調節すればコストダウンができる一方、利用すればするほど際限なく料金が高くなってしまいます。
現在はほとんど使わなくなったサービスが継続されており、費用がかかっているケースは少なくありません。コスト最適化のためには定期的に利用状況を見直し、サービスの利用を停止すべきか判断する必要があります。
●AWSのコストを削減・最適化する際にすべきこと
AWSのコストを最適化するポイントとして、以下のようなものが挙げられます。
・現状を分析する
まずは、AWSのコストに関する現状分析は不可欠です。闇雲にコストを抑えようとすると、利用しているサービスまで停止してしまうことがあります。サービスの利用状況とコストを鑑み、本当に必要なサービスなのか、そのコストは適正なのか判断することが重要です。
AWSでは、請求コンソールで請求内容を確認できます。サービスごとの利用割合が円グラフで表示されるほか、対照月ごとの請求書も取得できます。利用状況に対して大きなコストがかかっているサービスがあれば、最適化を検討しましょう。
・AWSが提供しているコスト最適化に役立つツールを使用する
コストの最適化に役立つツールがAWSから提供されています。こうしたツールを利用すると、効率的にコストを管理できるでしょう。
「AWS CostExplorer」は、AWSのコストを見やすいインターフェイスで可視化できるツールです。使用量に応じたコストを1日単位、または1月単位で把握できます。過去のコスト分析から将来の利用料を予測することもできるため、予算設定にも役立てられるでしょう。
「AWS Budgets」は、設定した予算内に利用料金を納めたい場合に役立ちます。常に利用状況を追跡し、しきい値を超えた場合にはすぐにアラートで通知されます。シビアな予算管理を行っている場合には、重宝するサービスです。
また、「AWS Managed Services (AMS) 」を採用することにより、自社のビジネスに必要な分だけITリソースを利用することができ、コストの最適化を促進させることができます。
・コスト対策を実行する
運用コストを増大させているサービスが把握できた場合は、コスト対策を実践していきます。
使っていないサービス、使用率の低いサービスの停止は代表的なコスト対策です。AWSはサービスの数が多く、適切に管理していなければ不要なサービスが残されているケースがあります。業務への貢献度が少ないサービスであれば、積極的に停止を検討しましょう。
停止が難しいサービスでも、スペックを見直すことは重要です。例として、利用する特定の時間・曜日が決まっているサービスに関しては、自動停止・起動の設定をすると、料金を節約できる可能性があります。こうした細かな設定による削減額は決して無視できません。
また、長期利用するサービスについては、プランを検討しましょう。多くのサービスでは、長期の契約で割引率が適用されます。継続的に長く利用することが事前に確定しているサービスについては、「全額前払い」で支払うと大幅なディスカウントが受けられます。
●AWSのコスト最適化の方法
以下では、AWSのコスト最適化の具体的な方法について解説します。
・「Amazon EC2」「Amazon RDS」への不要なインスタンスへの支払いを止める
「Amazon EC2」や「Amazon RDS」は、AWSのなかでも一般的なサービスです。AWSユーザーのほとんどが利用しています。テスト開発環境や自社の社員のみが利用する環境など、特定に時間にしか使わないものがある場合は、自動停止する設定にすることで費用を最適化しましょう。
「AWS Instance Scheduler」を利用することで、スケジュールに応じて開始・停止を自動制御できます。簡単に実施できる方法のためおすすめです。
・「Amazon Redshift」の不要なクラスターへの支払いを止める
「Amazon Redshift」は、サイズや利用のスケジュールをクラスターごとに設定できます。一方で、設定を変更していない場合は使わないクラスターに無駄ない費用が発生しているケースがあるため注意が必要です。「Amazon Redshift」の起動・停止スケジュールは、AWSコンソールから設定できます。
AWSの公式サイトでは、金曜午後6時から月曜午前6時までクラスターを停止した場合、最大35%の費用節約が実現できると述べられています。
・「Amazon S3 Intelligent-Tiering」を有効化する
「Amazon S3」は標準のストレージクラスであり、AWSユーザーであればほとんどが利用しています。データをファイル単位ではなくオブジェクト単位で管理する点が特徴ですが、利用頻度が低いデータに対して通常の料金を払っているケースがあります。
「Amazon S3 Intelligent-Tiering」は、利用が少ないデータを自動的にコストが低いクラスに移動する機能です。公式サイトでは、この機能の実装によって最大30%の削減効果が期待できると述べられています。
・「Amazon DynamoDB」のキャパシティモードを「オンデマンド」に変更する
「Amazon DynamoDB」には、「プロビジョンド」と「オンデマンド」という2種類のキャパシティモードが存在します。
「プロビジョンド」は、アプリケーションの実際の読み書きに関係なく、予定に基づいたキャパシティに応じて課金されます。一方、「オンデマンド」では、使用した分のみの課金となります。実際の読み書きに応じた料金のほうが都合が良い場合は、キャパシティモードを「オンデマンド」に変更しましょう。
・「Amazon EC2」で使われていないインスタンスへの支払いを止める
「Amazon EC2」はAWSの仮想サーバーサービスのひとつであり、インスタンス単位で管理できます。複数のインスタンスを構築して管理することが一般的です。ただし、あまり使われていないインスタンスに対して費用を払っているケースがあります。
「Cost Explorer」を利用することで、削除対象となる利用頻度が少ないインスタンスを判別できます。特にCPU使用率が40%を下回っているインスタンスについては、積極的に削除を検討しましょう。
・不要なネットワークリソースを削除する
AWSの利用全般において、使っていないリソースは積極的に削除しましょう。「Trusted Advisor」というサービスにはパフォーマンス向上やセキュリティ強化を支援する機能が搭載されていますが、コストの最適化状況も検査できます。無駄なネットワークリソースも可視化できるため、利用をおすすめします。
・「Amazon EC2 スポットインスタンス」 を購入する
「Amazon EC2」では、AWSが保有している余剰リソースを利用する「Amazon EC2 スポットインスタンス」という購入オプションが用意されています。価格は変動しますが、一般的にオンデマンドよりもはるかに安くインスタンスを購入可能です。
「Amazon EC2 スポットインスタンス」は余剰リソースである性質上、利用できなくなる可能性があります。この点を踏まえて問題ない用途であれば、利用を検討しましょう。例として、テスト環境などであれば突然利用できなくなっても被害は少なく、スポットインスタンスのメリットを享受できます。
・リザーブドインスタンス(RI)を利用する
「Amazon EC2」「Amazon RDS」「Amazon ElasticSearch Service」「Amazon DynamoDB」「Amazon ElastiCache」「Amazon Redshift」には、オンデマンド料金と比較してコストを最適化しやすい「リザーブドインスタンス」という料金モデルが提供されています。「Compute Savings Plans」と同様、1~3年の契約期間が定められており、契約満了前のキャンセルは不可です。
・「セービングプラン(SP)」を利用する
「Amazon EC2」「AWS Lambda」「AWS Fargate」では、1~3年の一定の使用量を契約する代わりにディスカウントが受けられる「Saving Plans」というオプションが用意されています。購入後のキャンセルは不可ですが、使用量が決まっている場合はオンデマンド料金よりも安く購入可能です。「任意のタイミングで解約できる」というクラウドサービスの恩恵を犠牲にすることになるため、利用には慎重な判断が求められます。
●使用状況を見極めAWSコスト最適化を実現しましょう
AWSのコストは、ユーザーの利用状況によって変わります。無駄なコストを発生させないためには、自身の使用状況を確認することが重要な取り組みです。
サーバーワークスではコスト削減コンサルティングサービスを提供しています。現在のパフォーマンスを落とすことなく中長期的にAWS利用料を最適化することができます。
https://www.serverworks.co.jp/service/operation/cost_reduction.html
何から始めたら良いか分からない場合などにはぜひご相談ください。