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
k8s(EKS)でマルチテナントプラットフォームを運用する際のコスト按分の実装 / 25012...
Search
OPTiM
March 13, 2025
Technology
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
k8s(EKS)でマルチテナントプラットフォームを運用する際のコスト按分の実装 / 250124_LT_SRE
OPTiM
March 13, 2025
More Decks by OPTiM
See All by OPTiM
IHV like なユースケースへのOpenID Connect 関連仕様の適用事例
optim
0
530
製品の問い合わせ負荷をLLMで解消したい 〜RAGで作る「自社を知っている」チャットボット〜
optim
0
40
AI エージェントシステムの開発を AI で加速させたい!
optim
0
42
既存プロダクトのRSpec カバレッジを 40% から100% にした話
optim
1
90
最近やってよかったデザインシステム運用改善3選
optim
1
350
<install>要素は何ができて、何を変えるのか
optim
1
310
CIでリグレッションテストを実行し継続的に品質を担保する
optim
1
340
Tanstack Startを触ってみての感動
optim
1
330
移行のつらさは誰が引き受けるのか── Vue.js と Next.js を比べて見えたこと
optim
2
330
Other Decks in Technology
See All in Technology
2026-09-09 【sigma_ucj#1】Sigma を IaC 管理したい! / IaC for Sigma
civitaspo
0
110
AI時代だからこそ、スケールしないことをやろう
yutashigemura
1
130
2026-09-11 【Snowflake World Tour Tokyo 2026】Snowflakeを起点に、AI Agentが自律稼働し続ける未来へ / Driving AI Agents with Snowflake
civitaspo
0
280
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
250
2026-09-04 SRE Tech Talk #15 怠惰なTerraform / Lazy Terraform
masasuzu
0
230
V8コントリビュート超入門
riyaamemiya
0
160
「図書館」という名前のままでいいのか -Code4Lib JAPANカンファレンス2026 アンカンファレンス報告- / Code4Lib JAPAN Conference 2026: Unconference Report
ykiyota
0
150
ペアプロの価値はコードを書くことだけじゃない
codmoninc
PRO
0
160
目の前の楽しいが人生を変える - コミュニティの螺旋の歩き方と楽しむコツ / change your life
soudai
PRO
4
340
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
440
DEFCON_CHV_CTF_Write-up.pdf
bata_24
0
130
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
280
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
10k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
820
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
660
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
570
Building AI with AI
inesmontani
PRO
1
1.2k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
490
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
Mobile First: as difficult as doing things right
swwweet
225
10k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
4
610
Making the Leap to Tech Lead
cromwellryan
135
10k
Transcript
© 2019-2025 OPTiM Corp. All rights reserved. k8s(EKS)でマルチテナントプラットフォームを運用する際の コスト按分の実装 最終更新日:2025/01/24
株式会社オプティム 菅野
© 2019-2025 OPTiM Corp. All rights reserved. 2 自己紹介
職歴 ◼ 2023年4月: オプティム 総合職(ポテンシャル職 = 非エンジニア) 入社 ◼ 2023年4~7月: ITポテンシャル研修 ◼ 2023年7月: プラットフォーム開発ユニットPlatform Engineeringチーム配属 仕事内容 ◼ 社内向けプラットフォーム開発 ◼ MOYT(もっとおやつ会)幹事 技術キーワード ◼ 「AWS」,「Terraform」,「Kubernetes」,「Docker」など
© 2019-2025 OPTiM Corp. All rights reserved. 3 プロダクトチームがプロダクト固有の問題解決にフォーカスできるよ
うにプラットフォームを提供する 活動の一環として、複数のプロダクトが利用できるマルチテナント構 成の社内プラットフォームをKubernetes as a Serviceとして提供 マルチテナントプラットフォームの利点 ✓ 自プロダクトのリソースをプロダクトチーム自ら管理することで、インフラ チームが開発速度を減少させるゲートキーパーとなることを防ぐ ✓ プラットフォームチームが常にメンテナンスする安心、安全な基盤を複数プ ロダクトで共有できる ✓ スケーラブルな基盤を提供することで、プロダクトは自分たちが利用した以 上に無駄なコストを支払う必要がない Platform Engineeringチームの取り組み 提供するマルチテナントプラットフォーム略図
© 2019-2025 OPTiM Corp. All rights reserved. 4 課題: プロダクトが使用した分だけコストを請求されるように、コスト按分を行うこと
リソース占有部分 + リソース共有部分の両者で テナントに平等なコスト按分を 行う必要がある 共通利用 共通利用 共通利用 課題: オプティムは多数のサービスを提供しているため、 リソースを共有しているプラットフォームであっても、 乗り入れした各テナント(≒サービス)ごとの原価を適切に把握できるようにする必要がある 難点: テナントがリソースを共有しているため、 AWSのサービスで請求書を分けることができない
© 2019-2025 OPTiM Corp. All rights reserved. 5 解決案: EKSのネームスペースごとのCPU,メモリリクエストに応じて
アカウントのコストを按分する 現状のコスト按分比率 プロダクトAの料金 =(namespaceA)/(namespaceA + namespaceB) × 全体の料金 プロダクトBの料金 =(namespaceA)/(namespaceA + namespaceB) × 全体の料金
© 2019-2025 OPTiM Corp. All rights reserved. 6 OpenCost
◼ Kubernetes およびクラウドネイティブ環境向けに開発されたオープンソースのコスト監視ソリューション ◼ 無料利用可能 kubecost ◼ Kubernetes 環境向けの包括的なコスト割り当ておよびリソース監視ソリューション ◼ 割引、スポットインスタンス、リザーブドインスタンスなどの高度なコスト調整が可能 ◼ 一部機能は無料利用可能 AWS CUR の Split Cost Allocation Data for Amazon EKSの利用 ◼ AWS の使用状況を追跡しアカウントに関連する推定請求額をS3に出力する ◼ レポートの出力自体は無料で使用できるものもあるが、出力先のS3には課金される ◼ 請求書を受け取るAWSアカウントのBilling and Cost Managementから有効化 ネームスペースごとのコストを計測する手段の検討 今回は導入が簡単だった CURを導入してみました
© 2019-2025 OPTiM Corp. All rights reserved. 7 解決策: AWS
CURを使用しnamespaceごとの按分比率測定 CURでSplit Cost Allocation Data for Amazon EKSを設定し、 pod単位の使用情報を取得 S3にcsvファイルで出力
© 2019-2025 OPTiM Corp. All rights reserved. 8 DuckDBで直接S3をクエリすることもできるが、 データが大量で処理が重かったため断念
取得したcsvをクエリして按分比率を算出
© 2019-2025 OPTiM Corp. All rights reserved. 9 今後の課題:
EKSのnamespaceごとのリソース”使用率”に応じた按分を行いたい ◼現状: EKSのnamespaceのリソースリクエストに応じた按分を行っている ◼解決案: 当初検討していたKubecostをCURの代わりに使用することや、Amazon Managed Service for Prometheus をCURに導入することでリソースの使用率の値を取得することが可能 ALB, NatGW, InternetGWなど、リソースの課金形態に合わせた按分比率を算出したい ◼現状: EKSの按分比率をAWSアカウント全体のコストにかけている ◼解決案: 転送したデータ量などのパラメータを取得して計算スクリプトを追加する コスト按分比率算出が自動実行される仕組みを作りたい ◼現状: PEチームのローカル環境でコンテナを立ててスクリプトを実行している ◼解決案: Cronjobで自動実行するなど オプティムでは 一緒に働く仲間を 募集しています
© 2019-2025 OPTiM Corp. All rights reserved. 10