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
Nabarun Pal
June 26, 2021
Technology
0
110
Understanding API Internals
Nabarun Pal
June 26, 2021
Tweet
Share
More Decks by Nabarun Pal
See All by Nabarun Pal
Keeping Social Engineering Attacks Away from OSS Communities
palnabarun
0
71
Kubernetes - The Universal Control Plane
palnabarun
0
140
Learnings from Sustainably Steering the Kubernetes Project
palnabarun
0
110
The Eight Fallacies of Distributed Cloud Native Communities
palnabarun
0
110
State of Kubernetes and CNCF: A path to a sustainable and secure future
palnabarun
0
74
Wildfires, Firefighters and Sustainability Learnings from Mitigating Kubernetes Fires in the Community
palnabarun
0
86
What does the Kubernetes Steering Committee Steer?
palnabarun
0
140
State of Kubernetes in 2022
palnabarun
0
110
Leadership Learnings from Kubernetes Releases
palnabarun
0
81
Other Decks in Technology
See All in Technology
まだ間に合う! Agentic AI on AWSの現在地をやさしく一挙おさらい
minorun365
19
3.3k
[Data & AI Summit '25 Fall] AIでデータ活用を進化させる!Google Cloudで作るデータ活用の未来
kirimaru
0
4.1k
MariaDB Connector/C のcaching_sha2_passwordプラグインの仕様について
boro1234
0
1.1k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
220
ソフトウェアエンジニアとAIエンジニアの役割分担についてのある事例
kworkdev
PRO
1
340
小さく、早く、可能性を多産する。生成AIプロジェクト / prAIrie-dog
visional_engineering_and_design
0
220
MySQLのSpatial(GIS)機能をもっと充実させたい ~ MyNA望年会2025LT
sakaik
0
170
AIBuildersDay_track_A_iidaxs
iidaxs
4
1.6k
AWS Lambda durable functions を使って AWS Lambda の15分の壁を超えてみよう
matsuzawatakeshi
0
110
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
120
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
250
2025年 山梨の技術コミュニティを振り返る
yuukis
0
130
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.8k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
1
210
Facilitating Awesome Meetings
lara
57
6.7k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
110
From π to Pie charts
rasagy
0
97
Claude Code のすすめ
schroneko
67
210k
Utilizing Notion as your number one productivity tool
mfonobong
2
190
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
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