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

S3とCloudWatch Logsの見直しから始めるコスト削減 / Cost saving S3 and CloudWatch Logs

S3とCloudWatch Logsの見直しから始めるコスト削減 / Cost saving S3 and CloudWatch Logs

shonansurvivors

January 27, 2023
Tweet

More Decks by shonansurvivors

Other Decks in Technology

Transcript

  1. JAWS-UG SRE支部 #5
    S3とCloudWatch Logsの
    見直しから始める
    コスト削減
    株式会社スマートラウンド
    山原 崇史(@shonansurvivors)

    View full-size slide

  2. 自己紹介
    株式会社スマートラウンド SRE
    山原 崇史 (やまはら たかし)
    経歴
     SIer・銀行・Web系ベンチャー 👉 スマートラウンド
    好きなAWSサービス
     IAM Identity Center(AWS SSO) / S3 Storage Lens
    Twitter
     @shonansurvivors

    View full-size slide

  3. 事業紹介
    ミッション
     スタートアップが可能性を最大限に発揮できる世界をつくる
    課題
     1. スタートアップ経営者の多くが初めての起業経験で
      株主管理や資本政策等の事務作業に時間を浪費
     2. 投資家は投資先スタートアップに対して
      独自のスプレッドシート入力を依頼するため非効率
    smartroundが実現する世界
     統一化・標準化されたデータ管理によって
     スタートアップと投資家双方の業務を効率化し、
     スタートアップが事業により専念できる環境を実現

    View full-size slide

  4. 本日のテーマ
    S3とCloudWatch Logsの見直しから始めるコスト削減
     AWSのコスト削減にあたっては様々な切り口、手法があると思いますが、
     比較的簡易な考え方で手早く S3とCloudWatch Logsのコストを削減したので、
     その事例を紹介します。
     

    View full-size slide

  5. アジェンダ
    1. Compute(EC2やFargateなど)におけるコストの特性
    2. S3におけるコストの特性と、その削減の実践例
    3. CloudWatch Logsにおけるコストの特性と、その削減の実践例
    4. まとめ

    View full-size slide

  6. Compute(EC2やFargateなど)におけるコストの特性
    ● 一般に、より高いスペックを利用するには、それに応じたコスト (費用)を支払う必要があります
    ● ここでのスペックとは
    ○ vCPU、メモリ、ストレージ、ネットワークパフォーマンス等

    View full-size slide

  7. Computeにおけるコスト適正化
    コスト適正化には性能の調整が必要となる場合が多く (※)、突き詰めるには一定のスキルが求められる
    性能
    コスト
    性能は充分だが過剰
    性能は充分
    性能を調整し、コストを適正化
    そのサービスに
    必要な性能
    (性能要件)

    コストは低いが性能は不足
    ※費用の前払い (Reserved Instances, Savings Plans)や、停止リスクの受容 (Spot InstancesやFargate Spotの利用)により、同一性能を低コストで実現することも可能
    ここでの性能とは、前ページで触れたス
    ペックに対して「インスタンス数や Auto
    Scaling等も加味して実際に発揮される性
    能」と捉えてください。

    View full-size slide

  8. S3のコストの特性 (1/2)
    ● ストレージタイプというものが複数から選択可能で、コスト構造は単純ではない
    ○ タイプにはStandard、Standard - Infrequent Access、Glacierなどがある(他にもある)
    ○ タイプによって、保存サイズあたりの費用や、リクエスト量に応じた費用や、
    取り出しにかかる費用や時間が異なったりする

    View full-size slide

  9. S3のコストの特性 (2/2)
    ● ただし、どのタイプも 保存サイズに応じた従量課金制 という点は共通
    ○ 「100GBまで年間2,500円」のような、このサイズに達するまでは定額といったプランは無い
    ● そのため、保存サイズが小さければ小さいほど確実にコストは抑えられる
    安 高

    View full-size slide

  10. S3の用途
    保存対象物の一例
    ● Webアプリケーションなどにおける顧客データ (顧客が生成、保管する PDFや画像など)
    ● Webページの静的コンテンツ (HTML、CSS、JavaScript、画像など)
    ● 各種ログ
    ● ビルドによる生成物(アーティファクト)
    ● その他様々
    ○ Athenaのクエリ結果
    ○ ECS用の環境変数ファイル (.env)
    ○ Terraformの状態管理ファイル (tfstate)

    View full-size slide

  11. S3の用途
    保存対象物の一例
    ● Webアプリケーションなどにおける顧客データ (顧客が生成、保管する PDFや画像など)
    ● Webページの静的コンテンツ (HTML、CSS、JavaScript、画像など)
    ● 各種ログ 👈 古くなるにつれて次第に参照の必要性が低くなってくる (※)
    ● ビルドによる生成物(アーティファクト) 👈 古いものは利用される機会が少ない
    ● その他様々
    ○ Athenaのクエリ結果
    ○ ECS用の環境変数ファイル (.env)
    ○ Terraformの状態管理ファイル (tfstate)
    👆この辺りも古いものは不要だがサイズが小さく、削除によるコスト削減効果は薄いかも
    ※過去から発生していたセキュリティインシデント調査のために必要なことや、各種法規制・基準の要件で保存が義務付けられることなどもあり、古ければ即不要ということは無い

    View full-size slide

  12. 効率的な調査のためのS3 Storage Lens
    ● バケット別のサイズ上位や推移を可視化可能で、 AWS CLIなどを使わない簡易な調査に最適
    ● Organizationsにも対応しており、全アカウントのバケットを横断して可視化も可能

    View full-size slide

  13. S3のコスト削減の実例
    1. 請求書やCost Explorerから、AWS全体のコストの中でS3の占める割合の多い ことを確認
    2. S3 Storage Lensを使用し、サイズの大きいバケットを洗い出し
    3. サイズ上位のバケットの 用途を確認(他のエンジニアにヒアリングするなど)
    4. 「ビルドにより生成されたアーティファクト」を保存するバケットがあったため、
    ライフサイクルルール を設定することで一定期間経過後のオブジェクトは自動削除
    ほったらかしコスト削減(抑制)術


    View full-size slide

  14. CloudWatch Logsのコストの特性
    ● ログ保管
    ○ 1GBあたり $0.033 (ちなみにS3 Standardは、1GBあたり$0.025)
    ○ 保持期間を設定することで、 ほったらかしコスト削減可能
    ● ログの書き込み
    ○ 1GBあたり $0.76 であり、コストが嵩みがち
    ○ 確認方法は請求書であれば PutLogEvents、
    Cost ExplorerであればDataProcessing-Bytes(ディメンションに使用タイプを指定 )

    View full-size slide

  15. CloudWatch Logsのコスト削減の実例
    1. 保管量の多いCloudWatch Logグループが、書き込みも多そうとアタリをつける
    2. ログの中身を見て、不要そうなログ出力が無いかを見る(有用そうでない INFOログなど)
    3. 今回はアプリのログだったので、アプリのリポジトリに PRを出してマージ
    (SREがアプリケーションのコードを修正する良い機会となった)

    View full-size slide

  16. まとめ
    ● S3
    ○ 様々なタイプがあるが、 サイズが小さければ小さいほどコストを抑えられる のは共通
    ○ 用途別に見て、古いオブジェクトが不要になるバケットであればコスト削減候補
    ○ S3 Storage Lensとライフサイクルルール を活用して、ほったらかしでコストを削減(抑制)
    ● CloudWatch Logs
    ○ 保管サイズの他に書き込み量に注目
    ○ 不要なログ出力があれば抑制を検討

    View full-size slide

  17. スマートラウンドでは新しいメンバーを募集中です!
    私たちと一緒にスタートアップが可能性を最大限に発揮できる世界をつくりませんか?
    jobs.smartround.com

    View full-size slide