Slide 1

Slide 1 text

AWS cafeteria #1
 クラウドの落とし穴:AWS Backupで発生した高額請求の衝撃 とその教訓
 クラスメソッド株式会社 AWS事業本部 | 平木 佳介
 1

Slide 2

Slide 2 text

自己紹介 2 ~$ whoami
 平木佳介 (Hiraki Keisuke)
 ~$
 ~$ jobs
 [2]+ 実行中 クラスメソッド(株)AWS事業本部コンサルティング部
 ~$
 ~$ groups
 ソリューションアーキテクト
 ~$
 ~$ cat 平木佳介.conf | grep 趣味
 趣味: 旅行/推し事
 ~$
 ~$ cat 平木佳介.conf | grep 好きなAWSサービス
 好きなAWSサービス: AWS Security Hub


Slide 3

Slide 3 text

3 あなたは何かで
 1位を取ったことはありますか?

Slide 4

Slide 4 text

4 ある年の瀬のこと 弊社Slackでは週次でとあるランキングが自動投稿される
 圧倒的1位っ…!

Slide 5

Slide 5 text

5 ある年の瀬のこと 社内個人検証環境のAWS利用金額のランキングでした


Slide 6

Slide 6 text

6 ある年の瀬のこと 1ドル ≒ 142円18銭(2023年12月22日時点)
 
 22,979.9ドル ≒ 3,267,282円

Slide 7

Slide 7 text

7 トピック 高額請求が発生した背景
 01
 02
 04
 03
 AWSサポートとのやり取り
 各フェーズにおける教訓
 まとめ


Slide 8

Slide 8 text

8 トピック
 高額請求が発生した背景
 01
 02
 04
 03
 AWSサポートとのやり取り
 各フェーズにおける教訓
 まとめ


Slide 9

Slide 9 text

9 高額請求が発生した背景
 2023年11月27日
 (re:Invent2023期間)
 
 AWS Backup
 新機能 自動復元テストが追加


Slide 10

Slide 10 text

10 高額請求が発生した背景
 自動復元テスト: 復元可能な状態を自動かつ定期的に検証する機能


Slide 11

Slide 11 text

11 高額請求が発生した背景
 AWS Backup 自動復元テスト
 https://dev.classmethod.jp/articles/aws-backup-automated-recovery-tests/

Slide 12

Slide 12 text

12 高額請求が発生した背景
 12月某日下記設定で検証を開始
 
 対象: EC2インスタンス1台(t2.micro)
 バックアップ取得タイミング: 1時間毎
 復元テストタイミング: 1時間毎


Slide 13

Slide 13 text

13 高額請求が発生した背景
 1時間毎にバックアップが取得され、
 1時間毎に取得したバックアップの復元テストが発生するただそ れだけの想定だった…
 1 2 3 4

Slide 14

Slide 14 text

14 ただし 特定の条件下だと
 再帰的なループが発生する罠が


Slide 15

Slide 15 text

15 高額請求が発生した背景
 復元テストで生成されたリソースを、 バックアッププランがバックアップを実施

Slide 16

Slide 16 text

16 高額請求が発生した背景
 特定の条件とは
 1 2 3 バックアッププランと復元テストプランの実行 時間帯が一致1 バックアッププランの対象に復元テストプラ ンで生成されるリソースが含まれる バックアッププランで復元テストが生成する リソースのタグを除外していない

Slide 17

Slide 17 text

17 高額請求が発生した背景
 再帰ループによって作成されたリソース
 
 EC2インスタンス: 12,750台
 リカバリーポイント:10,356個
 


Slide 18

Slide 18 text

18 高額請求が発生した背景
 RecoveryPointCreated API 推移
 3日合計 10,356回 最大 457回/h

Slide 19

Slide 19 text

19 高額請求が発生した背景
 RunInstances API 推移
 3日合計 447,804回 最大 132,318回/h 約98%はエラーで失敗

Slide 20

Slide 20 text

20 高額請求が発生した背景 日次のAWS利用額の通知を実装していたが、
 
 休日を挟んでいたこと、
 指数関数的にリソースが急増したのが検証2日目だったこと
 
 が重なり気づいた頃には高額に…


Slide 21

Slide 21 text

21 トピック
 高額請求が発生した背景
 01
 02
 04
 03
 AWSサポートとのやり取り
 各フェーズにおける教訓
 まとめ


Slide 22

Slide 22 text

22 AWSサポートとのやり取り
 高額請求に気づいた時にまずやったこと
 1 2 3 バックアッププランで使用されるサービスロール AWSBackupDefaultServiceRole の権限はく奪1 バックアッププランと復元テストプランに関連する情報を ひたすらスクリーンショット AWS CLIを使用し、大量生成されたリソースの一括削 除とプランの削除

Slide 23

Slide 23 text

23 AWSサポートとのやり取り
 セキュリティインシデントや
 その他意図しないインシデントによって
 高額請求が発生した場合、
 AWSサポートにてAWS利用料金の減免を相談できる場 合があります。
 
 ※AWSの担当部署での判断となるため必ずではございません。


Slide 24

Slide 24 text

24 AWSサポートとのやり取り
 上長へ報告後、
 AWSサポートに問い合わせを行い、下記情報を連携。
 
 ・問い合わせ背景
 ・時系列
 ・リソースを作成した環境
 ・具体的な設定(リソースID、ARNも)
 ・現状分かっている状況
 ・推定される発生要因
 


Slide 25

Slide 25 text

25 AWSサポートとのやり取り
 AWSサポートから情報提供を求められたこと
 
 ・調整したい請求対象期間およびサービス名
 ・再発防止のための予防策


Slide 26

Slide 26 text

26 AWSサポートとのやり取り
 AWSサポートとのやり取りを
 年をまたぎ約1か月待った結果…


Slide 27

Slide 27 text

27 AWSサポートとのやり取り 無事、全額免除いただけました!! :感
 :謝
 !っ
 :感圧
 :謝倒
  !っ的 


Slide 28

Slide 28 text

28 トピック
 高額請求が発生した背景
 01
 02
 04
 03
 AWSサポートとのやり取り
 各フェーズにおける教訓
 まとめ


Slide 29

Slide 29 text

29 各フェーズにおける教訓
 教訓
 1 2 3 平常時 高額請求発覚直後 原因対処完了後

Slide 30

Slide 30 text

30 各フェーズにおける教訓
 平常時
 
 コストの異常事態に気づくために
 コストのアラート通知(AWS Budgetsなど)や
 AWS Cost Anomaly Detectionを利用する


Slide 31

Slide 31 text

31 各フェーズにおける教訓
 AWS Budgets #とは
 
 設定した予算に応じたアラートやレポートの生成など を行えるサービス


Slide 32

Slide 32 text

32 各フェーズにおける教訓
 AWS Budgets
 https://dev.classmethod.jp/articles/aws-budgets-tutorial/

Slide 33

Slide 33 text

33 各フェーズにおける教訓
 AWS Cost Anomaly Detection #とは
 
 機械学習モデルを利用し、異常なAWSコストの発生 を検知するサービス


Slide 34

Slide 34 text

34 各フェーズにおける教訓
 AWS Cost Anomaly Detection
 https://dev.classmethod.jp/articles/aws-cost-anomaly-detection-ga/

Slide 35

Slide 35 text

35 各フェーズにおける教訓
 高額請求発覚直後
 
 とにかく焦らずエビデンスの取得を忘れない
 
 忘れてしまったら CloudTrail で
 作成時のイベントを検索!
 ※新規機能はAPI名がすぐ見つからないケースに注意


Slide 36

Slide 36 text

36 各フェーズにおける教訓
 原因対処完了後
 
 出来る限り多くの情報を整理し、
 AWSサポートへ連携。
 特に5W1Hを意識した情報提供。
 
 「When:いつ」「Where:どこで」「Who:だれが」
 「What:何を」「Why:なぜ」「How:どのように」


Slide 37

Slide 37 text

37 トピック
 高額請求が発生した背景
 01
 02
 04
 03
 AWSサポートとのやり取り
 各フェーズにおける教訓
 まとめ


Slide 38

Slide 38 text

38 まとめ
 1 2 3 高額請求は他人事ではない! 高額請求が発生しても焦らない! エビデンスはやりすぎなくらい取得する!

Slide 39

Slide 39 text

39