Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
コストに関するヒヤリハットのお話 ~コスト超過で手遅れにならないためにすべきこと~
Search
Red Frasco
December 21, 2023
Technology
0
270
コストに関するヒヤリハットのお話 ~コスト超過で手遅れにならないためにすべきこと~
2023/12/07 に開催された 2023年ヒヤリハット大反省会@新宿(
https://findy.connpass.com/event/302579/)の登壇資料です
。
Red Frasco
December 21, 2023
Tweet
Share
More Decks by Red Frasco
See All by Red Frasco
バッチ処理が終わらない!? -処理時間を90%削減した話-
red_frasco
1
150
不動産情報サイトにおけるデータ収集で頑張ったこと
red_frasco
0
190
不動産情報サイトにおけるリアルタイムデータ分析基盤の活用
red_frasco
1
170
Spring Boot 2 から 3 へバージョンアップしてみた
red_frasco
4
14k
チーム一丸となって信頼性向上! 多種多様な監視でサイトを守る取り組みの紹介
red_frasco
1
1.2k
Red Frasco 会社紹介
red_frasco
3
11k
AWS環境におけるSpring BootアプリケーションのCI/CDをCircleCIで構築した話
red_frasco
2
540
Feature 環境の自動生成と Blue Green Deployment で効率的かつ安全なリリースプロセスを構築
red_frasco
1
310
AWS Batch × Spring Batch でクラウド最適なバッチを構築した話
red_frasco
1
1.3k
Other Decks in Technology
See All in Technology
AWS Lambdaで実現するスケーラブルで低コストなWebサービス構築/YAPC::Hakodate2024
fujiwara3
7
3k
XP matsuri 2024 - 銀河英雄伝説に学ぶ
kawaguti
PRO
3
560
LINEヤフー新卒採用 コーディングテスト解説 実装問題編
lycorp_recruit_jp
1
12k
How CERN serves 1EB of data via FUSE
ennael
PRO
0
16k
Oracle Database 23ai 新機能#4 Real Application Clusters
oracle4engineer
PRO
0
150
ドメインと向き合う - 旅行予約編
hidenorigoto
4
560
Strict Concurrencyにしたらdeinitでクラッシュする話
0si43
0
120
15 JSON serializers for Ruby
okuramasafumi
2
100
Oracle GoldenGate 23ai 導入Tips
oracle4engineer
PRO
1
260
Oracle Database 23ai 新機能#4 Rolling Maintenance
oracle4engineer
PRO
0
120
Efficient zero-copy networking using io_uring
ennael
PRO
0
330
Azure Verified Moduleを触って分かった注目ポイント/azure-verified-module-begin
mhrtech
1
360
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
A better future with KSS
kneath
237
17k
Designing for humans not robots
tammielis
249
25k
Atom: Resistance is Futile
akmur
261
25k
Scaling GitHub
holman
458
140k
The Cult of Friendly URLs
andyhume
77
6k
Building Adaptive Systems
keathley
38
2.1k
Creatively Recalculating Your Daily Design Routine
revolveconf
217
12k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
41
9.2k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
How GitHub (no longer) Works
holman
311
140k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Transcript
コストに関するヒヤリハットのお話 2023年ヒヤリハット⼤反省会@新宿 コスト超過で⼿遅れにならないためにすべきこと
⽬次 1. ⾃⼰紹介/弊社紹介 2. コストに関するヒヤリハット事例(おしながき) 1. Datadogの外形監視(Synthetics)を追加しただけなのに請求額 が︕︖ 2. GCP
Dataflowでインスタンスが80台に・・・︕︖ 3. iOSアプリで爆速開発︕でもCircleCIからの明細が・・・ 3. 事故(⼿遅れ)にならないために何ができるか 4. まとめ
⾃⼰紹介 猪熊 朔也 ( いのくま さくや ) / @sinocloudon -
株式会社 Red Frasco - インフラエンジニア u経歴 - ⾦融系 SIer, リクルート(SUUMO), ⾦融系スタートアップ, 現職 uその他コメント - うどんが好きです - ラーメン⼆郎が好きです - うどん脳 をプロフィールアイコンにすることが多いです 3
株式会社Red Frasco • https://www.red-frasco.com/ • 不動産業界に特化したプロダクト開発・集客⽀援を実施 4
5 導⼊編
みなさんコスト管理してますか︖ • インフラはもちろんですが、開発を営むためには多くのコスト を管理しなければなりません • インフラ利⽤料 • AWS, GCP, Azure
など • 開発ツール • GitHub Enterprise, CircleCI, TablePlus, InteliJ など • 監視・モニタリングツール • Datadog, PagerDuty, Sentry など 6
コスト管理は難しい • コスト管理のよくあるお悩み • そもそも予算計画を思いっきりはずしてしまう • 計画外の案件追加によるコスト増 / 案件中⽌・延期によるコスト減 •
予測できないドル円レート • コスト運⽤作業を⾃動化したいと思いつつ結局⼿作業 • 予実の差分理由を解明するまで時間がかかる • 請求書を⾒てビックリする 7
8 実際にあったコストに関する ヒヤリハット事例を共有します
9 本編
10 Datadogの外形監視(Synthetics)を追加しただけなのに請求額が︕︖
11 テスト実⾏数が通常時の4倍に跳ね上がっている ⇩ 通常の使⽤量
Datadog Synthetics がすべてのリージョンからテスト実⾏していた • 新規構築中のシステム向けの監視設定を夏休み前に追加 • 夏休み明け、Datadog Synthetics のテスト実⾏が爆発的に増えて いることに気づく
• デフォルト設定のままだと Datadog Synthetics は全世界23リー ジョンから1分間隔でテストを実⾏する • その結果、3週間で通常時の1.5倍のコストがかかってしまった • 契約量の⾒直しやログ量削減によるコストカットによりトータルでの 予算超過を回避 12
13
14 GCP Dataflowでインスタンスが80台に・・・︕︖
マネージドサービスが勝⼿に⼤量のリソースを使⽤しまう • Dataflow で重い処理を実⾏していた • 最⼤インスタンス数を指定していなかった • 処理量に応じてインスタンスが80台くらいに跳ね上がる • すぐ気づいたので慌てて処理を停⽌
15
16 iOSアプリで爆速開発︕でもCircleCIからの明細が・・・
マネージドサービスが勝⼿に⼤量のリソースを使⽤する • iOS アプリのリニューアルを実施 • 案件も佳境に⼊り、毎⽇ビルドしまくる • 1回のビルド時間は⼤体30分前後 • ⾯⽩いように
CircleCI のクレジットが⾶んでいく • 必要経費ではあるが、想定よりも多くのコストがかかってし まった 17
18 (再)コスト管理は難しい…
19 では事故を起こさないためには どうすればよいのでしょうか︖
アラートの活⽤と定例での定点観測でコスト超過リスクを最⼩化 • アラートの活⽤ • Datadog の場合、推定使⽤量メトリクス が取得できるため、使⽤量ア ラートを設定することが可能 • https://docs.datadoghq.com/ja/account_management/billing/usage_metrics/
• ツール次第だが、アラート設定できるものは積極的に活⽤ • しきい値監視と異常監視とセットで運⽤ • しきい値を超えてからでは⼿遅れになる可能性 • 急激なリソースの増減は異常監視によって早期に検知しやすい • ⼤量の ECS の vCPU/Mem を増強した • 機械学習⽤インスタンスを⼤量に起動した など 20
21
アラートの活⽤と定例での定点観測でコスト超過リスクを最⼩化 • 定例での定点観測 • アラート設定ができないものは定期的なモニタリングでカバー • CircleCI は 定期的に使⽤量ダッシュボードを⾒るしか⼿段がない •
定例の中でコスト最適化施策も議論する • AWS の場合、アカウント軸 -> サービス軸 の順にドリルダウンしてコスト⽐率の⼤きい ところから最適化施策を考える • 例えば、こんなことを取り組んできました • 不要なVPC Endpoint を削除 • CloudWatch Logs への PutLogEvents を必要最⼩限にする • S3に保存されたログのライフサイクル設定 • Fargate SPOT を開発環境に導⼊ • CircleCI の残余クレジットを使い切る 22
23 まとめ
無駄を省いて筋⾁質なインフラを⽬指しましょう︕ • コストに関するヒヤリハット事例を3つ紹介しました • アラート・定期的なモニタリングだけでなく、⽇頃からコスト 削減策を実⾏することで超過リスクに備える • インフラ利⽤料だけでなく、開発で使⽤するツールについても コスト最適化の余地がないか検討する 24
Thanks for listening!