Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Metabaseを使ったコスト可視化とコスト最適化への道 / sre-cost-visuali...
Search
OPTiM
December 02, 2021
Technology
910
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Metabaseを使ったコスト可視化とコスト最適化への道 / sre-cost-visualization
OPTiM
December 02, 2021
More Decks by OPTiM
See All by OPTiM
IHV like なユースケースへのOpenID Connect 関連仕様の適用事例
optim
0
560
製品の問い合わせ負荷をLLMで解消したい 〜RAGで作る「自社を知っている」チャットボット〜
optim
0
40
AI エージェントシステムの開発を AI で加速させたい!
optim
0
43
既存プロダクトのRSpec カバレッジを 40% から100% にした話
optim
1
110
最近やってよかったデザインシステム運用改善3選
optim
1
370
<install>要素は何ができて、何を変えるのか
optim
1
320
CIでリグレッションテストを実行し継続的に品質を担保する
optim
1
350
Tanstack Startを触ってみての感動
optim
1
350
移行のつらさは誰が引き受けるのか── Vue.js と Next.js を比べて見えたこと
optim
2
350
Other Decks in Technology
See All in Technology
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
160
AIによるクリエイティブ生成を行う上での試行錯誤
plaidtech
PRO
0
160
アクセスキーこわい やめかたと漏らさない工夫
sassssan68
1
340
リアーキテクチャ後の障害ゼロを目指したShadow Testingの取り組み
nihonbuson
PRO
1
110
What the customer really needed
kawaguti
PRO
3
200
安心して変更できるWebフロントエンドの作り方
pirosikick
5
2.7k
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
3k
OpenTelemetry eBPF Instrumentationの舞台裏 / Behind the Scenes of OpenTelemetry eBPF Instrumentation
ymotongpoo
4
1.3k
その Lambda、8分で 管理者権限まで奪われます
k1nakayama
5
2.8k
Reactの設計論
uhyo
24
13k
「ピッケル本」日本語版は4.0(第6版)が出版されるべき / pickaxe4-nagoyark05
kakutani
1
170
AIに任せた品質は、誰が見立てるのか - AI時代のテストマネジメント
nakanao
2
1.9k
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
520
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
1k
How to Talk to Developers About Accessibility
jct
2
550
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Navigating Team Friction
lara
192
16k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Thoughts on Productivity
jonyablonski
76
5.4k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
330
How to build a perfect <img>
jonoalderson
1
6k
Transcript
Copyright © OPTiM Corp. All Right Reserved. Metabaseを使ったコスト可視化とコスト最適化への道 株式会社オプティム 技術統括本部
SREユニット 山田
Copyright © OPTiM Corp. All Right Reserved. 2 自己紹介
名前 • 山田 (2015年度新卒入社) 経歴 • Androidアプリケーション開発 • 複数サービスのインフラ保守運用 • SRE 最近の活動 : コスト可視化と削減(最適化) 趣味 • オーディオ • 旅行 • キャンプ
Copyright © OPTiM Corp. All Right Reserved. 3 SREとは
コスト可視化と最適化への課題/動機 コスト可視化最初期 ~ 現在 可視化の結果 今後の課題 目次
Copyright © OPTiM Corp. All Right Reserved. 4 SRE
: Site Reliability Engineering (サイト信頼性エンジニア) の略称 • システムの信頼性確保のためにアレコレするエンジニア よくあるSREの形 • Pure SRE • プロダクト運用に責任を持つ専任チームで、開発チームとは分かれている • プロダクトの信頼性を向上させるためなら、ソースコードの改修なども行う • Embedded SRE • 職能横断型の開発チームのメンバーとして組み込まれている • SRE Center of Practice • 特定のプロダクトに限定せず、横串でプロダクトの信頼性向上を推進する • ライブラリやツールの提供を行う • Rebranded SRE • 今まで運用、DevOps、プラットフォームチームと呼ばれていたものがSREと名前を変えたもの • インフラ、ツール、プラットフォームのサポートをメインに行い、アプリケーションには積極的には関わらない SREとは
Copyright © OPTiM Corp. All Right Reserved. 5 OPTiMでは
SRE Center of Practice の体制を取っている プロダクトの価値を「早く」「安く」「安心」の3軸で安定的に提供できるようにする 1. プロダクトの状態を可視化 2. プロダクトが満たすレベルの基準づくり 3. やり方の標準化・共通化 4. プロダクト横串で改善を行う 5. SREマインドを根付かせる 現在OPTiM SRE内で取り組んでいること • サービス品質標準化/可視化 • インフラ/運用コスト最適化 ★今日のスコープ • 構成管理強化/リリース改善 SREとは
Copyright © OPTiM Corp. All Right Reserved. 6 開発・運用者全体で売上とコストを皆が確認できる状態でない
• コストに関しては全員が閲覧できる状態にしたい • 人によってかかっているコストが確認できるかどうかの状態がバラバラでややこしい • 改善しなきゃいけないと思っても、そのたびに毎回調査して、分析してと時間がかかる 現状のコストを可視化し、コスト最適化への動機に繋げられる状態を作りたい • 各種コストデータとプロジェクト情報が紐づいて確認できるようにしたい • 例えば `CloudIoTOS_Q2_保守運用` のようなプロジェクトと コストデータを紐づける必要がある コスト可視化と最適化への課題/動機
Copyright © OPTiM Corp. All Right Reserved. 7 保守にかかっている無駄なコストを減らし、保守運用生産性とした数値を向上し、新規開発に
投資できるようにしたい • 目指すのは下記の形が表現できるようにする コスト可視化と最適化への課題/動機
Copyright © OPTiM Corp. All Right Reserved. 8 PowerBIの利用
• Microsoft社製のBIツール • Excelをデータソースとして利用可能 • とりあえず、現状を可視化してみようということで、プロトタイプ的に利用してみた • UI的にはそれなりに良かったが、運用を続けるのは辛い+全体で確認するには料金の問題があったので正式採用 は見送り コスト可視化最初期
Copyright © OPTiM Corp. All Right Reserved. 9 Metabase
+ MySQLでの可視化 • OSSのBIツール • データソースはMySQL以外も色々豊富にある • Metabaseをちょっと触ってみた感じグラフ化も簡単かつフィルターできて良かったので採用 • RedashやKibanaなども検討しましたが、立ち上げも簡単で、シンプルかつ直感的で良い • グラフの作成にはSQLを利用し、作成 • 一応、SQL書けない人向けにもクエリビルダー的なやつがあるのでそちらの利用もできる • SQL内で変数利用ができる (フィルターで活用) - SELECT * FROM table_name WHERE {{ product_name }} のように記載することで利用可能 - フィルターにはそのまま文字列を入力してもらうこともできるし、格納されているデータを選択してフィルターもでき る - これを利用して、ダッシュボード上で部署別や利用サービス別にフィルターすることが可能 • 社内のスタッフであれば閲覧可能にした • 今までは特定の管理層や運用者以外では簡単にコスト情報を確認することはできなかった 現在
Copyright © OPTiM Corp. All Right Reserved. 10 変数の例
Copyright © OPTiM Corp. All Right Reserved. 11 全体のコスト感のグラフとインフラ費用・人件費の比較グラフ
実際のグラフ
Copyright © OPTiM Corp. All Right Reserved. 12 部署別に表示したり、利用サービス別に表示などもしている
実際のグラフ
Copyright © OPTiM Corp. All Right Reserved. 13 また各サービスの詳細情報も確認できるようにしている
実際のグラフ
Copyright © OPTiM Corp. All Right Reserved. 14 データ構造について
• 各利用サービスのデータとプロジェクトを紐づける必要がある • 現在プロジェクトのデータはTeamspiritという工数管理サービス上で管理している - 人件費はTeamspiritのデータのみで算出可能 • プロジェクトデータと利用サービスのデータを紐づける中間テーブルを作成 - 利用サービスのアカウントとプロジェクトデータを関連づける • 全てを同一グラフ上で比較できるように、共通化したViewを作成している データ構造
Copyright © OPTiM Corp. All Right Reserved. 15 データ構造の簡易的抜粋
Copyright © OPTiM Corp. All Right Reserved. 16 利用サービスとプロダクトに紐づく人件費の情報が、OPTiMの社員であれば簡単に確認できる
ようになった 保守運用人件費が、大まかにはわかるようになってきたため、各チームに分析を依頼し、問題 があるのかないのかについて確認をしてもらっている • コスト最適化活動を各チームで進めるきっかけ作りを行っている 毎月ダッシュボードのグラフ状況からコスト状況レポートを作成し、全体にコスト状況を意識 してもらう活動を始めている • その月にどんな削減対応が行われたか、現状の課題は何かと言った内容を記載している • また、インフラ費用と保守運用人件費を部署別に詳細を記載している 可視化した結果
Copyright © OPTiM Corp. All Right Reserved. 17 インフラの大部分として、AWSにかかっている料金が大きいことが示せている
• 各利用サービスをより詳細に分析できるように別途グラフを用意し、各インフラの担当にここを改善して いこうという話を持っていけている 最適化を進めるための土壌が出来上がってきたので、いよいよ実際に各種対応を進めていく段階 可視化した結果 例: サーバーの利用度合いに対 してコストから見てもオーバー スペック気味なので、見直して いきましょう 等
Copyright © OPTiM Corp. All Right Reserved. 18 コスト可視化はできたので、今後は実際にコストの改善をすすめるため、各チームと相談しつ
つ進める予定 • 各チームで行った改善は水平展開を行う • 複数プロダクトで共通インフラを利用している所があり、そこの作業工数を各プロダクトとどう結びつ けられるのかが難しいので影響のバランスをみつつ検討していく 可視化ダッシュボード自体については、自動化がまだまだできていない部分があるので、こち らの改善をすすめる • 請求API周りがないサービスやプロジェクトとの紐付け部分をどうするか等 • Reserved instanceなどの一時的に先払いするコストをどう表現するかも検討が必要 今後Metabaseより良いものや、Metabaseでは実現できないが対応したい内容がある等が判明 したらMetabaseから乗り換える可能性はある • 現状はリアルタイムなコスト可視化ではなく月次別のコスト可視化なので、需要しだいでは乗り換えの 可能性あり 今後について
Copyright © OPTiM Corp. All Right Reserved. 19 まず何かを改善したいのであれば、計測をできるように全て可視化していくことが重要
• 可視化した内容はいつでも誰でも確認できるようにしておくことで、スピーディな情報共有が可能にな る • 可視化した結果から分析して、分析結果を元に改善を進める • 継続的に分析を勧め、効果がきちんと出ているか観察をする まとめ SREとして、まずはプロダクトに関わるあらゆる事を可視化していきましょう
Copyright © OPTiM Corp. All Right Reserved. 20