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
GKE -IP体系のはなし-
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yasuhiro Murata
November 27, 2019
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GKE -IP体系のはなし-
朝のLT向けに作った、GKEのIP体系設計の話
Yasuhiro Murata
November 27, 2019
More Decks by Yasuhiro Murata
See All by Yasuhiro Murata
N:Nツリー構造データにおけるグラフDB活用
mura123yasu
0
1k
JSON関数と共に歩む、BigQueryを使った超汎化型データ活用基盤
mura123yasu
0
440
引きこもって作ってみた!おうちKubernetes
mura123yasu
0
4k
Harbor
mura123yasu
0
100
ゼロから始めるFlutter生活 - Prologue
mura123yasu
0
420
CloudEvents
mura123yasu
0
400
envoy - Resilience -
mura123yasu
0
82
containerd
mura123yasu
0
100
etcd
mura123yasu
0
130
Other Decks in Technology
See All in Technology
AWS App Runnerから Cloudflare Workersへ移行した話
ryota09
0
110
Snowflake Horizon Catalog と Apache Iceberg で作る オープンなデータ基盤
kitagawaz
0
290
Lambda MicroVMsが分からなすぎたので使い所を1から考えてみた
tsukuboshi
1
160
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
660
AWS FinOps Agent 結局何が得意なの?
siromi
0
220
AIは推し活である。
kurazuuuuuu
2
1k
CI/CDではもう遅い - 人とAIが迂回しないDevSecOps Verify基盤の再設計 -
kintotechdev
1
380
行動するAIのためのオントロジー | DevRev — Encraft #26.pdf
dvrv_tknrszk
1
550
AIエージェントの一手は 誰も見ていない - Falco拡張OSS「Prempti」とeBPFで サーバーレス実行基盤を二層防御する
keitah
1
630
Datadog で始める トークンセーフティなAI 導⼊と定着
vkbaba
1
120
Coil3を内部実装から読み解く~キャッシュ戦略とAVIF画像の描画〜/nikkei-tech-talk50
nikkei_engineer_recruiting
0
120
IR Today: Theory, Practice, and Agents
dtunkelang
0
210
Featured
See All Featured
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.2k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
850
Abbi's Birthday
coloredviolet
4
10k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
250
Odyssey Design
rkendrick25
PRO
2
830
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
How Software Deployment tools have changed in the past 20 years
geshan
2
34k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
920
Transcript
GKE – IP体系のはなし - morn ng alk Yasuhiro Murata 2019.11.27
GKEのIP体系設計 ミスっちゃいました
GKEのIP体系設計ミスっちゃいました u Shared VPC下でVPC-nativeなPrivateクラスタを構築しました Host Project Sub Project VPC Peering
GCP Managed-Project my-subnet VPC Managed VPC GKE-master GKE-node-pool GKE-pod GKE-service
GKEのIP体系設計ミスっちゃいました u 今回IP設計を行ったのは4箇所 Host Project Sub Project VPC Peering GCP
Managed-Project my-subnet VPC Managed VPC GKE-master GKE-node-pool GKE-pod GKE-service ①IP address range ②Master address range ③Pod address range ④Service address range
GKEのIP体系設計ミスっちゃいました u どんな設計にしたかというと... ① IP address range → 利用できるIP範囲に制限もあり「/21」 ②
Master address range → ドキュメント合わせる形で「/28」 ③ Pod address range → Pod数に余裕をみて「/20」 ④ Service address range → Service数に余裕をみて「/20」
どこをミスったの?
どこをミスったの? u PodのIP設計がNGでした ① IP address range → 利用できるIP範囲に制限もあり「/21」 ②
Master address range → ドキュメント合わせる形で「/28」 ③ Pod address range → Pod数に余裕をみて「/20」 ④ Service address range → Service数に余裕をみて「/20」
どこをミスったの? u こんな感じになると思っていました Sub Project GKE-node GKE-pod GKE-service GKE-node GKE-pod
GKE-service GKE-node GKE-pod GKE-service GKE-node GKE-pod GKE-service GKE-node GKE-pod GKE-service GKE-node GKE-pod GKE-service Podのアドレスは必要に応じて 各ノードに割り当てられる(嘘⼄) node-pool node-pool
違いました...
違いました... https://cloud.google.com/kubernetes-engine/docs/how-to/alias-ips?hl=ja#cluster_sizing
つまり...
つまり... u こういうこと Sub Project GKE-node GKE-pod GKE-service GKE-node GKE-pod
GKE-service GKE-node GKE-pod GKE-service GKE-node GKE-pod GKE-service GKE-node GKE-pod GKE-service GKE-node GKE-pod GKE-service node-pool node-pool /24 /24 /24 /24 /24 /24 「/24」ごとにNodeへ割り当て
つまり... u 必要なIP数は「Node数 * 256」で計算しなければなりませんでした l Pod address range l
Pod数に余裕をみて(みたつもりで)「/20」と定義していた l 利用可能なIP数は「4096」個 l 作成可能なNode数はたったの「 16」個
This is 知見
This is 知見 u GKEのIP体系設計で気をつけなければいけないこと l Pod address rangeは「/24」で各Nodeに割り振られる l
必要なPodのIPは「Node数 * 256」で計算すること
そもそも
業務内容ごとに Node-poolを分割したのが Node数増大の根源
やっぱアプリとインフラは 切り離して考えるべきだったよね
いったん Fin. 後日談へ続く...
さっそくの 後日談
後日談 https://cloud.google.com/kubernetes-engine/docs/how-to/flexible-pod-cidr?hl=ja u 最大Pod数を減らすことで割り当てCIDR範囲を小さくすることが可能
Fin.