Introduction to Kubernetes

20
September 27, 2016 Introduction to Kubernetes Ross Kukulinski @RossKukulinski

Transcript of Introduction to Kubernetes

September 27, 2016

Introduction to KubernetesRoss Kukulinski

@RossKukulinski

©2016 NodeSource @RossKukulinski

Welcome

2

Ross Kukulinski

Product Manager @ NodeSource

Node.js Evangelism WG

Introduction to CoreOS - O’Reilly Media

©2016 NodeSource @RossKukulinski3

Welcome

Today’s Roadmap • Container Orchestration

• Kubernetes 101

• DEMO FOR THE DEMO GODS

©2016 NodeSource @RossKukulinski4

©2016 NodeSource @RossKukulinski

Container Orchestration

5

©2016 NodeSource @RossKukulinski6

If your architecture looks like this

Manage your containers with Ansible, Docker Swarm, ECS, etc.

©2016 NodeSource @RossKukulinski7

If your architecture looks like this

You need orchestration help

©2016 NodeSource @RossKukulinski8

Orchestration Overview

Container Orchestration • Schedule containers to physical machines

• Restart containers if they stop

• Provide private container network

• Scale up and down

• Service discovery

©2016 NodeSource @RossKukulinski

Kubernetes 101

9

©2016 NodeSource @RossKukulinski

Kubernetes is an open source system for

automating deployment, scaling, and management of containerized applications

Kubernetes 101

10

©2016 NodeSource @RossKukulinski11

Kubernetes 101

Kubernetes Orchestration • Schedules containers to physical machines

• Service discovery & load balancing

• Horizontal application scaling

• Automated rollouts & rollbacks

• Secret and configuration management

• Storage orchestration

• … and a whole lot more!

©2016 NodeSource @RossKukulinski

Kubernetes Nomenclature

12

©2016 NodeSource @RossKukulinski13

Kubernetes 101

Terminology - Nodes • Is a worker machine in Kubernetes

• Node may be a VM or a physical machine

• Each Node has the services necessary to run Pods

©2016 NodeSource @RossKukulinski14

Kubernetes 101

Terminology - Pods • Smallest deployable units of computing

• Group of one or more containers

• Containers within Pod share a cluster-accessible IP address (and localhost)

• Containers within a Pod have access to shared volumes

©2016 NodeSource @RossKukulinski15

Kubernetes 101

Terminology - Replica Sets • Ensures that a specified number of Pod “replicas”

are running at one time

• If there are too many, it will kill some Pods

• If there are too few, it will start more

©2016 NodeSource @RossKukulinski16

Kubernetes 101

Terminology - Deployments • Provides declarative updates for Pods/Replica Sets

• Manages one or more Replica Sets

• Primary mechanism for interacting with Pods!

• Automated rollouts and rollbacks :)

©2016 NodeSource @RossKukulinski17

Kubernetes 101

Terminology - Services • An abstraction which defines a logical set of Pods

• Provides a mechanism for accessing them

• 3 Types: ClusterIP, NodePort, LoadBalancer

©2016 NodeSource @RossKukulinski

Let’s play with Kubernetes right now!

18

©2016 NodeSource @RossKukulinski

github.com/rosskukulinski/docker-philly

19

Thank you.Ross Kukulinski

[email protected]@RossKukulinski