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
ClusterAPI: A Guide to Get Started
Search
Katie Gamanji
October 26, 2019
Technology
0
33
ClusterAPI: A Guide to Get Started
https://fest19.gdgreading.dev/schedule/2018-10-26?sessionId=81
Katie Gamanji
October 26, 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
Kubernetes scalability: Federation & Cluster API
k_gamanji
0
160
Kubernetes scalability: VPA, Federation & Cluster API
k_gamanji
0
100
Pixel - Fintech Hackathon
k_gamanji
0
27
Other Decks in Technology
See All in Technology
Security Diaries of an Open Source IAM
ahus1
0
210
OCHaCafe S11 #2 コンテナ時代の次の一手:Wasm 最前線
oracle4engineer
PRO
1
120
複数クラスタ運用と検索の高度化:ビズリーチにおけるElastic活用事例 / ElasticON Tokyo2026
visional_engineering_and_design
0
130
[JAWSDAYS2026][D8]その起票、愛が足りてますか?AWSサポートを味方につける、技術的「ラブレター」の書き方
hirosys_
3
160
AI は "道具" から "同僚" へ 自律型 AI エージェントの最前線と、AI 時代の人材の在り方 / Colleague in the AI Era - Autonomous AI Seminar 2026 at Niigata
gawa
0
160
IBM Bobを使って、PostgreSQLのToDoアプリをDb2へ変換してみよう/202603_Dojo_Bob
mayumihirano
1
320
実践 Datadog MCP Server
nulabinc
PRO
1
100
us-east-1 に障害が起きた時に、 ap-northeast-1 にどんな影響があるか 説明できるようになろう!
miu_crescent
PRO
13
4.2k
SRE NEXT 2026 CfP レビュアーが語る聞きたくなるプロポーザルとは?
yutakawasaki0911
1
250
Abuse report だけじゃない。AWS から緊急連絡が来る状況とは?昨今の攻撃や被害の事例の紹介と備えておきたい考え方について
kazzpapa3
1
560
AWSの資格って役に立つの?
tk3fftk
1
210
製造業ドメインにおける LLMプロダクト構築: 複雑な文脈へのアプローチ
caddi_eng
1
560
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
440
Navigating Team Friction
lara
192
16k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Become a Pro
speakerdeck
PRO
31
5.8k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
170
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
So, you think you're a good person
axbom
PRO
2
2k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
410
30 Presentation Tips
portentint
PRO
1
250
Automating Front-end Workflow
addyosmani
1370
200k
Transcript
None
Katie Gamanji Cloud Platform Engineer Condé Nast @k_gamanji katie-gamanji
ClusterAPI: A Guide to Get Started @k_gamanji katie-gamanji
ClusterAPI ClusterAPI Workflow ClusterAPI Components
Condé Nast 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
None
None
Unique users Unique users Total digital readership 9m 62m 360m
Russia China
None
K8s Bootstrap Tools Kubeadm Kubespray Kops Tectonic
ClusterAPI
ClusterAPI Provision of declarative APIs for cluster creation, configuration, and
management.
ClusterAPI SIG-cluster-lifecycle: • Initial release: April 2019 • API: v1alpha2
ClusterAPI Workflow
1 / 4
Management cluster Target clusters 2 / 4 Controller managers
3 / 4: Controller Managers Infrastructure Providers Bootstrap Providers ClusterAPI
CRDs + +
Management cluster Target clusters 4 / 4 Controller managers
ClusterAPI Components
ClusterAPI - CRDs • Cluster - CIDRs for pods and
services + DNS suffix • Machine - kubelet and control plane versions • MachineSet • MachineDeployment
Cluster Manifest
apiVersion: cluster.x-k8s.io/v1alpha2 kind: Cluster metadata: name: capi-quickstart spec: clusterNetwork: pods:
cidrBlocks: ["192.168.0.0/16"] infrastructureRef: apiVersion: ${API_VERSION} kind: ${PROVIDER_KIND} name: capi-quickstart Cluster Manifest
apiVersion: ${API_VERSION} kind: AWSCluster metadata: name: capi-quickstart spec: region: us-east-1
sshKeyName: default AWS InfrastructureRef
apiVersion: ${API_VERSION} kind: GCPCluster metadata: name: capi-quickstart spec: project: capi-project
region: us-east-1 network: name: capi-network GCP InfrastructureRef
apiVersion: ${API_VERSION} kind: DockerCluster metadata: name: capi-quickstart namespace: default Docker
InfrastructureRef
Machine Manifest
apiVersion: cluster.x-k8s.io/v1alpha2 kind: Machine metadata: [...] spec: version: v1.15.3 bootstrap:
configRef: apiVersion: ${API_VERSION} kind: KubeadmConfig name: capi-controlplane-0 infrastructureRef: apiVersion: ${API_VERSION} kind: ${PROVIDER_KIND} name: capi-controlplane-0 Machine Manifest
apiVersion: ${API_VERSION} kind: KubeadmConfig metadata: name: capi-controlplane-0 spec: initConfiguration: nodeRegistration:
name: ${HOSTNAME} kubeletExtraArgs: cloud-provider: aws clusterConfiguration: apiServer: extraArgs: cloud-provider: aws controllerManager: extraArgs: cloud-provider: aws AWS Boostrap Config
apiVersion: ${API_VERSION} kind: AWSMachine metadata: name: capi-controlplane-0 spec: instanceType: t3.large
iamInstanceProfile: "capi-iam" sshKeyName: default AWS InfrastructureRef
ClusterAPI DEMO https://asciinema.org/a/DaMKYCSaHWu qFq1l4pEAZMKsR
Building blocks Cloud agnostic Experimental Takeaways
ClusterAPI ClusterAPI Workflow ClusterAPI Components
References • ClusterAPI book https://cluster-api.sigs.k8s.io • ClusterAPI — A Guide
on How to Get Started https://link.medium.com/8BL8xIpP20
https://www.condenast.com/careers @k_gamanji katie-gamanji
None