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
Understanding API Internals
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Nabarun Pal
June 26, 2021
Technology
120
0
Share
Understanding API Internals
Nabarun Pal
June 26, 2021
More Decks by Nabarun Pal
See All by Nabarun Pal
Keeping Social Engineering Attacks Away from OSS Communities
palnabarun
0
87
Kubernetes - The Universal Control Plane
palnabarun
0
180
Learnings from Sustainably Steering the Kubernetes Project
palnabarun
0
130
The Eight Fallacies of Distributed Cloud Native Communities
palnabarun
0
150
State of Kubernetes and CNCF: A path to a sustainable and secure future
palnabarun
0
86
Wildfires, Firefighters and Sustainability Learnings from Mitigating Kubernetes Fires in the Community
palnabarun
0
110
What does the Kubernetes Steering Committee Steer?
palnabarun
0
180
State of Kubernetes in 2022
palnabarun
0
130
Leadership Learnings from Kubernetes Releases
palnabarun
0
90
Other Decks in Technology
See All in Technology
巨大プラットフォームを進化させる「第3のROI」
recruitengineers
PRO
2
2.3k
ハーネスエンジニアリングをやりすぎた話 ~そのハーネスは解体された~
gotalab555
5
2k
エージェント時代の UIとAPI、CLI戦略
coincheck_recruit
0
130
試作とデモンストレーション / Prototyping and Demonstrations
ks91
PRO
0
170
UIライブラリに依存しすぎないReact Native設計を目指して
grandbig
0
190
プラットフォームエンジニアリングの実践 - AWS コンテナサービスで構築する社内プラットフォーム / AWS Containers Platform Meetup #1
literalice
1
240
AI와 협업하는 조직으로의 여정
arawn
0
580
Fabric MCPの紹介と使い分け
ryomaru0825
1
110
Google Cloud Next '26 の裏でこっそりリリースされたCloud Number Registry & Cloud Hub コスト分析 を試してみた
hikaru1001
0
150
AndroidアプリとCopilot Studioの統合
nakasho
0
200
社内エンジニア勉強会の醍醐味と苦しみ/tamadev
nishiuma
0
280
毎日の作業を Claude Code 経由にしたら、 ノウハウがコードになった
kossykinto
0
150
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
230
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
220
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
180
Designing for Timeless Needs
cassininazir
0
210
Six Lessons from altMBA
skipperchong
29
4.2k
Everyday Curiosity
cassininazir
0
200
How to Talk to Developers About Accessibility
jct
2
190
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
Between Models and Reality
mayunak
3
280
GitHub's CSS Performance
jonrohan
1032
470k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.2k
Transcript
Understanding the Kubernetes API Internals By Nabarun Pal and Nikhita
Raghunath
2 Source: https://kubernetes.io/docs/concepts/overview/components/
3 Group git.k8s.io/kubernetes/staging/src/k8s.io/api
4 Version
5 Kind
6 Group-Version-Kind (GVK) apps.v1/Deployment Group Version Kind
7 Group-Version-Resource (GVR) /apis/apps/v1/namespaces/{namespace}/deployments Group Version Resource /api/v1/namespaces/{namespace}/pods
Relation between GVK and GVR 8
9 External Types v/s Internal Types
1 0 Codebase walkthrough To import the codebase walkthrough in
VS Code, please see this gist.
11 Conversion v1 Storage Version
12 Conversion v1 v1beta1 Storage Version Input Version
13 Conversion v1 v1beta2 Storage Version Input Version
14 Conversion v1 v1beta3 Storage Version Input Version
15 Conversion v1 v1beta1 Storage Version Input Version
16 Conversion v1 internal v1beta1 Storage Version “Hub” Version Input
Version
17 Conversion v1 internal v1beta2 Storage Version “Hub” Version Input
Version
18 Conversion v1 internal v1beta3 Storage Version “Hub” Version Input
Version
19 Conversion v1 internal v1beta1 Storage Version “Hub” Version Input
Version
20 Conversion and Defaulting v1 internal v1beta1 Storage Version “Hub”
Version Input Version
21 Decoding v1beta1 Input Version internal “Hub” Version Serialization, Defaulting
and Conversion
22 Admission v1 internal “Hub” Version Admission Mutating Validating
23 Registry v1 internal “Hub” Version Admission Mutating Validating Registry
BeforeCreate Validation
24 Encoding v1 internal “Hub” Version Admission Mutating Validating Registry
BeforeCreate Validation Encoding Conversion Defaulting Deserialization
2 5 Codebase walkthrough To import the codebase walkthrough in
VS Code, please see this gist.
26 CRDs and Aggregated Apiservers They follow the same pattern
• CRDs - staging/src/k8s.io/apiextensions-apiserver • Aggregated Apiservers - staging/src/k8s.io/kube-aggregator (We won’t be covering them in detail in this talk)
Thank you! 2 7 Feedback Link