Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWSコストを削減(最適化)するには?短期でできる改善策と長期的な運用負荷軽減への取り組み方を解説

NCDC
February 28, 2023

 AWSコストを削減(最適化)するには?短期でできる改善策と長期的な運用負荷軽減への取り組み方を解説

最近は円高方向への揺り戻しが進んでいますが、2022年はたった数ヶ月間で1ドル115円から1ドル150円台への激しい円安が起きたため、為替変動による急激なコスト増加が多くの企業で問題になりました。

AWSをはじめとした海外のクラウドサービス利用においても、単純計算では短期間で30%程度のコスト増加が起きたかたちになるため、急いでコストの見直しをはじめたという声をよく聞きます。
とくに、従量課金型の料金体系のサービスでは、無駄なコスト(本来使う必要のない部分にかかっているコスト)がないか、見直すことが急務となっています。

当社にも関連するご相談がよく届くようになりましたが、ひとくちにAWSのコストの削減(最適化)といっても、そのアプローチはひとつではありません。
このセミナーでは、当社のノウハウを活かした「短期でできる設定の見直し」と、「長期的に取り組むべきアーキテクチャの見直しなどを含めた運用負荷軽減への取り組み」の2つをご紹介します。

AWSをすでに導入されている方はもちろん、今後の本格的な導入を検討されている方にも参考にしていただける内容です。

主な内容

・AWSコスト削減相談の事例
・AWSコストに無駄が生じる理由
・短期でできる改善方法の紹介
・長期的な運用負荷軽減への取り組み方

NCDC

February 28, 2023
Tweet

More Decks by NCDC

Other Decks in Technology

Transcript

  1. AWSコストを削減(最適化)する
    には?短期でできる改善策と長期
    的な運用負荷軽減への取り組み方
    を解説
    NCDC Onlineセミナー
    2023年2月28日
    NCDC株式会社

    View full-size slide

  2. 三浦 洋平
    シニアITコンサルタント
    NCDCでは、 AWSアーキテクチャコンサル
    ティングを中心として様々なプロジェクト
    に従事。
    AWSの大規模IoTプラットフォーム構築に加
    え、JavaScript(React)を主としたフロントエ
    ンド開発、スマートフォンアプリ開発も経
    験し、フロントからインフラまで幅広い領
    域に対応できる技術力を持つ。

    View full-size slide

  3. Business
    事業領域の推進
    Design
    ユーザ視点での設計
    Technology
    技術による課題解決
    Innovation
    • コンサルティング
    • 新規サービス企画
    • PoC⽀援
    • デザイン思考
    • UX/UIデザイン
    • モバイル・Web先端技術
    • IoT / AI / AR
    • クラウドインテグレーション
    3
    NCDCのサービス体系

    View full-size slide

  4. 知識、経験、および実績
    に基づく認定
    AWSに関する強み
    4
    自社運営で培った豊富な
    AWSのノウハウ
    NCDCは、内製化支援推進AWSパートナー、
    サーバーレス(AWS Lambda)のサービス
    デリバリーパートナーなど
    AWS利用の知識、経験、
    および実績に基づく認定を
    取得しています。
    AWSサービスデリバリープログラムとは、特定のAWSサービ
    スをお客さまに提供する上で深い技術的知識、経験、および
    実際の成功事例があるAWSパートナーをAWSが認定するプロ
    グラムです
    https://aws.amazon.com/jp/partners/programs/service-delivery/
    NCDCは、AWS上で稼働する自社サービス
    も提供しており、システム開発からサー
    ビス運営まで行っています。
    サービスを自社運営する中で長年蓄積し
    てきたノウハウを基に、コストの最適化
    から、AWSの多様なサービスをフルに活
    用するクラウドネイティブなアーキテク
    チャの設計まで、実践的なサポートを行
    います。

    View full-size slide

  5. AWS事例(ライフネット生命保険株式会社)
    5

    View full-size slide

  6. 本日のテーマ

    View full-size slide

  7. 今日のテーマ
    l AWSのコスト最適化とは何か?
    l 『AWSコストを削減(最適化)するには?』
    l AWSのコスト削減
    1. AWSコスト削減相談の事例
    2. AWSコストに無駄が生じる理由
    3. 短期でできる改善方法
    l 今日からできる基礎的な手法をご紹介
    4. 長期的な運用負荷軽減への取り組み方
    l より高いレベルでAWSを活用するには?
    l AWSのコスト最適化とは
    7

    View full-size slide

  8. AWSのコスト最適化とは何か?
    l 最適化=削減だけではない
    l AWSのコストは増え続ける
    l AWS利用料が減ることだけがゴールではない
    l 何のためにAWSを使うのか?
    8

    View full-size slide

  9. AWSのコスト削減
    1. AWSコスト削減相談の事例

    View full-size slide

  10. AWSコスト削減相談の事例
    l よくあるお悩み
    l どこにお金がかかっているかわからない
    l 削減できる無駄がありそうだとはわかっているが、
    忙しくてその対応に手が回らない
    l 自社で十分な対策をやっているつもりだが、本当
    に最適な設定にできているのかわからない
    l アプリが乱立していて全体像が把握できないため、
    サーバー管理者の方で削減できる無駄があるのか
    どうかもわからない
    l アーキテクチャを見直すことでコストを減らせる
    のかどうかわからない
    10

    View full-size slide

  11. AWSコスト削減相談の事例
    l 多くの企業で、AWSのコストが高い・無駄があると感じている担
    当者が多い
    l 一方で、それに対し適切な打ち手を打てている企業は少ない印象
    l 実際に無駄や過剰がある企業は多く、また、無駄遣いをしていな
    くてもコスト削減余地の残されている企業がほとんど
    l 本日紹介する手法で、コスト削減の多くが達成可能
    11

    View full-size slide

  12. 2. AWSコストに無駄が生じる理由

    View full-size slide

  13. AWSコストに無駄が生じる理由
    l AWSにおける無駄なコストとは?
    l 全く使っていないリソースにかかっているコスト=「無駄」
    l 必要なリソースだが、必要以上のスペック・稼働時間になっているこ
    とによって余計にかかっているコスト=「過剰」
    l 「無駄」を削減するのは簡単だが、削減余地は多くはない(はず)
    l 「過剰」な部分をいかに削るか、という観点が重要
    13
    無駄?
    過剰? 無駄?
    過剰?

    View full-size slide

  14. AWSコストに無駄が生じる理由
    l 「無駄」や「過剰」はなぜ発生するか?
    l 「AWSの運用ルールがない・徹底されていない」ことがほとんど
    l 「とりあえず作ろう」・現場の裁量に任せる
    l AWSの良いところでもあり、必要なことでもある
    l 定期的な見直しなど、その後のフォローアップが重要
    l AWSの料金明細がわからない・見ていない
    l どこに無駄な料金がかかっているか?がわからない
    l AWS運用担当者にコスト削減の知識がない
    l このセミナーで身につけましょう!
    14

    View full-size slide

  15. 3. 短期でできる改善方法

    View full-size slide

  16. 短期でできる改善方法
    l 「無駄」を洗い出す
    l 使っていないリソースを見つけて削除する
    l 使っていなさそうなリソースを洗い出す
    l 終了したプロジェクトの開発用リソース
    l 目的が不明なサーバー・DB
    l どこで使っているかわからないもの
    l CloudWatch メトリクスでCPU使用率・ネットワークIN/OUTが小さいもの
    l AWS Trusted Advisor も助けになる
    l 普段から情報を整理しておくことが重要
    16

    View full-size slide

  17. 短期でできる改善方法
    l 「過剰」なリソースを見直す
    l インスタンスサイズ(EC2・RDS)
    l スペックが余っているリソースを最適なサイズに変更する
    l 稼働時間(EC2・RDS)
    l 業務時間にしか利用しないものは業務時間外は自動的に停止しておく
    l マルチAZ(RDS)
    l 可用性が求められないDBはシングルAZで運用する
    l アクセス頻度(S3)
    l アクセス頻度が高くないログファイルなどはGlacierなどの廉価ストレージ
    を利用する
    17

    View full-size slide

  18. Cost Explorer の活用
    18

    View full-size slide

  19. Cost Explorer の活用
    19
    l 内訳がこんな感じで出ます
    l RDSが一番多く(20%)、次いで
    EC2その他
    l EC2その他=NAT Gateway や
    EBS、通信量など
    l EC2インスタンス自体は全体
    の5%程度

    View full-size slide

  20. Cost Explorer の活用
    20
    l RDSの内訳を分析
    l ここではリソースのタイプご
    とに分析
    l m5.largeサイズが一番お金が
    かかっている
    l t3.mediumも同じくらいか
    かっているので、数が多そう

    View full-size slide

  21. Cost Explorer の活用
    21
    l コストタグを使うことで、利用目的別のコストを算出できる
    l 上記はあるサブプロジェクトAに使われているコストを抽出したもの
    l このサブプロジェクトでは、Lambdaが中心に使われている
    プロジェクトA

    View full-size slide

  22. 短期でできる改善方法
    l Saving Plans・リザーブドインスタンスの購入
    l AWSと今後の利用量をあらかじめ約束しておくことによって、単価の
    割引が受けられる仕組み
    l 一括仕入れによって割引が適用されるのと同じようなイメージ
    l 先払いするとさらに割引率が上がる
    l 実際の利用量が少なくても、約束した利用量に応じた金額がかかるた
    め、購入量によっては損をすることも
    22
    2023年の1年でこのDBを1000ドル
    分以上使います!
    では、1000ドル分までは30%引きし
    ますね!
    AWSの人

    View full-size slide

  23. Saving Plans・リザーブドインスタンスの仕組み
    23
    2023年で500ドル分しか使わなかっ
    たよ…
    約束なので、残りの500ドル分はお
    支払いくださいね
    AWSの人
    もっとたくさん割引してもらえま
    せんか?
    3年分の利用をお約束いただければ、
    割引率があがります!
    AWSの人
    料金を一部または全部前払いいただ
    くと、さらに割引が増えますよ!

    View full-size slide

  24. 注意
    l 「過剰」と「バッファ」を間違えない
    l スペックが大きいのは、アクセス集中に耐えるためかもしれない
    l 必要な稼働時間をきちんと確保できているか
    l やりすぎると不便になる・リスクがあるものがある
    l スペックが小さすぎて遅くなってしまう
    l シングルAZだといざという時にすぐに使えないリスクが上がる
    l Saving Plans・リザーブドインスタンスも払い過ぎのリスクあり
    24

    View full-size slide

  25. コスト削減のステップ
    1. 全体の分析をする
    l どこにどれくらいコストがかかっているか?
    l Cost Explorerなどを活用
    2. コストがかかっている部分から削減余地を探す
    l 大きいインスタンスの稼働率を確認(CloudWatchなど)
    l 使ってなさそうなインスタンスを探す
    3. 「絶対に今後も使う」部分を特定し、Saving Plans/リザーブドイ
    ンスタンスの導入をする
    l 購入量に気をつける
    4. 効果を測定する・分析を続ける
    l 継続した活動にする・分析に必要なルールを作る
    25

    View full-size slide

  26. ここで宣伝です
    26

    View full-size slide

  27. 4.長期的な運用負荷軽減への取り組み方

    View full-size slide

  28. 長期的な運用負荷軽減への取り組み方
    l AWSの運用ルールを定め、AWSアカウント上に実装する
    l ルールだけあっても守られない
    l 自動で守らせる仕組みを作る・自動化する
    l 開発者には一定サイズ以上のインスタンスを作らせない、スポットインス
    タンスを使わせる
    l テスト用の資源にはタグをつけさせる・プロジェクト識別用のタグをつけ
    させる
    l 上記をIAMやAWS Configで強制する
    l Cost Explorer や AWS Budgets、Cost Anomaly Detectionなどのサービスを活用
    し利用料を監視・アラートする
    28

    View full-size slide

  29. 長期的な運用負荷軽減への取り組み方
    l アーキテクチャをコスト最適になりやすいものに変える
    l EC2でサーバーを立ててサービス提供をするのは過剰スペックになり
    やすい
    l サーバレスアーキテクチャ・コンテナアーキテクチャの導入で「使っ
    た分だけ」「必要な分だけ」のコスト発生の実現ができる
    29

    View full-size slide

  30. コスト最適なアーキテクチャ
    30
    EC2 1台でアクセスを捌く場合 コンテナ・サーバレス
    アクセス数に応じてオートスケール
    キャパ不足
    2台目を立てる・
    サイズを2倍にする
    自動調整
    暇な時は数
    を減らす

    View full-size slide

  31. AWSのコスト最適化とは

    View full-size slide

  32. AWSのコスト最適化とは何か
    l なぜAWSを使うのか?
    l DXを推進するため
    l IT関連のコストを下げるため
    l システムのクラウド化が進むほど、AWS費用は当然上がる
    l AWS費用を減らしたいなら、AWSを使わなければいい
    l クラウド化が進むと、AWSの費用は上がるが、全体の費用は下がる
    32

    View full-size slide

  33. クラウドとオンプレの費用内訳(イメージ)
    33
    クラウド
    利用料
    アプリ構築、検証、
    新機能追加コスト
    サーバー
    費用
    クラウド費用 オンプレ費用
    機能改修・
    障害対応コスト
    アプリ構築、検証、
    新機能追加コスト
    機能改修・
    障害対応コスト
    サーバー費用だけ見るとオンプレが
    優位でも
    新しいことに挑戦しようとするほど
    オンプレでの対応が難しくなる
    運用保守費用
    運用保守費用
    運用保守は大変
    インフラ
    費用
    アプリの
    コスト

    View full-size slide

  34. AWSのコスト最適化とは何か
    l 目先のことを考えると、AWS費用は低い方がよい
    l 今日紹介した方法でコストを削る努力は大切
    l 長いスパンで考えると、AWS費用の低さが必ずしも正義ではない
    l 適切にお金を払って、クラウドの恩恵を受け取る
    l コストに見合ったDXのメリットが享受できているか
    l メリットが小さい部分のAWS利用をカットして費用を最適化していく
    34

    View full-size slide

  35. クラウド活用事例:ライフネット生命
    l 改修・メンテナンスにコストがかかるようになっていたコン
    シューマー向け販売サイトを刷新
    l 徹底的なサーバレスの採用で、サーバーを持たない構成に
    l CI/CDによる開発速度の向上
    35
    利用者
    CloudFront
    Cognito
    API Gateway
    認証基盤
    ルーティング SPA 配置
    S3
    API管理 処理実行
    Lambda DynamoDB
    CodePipeline
    CodeBuild
    開発者
    デプロイ Commit
    CI/CDフロー
    オンプレ

    View full-size slide

  36. クラウド活用事例:ライフネット生命
    l 特徴
    l 構成はスタンダードなサーバレスアプリケーション
    l フロントエンド・バックエンドのデプロイを全自動化
    l 環境構築もCloudFormationで自動化し、いつでも複製可能に
    l コスト観点
    l フロントエンドとバックエンドの分離、バックエンドのマイクロサー
    ビス化により変更しやすいアーキテクチャに
    l デプロイの全自動化により開発終盤でも即時に不具合修正反映
    l メンテナンスフリーなインフラ基盤(監視するべきメトリクスがほと
    んどなくなった)
    l 環境複製による検証環境追加が容易になり、都度コストが大幅減少
    36

    View full-size slide

  37. 本日のまとめ
    l AWS利用料の「無駄」「過剰」は運用ルールと知識不足で起こる
    l まずできることは以下の2つ
    l 「無駄」「過剰」を削減する
    l Saving Plans/リザーブドインスタンスの導入
    l 長期的な取り組みとして、ルールの整備とアーキテクチャの最適
    化が必要
    l なぜAWSを使っているのか忘れずに!
    38

    View full-size slide

  38. NCDCでは
    l 成果報酬型のAWSコスト削減サービスを提供中
    l AWS利用状況を見てコスト削減の可能性を調査(無料・条件有)
    l この部分を削減した場合、サービスレベルにどの程度影響があるかに
    ついて詳細にご説明、同意の上で施策を実行
    l 削減幅に応じてサービス利用料をいただく
    l コストを考慮したDXアーキテクチャ検討・構築支援
    l クラウドへの移行や、新しいアーキテクチャをコスト面含め検討
    l コンテナ・サーバレスの活用や、その他マネージドサービスの提案・
    検討・構築支援
    39

    View full-size slide

  39. お問い合わせは
    l [email protected]まで
    40

    View full-size slide

  40. Appendix: クラウド活用時のコスト観点

    View full-size slide

  41. クラウド活用時のコスト観点
    l 「いつ」コスト最適化を考えるか
    l PoC段階で細かい試算をしても効果は薄い
    l 「どんな」コストを削減するか
    l クラウド利用料のみでコスト削減を考えない
    l 「どのくらい」の性能を必要とするか
    l 可用性やセキュリティ、保守性などをどこまで求めるか
    l 「何を」使って構築するか
    l 単純にサーバーを立てて移行するのはコスト削減につながりにくい
    l 可用性を高めつつコストを抑えられるサービスの導入を検討
    l コンテナ・サーバレスなど
    42

    View full-size slide

  42. DXにおけるクラウド
    l クラウドは、DXを加速させるための手段の一つ
    l インフラコストの削減も重要だが、DX実現によってもたらされる競争
    力の強化こそが最大の目的
    l コスト削減がDXの足かせになっては本末転倒
    l DXにおいては、クラウドを高いレベルで使いこなすことが求めら
    れる
    l クラウドサービス・マネージドサービスをフル活用すれば、コスト最
    適化を実現しつつ十分なインフラ基盤を構築することは可能
    l コスト削減がしたいのか、DXがしたいのか
    43

    View full-size slide