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

目指せCoverage100%! AutoScale環境におけるSavings Plans購入戦略 / JAWS-UG_SRE_Coverage

sasaki
January 27, 2023

目指せCoverage100%! AutoScale環境におけるSavings Plans購入戦略 / JAWS-UG_SRE_Coverage

JAWS-UG SRE支部#5 目指せCoverage100%! AutoScale環境におけるSavings Plans購入戦略

sasaki

January 27, 2023
Tweet

More Decks by sasaki

Other Decks in Technology

Transcript

  1.       
    © Chatwork
    目指せCoverage100%!
    AutoScale環境における
    Savings Plans購入戦略
    Chatwork株式会社 SRE部 佐々木真也
    2023年1月27日
    JAWS-UG SRE支部 #5

    View Slide

  2. 自己紹介
    2
    ● 名前
    ○ 佐々木真也
    ● 所属
    ○ Chatwork株式会社
    ■ 2020年6月〜
    ■ SRE部 マネージャー
    ● Twitter
    ○ @taishin
    ● 趣味
    ○ サッカー観戦

    View Slide

  3. 会社概要
    3
    会社名
    Chatwork株式会社
    代表取締役CEO
    山本 正喜
    従業員数
    304名(2022年9月末日時点)
    所在地
    東京、大阪、ベトナム、台湾
    設立
    2004年11月11日

    View Slide

  4. Chatworkとは
    4
    効率的に情報共有できる
    グループチャット
    仕事の見える化ができる
    タスク管理
    見落としがなくなる
    ファイル管理
    いつでも会議ができる
    ビデオ/音声通話
    * BOXIL SaaS AWARD 2022「ランキング部門 コラボレーション部門賞」「ベスト評価賞
    (初期設定の容易さNo.1、価格の満足度No.1)」を受賞 BOXIL「Chatwork」口コミ評価
    * Nielsen NetView 及びNielsen Mobile NetView Customized Report 2022年5月度調べ月次利用者(MAU:Monthly Active User)調査。
    * 調査対象はChatwork、Microsoft Teams、Slack、LINE WORKS、Skypeを含む47サービスをChatwork株式会社にて選定。

    View Slide

  5. Chatworkは利用者数No.1*のビジネスチャット
    5
    3月
    リリース
    10万社
    突破!
    20万社
    突破!
    導入社数
    37万6000社以上!
    (2022年9月末日時点)
    30万社
    突破!
    * Nielsen NetView 及びNielsen Mobile NetView Customized Report 2022年5月度調べ月次利用者(MAU:Monthly Active User)調査。
    * 調査対象はChatwork、Microsoft Teams、Slack、LINE WORKS、Skypeを含む47サービスをChatwork株式会社にて選定。

    View Slide

  6. 実施しているEC2関連のコスト削減
    6
    ● 可能な限りSpot Instanceを使う
    ● OnDemand Instanceに対してはSavings Plansを購入する
    ● 最新のインスタンスファミリー & タイプを使う
    ○ m5.xlarge 0.248 USD
    ○ m6i.xlarge 0.248 USD
    ○ m6a.xlarge 0.2232 USD
    ○ m6g.xlarge 0.198 USD
    ● 最新のボリュームタイプを使う
    ○ gp2 0.12 USD/GB 月
    ○ gp3 0.096USD/GB 月

    View Slide

  7. 実施しているEC2関連のコスト削減
    7
    ● 可能な限りSpot Instanceを使う
    ● OnDemand Instanceに対してはSavings Plansを購入する
    ● 最新のインスタンスファミリー & タイプを使う
    ○ m5.xlarge 0.248 USD
    ○ m6i.xlarge 0.248 USD
    ○ m6a.xlarge 0.2232 USD
    ○ m6g.xlarge 0.198 USD
    ● 最新のボリュームタイプを使う
    ○ gp2 0.12 USD/GB 月
    ○ gp3 0.096USD/GB 月

    View Slide

  8. Chatworkの特性 / EC2利用方法
    8
    ● ビジネスチャットなので、平日日中のトラフィックが多い
    ○ 夜間・土日はトラフィックが少なく、ノード数も少ない
    ● 長期的にはトラフィックは増加傾向だが、週単位の傾向はほぼ変わらない
    ● EKSのWorker NodeでSpot InstanceとOnDemand Instanceを併用している
    ○ Spot Instance
    ■ Web系 頻繁にScale In/Outするもの
    ○ OnDemand Instance
    ■ Batch系 できれば途中で終わってほしくないもの

    View Slide

  9. 一週間のOnDemandノード数
    9
    Mon Tue Wed Thu Fri Sat Sun

    View Slide

  10. 一週間のOnDemandノード数
    10
    ● 土日稼働しているノードを全部Savings Plansにしたい
    ○ → 土日のCoverageが100%になるようにSavings Plansを購入する
    ● Coverage
    ○ 購入した Savings Plans が全体の何%までカバーできているか
    Mon Tue Wed Thu Fri Sat Sun
    ここをSavings Plansで購入したい

    View Slide

  11. Coverageの確認
    11

    View Slide

  12. Coverageの確認
    12

    View Slide

  13. Coverageの確認
    13

    View Slide

  14. Savings Plansの料金モデル
    14
    ● Compute Savings Plansを選択
    ○ 主な理由
    ■ EC2 Instance Savings Plansだと、インスタンスファミリーの変更をSavings Plansの変更と合わせないと
    いけないので
    Compute Savings
    Plans
    EC2 Instance Savings
    Plans
    コストを削減 最大 66% 最大 72%
    インスタンスファミリーの変更 ◯ ✕
    リージョンの変更 ◯ ✕
    Lambda、Fargateへの適用 ◯ ✕

    View Slide

  15. Compute Savings Plansのオプション
    15
    ● 期間
    ○ 1年
    ○ 3年
    ● 支払いオプション
    ○ 全額前払い
    ○ 一部前払い
    ○ 前払いなし
    ● 時間単位のコミットメント
    ○ 推奨事項に沿う
    ○ 自分で計算する

    View Slide

  16. Compute Savings Plansのオプション
    16
    ● 期間
    ○ 1年
    ○ 3年
    ● 支払いオプション
    ○ 全額前払い
    ○ 一部前払い
    ○ 前払いなし
    ● 時間単位のコミットメント
    ○ 推奨事項に沿う
    ○ 自分で計算する
    全額前払いだと結構な額になるので推奨に
    任せるのはちょっと・・・

    View Slide

  17. 土日のCoverageを100%(近く)にする購入手順
    17
    1. 土日のオンデマンド費用を確認する
    2. オンデマンド費用から時間単位のコミットメントを計算する
    3. ドキドキしながら購入ボタンを押す

    View Slide

  18. オンデマンド費用を確認
    18
    カバレッジレポートでオンデマンド費用を確認

    View Slide

  19. 計算方法
    19
    インスタンスファミリーごと下記を算出して合算
    オンデマンド費用
    48(h)
    ×
    Compute Savings Plans利用料金 ($)
    On Demand利用料金 ($)
    https://aws.amazon.com/jp/savingsplans/compute-pricing/

    View Slide

  20. 過去 〜 スプレッドシートで計算
    20
    ここを手動で入力

    View Slide

  21. 過去 〜 スプレッドシートで計算
    21
    スプレッドシートで計算
    計算されてここに表示される

    View Slide

  22. 現在 〜 Chatworkに毎週通知
    22
    毎週土日のカバレッジと時間単位のコミットメントを取得してChatworkに通知するLambdaを実行
    計算されてここに表示される

    View Slide

  23. 購入のタイミング
    23
    ● 前年購入分がExpireした翌週に購入
    ○ 土日のCoverageを確認するため
    ○ 一定期間のOn Demand料金が発生する
    Mon Tue
    Wed Thu Fri Sat Sun Wed
    前年購入分が
    Expire
    土日分の料金
    が確定
    Coverageが
    100%になるよ
    うに購入
    On Deamnd 料金
    ● 年何回かに分ける
    ○ サービス追加等でインスタンスが追加されたとき
    ○ 現在年5回 (ちょっと多い・・・)
    ○ 一年一回だと調整が荒くなる、金額でかくてコワイ・・・

    View Slide

  24. 買い忘れ防止
    24
    ● 購入したときに来年のカレンダーに登録
    ● Cost Anomary Detection で通知

    View Slide

  25. まとめ
    25
    ● AutoScale環境でSavings Plansを購入するときは
    ○ OnDemand Instanceが少ないときのCoverageを見て購入する
    ○ 購入は年何回かに分けたほうが調整しやすい
    ○ 買い忘れに注意!
    ○ 購入時の恐怖を軽減する方法を教えて!

    View Slide

  26. 参考:ChatGPTに聞いてみた
    26

    View Slide

  27. We are Hiring !!!
    27
    https://hrmos.co/pages/chatwork/jobs/1020019

    View Slide

  28. 働くをもっと楽しく、創造的に

    View Slide