Well-Architected Frameworkの柱「コスト最適化」を読み解いてみた

2019.05.28

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

ご機嫌いかがでしょうか、豊崎です。

最近Well-Architectedにご縁があり、連続して記事を書いています。今回はWell-Architectedのコスト最適化の柱についてご紹介をしたいと思います。

Well-Architectedとは何か?どういうシステムに使ってもらいたいか?については以下をご覧いただければと思います。

無料のAWS Well-Architected Toolでクラウド最適化への一歩を踏み出そう

さて、改めてですが、Well-Architected Framework には5つの観点があります。

  • 運用の優秀性
  • セキュリティ
  • 信頼性
  • パフォーマンス効率
  • コスト最適化

5 つの柱などと表現されたりします。

それぞれの柱に対話形式の質問が用意されています。

ここでは実際にどのような質問があるのか、またそれに対してどのような観点を持ってアプローチを行うことが望ましいかを確認していきたいと思います。

そのために各柱の設計原則、定義、ベストプラクティス、キーとなるAWSサービスについて確認していきたいと思います。内容がたっぷりあるので、柱ごとに確認をしていきます。

今回はコスト最適化の柱 について確認していきたいと思います。

コスト最適化の柱

コスト最適化の柱について

コスト最適化の柱には最も低価格でシステムを実行しビジネスの価値を提供するための機能が含まれています。

設計原則(Design Principles)

消費モデルを採用する

必要なコンピューティングリソースに対してのみ支払いを行う。

全体的な効率を測定

システムによるビジネスの成果とその成果を出すためのコストを測定します。この測定値を元に生産性の増加とコスト削減から得られる利益を把握する。

データセンターの運用にお金を費やすことをやめる

AWSにアウトソースすることでデータセンターに関連する管理、費用が不要になります。

支出の分析と分類

クラウドを利用することでシステムの使用状況とコストを正確に特定できるようになります。これにより個々のシステム所有者に使用分のコストを割り当てることができます。投資収益率(ROI)を測定することに役立ち、システム所有者にリソースを最適化してコストを削減する意識を持ってもらうことにもつながります。

マネージドとアプリケーションレベルのAWSサービスを利用して自己所有のコストを削減する

RDSなどをはじめとするマネージドサービスやSESなどのアプリケーションサービスを利用することで、サーバの保守、運用の負担を軽減させることが可能です。また同時にコストを抑えることにもつながります。

定義(Definition)

コスト最適化の柱には以下の4つのベストプラクティス分野があります。これらは以下にあるBest Practicesの項目にある質問およびKey AWS Services とマッピングされた形で確認されます。

  • 支出意識
  • 費用対効果の高いリソース
  • 需要と共有のマッチング
  • 徐々に最適化する

ベストプラクティス(Best Practices)

ベストプラクティスを確認するために以下のような質問が用意されています。

  • 支出意識
    • COST 1:使い方をどのように管理していますか?
    • COST 2:利用料と費用についてどのようにモニタリングしていますか?
    • COST 3:どのようにリソースの廃止をしますか?
  • 費用対効果の高いリソース
    • COST 4:サービスの選択をするとき、どのようにコストの評価をしますか?
    • COST 5:リソースタイプとサイズを選択するとき、どのようにコスト目標をしますか?
    • COST 6:コスト削減のための料金モデルをどのように選択していますか?
    • COST 7:データ転送料金についてどのような計画をしていますか?
  • 需要と共有のマッチング
    • COST 8:需要とリソースの供給をどのように一致させていますか?
  • 徐々に最適化する
    • COST 9:新しいサービスに対する評価をどのように行なっていますか?

Key AWS Service

  • 支出意識
    • AWS Cost Explorer
    • AWS Budgets
  • 費用対効果の高いリソース
    • Amazon CloudWatch
    • Amazon Trusted Advisor
    • Amazon RDS(RI)※ライセンス費用の削減
    • AWS Direct Connect
    • Amazon CloudFront
  • 需要と共有のマッチング
    • Auto Scaling
  • 徐々に最適化する
    • The AWS News Blog
    • What's New on the AWS website
    • AWS Trusted Advisor

まとめ

コストについてはAWSを利用するに伴い、利用した分だけ支払い、なるべく管理、運用をAWSへアウトソースすることで実際のリソースの利用費の削減ではなく管理運用のコストおよび負荷を下げ、トータルのコスト最適化を目指す旨が記載されています。

  • 支出意識
    • Cost Explorerを利用して正確に何に対してコストが発生したかを認識する
    • タグを使用して各システムごとに費用を整理する
  • 費用対効果の高いリソース
    • オンデマンドでコンピューティングリソースを利用する
    • リザーブドインスタンスの積極的な利用
    • 適切なサービスを利用することでコストを抑える
    • AWS Trusted Advisorを利用し定期的に使用状況を確認する
  • 需要と共有のマッチング
    • AutoScalingなどの需要に合わせたスケールを利用する
  • 徐々に最適化する
    • 新しいマネージドサービスが提供された時に評価し利用検討を行う
    • 常に最適化を検討する

さいごに

柱のタイトルからもわかる通り、コストを抑えるだけではなく、必要なサービスやリソースは適切に利用した上で不要なコストを見直しコストを最適化することがこの柱の主題だと考えています。そのために、何にどのくらいコストが発生したかを必要なメンバが正しく認識し最適化に取り組んでいきましょう。

この記事が誰かのお役に立てば幸いです。

参考

https://wa.aws.amazon.com/wat.pillar.costoptimization.en.html