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
200
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
Railsバージョンを4倍にした話
optim
0
380
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
380
IHV like なユースケースへのOpenID Connect 関連仕様の適用事例
optim
0
650
製品の問い合わせ負荷をLLMで解消したい 〜RAGで作る「自社を知っている」チャットボット〜
optim
0
46
AI エージェントシステムの開発を AI で加速させたい!
optim
0
47
既存プロダクトのRSpec カバレッジを 40% から100% にした話
optim
1
150
最近やってよかったデザインシステム運用改善3選
optim
1
440
<install>要素は何ができて、何を変えるのか
optim
1
380
CIでリグレッションテストを実行し継続的に品質を担保する
optim
1
410
Other Decks in Technology
See All in Technology
DevelopersIO 2026 知識の地図を描く ─ オントロジーとは何か?
ishikawa_satoru
1
1.7k
継続的なAIコスト最適化
bgpat
1
340
アウトプット初心者、半年間のふりかえり
4o1sobblue
0
430
ブラウザとサーバーから考えるAI時代のフロントエンド監視
shogo4131
3
940
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
150
AIにシークレットを見せない、WSL2で安全な開発環境
yazm
0
300
WasmをRustにする
sansantech
PRO
0
250
初海外で注意すべきこと12選!!!安全快適なre:invent生活にするために
yuuuuuuu168
1
160
分析AIエージェントを育てる、動く環境を育てる
codatum
1
1.1k
古い指輪から広がった JAVA コミュニティ とのつながり
yamad
0
100
大型犬好きによるPugの紹介
yamanoku
1
160
1つのリクエストを追って理解する - llm-dのP/D分離
akhino
1
160
Featured
See All Featured
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.4k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
530
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Designing Experiences People Love
moore
143
24k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
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