SlideShare ist ein Scribd-Unternehmen logo
1 von 34
1
Kubernetes – Introduction and What’s new in 1.6
By Colwin Fernandes, Co-founder & CTO 27-April-2017
2
Show of hands
• Plan to use containers?
• How many use containers?
• Where do you use containers?
• Development
• Staging
• Production
3
Agenda
• Introduction to Kubernetes features
• A look at Kubernetes Networking and Service Discovery
• New features in Kubernetes 1.6
• Kubernetes Installation options
4
Kubernetes provides orchestration for containers along with
scheduling and service discovery
• Automate the deployment and replication of containers
• Auto scaling of your containers - scale in or out containers on
the fly
• Organize containers in to groups and provide automatic load
balancing between them via Labels
• Easily roll out new versions of application containers and
redirect traffic to the new versions
• Provide container resilience, if a container dies it gets replaced
via Replication Controllers
Kubernetes - Features
5
Kubernetes Architecture
6
• Cluster
• Set of nodes where Kubernetes is installed. Can be baremetal or
VMs
• Pods
• Group of co-located containers representing an application
• Smallest unit that can be scheduled within Kubernetes
• Containers share the same network namespace within a Pod
• Ephemeral not permanent
• Labels
• User defined key/value tags used to attach attributes to Pods
• Used to group pods in to logical groups
• Used by Replication controllers and Services to find Pods
Kubernetes Core Concepts
7
• Scheduler
• Schedules pods to run on nodes
• Global scheduler for long running jobs
• Best fit chosen based on pod requirements
• Pluggable
• Replication Controllers
• Ensure a certain number of Pods are running always
• Replaces pods that die automatically
• Can be used to scale up and down a set of labelled pods
• Services
• Defines a set of Pods and a policy to access them
• Abstraction to allow transparent handling of the ephemeral
nature of the Pods
• Provides auto load balancing over a set of labelled pods
Kubernetes Core Concepts contd -/
8
Replication Controller in Action
9
Replication Controller in Action
10
Replication Controller in Action
11
Replication Controller in Action
12
Services in Action
13
Services in Action
14
Services in Action
15
• Replica Set
• Next generation Replication Controller
• Uses different selector support – Set based
• Mainly used internally with Deployments
• Deployments
• Used to update Pods and Replica Sets
• Can create new resources or update existing resources
• Rate of update can be controlled. So, you get a rolling update
across all your containers
• Allows rolling back of updates, can stop a bad deployment
automatically
Replica Sets and Deployment Sets
16
• Stateful Sets
• Provides a unique identity to pods
• Useful when you need stable network ids, persistent storage
• Ordered deployment scaling and termination
• Pod Identity persists over pod reschedules
• Daemon Sets
• Used to run a pod on all (or some) Nodes
• Primarily used to run storage, log collection or node monitoring
deamons
Stateful Sets and Daemon Sets
17
• Node
• A node is a worker machine in Kubernetes
• May be a VM or physical machine
• Runs the following services
• Container Runtime (Docker, Rkt)
• Kubelet
• Kube-proxy
• Kubernetes Master
• Unified view of the cluster
• Runs API server
• Controllers like Replication, StatefulSet , ReplicaSet, DeamonSet,
Deployment live here
Kubernetes Master and Nodes(Minions)
18
Docker Networking
19
Docker Networking
20
Docker Networking
21
Docker Networking contd -/
22
Docker Networking contd -/
23
Kubernetes Networking
24
• Kubernetes creates Docker Link compatible environment
variables in all Pods
• Containers can use the environment variable to talk to the
service endpoint
Service Discovery – Environment variables
25
• The DNS server watches Kubernetes API for new Services
• The DNS server creates a set of DNS records for each Service
• Services can be resolved by the name within the same
namespace
• Pods in other namespaces can access the Service by adding the
namespace to the DNS path
• my-service.my-namespace
Service Discovery – DNS
26
Kube-Proxy (iptables)
27
Kube-Proxy (iptables)
28
Kube-Proxy (iptables)
29
Kube-Proxy (iptables)
30
• Scale and Federation
• 5000 nodes (150,000 pods)
• etcd v3
• Federation for multiple clusters via kubefed
• Security
• RBAC
• Permissions can be scoped on a per name-space basis
• Control plane components
• Nodes
• Controllers
What’s new in 1.6?
31
• Advanced Scheduling
• Node affinity/anti-affinity
• Taints and tolerations
• Pod affinity/anti affinity
• Multiple schedulers
• Dynamic Storage provisioning
• No need to pre-provision, create and delete on demand
• Default installation of Storage class for AWS, Azure, GCP,
OpenStack and vSphere
• Expanded range of storage, including user-written PV
provisioners
What’s new in 1.6?
32
• Per pod eviction
• In case of node problems combined with tolerationSeconds, lets
users tune the duration a pod stays bound to a node that is
experiencing problems
• Pod Injection Policy
• Adds a new API resource PodPreset to inject information such as
secrets, volumes, volume mounts, and environment variables
into pods at creation time
• Custom Metrics support in the Horizontal Pod Autoscaler
What’s new in 1.6? – Alpha features
33
• Kubeadm
• Ships with Kubernetes
• Assumes machines are up and running
• Integrates with your existing orchestration system
• GCE
• One click ready to use clusters
• Kops
• Fully automated installation
• Uses DNS to identify clusters
• Self-healing: everything runs in Auto-Scaling Groups
• Limited OS support (Debian preferred, Ubuntu 16.04 supported,
early support for CentOS & RHEL)
• High-Availability support
• Can directly provision, or generate terraform manifests
Kubernetes Installation
34
Thank You

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

DevOps with Kubernetes
DevOps with KubernetesDevOps with Kubernetes
DevOps with Kubernetes
 
Intro to Kubernetes
Intro to KubernetesIntro to Kubernetes
Intro to Kubernetes
 
Docker and kubernetes_introduction
Docker and kubernetes_introductionDocker and kubernetes_introduction
Docker and kubernetes_introduction
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Kubernetes - introduction
Kubernetes - introductionKubernetes - introduction
Kubernetes - introduction
 
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
 
virtualization-vs-containerization-paas
virtualization-vs-containerization-paasvirtualization-vs-containerization-paas
virtualization-vs-containerization-paas
 
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
 
Docker Online Meetup: Infrakit update and Q&A
Docker Online Meetup: Infrakit update and Q&ADocker Online Meetup: Infrakit update and Q&A
Docker Online Meetup: Infrakit update and Q&A
 
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
 
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
 
DevOps in AWS with Kubernetes
DevOps in AWS with KubernetesDevOps in AWS with Kubernetes
DevOps in AWS with Kubernetes
 
Docker Madison, Introduction to Kubernetes
Docker Madison, Introduction to KubernetesDocker Madison, Introduction to Kubernetes
Docker Madison, Introduction to Kubernetes
 
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
 
Deep Dive into Kubernetes - Part 2
Deep Dive into Kubernetes - Part 2Deep Dive into Kubernetes - Part 2
Deep Dive into Kubernetes - Part 2
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Docker & kubernetes
Docker & kubernetesDocker & kubernetes
Docker & kubernetes
 
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
 

Ähnlich wie Kubernetes Introduction & Whats new in Kubernetes 1.6

Ähnlich wie Kubernetes Introduction & Whats new in Kubernetes 1.6 (20)

01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx
 
Kubernetes integration with ODL
Kubernetes integration with ODLKubernetes integration with ODL
Kubernetes integration with ODL
 
Kubernetes for Enterprise DevOps
Kubernetes for Enterprise DevOpsKubernetes for Enterprise DevOps
Kubernetes for Enterprise DevOps
 
Elastic Kubernetes Services (EKS)
Elastic Kubernetes Services (EKS)Elastic Kubernetes Services (EKS)
Elastic Kubernetes Services (EKS)
 
Kubernetes overview 101
Kubernetes overview 101Kubernetes overview 101
Kubernetes overview 101
 
Kubernetes Basics - ICP Workshop Batch II
Kubernetes Basics - ICP Workshop Batch IIKubernetes Basics - ICP Workshop Batch II
Kubernetes Basics - ICP Workshop Batch II
 
Kubernetes Internals
Kubernetes InternalsKubernetes Internals
Kubernetes Internals
 
Kubernetes fundamentals
Kubernetes fundamentalsKubernetes fundamentals
Kubernetes fundamentals
 
Demystifying Kubernetes for Enterprise DevOps
Demystifying Kubernetes for Enterprise DevOpsDemystifying Kubernetes for Enterprise DevOps
Demystifying Kubernetes for Enterprise DevOps
 
Kubernetes-Presentation-Syed-Murtaza-Hassan
Kubernetes-Presentation-Syed-Murtaza-HassanKubernetes-Presentation-Syed-Murtaza-Hassan
Kubernetes-Presentation-Syed-Murtaza-Hassan
 
Kubernetes Fundamentals on Azure 2017
Kubernetes Fundamentals on Azure 2017Kubernetes Fundamentals on Azure 2017
Kubernetes Fundamentals on Azure 2017
 
Container Conf 2017: Rancher Kubernetes
Container Conf 2017: Rancher KubernetesContainer Conf 2017: Rancher Kubernetes
Container Conf 2017: Rancher Kubernetes
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Running Production-Grade Kubernetes on AWS
Running Production-Grade Kubernetes on AWSRunning Production-Grade Kubernetes on AWS
Running Production-Grade Kubernetes on AWS
 
DevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to KubernetesDevJam 2019 - Introduction to Kubernetes
DevJam 2019 - Introduction to Kubernetes
 
LISA2017 Kubernetes: Hit the Ground Running
LISA2017 Kubernetes: Hit the Ground RunningLISA2017 Kubernetes: Hit the Ground Running
LISA2017 Kubernetes: Hit the Ground Running
 
Kubernetes overview and Exploitation
Kubernetes overview and ExploitationKubernetes overview and Exploitation
Kubernetes overview and Exploitation
 
Kubernetes intro
Kubernetes introKubernetes intro
Kubernetes intro
 
KuberNETes - meetup
KuberNETes - meetupKuberNETes - meetup
KuberNETes - meetup
 
Setup kubernetes federation between clusters
Setup kubernetes federation between clustersSetup kubernetes federation between clusters
Setup kubernetes federation between clusters
 

Kürzlich hochgeladen

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

Kubernetes Introduction & Whats new in Kubernetes 1.6

  • 1. 1 Kubernetes – Introduction and What’s new in 1.6 By Colwin Fernandes, Co-founder & CTO 27-April-2017
  • 2. 2 Show of hands • Plan to use containers? • How many use containers? • Where do you use containers? • Development • Staging • Production
  • 3. 3 Agenda • Introduction to Kubernetes features • A look at Kubernetes Networking and Service Discovery • New features in Kubernetes 1.6 • Kubernetes Installation options
  • 4. 4 Kubernetes provides orchestration for containers along with scheduling and service discovery • Automate the deployment and replication of containers • Auto scaling of your containers - scale in or out containers on the fly • Organize containers in to groups and provide automatic load balancing between them via Labels • Easily roll out new versions of application containers and redirect traffic to the new versions • Provide container resilience, if a container dies it gets replaced via Replication Controllers Kubernetes - Features
  • 6. 6 • Cluster • Set of nodes where Kubernetes is installed. Can be baremetal or VMs • Pods • Group of co-located containers representing an application • Smallest unit that can be scheduled within Kubernetes • Containers share the same network namespace within a Pod • Ephemeral not permanent • Labels • User defined key/value tags used to attach attributes to Pods • Used to group pods in to logical groups • Used by Replication controllers and Services to find Pods Kubernetes Core Concepts
  • 7. 7 • Scheduler • Schedules pods to run on nodes • Global scheduler for long running jobs • Best fit chosen based on pod requirements • Pluggable • Replication Controllers • Ensure a certain number of Pods are running always • Replaces pods that die automatically • Can be used to scale up and down a set of labelled pods • Services • Defines a set of Pods and a policy to access them • Abstraction to allow transparent handling of the ephemeral nature of the Pods • Provides auto load balancing over a set of labelled pods Kubernetes Core Concepts contd -/
  • 15. 15 • Replica Set • Next generation Replication Controller • Uses different selector support – Set based • Mainly used internally with Deployments • Deployments • Used to update Pods and Replica Sets • Can create new resources or update existing resources • Rate of update can be controlled. So, you get a rolling update across all your containers • Allows rolling back of updates, can stop a bad deployment automatically Replica Sets and Deployment Sets
  • 16. 16 • Stateful Sets • Provides a unique identity to pods • Useful when you need stable network ids, persistent storage • Ordered deployment scaling and termination • Pod Identity persists over pod reschedules • Daemon Sets • Used to run a pod on all (or some) Nodes • Primarily used to run storage, log collection or node monitoring deamons Stateful Sets and Daemon Sets
  • 17. 17 • Node • A node is a worker machine in Kubernetes • May be a VM or physical machine • Runs the following services • Container Runtime (Docker, Rkt) • Kubelet • Kube-proxy • Kubernetes Master • Unified view of the cluster • Runs API server • Controllers like Replication, StatefulSet , ReplicaSet, DeamonSet, Deployment live here Kubernetes Master and Nodes(Minions)
  • 24. 24 • Kubernetes creates Docker Link compatible environment variables in all Pods • Containers can use the environment variable to talk to the service endpoint Service Discovery – Environment variables
  • 25. 25 • The DNS server watches Kubernetes API for new Services • The DNS server creates a set of DNS records for each Service • Services can be resolved by the name within the same namespace • Pods in other namespaces can access the Service by adding the namespace to the DNS path • my-service.my-namespace Service Discovery – DNS
  • 30. 30 • Scale and Federation • 5000 nodes (150,000 pods) • etcd v3 • Federation for multiple clusters via kubefed • Security • RBAC • Permissions can be scoped on a per name-space basis • Control plane components • Nodes • Controllers What’s new in 1.6?
  • 31. 31 • Advanced Scheduling • Node affinity/anti-affinity • Taints and tolerations • Pod affinity/anti affinity • Multiple schedulers • Dynamic Storage provisioning • No need to pre-provision, create and delete on demand • Default installation of Storage class for AWS, Azure, GCP, OpenStack and vSphere • Expanded range of storage, including user-written PV provisioners What’s new in 1.6?
  • 32. 32 • Per pod eviction • In case of node problems combined with tolerationSeconds, lets users tune the duration a pod stays bound to a node that is experiencing problems • Pod Injection Policy • Adds a new API resource PodPreset to inject information such as secrets, volumes, volume mounts, and environment variables into pods at creation time • Custom Metrics support in the Horizontal Pod Autoscaler What’s new in 1.6? – Alpha features
  • 33. 33 • Kubeadm • Ships with Kubernetes • Assumes machines are up and running • Integrates with your existing orchestration system • GCE • One click ready to use clusters • Kops • Fully automated installation • Uses DNS to identify clusters • Self-healing: everything runs in Auto-Scaling Groups • Limited OS support (Debian preferred, Ubuntu 16.04 supported, early support for CentOS & RHEL) • High-Availability support • Can directly provision, or generate terraform manifests Kubernetes Installation