Introduction To Kubernetes (K8) : Tomislav Mikulin Devops
Introduction To Kubernetes (K8) : Tomislav Mikulin Devops
Tomislav Mikulin
DevOps
Word of caution
What is kubernetes?
Formal definition:
Kubernetes documentation
What is kubernetes?
Unformal definition:
• Application configuration
• Service discovery
• Managing updates
• Monitoring
• Deployment…
Why is k8 special?
• Github (37,578 )
• 1693 contributors
Backed up by :
• Self healing
Kubernetes Application
Infrastructure
k8 architecture
Kubelet Kubelet
KUBE - API SERVER
Kube-proxy Kube-proxy
POD POD
Scheduler ETCD
Container Container
Controller Cloud
Manager Controller
Cloud
p. pods/apps running on k8
Node Node
Kubelet Kubelet
Registry
Docker Docker
POD POD
YAML
API Container Container
APP
SPEC Master
k8 basic objects
• Everything in k8 is a declarative configuration object
(RESTfull API object)
• ReplicaSet
• Deployment (important)
• StatefulState (PetSets)
• DaemonSet
• Job
Whats a pod anyway?
Pod is group of containers
• Service object
FRONTED
Frontend Service
IP: 1.1.1.1
POD
IP: 2.1.1.4
Deployment controller
Drives current state towards the desired state
app: televendcloud
replicas: 1
NODE 1
Deployment controller
Drives current state towards the desired state
app: televendcloud
replicas: 1
NODE 1
POD
Container
Deployment controller
Drives current state towards the desired state
app: televendcloud
replicas: 3
NODE 1
POD
Container
Deployment controller
Drives current state towards the desired state
app: televendcloud
replicas: 3
NODE 1
app: televendcloud
replicas: 3
NODE 1
POD POD
Container Container
Deployment controller
Drives current state towards the desired state
app: televendcloud
replicas: 3
NODE 1 POD
Container
POD
Container POD
Container
k8 documentation
k8 learning material:
https://www.katacoda.com/ - website
kubernetes.io - documentation