SlideShare a Scribd company logo
From Zero to Hero
ORI STOLIAR
CTO
● K8s Overview
● K8s Architecture
● K8s Objects
● Installing K8s
● Show time!
● Q&A
AGENDA
CONTAINERS?
?
SO…
WHAT IS
“Open-source system for automating deployment, scaling, and
management of containerized applications.”
Running containers
at scale
Provides Objects
and APIs for
building modern
applications
Open Source Container
Management
WHAT IS KUBERNETES?
HISTORY IN A NUTSHELL
Borg was founded
by Google
2004
Kubernetes was
introduced
2014
2015
Kubernetes
1.0 & CNCF
2017
Docker fully
embraces
Kubernetes
Minikube
2016
WHY ?
WHY KUBERNETES
Scalability
Portability
High Availability Open Source
Market Leader
Proven, Battle Tested
MARKET TRENDS
Kuberenetes  - From Zero to Hero
Architecture
CONTROL PLANE
kube-apiserver
● Exposes the Kubernetes API
● Handles REST requests from
kubernetes components and from
user/automating systems
kube-controller-
manager
● Responsible for running the
different controllers
● Strongly consist, distributed
Key/Value store
kube-scheduler
● Responsible for placement of
Pods on Nodes in a cluster based
on various factors.
DATA PLANE
kubelet
● An Agent that runs on each node
of the cluster
● The kubelet takes a set of
PodSpecs that are provided and
ensures that the containers
described in those PodSpecs are
running and healthy
kube-proxy
● Kube-proxy is a network proxy
that runs on each node of the
cluster
apiVersion: v1
kind: Pod
metadata:
name: myapp-pod
labels:
app: myapp
spec:
containers:
- name: myapp-container
image: busybox
command: ['sh', '-c', 'echo
Hello Kubernetes! && sleep
3600']
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
OBJECTS apiVersion: v1
kind: Service
metadata:
name: dt-service
spec:
selector:
app: directeam
ports:
- protocol: TCP
port: 80
targetPort: 9376
Virtual cluster backed by the
same physical cluster
Volume
Namespace: prod
Pod
Labels: [app: dt-app]
Container
Name: dt-app
Image: nginx
Namespace
Pod
Labels
Volume
smallest deployable units of
computing
key/value pairs that are
attached to objects
Abstraction layer for
having persistence
storage
DaemonSet
● Implements a single instance of a pod on a
worker node.
● Common usage:
○ Monitoring
○ Logging
Node
Pod
Node
Pod
Master
Node
Pod
Deployment
● Deployment controllers handles declarative
updates for Pods and ReplicaSets.
● Manages changes from the actual state to
the desired state at a controlled rate.
Deployment
Pod Pod
ReplicaSet
Pod Pod
ReplicaSet
ReplicaSet
● Guarantees the availability of a specified
number of identical Pods.
Service
● An abstract way to expose an application
running on a set of Pods as a network service.
There are 3 types of Service:
○ Node Port
○ Load balancer
○ ClusterIP
Service
Pod Pod Pod
DNS
CoreDNS - Open Source DNS Server written in Go, Kubernetes default DNS server
since version 1.13
● CoreDNS runs as Deployment
● Default cluster domain - cluster.local
● Default allocated DNS records:
○ <SERVICE_NAME>.<NAMESPACE>.svc.cluster.local
○ <POD_IP>.<NAMESPACE>.pod.cluster.local
Kuberenetes  - From Zero to Hero
Installing
!
Kubectl
$> kubectl get deployment webapp
$> kubectl get pod web-pod-13je7 -o yaml
$> kubectl apply -f example-service.yaml
● Kubectl is a command line interface for
running commands against Kubernetes
clusters.
● By default, looks for config file at
$HOME/.kube
Installing
Kubernetes
● Kubeadm
● Kops
● Kubespray
● ...
● AWS EKS
● GCP GKE
● Azure AKS
● Rancher
● ...
Self installed Managed
VS
FOCUS ON WHAT'S IMPORTANT
CREATING EKS CLUSTER
● Creating EKS using eksctl:
$> eksctl create cluster --version=1.13 --
name=k8s-meetup --nodes=3 --node-ami=auto --
region=${AWS_REGION}
● Getting kubeconfig file:
$> aws eks --region <REGION> update-kubeconfig --
name <cluster_name>
KUBERNETES UI
IT’S SHOW TIME!
● Demonstration over AWS
● Run BE & FE services
● Expose the FE service to the internet via
Load balancer
● Use secure HTTPS connection
● Attach DNS record to the load balancer
● Scale automatically the FE service based on
collected metrics
● Scale manually the BE service.
● Helm - deploy apps at ease
● Monitoring - what are the right
metrics?
● Logging - what do we even look
for?
NEXT STEPS
Q&A
Thank
You!
ori@directeam.io

More Related Content

PDF
Kubernetes Basics
PDF
Getting Started with Kubernetes
PPTX
Intro to Helm for Kubernetes
PDF
Kubernetes Introduction
PPT
presentation on Docker
PPTX
Introduction to Docker - 2017
PPTX
Docker 101 : Introduction to Docker and Containers
PDF
Kubernetes
Kubernetes Basics
Getting Started with Kubernetes
Intro to Helm for Kubernetes
Kubernetes Introduction
presentation on Docker
Introduction to Docker - 2017
Docker 101 : Introduction to Docker and Containers
Kubernetes

What's hot (20)

PPTX
Dockers and containers basics
PDF
CI/CD on Google Cloud Platform
PPT
Docker introduction
PPTX
Kubernetes #2 monitoring
PDF
What Is Helm
PPTX
Kubernetes for Beginners: An Introductory Guide
PDF
Google Kubernetes Engine (GKE) deep dive
PDF
Introduction to Docker Compose
PPTX
K8s in 3h - Kubernetes Fundamentals Training
PDF
Introduction to GitHub Actions
PPTX
01. Kubernetes-PPT.pptx
PDF
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
PDF
Evolution of containers to kubernetes
PDF
(Draft) Kubernetes - A Comprehensive Overview
PDF
Kubernetes - introduction
PDF
Hands-On Introduction to Kubernetes at LISA17
PPTX
Introduction to Kubernetes
PDF
Docker Introduction
PDF
Terraform modules and some of best-practices - March 2019
PDF
Gitlab ci-cd
Dockers and containers basics
CI/CD on Google Cloud Platform
Docker introduction
Kubernetes #2 monitoring
What Is Helm
Kubernetes for Beginners: An Introductory Guide
Google Kubernetes Engine (GKE) deep dive
Introduction to Docker Compose
K8s in 3h - Kubernetes Fundamentals Training
Introduction to GitHub Actions
01. Kubernetes-PPT.pptx
Kubernetes Architecture | Understanding Kubernetes Components | Kubernetes Tu...
Evolution of containers to kubernetes
(Draft) Kubernetes - A Comprehensive Overview
Kubernetes - introduction
Hands-On Introduction to Kubernetes at LISA17
Introduction to Kubernetes
Docker Introduction
Terraform modules and some of best-practices - March 2019
Gitlab ci-cd
Ad

Similar to Kuberenetes - From Zero to Hero (20)

PPTX
Kubernetes
PPTX
Kubernetes 101
PPTX
Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma
PPTX
Kubernetes Introduction
PPTX
Introduction kubernetes 2017_12_24
PPTX
Kubernetes: від знайомства до використання у CI/CD
PDF
Kubernetes for Beginners
PDF
Kubernetes - Starting with 1.2
PDF
DevOps in AWS with Kubernetes
PPTX
DevOps with Kubernetes
PDF
kubernetes.pdf
PDF
Kubernetes From Scratch .pdf
PPTX
Introduction to Kubernetes
PDF
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
PPTX
Kubernetes 101
PPTX
01 - VMUGIT - Lecce 2018 - Fabio Rapposelli, VMware
PDF
Running and Managing Kubernetes on OpenStack
PPTX
KubernetSADASDASDASDSADASDASDASDASDes.pptx
PPTX
Kubernetes Internals
Kubernetes
Kubernetes 101
Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma
Kubernetes Introduction
Introduction kubernetes 2017_12_24
Kubernetes: від знайомства до використання у CI/CD
Kubernetes for Beginners
Kubernetes - Starting with 1.2
DevOps in AWS with Kubernetes
DevOps with Kubernetes
kubernetes.pdf
Kubernetes From Scratch .pdf
Introduction to Kubernetes
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
Kubernetes 101
01 - VMUGIT - Lecce 2018 - Fabio Rapposelli, VMware
Running and Managing Kubernetes on OpenStack
KubernetSADASDASDASDSADASDASDASDASDes.pptx
Kubernetes Internals
Ad

Recently uploaded (20)

PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
cuic standard and advanced reporting.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPT
Teaching material agriculture food technology
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Big Data Technologies - Introduction.pptx
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Approach and Philosophy of On baking technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Review of recent advances in non-invasive hemoglobin estimation
CIFDAQ's Market Insight: SEC Turns Pro Crypto
NewMind AI Weekly Chronicles - August'25 Week I
cuic standard and advanced reporting.pdf
Chapter 3 Spatial Domain Image Processing.pdf
The AUB Centre for AI in Media Proposal.docx
Understanding_Digital_Forensics_Presentation.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Teaching material agriculture food technology
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Per capita expenditure prediction using model stacking based on satellite ima...
Dropbox Q2 2025 Financial Results & Investor Presentation
NewMind AI Monthly Chronicles - July 2025
Machine learning based COVID-19 study performance prediction
Big Data Technologies - Introduction.pptx
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Approach and Philosophy of On baking technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Network Security Unit 5.pdf for BCA BBA.
Review of recent advances in non-invasive hemoglobin estimation

Kuberenetes - From Zero to Hero

  • 3. ● K8s Overview ● K8s Architecture ● K8s Objects ● Installing K8s ● Show time! ● Q&A AGENDA
  • 5. ? SO… WHAT IS “Open-source system for automating deployment, scaling, and management of containerized applications.”
  • 6. Running containers at scale Provides Objects and APIs for building modern applications Open Source Container Management WHAT IS KUBERNETES?
  • 7. HISTORY IN A NUTSHELL Borg was founded by Google 2004 Kubernetes was introduced 2014 2015 Kubernetes 1.0 & CNCF 2017 Docker fully embraces Kubernetes Minikube 2016
  • 9. WHY KUBERNETES Scalability Portability High Availability Open Source Market Leader Proven, Battle Tested
  • 14. kube-apiserver ● Exposes the Kubernetes API ● Handles REST requests from kubernetes components and from user/automating systems
  • 15. kube-controller- manager ● Responsible for running the different controllers
  • 16. ● Strongly consist, distributed Key/Value store
  • 17. kube-scheduler ● Responsible for placement of Pods on Nodes in a cluster based on various factors.
  • 19. kubelet ● An Agent that runs on each node of the cluster ● The kubelet takes a set of PodSpecs that are provided and ensures that the containers described in those PodSpecs are running and healthy
  • 20. kube-proxy ● Kube-proxy is a network proxy that runs on each node of the cluster
  • 21. apiVersion: v1 kind: Pod metadata: name: myapp-pod labels: app: myapp spec: containers: - name: myapp-container image: busybox command: ['sh', '-c', 'echo Hello Kubernetes! && sleep 3600'] apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment labels: app: nginx spec: replicas: 3 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.7.9 ports: - containerPort: 80 OBJECTS apiVersion: v1 kind: Service metadata: name: dt-service spec: selector: app: directeam ports: - protocol: TCP port: 80 targetPort: 9376
  • 22. Virtual cluster backed by the same physical cluster Volume Namespace: prod Pod Labels: [app: dt-app] Container Name: dt-app Image: nginx Namespace Pod Labels Volume smallest deployable units of computing key/value pairs that are attached to objects Abstraction layer for having persistence storage
  • 23. DaemonSet ● Implements a single instance of a pod on a worker node. ● Common usage: ○ Monitoring ○ Logging Node Pod Node Pod Master Node Pod
  • 24. Deployment ● Deployment controllers handles declarative updates for Pods and ReplicaSets. ● Manages changes from the actual state to the desired state at a controlled rate. Deployment Pod Pod ReplicaSet Pod Pod ReplicaSet ReplicaSet ● Guarantees the availability of a specified number of identical Pods.
  • 25. Service ● An abstract way to expose an application running on a set of Pods as a network service. There are 3 types of Service: ○ Node Port ○ Load balancer ○ ClusterIP Service Pod Pod Pod
  • 26. DNS CoreDNS - Open Source DNS Server written in Go, Kubernetes default DNS server since version 1.13 ● CoreDNS runs as Deployment ● Default cluster domain - cluster.local ● Default allocated DNS records: ○ <SERVICE_NAME>.<NAMESPACE>.svc.cluster.local ○ <POD_IP>.<NAMESPACE>.pod.cluster.local
  • 29. Kubectl $> kubectl get deployment webapp $> kubectl get pod web-pod-13je7 -o yaml $> kubectl apply -f example-service.yaml ● Kubectl is a command line interface for running commands against Kubernetes clusters. ● By default, looks for config file at $HOME/.kube
  • 30. Installing Kubernetes ● Kubeadm ● Kops ● Kubespray ● ... ● AWS EKS ● GCP GKE ● Azure AKS ● Rancher ● ... Self installed Managed VS
  • 31. FOCUS ON WHAT'S IMPORTANT
  • 32. CREATING EKS CLUSTER ● Creating EKS using eksctl: $> eksctl create cluster --version=1.13 -- name=k8s-meetup --nodes=3 --node-ami=auto -- region=${AWS_REGION} ● Getting kubeconfig file: $> aws eks --region <REGION> update-kubeconfig -- name <cluster_name>
  • 34. IT’S SHOW TIME! ● Demonstration over AWS ● Run BE & FE services ● Expose the FE service to the internet via Load balancer ● Use secure HTTPS connection ● Attach DNS record to the load balancer ● Scale automatically the FE service based on collected metrics ● Scale manually the BE service.
  • 35. ● Helm - deploy apps at ease ● Monitoring - what are the right metrics? ● Logging - what do we even look for? NEXT STEPS
  • 36. Q&A