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
56
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
26
Other Decks in Technology
See All in Technology
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
210
Red Hat OpenStack Services on OpenShift
tamemiya
0
110
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
260
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
240
レガシー共有バッチ基盤への挑戦 - SREドリブンなリアーキテクチャリングの取り組み
tatsukoni
0
220
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
380
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
180
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
180
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
350
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.5k
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
450
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
250
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
830
Crafting Experiences
bethany
1
49
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
57
50k
For a Future-Friendly Web
brad_frost
182
10k
HDC tutorial
michielstock
1
380
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
640
The Pragmatic Product Professional
lauravandoore
37
7.1k
My Coaching Mixtape
mlcsv
0
48
Evolving SEO for Evolving Search Engines
ryanjones
0
120
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
590
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
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