0% found this document useful (0 votes)
4 views10 pages

Kubernetes APIs

The document serves as a certification guide for the CKAD (Certified Kubernetes Application Developer) exam, detailing Kubernetes APIs and their corresponding YAML and JSON representations. It outlines various Kubernetes objects, their API versions, and the distinction between different kinds of resources such as Pods, Services, and Deployments. Additionally, it emphasizes the importance of understanding API versioning, categorizing them into Alpha, Beta, and Stable stages.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views10 pages

Kubernetes APIs

The document serves as a certification guide for the CKAD (Certified Kubernetes Application Developer) exam, detailing Kubernetes APIs and their corresponding YAML and JSON representations. It outlines various Kubernetes objects, their API versions, and the distinction between different kinds of resources such as Pods, Services, and Deployments. Additionally, it emphasizes the importance of understanding API versioning, categorizing them into Alpha, Beta, and Stable stages.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

CKAD : Complete

Certification Guide

Kubernetes APIs
CKAD : Certification

Admin/Developer

Master Node/ Controller


YAML JSON

apiVersion: v1 {
"apiVersion": "v1",
kind: Pod
"kind": "Pod",
metadata:
"metadata": {
name: nginx "name": "nginx"
spec: },
containers: "spec": {
- name: nginx "containers": [
image: nginx:1.14.2 {
ports: "name": "nginx",
- containerPort: 80 "image": "nginx:1.14.2",
"ports": [
{
"containerPort": 80
}
]
}
]
}
}
POD YAML

apiVersion: v1 apiVersion: API_GROUP/API_VERSION


kind: Pod
metadata:
name: nginx apiVersion: v1
spec: apiVersion: apps/v1
containers: apiVersion: rbac.authorization.k8s.io/v1
- name: nginx apiVersion: autoscaling/v1
image: nginx:1.14.2 apiVersion: batch/v1
ports: apiVersion: extensions/v1beta1
- containerPort: 80 apiVersion: batch/v1
POD YAML

apiVersion: v1 kind: Kubernetes Objects


kind: Pod
metadata: pods
name: nginx service
spec: secret
containers: persistentVolume
- name: nginx configMap
image: nginx:1.14.2 Job
ports: cronjob
- containerPort: 80 namespace
role
statefulSet … etc
POD YAML POD YAML

apiVersion: v1 apiVersion: v1
kind: Pod kind: Pod
metadata: metadata:
name: nginx name: nginx
spec: spec:
containers: containers:
- name: nginx - name: nginx
image: nginx:1.14.2 image: nginx:1.14.2
ports: ports:
- containerPort: 80 - containerPort: 80
KIND vs API-Version

Kind API Version Kind API Version

Pod v1 ReplicaSet apps/v1

ReplicationController v1 Deployment apps/v1

Service v1 DaemonSet apps/v1

Secret v1 StatefulSet apps/v1

ComponentStatus v1
Kind API Version
NameSpace v1
Job batch/v1
ConfigMap v1

PersistentVolume v1
Kind API Version
PersistentVolumeClaim v1
CronJob batch/v1beta1
ServiceAccount v1
KIND vs API-Version

Kind API Version

Role rbac.authorization.k8s.io/v1

RoleBinding rbac.authorization.k8s.io/v1

ClusterRole rbac.authorization.k8s.io/v1

ClusterRoleBinding rbac.authorization.k8s.io/v1
CKAD : Certification
API Versioning

ALPHA BETA STABLE


v1alpha1 v1beta1 v1
Thank You...
Don’t be the Same! Be Better!!!

You might also like