SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
Introduction to Kubernetes
@timothysc
Overview
● Motivation / Mission / Vision
● Architectural Overview
● Operations
● Demo
Assumption: You already
know about Docker &|
have attended the other
meetups or talks. I’m
going to skip Docker.
Kubernetes Motivation
What is kubernetes?
● Greek for “Helmsman”
● Kubernetes is an open source system for managing containerized
applications across multiple hosts, providing basic mechanisms for
deployment, maintenance, and scaling of applications. It’s APIs are
intended to serve as the foundation for an open ecosystem of tools,
automations systems, and higher-level API layers.
● Kubernetes establishes robust declarative primitives for maintaining the
desired state requested by the user. These primitives are the main
value added by Kubernetes.
What’s the motivation for kubernetes?
Develop a set of common declarative primitives
that operators can leverage to build a reliable
micro-service architecture in a composable
manner.
Tools around this core construct “could” provide
additional features, including cluster
management (elasticity ...), federation, etc.
Why?
A part of this is market positioning and commercialization, while the
other part is experience and opinions.
Google has years of experience managing containers at scale
under Borg & Omega. By exposing a subset of these features
targeting specific use cases they present themselves(GCE) as the
defacto cloud provider for running your container workloads to meet
those use cases.
It’s a legit positioning move for the shift from vm’s -> containers.
Why micro-services?
● Breaking down the SILOs
○ State of the Art of Micro-services @adrianco: http://youtu.
be/nMTaS07i3jk
● By cleanly defining the api’s between services and load balancing across
those services, it enables clever deployments
○ 1:64 gets some special UI to test
○ Rolling upgrades
○ Never go down
○ Autoscale only the service that needs it.
● Portability, flexibility, speed of development ....
○ Continuous Deployment [github push -> go build -> Run] O(minutes)
Use Case Example
You are going to create a new super awesome webpage
kittenpicsABC123.com, and you want to make $$$ off of it
with the following requirements:
● Use Containers
● You want to continuously deploy cool new changes
○ advertising changes
● Resilient against multiple failures
● Replicated-layers that are load-balanced
● SOA++
Front End
v1 v1 v1 v1 c1
internet
Mid-Tier
v1 v1 v1 v1 c1
Back-end
v1 v1 v1 v1 c1
kittenpicsABC123.com
Why declarative vs. imperative?
● Common use case patterns immerge, so make them
simple
● Doesn’t require a high level of understanding to get
started, which reduces the barrier to entry.
● Imperative could be used in many non-standard ways
that was never intended, especially if there is state.
● ...
State Space
IaaS
Manage your own
machines
PaaS
Swipe my credit
card and make
my .jar just work
and scale
I consider k8’s as a ⅔ lob towards PaaS.
Kubernetes Architecture
Principles & Concepts
● Design Principles
● Core Concepts
○ Pods & Containers
○ Services
○ Labels
○ Controller(s) - replication controller
○ Selector
● Other Concepts [skip for today]
○ events
Design Principles - thockin’s crib
Declarative
Feedback Control loops : Controller = loop
Simple
Modular
Legacy compatible
Network-centric : IP per pod
Treat machines as Cattle not Pets
Open Source
What is a POD?
A pod (as in a pod of whales or pea pod) correspond to a
collocated group of “containers” with shared volumes. A
pod models an application-specific "logical host" in a
containerized environment. It may contain one or more
containers which are relatively tightly coupled -- in a pre-
container world, they would have executed on the same
physical or virtual host.
Why Pods?
● Pods are tightly coupled.
● Pods facilitate data sharing, and are a group of
containers that are scheduled onto the same host
○ shared mount
○ shared network namespace/IP and port space
○ higher order abstraction to the low level interface
○ Composable micro-services
● Pods abstract the gritty details of container
● Unit of scheduling
What are Services?
Yet
Another
Reuse of
Nomenclature
In-order-to
Confuse
Everyone
pirate speak - (YAR-NICE)
What are Services?
A Kubernetes service is an abstraction which defines a logical set of pods
and a policy by which to access them - sometimes called a micro-service.
The goal of services is to provide a bridge for non-Kubernetes-native
applications to access backends without the need to write code that is
specific to Kubernetes. A service offers clients an IP and port pair which,
when accessed, redirects to the appropriate backends. The set of pods
targetted is determined by a label selector.
It’s a NAT’d load-balanced proxy, whose IPADDR is injected into the
containers that are using that service via an environment variable.
What are Services?
What are Labels?
Labels are key/value pairs that are attached to objects, such as
pods. Labels can be used to organize and to select subsets of
objects. They are created by users at the same time as an object.
Each object can have a set of key/value labels set on it, with at
most one label with a particular key.
"labels": {
"key1" : "value1",
"key2" : "value2"
}
What are Replication Controllers?
A replication controller ensures that a specified number of
pod "replicas" are running at any one time. If there are too
many, it will kill some. If there are too few, it will start more.
As opposed to just creating singleton pods or even creating
pods in bulk, a replication controller replaces pods that are
deleted or terminated for any reason, such as in the case of
node failure.
Replication Controller Use Cases
● Rescheduling
○ Fault tolerant
● Scaling
○ up or down cluster management tools
● Rolling Updates
○ application readiness = ?
● Multiple Release Tracks
○ stable, prod, canary
What is a Selector?
Label selectors permit very simple filtering by label keys and
values. Currently, label selectors only support these forms:
key1
key1 = value11
key1 != value11
key1 in (value11, value12, ...)
key1 not in (value11, value12, ...)
Kubernetes Operations
API Server
Scheduling
KCM (loops)
Kubelet Proxy
Deployment
Master
Minions
cadvisor
Runtime behavior
● apiserver
○ main entry point for *operations
● scheduler
○ matches pods to nodes.
● kube controller manager
○ node controller
■ checks machine + pod health
○ replication controller
■ verifies total count is correct.
○ … (quota)
● kubelet
○ runs pods
● proxy
○ load balancing
Demo

Weitere ähnliche Inhalte

Was ist angesagt?

An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
Neo4j
 

Was ist angesagt? (20)

Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17
 
Scaling Microservices with Kubernetes
Scaling Microservices with KubernetesScaling Microservices with Kubernetes
Scaling Microservices with Kubernetes
 
Containers, Clusters and Kubernetes - Brendan Burns - Defrag 2014
Containers, Clusters and Kubernetes - Brendan Burns - Defrag 2014Containers, Clusters and Kubernetes - Brendan Burns - Defrag 2014
Containers, Clusters and Kubernetes - Brendan Burns - Defrag 2014
 
Kubernetes intro public - kubernetes meetup 4-21-2015
Kubernetes intro   public - kubernetes meetup 4-21-2015Kubernetes intro   public - kubernetes meetup 4-21-2015
Kubernetes intro public - kubernetes meetup 4-21-2015
 
Docker and kubernetes_introduction
Docker and kubernetes_introductionDocker and kubernetes_introduction
Docker and kubernetes_introduction
 
kubernetes for beginners
kubernetes for beginnerskubernetes for beginners
kubernetes for beginners
 
Orchestrating Docker Containers with Google Kubernetes on OpenStack
Orchestrating Docker Containers with Google Kubernetes on OpenStackOrchestrating Docker Containers with Google Kubernetes on OpenStack
Orchestrating Docker Containers with Google Kubernetes on OpenStack
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetes
 
Building Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerBuilding Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and Docker
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
Kubernetes Architecture and Introduction
Kubernetes Architecture and IntroductionKubernetes Architecture and Introduction
Kubernetes Architecture and Introduction
 
Kubernetes in 15 minutes
Kubernetes in 15 minutesKubernetes in 15 minutes
Kubernetes in 15 minutes
 
Planes, Raft, and Pods: A Tour of Distributed Systems Within Kubernetes
Planes, Raft, and Pods: A Tour of Distributed Systems Within KubernetesPlanes, Raft, and Pods: A Tour of Distributed Systems Within Kubernetes
Planes, Raft, and Pods: A Tour of Distributed Systems Within Kubernetes
 
Docker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshopDocker and Kubernetes 101 workshop
Docker and Kubernetes 101 workshop
 
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
An Introduction to Container Organization with Docker Swarm, Kubernetes, Meso...
 
Intro to Kubernetes
Intro to KubernetesIntro to Kubernetes
Intro to Kubernetes
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetes
 
Kubernetes Workshop
Kubernetes WorkshopKubernetes Workshop
Kubernetes Workshop
 
Introduction to Kubernetes Workshop
Introduction to Kubernetes WorkshopIntroduction to Kubernetes Workshop
Introduction to Kubernetes Workshop
 

Andere mochten auch

Andere mochten auch (16)

Kubernetes automation in production
Kubernetes automation in productionKubernetes automation in production
Kubernetes automation in production
 
An Introduction to Kubernetes
An Introduction to KubernetesAn Introduction to Kubernetes
An Introduction to Kubernetes
 
Introduction to kubernetes
Introduction to kubernetesIntroduction to kubernetes
Introduction to kubernetes
 
ContainerDayVietnam2016: Kubernetes State-of-the-art Container Management Pla...
ContainerDayVietnam2016: Kubernetes State-of-the-art Container Management Pla...ContainerDayVietnam2016: Kubernetes State-of-the-art Container Management Pla...
ContainerDayVietnam2016: Kubernetes State-of-the-art Container Management Pla...
 
Introduction to Kubernetes - Docker Global Mentor Week 2016
Introduction to Kubernetes - Docker Global Mentor Week 2016Introduction to Kubernetes - Docker Global Mentor Week 2016
Introduction to Kubernetes - Docker Global Mentor Week 2016
 
Kubernetes community demo march 16 2017
Kubernetes community demo march 16 2017Kubernetes community demo march 16 2017
Kubernetes community demo march 16 2017
 
Docker for the new Era: Introducing Docker,its components and tools
Docker for the new Era: Introducing Docker,its components and toolsDocker for the new Era: Introducing Docker,its components and tools
Docker for the new Era: Introducing Docker,its components and tools
 
DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Scalling development teams using Docker
Scalling development teams using DockerScalling development teams using Docker
Scalling development teams using Docker
 
Kubernetes - Starting with 1.2
Kubernetes  - Starting with 1.2Kubernetes  - Starting with 1.2
Kubernetes - Starting with 1.2
 
Scaling Docker with Kubernetes
Scaling Docker with KubernetesScaling Docker with Kubernetes
Scaling Docker with Kubernetes
 
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes MeetupKubernetes Architecture and Introduction – Paris Kubernetes Meetup
Kubernetes Architecture and Introduction – Paris Kubernetes Meetup
 
Kubernetes Networking
Kubernetes NetworkingKubernetes Networking
Kubernetes Networking
 
From Code to Kubernetes
From Code to KubernetesFrom Code to Kubernetes
From Code to Kubernetes
 
Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.Musings on Mesos: Docker, Kubernetes, and Beyond.
Musings on Mesos: Docker, Kubernetes, and Beyond.
 

Ähnlich wie Docker Madison, Introduction to Kubernetes

Ähnlich wie Docker Madison, Introduction to Kubernetes (20)

Kubernetes - how to orchestrate containers
Kubernetes - how to orchestrate containersKubernetes - how to orchestrate containers
Kubernetes - how to orchestrate containers
 
Kubernetes and CoreOS @ Athens Docker meetup
Kubernetes and CoreOS @ Athens Docker meetupKubernetes and CoreOS @ Athens Docker meetup
Kubernetes and CoreOS @ Athens Docker meetup
 
Containers kuberenetes
Containers kuberenetesContainers kuberenetes
Containers kuberenetes
 
Containers kuberenetes
Containers kuberenetesContainers kuberenetes
Containers kuberenetes
 
DevOps Days Boston 2017: Real-world Kubernetes for DevOps
DevOps Days Boston 2017: Real-world Kubernetes for DevOpsDevOps Days Boston 2017: Real-world Kubernetes for DevOps
DevOps Days Boston 2017: Real-world Kubernetes for DevOps
 
First steps with kubernetes
First steps with kubernetesFirst steps with kubernetes
First steps with kubernetes
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kubernetes
 
Containers kuberenetes
Containers kuberenetesContainers kuberenetes
Containers kuberenetes
 
Free GitOps Workshop
Free GitOps WorkshopFree GitOps Workshop
Free GitOps Workshop
 
Google Cloud Platform Kubernetes Workshop IYTE
Google Cloud Platform Kubernetes Workshop IYTEGoogle Cloud Platform Kubernetes Workshop IYTE
Google Cloud Platform Kubernetes Workshop IYTE
 
prodops.io k8s presentation
prodops.io k8s presentationprodops.io k8s presentation
prodops.io k8s presentation
 
Free GitOps Workshop (with Intro to Kubernetes & GitOps)
Free GitOps Workshop (with Intro to Kubernetes & GitOps)Free GitOps Workshop (with Intro to Kubernetes & GitOps)
Free GitOps Workshop (with Intro to Kubernetes & GitOps)
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
AKS: k8s e azure
AKS: k8s e azureAKS: k8s e azure
AKS: k8s e azure
 
Kubernetes for Beginners: An Introductory Guide
Kubernetes for Beginners: An Introductory GuideKubernetes for Beginners: An Introductory Guide
Kubernetes for Beginners: An Introductory Guide
 
Cloud technology with practical knowledge
Cloud technology with practical knowledgeCloud technology with practical knowledge
Cloud technology with practical knowledge
 
Best online kubernetes course in H2KInfosys.pdf
Best online kubernetes course in H2KInfosys.pdfBest online kubernetes course in H2KInfosys.pdf
Best online kubernetes course in H2KInfosys.pdf
 
Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021
 
Better code, faster with kubernetes in google cloud
Better code, faster with kubernetes in google cloudBetter code, faster with kubernetes in google cloud
Better code, faster with kubernetes in google cloud
 
Kubernetes-Meetup
Kubernetes-MeetupKubernetes-Meetup
Kubernetes-Meetup
 

Kürzlich hochgeladen

( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
nilamkumrai
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
@Chandigarh #call #Girls 9053900678 @Call #Girls in @Punjab 9053900678
 

Kürzlich hochgeladen (20)

(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
 
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
( Pune ) VIP Baner Call Girls 🎗️ 9352988975 Sizzling | Escorts | Girls Are Re...
 
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Pollachi 7001035870 Whatsapp Number, 24/07 Booking
 
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund ⟟ 6297143586 ⟟ Call Me For Genuine Sex Servi...
 
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Connaught Place ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
 
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort ServiceEnjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
Enjoy Night⚡Call Girls Samalka Delhi >༒8448380779 Escort Service
 
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
 
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
VIP Model Call Girls NIBM ( Pune ) Call ON 8005736733 Starting From 5K to 25K...
 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
 
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Prashant Vihar, Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
VVIP Pune Call Girls Sinhagad WhatSapp Number 8005736733 With Elite Staff And...
 
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls DubaiDubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
 
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Rani Bagh Escort Service Delhi N.C.R.
 
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
6.High Profile Call Girls In Punjab +919053900678 Punjab Call GirlHigh Profil...
 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
 

Docker Madison, Introduction to Kubernetes

  • 2. Overview ● Motivation / Mission / Vision ● Architectural Overview ● Operations ● Demo
  • 3. Assumption: You already know about Docker &| have attended the other meetups or talks. I’m going to skip Docker.
  • 5. What is kubernetes? ● Greek for “Helmsman” ● Kubernetes is an open source system for managing containerized applications across multiple hosts, providing basic mechanisms for deployment, maintenance, and scaling of applications. It’s APIs are intended to serve as the foundation for an open ecosystem of tools, automations systems, and higher-level API layers. ● Kubernetes establishes robust declarative primitives for maintaining the desired state requested by the user. These primitives are the main value added by Kubernetes.
  • 6. What’s the motivation for kubernetes? Develop a set of common declarative primitives that operators can leverage to build a reliable micro-service architecture in a composable manner. Tools around this core construct “could” provide additional features, including cluster management (elasticity ...), federation, etc.
  • 7. Why? A part of this is market positioning and commercialization, while the other part is experience and opinions. Google has years of experience managing containers at scale under Borg & Omega. By exposing a subset of these features targeting specific use cases they present themselves(GCE) as the defacto cloud provider for running your container workloads to meet those use cases. It’s a legit positioning move for the shift from vm’s -> containers.
  • 8. Why micro-services? ● Breaking down the SILOs ○ State of the Art of Micro-services @adrianco: http://youtu. be/nMTaS07i3jk ● By cleanly defining the api’s between services and load balancing across those services, it enables clever deployments ○ 1:64 gets some special UI to test ○ Rolling upgrades ○ Never go down ○ Autoscale only the service that needs it. ● Portability, flexibility, speed of development .... ○ Continuous Deployment [github push -> go build -> Run] O(minutes)
  • 9. Use Case Example You are going to create a new super awesome webpage kittenpicsABC123.com, and you want to make $$$ off of it with the following requirements: ● Use Containers ● You want to continuously deploy cool new changes ○ advertising changes ● Resilient against multiple failures ● Replicated-layers that are load-balanced ● SOA++
  • 10. Front End v1 v1 v1 v1 c1 internet Mid-Tier v1 v1 v1 v1 c1 Back-end v1 v1 v1 v1 c1 kittenpicsABC123.com
  • 11. Why declarative vs. imperative? ● Common use case patterns immerge, so make them simple ● Doesn’t require a high level of understanding to get started, which reduces the barrier to entry. ● Imperative could be used in many non-standard ways that was never intended, especially if there is state. ● ...
  • 12. State Space IaaS Manage your own machines PaaS Swipe my credit card and make my .jar just work and scale I consider k8’s as a ⅔ lob towards PaaS.
  • 14. Principles & Concepts ● Design Principles ● Core Concepts ○ Pods & Containers ○ Services ○ Labels ○ Controller(s) - replication controller ○ Selector ● Other Concepts [skip for today] ○ events
  • 15. Design Principles - thockin’s crib Declarative Feedback Control loops : Controller = loop Simple Modular Legacy compatible Network-centric : IP per pod Treat machines as Cattle not Pets Open Source
  • 16.
  • 17. What is a POD? A pod (as in a pod of whales or pea pod) correspond to a collocated group of “containers” with shared volumes. A pod models an application-specific "logical host" in a containerized environment. It may contain one or more containers which are relatively tightly coupled -- in a pre- container world, they would have executed on the same physical or virtual host.
  • 18. Why Pods? ● Pods are tightly coupled. ● Pods facilitate data sharing, and are a group of containers that are scheduled onto the same host ○ shared mount ○ shared network namespace/IP and port space ○ higher order abstraction to the low level interface ○ Composable micro-services ● Pods abstract the gritty details of container ● Unit of scheduling
  • 19. What are Services? Yet Another Reuse of Nomenclature In-order-to Confuse Everyone pirate speak - (YAR-NICE)
  • 20. What are Services? A Kubernetes service is an abstraction which defines a logical set of pods and a policy by which to access them - sometimes called a micro-service. The goal of services is to provide a bridge for non-Kubernetes-native applications to access backends without the need to write code that is specific to Kubernetes. A service offers clients an IP and port pair which, when accessed, redirects to the appropriate backends. The set of pods targetted is determined by a label selector. It’s a NAT’d load-balanced proxy, whose IPADDR is injected into the containers that are using that service via an environment variable.
  • 22. What are Labels? Labels are key/value pairs that are attached to objects, such as pods. Labels can be used to organize and to select subsets of objects. They are created by users at the same time as an object. Each object can have a set of key/value labels set on it, with at most one label with a particular key. "labels": { "key1" : "value1", "key2" : "value2" }
  • 23. What are Replication Controllers? A replication controller ensures that a specified number of pod "replicas" are running at any one time. If there are too many, it will kill some. If there are too few, it will start more. As opposed to just creating singleton pods or even creating pods in bulk, a replication controller replaces pods that are deleted or terminated for any reason, such as in the case of node failure.
  • 24. Replication Controller Use Cases ● Rescheduling ○ Fault tolerant ● Scaling ○ up or down cluster management tools ● Rolling Updates ○ application readiness = ? ● Multiple Release Tracks ○ stable, prod, canary
  • 25. What is a Selector? Label selectors permit very simple filtering by label keys and values. Currently, label selectors only support these forms: key1 key1 = value11 key1 != value11 key1 in (value11, value12, ...) key1 not in (value11, value12, ...)
  • 27. API Server Scheduling KCM (loops) Kubelet Proxy Deployment Master Minions cadvisor
  • 28.
  • 29. Runtime behavior ● apiserver ○ main entry point for *operations ● scheduler ○ matches pods to nodes. ● kube controller manager ○ node controller ■ checks machine + pod health ○ replication controller ■ verifies total count is correct. ○ … (quota) ● kubelet ○ runs pods ● proxy ○ load balancing
  • 30. Demo