SlideShare a Scribd company logo
Joonathan Mägi, Teleport
kubernetes
WHAT IS KUBERNETES?
Kubernetes is an open-source system for automating deployment, scaling, and
management of containerized applications giving you the freedom to take
advantage of on-premise, hybrid, or public cloud infrastructure, letting you
effortlessly move workloads to where it matters to you.
It groups containers that make up an application into logical units for easy
management and discovery.
Builds on top of Docker containers, but version 1.3 brought support also for rkt
and OCI & CNI standards.
WHAT CAN KUBERNETES DO FOR ME?
Scheduling
Automatically places containers based on their resource requirements and other
constraints, while not sacrificing availability. Mix critical and best-effort
workloads in order to drive up utilization and save even more resources.
Ships with default scheduler, but you can build and run your instead of or even
simultaneously side-by-side with the default one.
WHAT CAN KUBERNETES DO FOR ME?
Lifecycle and health
A replication controller ensures that a specified number of pod “replicas” are
running at any one time.
Deployment provides declarative updates for Pods and Replica Sets and
updates Pod’s in rolling update fashion (maxUnavailable and maxSurge can be
defined to control the process).
Kubelet constantly monitors the Docker daemon to confirm the container
process is still running, and if not, the container process is restarted.
Health Check probes can be defined (livenessProbe & readinessProbe) to run
HTTP Health Checks, Container Exec checks or TCP socket checks.
Container Lifecycle Hooks are available — PostStart and PreStop.
With Horizontal Pod Autoscaling, Kubernetes automatically scales the
number of pods in a replication controller, deployment or replica set based on
observed CPU utilization or user defined metrics.
WHAT CAN KUBERNETES DO FOR ME?
Discovery
Service is an abstraction which defines a logical set of Pods running somewhere
in your cluster, that all provide the same functionality. Each Service is assigned
a unique IP address (clusterIP). This address is tied to the lifespan of the
Service, and will not change while the Service is alive. Pods can be configured
to talk to the Service, and know that communication to the Service will be
automatically load-balanced out to some pod that is a member of the Service
DNS is a built-in service launched automatically as a cluster add-on allowing
to access the service via the Service’s name. SRV queries can be used to discover
ports if necessary.
Namespaces can provide scoping of ‘environments’ on the same cluster.
WHAT CAN KUBERNETES DO FOR ME?
Configuration
Objects of type Secret are intended to hold sensitive information, such as
passwords, OAuth tokens, and ssh keys. Putting this information in a secret is
safer and more flexible than putting it verbatim in a pod definition or in a
docker image. Secrets can be mounted as data volumes or be exposed as
environment variables to be used by a container in a pod.
ConfigMap resource holds key-value pairs of configuration data that can be
consumed in pods or used to store configuration data for system components
such as controllers. ConfigMap is similar to Secrets, but designed to more
conveniently support working with strings that do not contain sensitive
information.
Similarly to service discovery Namespaces can be used scope configuration to
‘environments’ within cluster.
WHO IS USING KUBERNETES?
HOW TO GET STARTED?
Minikube
A tool that makes it easy to run Kubernetes locally. Minikube runs a single-node
Kubernetes cluster inside a VM on your machine for users looking to try out
Kubernetes or develop with it day-to-day.
Google Container Engine (GKE)
Google provides hosted master for Kubernetes clusters on top of Google
Compute Engine platform.
TERMINOLOGY & ARCHITECTURE
POD
A pod is a group of one or more containers - it is the basic scheduling unit in
Kubernetes.
Pods are always co-located and co-scheduled, and run in a shared context. A pod
models an application-specific “logical host” - it contains one or more
application containers which are relatively tightly coupled — in a pre-container
world, they would have executed on the same physical or virtual machine.
Containers within a pod share an IP address and port space, and can find each
other via localhost.
Users shouldn’t need to create pods directly, but rather use controllers (e.g.,
deployments, replication controller), even for singletons. Controllers provide
self-healing with a cluster scope, as well as replication and rollout management.
REPLICATION CONTROLLER & REPLICATION SET
A replication controller ensures that a specified number of pod “replicas” are
running at any one time. Unlike manually created pods, the pods maintained by
a replication controller are automatically replaced if they fail, get deleted, or are
terminated. You can think of a replication controller as something similar to a
process supervisor, but rather than individual processes on a single node, the
replication controller supervises multiple pods across multiple nodes.
Replica Set is the next-generation Replication Controller. The only difference
between a Replica Set and a Replication Controller right now is the selector
support. Replica Set supports the new set-based selector requirements as
described in the labels user guide whereas a Replication Controller only supports
equality-based selector requirements.
DEPLOYMENTS
A Deployment provides declarative updates for Pods and Replica Sets (the next-
generation Replication Controller). You only need to describe the desired state in
a Deployment object, and the Deployment controller will change the actual state
to the desired state at a controlled rate for you. You can define Deployments to
create new resources, or replace existing ones by new ones.
SERVICES
A Kubernetes Service is an abstraction which defines a logical set of Pods and a
policy by which to access them. The set of Pods targeted by a Service is (usually)
determined by a Label Selector. Kubernetes offers a virtual-IP-based bridge to
Services which redirects to the backend Pods.
ClusterIP — use a cluster-internal IP only - this is the default and means that
you want this service to be reachable only from inside of the cluster.
NodePort — on top of having a cluster-internal IP, expose the service on a port
on each node of the cluster (the same port on each node). You’ll be able to
contact the service on any <NodeIP>:NodePort address.
LoadBalancer — on top of having a cluster-internal IP and exposing service on
a NodePort also, ask the cloud provider for a load balancer which forwards to
the Service exposed as a <NodeIP>:NodePort for each Node.
INGRESS
Typically, services and pods have IP’s only routable by the cluster network. All
traffic that ends up at an edge router is either dropped or forwarded elsewhere.
An Ingress is a collection of rules that allow inbound connections to reach the
cluster services.
Ingress can be configured to give services externally-reachable urls, load
balance traffic, terminate SSL, offer name based virtual hosting etc. An Ingress
controller is responsible for fulfilling the Ingress, usually with a loadbalancer,
though it may also configure your edge router or additional frontends to help
handle the traffic in an HA manner.
Ingress controllers available:
Nginx Ingress Controller
GLBC — Google Compute Engine L7 load balancer controller
DAEMON SETS, JOBS, NODES…
Node — worker machine
Daemon Set — ensures that all (or some) nodes run a copy of a pod.
Job — creates one or more pods and ensures that a specified number of them
successfully terminate. Tracks the successful completions. When a specified
number of successful completions is reached, the job itself is complete.
PersistentVolume (PV) — a piece of networked storage in the cluster that has
been pre provisioned. It is a resource in the cluster just like a node is a cluster
resource.
PersistentVolumeClaim (PVC) — a request for storage.
Pet Set (alpha) — a group of stateful pods that require a stronger notion of
identity. Example workloads would be databases, clustered software etc.
…
CLUSTER FEDERATION
Kubernetes 1.3 makes it possible to discover services running in multiple
clusters, that may span regions and/or cloud providers, to be used by containers
or external clients. This federation can be used for increased HA, geographic
distribution and hybrid/multi-cloud.
Once created, the Federated Service automatically:
•creates matching Services in every cluster underlying your cluster federation,
•monitors the health of those service "shards" (and the clusters in which they
reside)
•manages a set of DNS records in a public DNS provider (like Google Cloud
DNS, or AWS Route 53), thus ensuring that clients of your federated service
can seamlessly locate an appropriate healthy service endpoint at all times, even
in the event of cluster, availability zone or regional outages.
• http://kubernetes.io
• https://twitter.com/kubernetesio
• https://github.com/kubernetes/kubernetes
https://teleport.org
@TeleportInc

More Related Content

What's hot

DevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to KubernetesDevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to Kubernetes
Ronny Trommer
 
Kubernetes: A Short Introduction (2019)
Kubernetes: A Short Introduction (2019)Kubernetes: A Short Introduction (2019)
Kubernetes: A Short Introduction (2019)
Megan O'Keefe
 
Kubernetes PPT.pptx
Kubernetes PPT.pptxKubernetes PPT.pptx
Kubernetes PPT.pptx
ssuser0cc9131
 
Kubernetes: An Introduction to the Open Source Container Orchestration Platform
Kubernetes: An Introduction to the Open Source Container Orchestration PlatformKubernetes: An Introduction to the Open Source Container Orchestration Platform
Kubernetes: An Introduction to the Open Source Container Orchestration Platform
Michael O'Sullivan
 
Kubernetes 101 for Beginners
Kubernetes 101 for BeginnersKubernetes 101 for Beginners
Kubernetes 101 for Beginners
Oktay Esgul
 
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation SlidesKubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
SlideTeam
 
Kubernetes 101 Workshop
Kubernetes 101 WorkshopKubernetes 101 Workshop
Kubernetes for Beginners: An Introductory Guide
Kubernetes for Beginners: An Introductory GuideKubernetes for Beginners: An Introductory Guide
Kubernetes for Beginners: An Introductory Guide
Bytemark
 
Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)
DongHyeon Kim
 
Kubernetes Monitoring & Best Practices
Kubernetes Monitoring & Best PracticesKubernetes Monitoring & Best Practices
Kubernetes Monitoring & Best Practices
Ajeet Singh Raina
 
An Introduction to Kubernetes
An Introduction to KubernetesAn Introduction to Kubernetes
An Introduction to Kubernetes
Imesh Gunaratne
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
Martin Danielsson
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
Paris Apostolopoulos
 
Scaling Microservices with Kubernetes
Scaling Microservices with KubernetesScaling Microservices with Kubernetes
Scaling Microservices with Kubernetes
Deivid Hahn Fração
 
Evolution of containers to kubernetes
Evolution of containers to kubernetesEvolution of containers to kubernetes
Evolution of containers to kubernetes
Krishna-Kumar
 
(Draft) Kubernetes - A Comprehensive Overview
(Draft) Kubernetes - A Comprehensive Overview(Draft) Kubernetes - A Comprehensive Overview
(Draft) Kubernetes - A Comprehensive Overview
Bob Killen
 
Docker and kubernetes_introduction
Docker and kubernetes_introductionDocker and kubernetes_introduction
Docker and kubernetes_introduction
Jason Hu
 
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
Edureka!
 
01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx
TamalBanerjee16
 
DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
EastBanc Tachnologies
 

What's hot (20)

DevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to KubernetesDevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to Kubernetes
 
Kubernetes: A Short Introduction (2019)
Kubernetes: A Short Introduction (2019)Kubernetes: A Short Introduction (2019)
Kubernetes: A Short Introduction (2019)
 
Kubernetes PPT.pptx
Kubernetes PPT.pptxKubernetes PPT.pptx
Kubernetes PPT.pptx
 
Kubernetes: An Introduction to the Open Source Container Orchestration Platform
Kubernetes: An Introduction to the Open Source Container Orchestration PlatformKubernetes: An Introduction to the Open Source Container Orchestration Platform
Kubernetes: An Introduction to the Open Source Container Orchestration Platform
 
Kubernetes 101 for Beginners
Kubernetes 101 for BeginnersKubernetes 101 for Beginners
Kubernetes 101 for Beginners
 
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation SlidesKubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
 
Kubernetes 101 Workshop
Kubernetes 101 WorkshopKubernetes 101 Workshop
Kubernetes 101 Workshop
 
Kubernetes for Beginners: An Introductory Guide
Kubernetes for Beginners: An Introductory GuideKubernetes for Beginners: An Introductory Guide
Kubernetes for Beginners: An Introductory Guide
 
Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)Kubernetes internals (Kubernetes 해부하기)
Kubernetes internals (Kubernetes 해부하기)
 
Kubernetes Monitoring & Best Practices
Kubernetes Monitoring & Best PracticesKubernetes Monitoring & Best Practices
Kubernetes Monitoring & Best Practices
 
An Introduction to Kubernetes
An Introduction to KubernetesAn Introduction to Kubernetes
An Introduction to Kubernetes
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
Scaling Microservices with Kubernetes
Scaling Microservices with KubernetesScaling Microservices with Kubernetes
Scaling Microservices with Kubernetes
 
Evolution of containers to kubernetes
Evolution of containers to kubernetesEvolution of containers to kubernetes
Evolution of containers to kubernetes
 
(Draft) Kubernetes - A Comprehensive Overview
(Draft) Kubernetes - A Comprehensive Overview(Draft) Kubernetes - A Comprehensive Overview
(Draft) Kubernetes - A Comprehensive Overview
 
Docker and kubernetes_introduction
Docker and kubernetes_introductionDocker and kubernetes_introduction
Docker and kubernetes_introduction
 
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
 
01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx
 
DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
 

Viewers also liked

Sf bay area Kubernetes meetup dec8 2016 - deployment models
Sf bay area Kubernetes meetup dec8 2016 - deployment modelsSf bay area Kubernetes meetup dec8 2016 - deployment models
Sf bay area Kubernetes meetup dec8 2016 - deployment models
Peter Ss
 
Docker meets Kubernetes
Docker meets KubernetesDocker meets Kubernetes
Docker meets Kubernetes
loodse
 
Continuous Deployment with Jenkins on Kubernetes
Continuous Deployment with Jenkins on KubernetesContinuous Deployment with Jenkins on Kubernetes
Continuous Deployment with Jenkins on Kubernetes
Matt Baldwin
 
Joyce Gray - Beginner's guide to business information
Joyce Gray - Beginner's guide to business information Joyce Gray - Beginner's guide to business information
Joyce Gray - Beginner's guide to business information
Jane Lambert
 
Kisebbségek 20080327
Kisebbségek 20080327Kisebbségek 20080327
Kisebbségek 20080327somodyb
 
Long Island Goes Red For Women 2008
Long Island Goes Red For Women 2008Long Island Goes Red For Women 2008
Long Island Goes Red For Women 2008
taylormorris
 
Moving Forward: Redesigning UNC's Library Website
Moving Forward: Redesigning UNC's Library WebsiteMoving Forward: Redesigning UNC's Library Website
Moving Forward: Redesigning UNC's Library Website
chaefele
 
Bearcat Search: Implementing Federated Searching at the Newman Library
Bearcat Search: Implementing Federated Searching at the Newman LibraryBearcat Search: Implementing Federated Searching at the Newman Library
Bearcat Search: Implementing Federated Searching at the Newman Library
Newman Library
 
IP Insurance
IP InsuranceIP Insurance
IP Insurance
Jane Lambert
 
Fiche hrst en
Fiche hrst enFiche hrst en
Fiche hrst enriklaunim
 
Low Effort, High Impact Mobile Web Development
Low Effort, High Impact Mobile Web DevelopmentLow Effort, High Impact Mobile Web Development
Low Effort, High Impact Mobile Web Development
chaefele
 
Informatie zoeken in de KHLimmediatheek
Informatie zoeken in de KHLimmediatheekInformatie zoeken in de KHLimmediatheek
Informatie zoeken in de KHLimmediatheekRia Schildermans
 
Library in your pocket
Library in your pocketLibrary in your pocket
Library in your pocket
chaefele
 
New York City Goes Red For Women
New York City Goes Red For WomenNew York City Goes Red For Women
New York City Goes Red For Women
taylormorris
 
Conversion Event - Selling the Unsellable
Conversion Event - Selling the UnsellableConversion Event - Selling the Unsellable
Conversion Event - Selling the Unsellable
Sebastiaan Bode
 
401+Powerpoint[1]
401+Powerpoint[1]401+Powerpoint[1]
401+Powerpoint[1]adusard
 
Atoms, Molecules & Stoichometry (III)
Atoms, Molecules & Stoichometry (III)Atoms, Molecules & Stoichometry (III)
Atoms, Molecules & Stoichometry (III)Bernard Ng
 
Marriage Is Lo
Marriage Is LoMarriage Is Lo
Marriage Is Lo
Joana Beth Tan
 
Toolkit Workshop [V2]
Toolkit Workshop [V2]Toolkit Workshop [V2]
Toolkit Workshop [V2]srenshaw
 
Atomic Structure (III)
Atomic Structure (III)Atomic Structure (III)
Atomic Structure (III)Bernard Ng
 

Viewers also liked (20)

Sf bay area Kubernetes meetup dec8 2016 - deployment models
Sf bay area Kubernetes meetup dec8 2016 - deployment modelsSf bay area Kubernetes meetup dec8 2016 - deployment models
Sf bay area Kubernetes meetup dec8 2016 - deployment models
 
Docker meets Kubernetes
Docker meets KubernetesDocker meets Kubernetes
Docker meets Kubernetes
 
Continuous Deployment with Jenkins on Kubernetes
Continuous Deployment with Jenkins on KubernetesContinuous Deployment with Jenkins on Kubernetes
Continuous Deployment with Jenkins on Kubernetes
 
Joyce Gray - Beginner's guide to business information
Joyce Gray - Beginner's guide to business information Joyce Gray - Beginner's guide to business information
Joyce Gray - Beginner's guide to business information
 
Kisebbségek 20080327
Kisebbségek 20080327Kisebbségek 20080327
Kisebbségek 20080327
 
Long Island Goes Red For Women 2008
Long Island Goes Red For Women 2008Long Island Goes Red For Women 2008
Long Island Goes Red For Women 2008
 
Moving Forward: Redesigning UNC's Library Website
Moving Forward: Redesigning UNC's Library WebsiteMoving Forward: Redesigning UNC's Library Website
Moving Forward: Redesigning UNC's Library Website
 
Bearcat Search: Implementing Federated Searching at the Newman Library
Bearcat Search: Implementing Federated Searching at the Newman LibraryBearcat Search: Implementing Federated Searching at the Newman Library
Bearcat Search: Implementing Federated Searching at the Newman Library
 
IP Insurance
IP InsuranceIP Insurance
IP Insurance
 
Fiche hrst en
Fiche hrst enFiche hrst en
Fiche hrst en
 
Low Effort, High Impact Mobile Web Development
Low Effort, High Impact Mobile Web DevelopmentLow Effort, High Impact Mobile Web Development
Low Effort, High Impact Mobile Web Development
 
Informatie zoeken in de KHLimmediatheek
Informatie zoeken in de KHLimmediatheekInformatie zoeken in de KHLimmediatheek
Informatie zoeken in de KHLimmediatheek
 
Library in your pocket
Library in your pocketLibrary in your pocket
Library in your pocket
 
New York City Goes Red For Women
New York City Goes Red For WomenNew York City Goes Red For Women
New York City Goes Red For Women
 
Conversion Event - Selling the Unsellable
Conversion Event - Selling the UnsellableConversion Event - Selling the Unsellable
Conversion Event - Selling the Unsellable
 
401+Powerpoint[1]
401+Powerpoint[1]401+Powerpoint[1]
401+Powerpoint[1]
 
Atoms, Molecules & Stoichometry (III)
Atoms, Molecules & Stoichometry (III)Atoms, Molecules & Stoichometry (III)
Atoms, Molecules & Stoichometry (III)
 
Marriage Is Lo
Marriage Is LoMarriage Is Lo
Marriage Is Lo
 
Toolkit Workshop [V2]
Toolkit Workshop [V2]Toolkit Workshop [V2]
Toolkit Workshop [V2]
 
Atomic Structure (III)
Atomic Structure (III)Atomic Structure (III)
Atomic Structure (III)
 

Similar to Intro to Kubernetes

Kubernetes From Scratch .pdf
Kubernetes From Scratch .pdfKubernetes From Scratch .pdf
Kubernetes From Scratch .pdf
ssuser9b44c7
 
prodops.io k8s presentation
prodops.io k8s presentationprodops.io k8s presentation
prodops.io k8s presentation
Prodops.io
 
Kubernetes acomprehensiveoverview
Kubernetes acomprehensiveoverviewKubernetes acomprehensiveoverview
Kubernetes acomprehensiveoverview
Ankit Shukla
 
Kubernetes - A Comprehensive Overview
Kubernetes - A Comprehensive OverviewKubernetes - A Comprehensive Overview
Kubernetes - A Comprehensive Overview
Bob Killen
 
Kubernetes a comprehensive overview
Kubernetes   a comprehensive overviewKubernetes   a comprehensive overview
Kubernetes a comprehensive overview
Gabriel Carro
 
A brief study on Kubernetes and its components
A brief study on Kubernetes and its componentsA brief study on Kubernetes and its components
A brief study on Kubernetes and its components
Ramit Surana
 
Container Orchestration using kubernetes
Container Orchestration using kubernetesContainer Orchestration using kubernetes
Container Orchestration using kubernetes
Puneet Kumar Bhatia (MBA, ITIL V3 Certified)
 
Newesis - Introduction to Containers
Newesis -  Introduction to ContainersNewesis -  Introduction to Containers
Newesis - Introduction to Containers
Rauno De Pasquale
 
What is POD and Kubernetes details Like as
What is POD and Kubernetes details Like asWhat is POD and Kubernetes details Like as
What is POD and Kubernetes details Like as
MdTarequlIslam17
 
Getting started with google kubernetes engine
Getting started with google kubernetes engineGetting started with google kubernetes engine
Getting started with google kubernetes engine
Shreya Pohekar
 
Working with kubernetes
Working with kubernetesWorking with kubernetes
Working with kubernetes
Nagaraj Shenoy
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
Vishal Biyani
 
Google Cloud Platform Kubernetes Workshop IYTE
Google Cloud Platform Kubernetes Workshop IYTEGoogle Cloud Platform Kubernetes Workshop IYTE
Google Cloud Platform Kubernetes Workshop IYTE
Gokhan Boranalp
 
Kubernetes Immersion
Kubernetes ImmersionKubernetes Immersion
Kubernetes Immersion
Juan Larriba
 
Kubernetes Architecture with Components
 Kubernetes Architecture with Components Kubernetes Architecture with Components
Kubernetes Architecture with Components
Ajeet Singh
 
Kubernetes presentation
Kubernetes presentationKubernetes presentation
Kubernetes presentation
GauranG Bajpai
 
08 - kubernetes.pptx
08 - kubernetes.pptx08 - kubernetes.pptx
08 - kubernetes.pptx
RanjithM61
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to Kubernetes
Paul Czarkowski
 
Kubernetes
KubernetesKubernetes
Kubernetes
Lhouceine OUHAMZA
 
KubernetesPPT.pptx
KubernetesPPT.pptxKubernetesPPT.pptx
KubernetesPPT.pptx
Ryuzaki360
 

Similar to Intro to Kubernetes (20)

Kubernetes From Scratch .pdf
Kubernetes From Scratch .pdfKubernetes From Scratch .pdf
Kubernetes From Scratch .pdf
 
prodops.io k8s presentation
prodops.io k8s presentationprodops.io k8s presentation
prodops.io k8s presentation
 
Kubernetes acomprehensiveoverview
Kubernetes acomprehensiveoverviewKubernetes acomprehensiveoverview
Kubernetes acomprehensiveoverview
 
Kubernetes - A Comprehensive Overview
Kubernetes - A Comprehensive OverviewKubernetes - A Comprehensive Overview
Kubernetes - A Comprehensive Overview
 
Kubernetes a comprehensive overview
Kubernetes   a comprehensive overviewKubernetes   a comprehensive overview
Kubernetes a comprehensive overview
 
A brief study on Kubernetes and its components
A brief study on Kubernetes and its componentsA brief study on Kubernetes and its components
A brief study on Kubernetes and its components
 
Container Orchestration using kubernetes
Container Orchestration using kubernetesContainer Orchestration using kubernetes
Container Orchestration using kubernetes
 
Newesis - Introduction to Containers
Newesis -  Introduction to ContainersNewesis -  Introduction to Containers
Newesis - Introduction to Containers
 
What is POD and Kubernetes details Like as
What is POD and Kubernetes details Like asWhat is POD and Kubernetes details Like as
What is POD and Kubernetes details Like as
 
Getting started with google kubernetes engine
Getting started with google kubernetes engineGetting started with google kubernetes engine
Getting started with google kubernetes engine
 
Working with kubernetes
Working with kubernetesWorking with kubernetes
Working with kubernetes
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
Google Cloud Platform Kubernetes Workshop IYTE
Google Cloud Platform Kubernetes Workshop IYTEGoogle Cloud Platform Kubernetes Workshop IYTE
Google Cloud Platform Kubernetes Workshop IYTE
 
Kubernetes Immersion
Kubernetes ImmersionKubernetes Immersion
Kubernetes Immersion
 
Kubernetes Architecture with Components
 Kubernetes Architecture with Components Kubernetes Architecture with Components
Kubernetes Architecture with Components
 
Kubernetes presentation
Kubernetes presentationKubernetes presentation
Kubernetes presentation
 
08 - kubernetes.pptx
08 - kubernetes.pptx08 - kubernetes.pptx
08 - kubernetes.pptx
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to Kubernetes
 
Kubernetes
KubernetesKubernetes
Kubernetes
 
KubernetesPPT.pptx
KubernetesPPT.pptxKubernetesPPT.pptx
KubernetesPPT.pptx
 

Recently uploaded

RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
thanhdowork
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Teleport Manpower Consultant
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
Kamal Acharya
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
seandesed
 
Runway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptxRunway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptx
SupreethSP4
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
AmarGB2
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
manasideore6
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
Kamal Acharya
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
WENKENLI1
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
FluxPrime1
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
obonagu
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
Vijay Dialani, PhD
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
AafreenAbuthahir2
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 

Recently uploaded (20)

RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
RAT: Retrieval Augmented Thoughts Elicit Context-Aware Reasoning in Long-Hori...
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
Final project report on grocery store management system..pdf
Final project report on grocery store management system..pdfFinal project report on grocery store management system..pdf
Final project report on grocery store management system..pdf
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Architectural Portfolio Sean Lockwood
Architectural Portfolio Sean LockwoodArchitectural Portfolio Sean Lockwood
Architectural Portfolio Sean Lockwood
 
Runway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptxRunway Orientation Based on the Wind Rose Diagram.pptx
Runway Orientation Based on the Wind Rose Diagram.pptx
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 
Investor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptxInvestor-Presentation-Q1FY2024 investor presentation document.pptx
Investor-Presentation-Q1FY2024 investor presentation document.pptx
 
Fundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptxFundamentals of Electric Drives and its applications.pptx
Fundamentals of Electric Drives and its applications.pptx
 
Student information management system project report ii.pdf
Student information management system project report ii.pdfStudent information management system project report ii.pdf
Student information management system project report ii.pdf
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
 
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
在线办理(ANU毕业证书)澳洲国立大学毕业证录取通知书一模一样
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 

Intro to Kubernetes

  • 2. WHAT IS KUBERNETES? Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications giving you the freedom to take advantage of on-premise, hybrid, or public cloud infrastructure, letting you effortlessly move workloads to where it matters to you. It groups containers that make up an application into logical units for easy management and discovery. Builds on top of Docker containers, but version 1.3 brought support also for rkt and OCI & CNI standards.
  • 3. WHAT CAN KUBERNETES DO FOR ME? Scheduling Automatically places containers based on their resource requirements and other constraints, while not sacrificing availability. Mix critical and best-effort workloads in order to drive up utilization and save even more resources. Ships with default scheduler, but you can build and run your instead of or even simultaneously side-by-side with the default one.
  • 4. WHAT CAN KUBERNETES DO FOR ME? Lifecycle and health A replication controller ensures that a specified number of pod “replicas” are running at any one time. Deployment provides declarative updates for Pods and Replica Sets and updates Pod’s in rolling update fashion (maxUnavailable and maxSurge can be defined to control the process). Kubelet constantly monitors the Docker daemon to confirm the container process is still running, and if not, the container process is restarted. Health Check probes can be defined (livenessProbe & readinessProbe) to run HTTP Health Checks, Container Exec checks or TCP socket checks. Container Lifecycle Hooks are available — PostStart and PreStop. With Horizontal Pod Autoscaling, Kubernetes automatically scales the number of pods in a replication controller, deployment or replica set based on observed CPU utilization or user defined metrics.
  • 5. WHAT CAN KUBERNETES DO FOR ME? Discovery Service is an abstraction which defines a logical set of Pods running somewhere in your cluster, that all provide the same functionality. Each Service is assigned a unique IP address (clusterIP). This address is tied to the lifespan of the Service, and will not change while the Service is alive. Pods can be configured to talk to the Service, and know that communication to the Service will be automatically load-balanced out to some pod that is a member of the Service DNS is a built-in service launched automatically as a cluster add-on allowing to access the service via the Service’s name. SRV queries can be used to discover ports if necessary. Namespaces can provide scoping of ‘environments’ on the same cluster.
  • 6. WHAT CAN KUBERNETES DO FOR ME? Configuration Objects of type Secret are intended to hold sensitive information, such as passwords, OAuth tokens, and ssh keys. Putting this information in a secret is safer and more flexible than putting it verbatim in a pod definition or in a docker image. Secrets can be mounted as data volumes or be exposed as environment variables to be used by a container in a pod. ConfigMap resource holds key-value pairs of configuration data that can be consumed in pods or used to store configuration data for system components such as controllers. ConfigMap is similar to Secrets, but designed to more conveniently support working with strings that do not contain sensitive information. Similarly to service discovery Namespaces can be used scope configuration to ‘environments’ within cluster.
  • 7. WHO IS USING KUBERNETES?
  • 8. HOW TO GET STARTED? Minikube A tool that makes it easy to run Kubernetes locally. Minikube runs a single-node Kubernetes cluster inside a VM on your machine for users looking to try out Kubernetes or develop with it day-to-day. Google Container Engine (GKE) Google provides hosted master for Kubernetes clusters on top of Google Compute Engine platform.
  • 10. POD A pod is a group of one or more containers - it is the basic scheduling unit in Kubernetes. Pods are always co-located and co-scheduled, and run in a shared context. A pod models an application-specific “logical host” - it contains one or more application containers which are relatively tightly coupled — in a pre-container world, they would have executed on the same physical or virtual machine. Containers within a pod share an IP address and port space, and can find each other via localhost. Users shouldn’t need to create pods directly, but rather use controllers (e.g., deployments, replication controller), even for singletons. Controllers provide self-healing with a cluster scope, as well as replication and rollout management.
  • 11.
  • 12. REPLICATION CONTROLLER & REPLICATION SET A replication controller ensures that a specified number of pod “replicas” are running at any one time. Unlike manually created pods, the pods maintained by a replication controller are automatically replaced if they fail, get deleted, or are terminated. You can think of a replication controller as something similar to a process supervisor, but rather than individual processes on a single node, the replication controller supervises multiple pods across multiple nodes. Replica Set is the next-generation Replication Controller. The only difference between a Replica Set and a Replication Controller right now is the selector support. Replica Set supports the new set-based selector requirements as described in the labels user guide whereas a Replication Controller only supports equality-based selector requirements.
  • 13.
  • 14. DEPLOYMENTS A Deployment provides declarative updates for Pods and Replica Sets (the next- generation Replication Controller). You only need to describe the desired state in a Deployment object, and the Deployment controller will change the actual state to the desired state at a controlled rate for you. You can define Deployments to create new resources, or replace existing ones by new ones.
  • 15.
  • 16. SERVICES A Kubernetes Service is an abstraction which defines a logical set of Pods and a policy by which to access them. The set of Pods targeted by a Service is (usually) determined by a Label Selector. Kubernetes offers a virtual-IP-based bridge to Services which redirects to the backend Pods. ClusterIP — use a cluster-internal IP only - this is the default and means that you want this service to be reachable only from inside of the cluster. NodePort — on top of having a cluster-internal IP, expose the service on a port on each node of the cluster (the same port on each node). You’ll be able to contact the service on any <NodeIP>:NodePort address. LoadBalancer — on top of having a cluster-internal IP and exposing service on a NodePort also, ask the cloud provider for a load balancer which forwards to the Service exposed as a <NodeIP>:NodePort for each Node.
  • 17.
  • 18. INGRESS Typically, services and pods have IP’s only routable by the cluster network. All traffic that ends up at an edge router is either dropped or forwarded elsewhere. An Ingress is a collection of rules that allow inbound connections to reach the cluster services. Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. An Ingress controller is responsible for fulfilling the Ingress, usually with a loadbalancer, though it may also configure your edge router or additional frontends to help handle the traffic in an HA manner. Ingress controllers available: Nginx Ingress Controller GLBC — Google Compute Engine L7 load balancer controller
  • 19.
  • 20. DAEMON SETS, JOBS, NODES… Node — worker machine Daemon Set — ensures that all (or some) nodes run a copy of a pod. Job — creates one or more pods and ensures that a specified number of them successfully terminate. Tracks the successful completions. When a specified number of successful completions is reached, the job itself is complete. PersistentVolume (PV) — a piece of networked storage in the cluster that has been pre provisioned. It is a resource in the cluster just like a node is a cluster resource. PersistentVolumeClaim (PVC) — a request for storage. Pet Set (alpha) — a group of stateful pods that require a stronger notion of identity. Example workloads would be databases, clustered software etc. …
  • 21. CLUSTER FEDERATION Kubernetes 1.3 makes it possible to discover services running in multiple clusters, that may span regions and/or cloud providers, to be used by containers or external clients. This federation can be used for increased HA, geographic distribution and hybrid/multi-cloud. Once created, the Federated Service automatically: •creates matching Services in every cluster underlying your cluster federation, •monitors the health of those service "shards" (and the clusters in which they reside) •manages a set of DNS records in a public DNS provider (like Google Cloud DNS, or AWS Route 53), thus ensuring that clients of your federated service can seamlessly locate an appropriate healthy service endpoint at all times, even in the event of cluster, availability zone or regional outages.
  • 22. • http://kubernetes.io • https://twitter.com/kubernetesio • https://github.com/kubernetes/kubernetes