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
Kubernetes scalability: VPA, Federation & Clust...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Katie Gamanji
September 04, 2019
Technology
0
100
Kubernetes scalability: VPA, Federation & Cluster API
Kubernetes scalability: VPA, Federation & Cluster API for Cloud Native Prague meetup
Katie Gamanji
September 04, 2019
Tweet
Share
More Decks by Katie Gamanji
See All by Katie Gamanji
Level Unlocked: GitOps to the Edge and Infrastructure Provisioning
k_gamanji
1
110
Kubernetes Scalability: Federation and ClusterAPI
k_gamanji
0
57
ClusterAPI: A Guide to Get Started
k_gamanji
0
33
Kubernetes scalability: Federation & Cluster API
k_gamanji
0
160
Pixel - Fintech Hackathon
k_gamanji
0
27
Other Decks in Technology
See All in Technology
タスク管理も1on1も、もう「管理」じゃない ― KiroとBedrock AgentCoreで変わった"判断の仕事"
yusukeshimizu
5
2.6k
実践 Datadog MCP Server
nulabinc
PRO
1
100
OpenClawで回す組織運営
jacopen
3
700
マルチロールEMが実践する「組織のレジリエンス」を高めるための組織構造と人材配置戦略
coconala_engineer
3
720
IBM Bobを使って、PostgreSQLのToDoアプリをDb2へ変換してみよう/202603_Dojo_Bob
mayumihirano
1
320
モブプログラミング再入門 ー 基本から見直す、AI時代のチーム開発の選択肢 ー / A Re-introduction of Mob Programming
takaking22
5
1.3k
8万デプロイ
iwamot
PRO
2
230
OCI技術資料 : コンピュート・サービス 概要
ocise
4
54k
[JAWSDAYS2026][D8]その起票、愛が足りてますか?AWSサポートを味方につける、技術的「ラブレター」の書き方
hirosys_
3
160
OCI Security サービス 概要
oracle4engineer
PRO
2
13k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
4
1.2k
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
5
1.2k
Featured
See All Featured
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
53k
Producing Creativity
orderedlist
PRO
348
40k
Abbi's Birthday
coloredviolet
2
5.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
140
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
150
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
310
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
140
Transcript
None
Katie Gamanji Cloud Platform Engineer Condé Nast International @k_gamanji katie-gamanji
Kubernetes scalability: VPA, Federation & Cluster API @k_gamanji katie-gamanji
Condé Nast International has set the benchmark for print and
digital publishing with a heritage of more than 110 years.
None
Markets 11 Websites 62 Unique users 200m Digital readership 1.1bn
July 2019
None
None
Vertical Pod Autoscaler Federation v2 Cluster API
Vertical Pod Autoscaler Federation v2 Cluster API
Vertical Pod Autoscaler Federation v2 Cluster API
Vertical Pod Autoscaler Federation v2 Cluster API
Vertical Pod Autoscaler
apiVersion: apps/v1beta1 kind: Deployment metadata: name: nginx labels: app: nginx
spec: template: [...] spec: containers: - resources: requests: memory: "16Mi" cpu: "25m" limits: memory: "16Mi" cpu: "50m"
apiVersion: apps/v1beta1 kind: Deployment metadata: name: nginx labels: app: nginx
spec: template: [...] spec: containers: - resources: requests: memory: "16Mi" cpu: "25m" limits: memory: "16Mi" cpu: "50m"
VPA Reduce the maintenance cost, by automating configuration of resource
requirements. Improving utilization of cluster resources, while minimizing the risk of containers running out of memory or getting CPU starved.
VPA • Vertical Pod Autoscaler ◦ CRD v0.5.0 (v1beta2) ◦
requires v1.11 • 3 components: ◦ admission controller ◦ recommender ◦ updater
None
apiVersion: autoscaling.k8s.io/v1beta2 kind: VerticalPodAutoscaler metadata: name: nginx-vpa spec: targetRef: apiVersion:
"apps/v1" kind: Deployment name: nginx updatePolicy: updateMode: "Auto"
VPA VPA update policy: • Auto - assign/update resource requests
by updating existing pods (restart-free) • Recreate - assign/update resource requests by evicting pods (restart required) • Initial - assign resource requests on creation only • Off - no automatic change, however resources are calculated
VPA Demo https://asciinema.org/a/wyRWC7Gy6nZW7D4J xd4AROfQS
Pod disruption budget HPA & VPA Limit/request ratio Takeaways
Federation v2
Federation v2 Mechanism for managing applications and services in multiple
Kubernetes clusters tracked by the Kubernetes cluster registry.
Federation v2 SIG multicluster: • Federation ◦ v1 - deprecated
◦ v2 (alpha) - requires v1.13 • Cluster registry ◦ maintain list of clusters and associated metadata
1 / 4
Host cluster Member clusters 2 / 4
Host cluster Member clusters Cluster registry Federation APIs 3 /
4
Host cluster Member clusters Control plane 4 / 4 Applications
& services
Federation v2 Cluster placement • targeted clusters by the federation
Configuration overrides • patches to federated resources
Federation v2 Cluster Placement • clusters spec: placement: clusters: -
name: cluster2 - name: cluster1 • clusterSelector spec: clusterSelector: matchLabels: region: eu-central-1
Federation v2 Configuration overrides • Replace (default), add or remove
spec: overrides: - clusterName: cluster1 clusterOverrides: - path: "/spec/replicas" value: 5
apiVersion: types.kubefed.io/v1beta1 kind: FederatedDeployment metadata: name: nginx-deployment spec: template: spec:
replicas: 3 [...] placement: clusters: - cluster2 - cluster1 overrides: - clusterName: cluster2 clusterOverrides: - path: "/spec/replicas" value: 7
Federation v2 DEMO https://asciinema.org/a/caUpnqVCUz2PP1Fui wPiDQfkj
Resource management Namespace scoped control plane Conditional scalability Takeaways Higher
level behaviour
Cluster API
Unique users Unique users Total digital readership 9m 62m 360m
Russia China
Cluster API Provision of declarative APIs for cluster creation, configuration,
and management.
Cluster API SIG-cluster-lifecycle: • Initial release: April 2019 • API:
v1alpha2
1 / 3
Bootstrap cluster Clusters 2 / 3 • CRDs • controllers
• actuators
Bootstrap cluster Clusters 3 / 3 • CRDs • controllers
• actuators
Bootstrap cluster Clusters 3 / 3 pivot • CRDs •
controllers • actuators
Cluster API • Cluster - CIDRs for pods and services
+ DNS suffix • Machine - kubelet and control plane verisons • MachineSet • MachineDeployment • MachineClass - consolidate provider specific details
Cluster API Controllers vs actuators: Controllers: - e.g. MachineSet -
watch resources for changes - invoke actuators Actuators: - e.g. Cluster, Machine - provider-specific logic to match the declared state
Cluster API DEMO
Building blocks Cloud agnostic Experimental Takeaways
Vertical Pod Autoscaler Federation v2 Cluster API
References VPA • https://github.com/kubernetes/autoscaler/ tree/master/vertical-pod-autoscaler Federation v2 • https://github.com/kubernetes-sigs/federati on-v2
ClusterAPI • https://github.com/kubernetes-sigs/cluster- api-provider-aws
https://www.condenastinternational.com/careers @k_gamanji katie-gamanji
None