devfestmn 2017 - learning docker and kubernetes with openshift

40
LEARNING DOCKER AND KUBERNETES WITH OPENSHIFT A Hands-on Lab Exclusively for DevFestMN Keith Resar Container PaaS Solution Architect February 4th, 2017 @KeithResar [email protected]

Upload: keith-resar

Post on 15-Feb-2017

145 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

LEARNING DOCKER AND KUBERNETES WITH OPENSHIFTA Hands-on Lab Exclusively for DevFestMN

Keith ResarContainer PaaS Solution ArchitectFebruary 4th, 2017

@[email protected]

Page 2: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift
Page 3: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

1: GETTING TO CONTAINERSTHE BASICS, WHERE WE EXPLORE “WHY CONTAINERS?” AND “WHY ORCHESTRATION?”

2: ARCHITECTURE AND DISCOVERY LABDIVE INTO KUBERNETES, OPENSHIFT

3: SOURCE TO IMAGE AND APP LABFROM SOURCE CODE TO RUNNING APP

Page 4: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Keith Resar: BioWear many hats

@KeithResar [email protected]

CoderOpen Source Contributor and Advocate

Infrastructure Architect

Page 5: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

GETTING TO CONTAINERS

Page 6: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

CHALLENGE #1INFRASTRUCTURE LIMITS YOUR

APPS

Page 7: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

KEY TECHNOLOGY TRENDS

Page 8: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

KEY TECHNOLOGY TRENDS

Page 9: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

CONTAINERS MAKE MICROSERVICES COST EFFECTIVE

Page 10: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

CHALLENGE #2CONTAINER MANAGEMENT IS

HARD

Page 11: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

For those of you not in the room, this is where I saved you from

cliche images of container ships in disaster.

You’re Welcome!

Page 12: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

CHALLENGE #2CONTAINER MANAGEMENT IS

HARD

Page 13: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift
Page 14: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Page 15: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Page 16: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

ARCHITECTURE DETAILS

Page 17: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

10,000 foot overview

Page 18: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

OpenShift runs on your choice of infrastructure

Page 19: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Nodes are instances of Linux where apps will run

Page 20: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Apps and components run in containers

Container Image

Container

Pod

Page 21: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Pods are the orchestrated unit in OpenShift

Page 22: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Masters are the Control Plane

Page 23: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

API and Authentication

Page 24: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Desired and Current State

Page 25: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Orchestration and Scheduling

Page 26: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Placement by Policy

Page 27: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Services connect application components

Page 28: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Health and Scaling

Page 29: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

What about unhealthy Pods?

Page 30: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

The Master remediates Pod failures

Page 31: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

What about app data?

Page 32: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Routing layer for external accessibility

Page 33: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Access via Web UI, CLI, IDE, API

Page 34: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

SOURCE TO IMAGE

Page 35: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

Source 2 Image Walk Through

CodeDevelopers can leverage existing

development tools and then access the OpenShift Web, CLI or IDE

interfaces to create new application services and push source code via

GIT. OpenShift can also accept binary deployments or be fully integrated with a customer’s existing CI/CD environment.

Page 36: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

Source 2 Image Walk Through

Container Image Registry

BuildOpenShift automates the Docker image build process with Source-

to-Image (S2I). S2I combines source code with a corresponding Builder image from the integrated Docker registry. Builds can also be triggered manually or automatically

by setting a Git webhook. Add in Build pipelines

Page 37: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

Source 2 Image Walk Through

Container Image Registry

DeployOpenShift automates the deployment of application

containers across multiple Node hosts via the Kubernetes

scheduler. Users can automatically trigger deployments on application

changes and do rollbacks, configure A/B deployments & other

custom deployment types.

Page 38: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

Community CalloutsDOCKER MEETUP

KUBERNETES MEETUP

OPENSHIFT MEETUP

ANSIBLE MEETUP

Page 39: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar

@KeithResar [email protected]

Page 40: DevFestMN 2017 - Learning Docker and Kubernetes with Openshift

@KeithResar