containers - transforming the data centre as we know it 2016

56
Containers Transforming the data center as we know it Keith Lynch UK Head of AppDev [email protected]

Upload: keith-lynch

Post on 06-Apr-2017

205 views

Category:

Software


1 download

TRANSCRIPT

Containers Transforming the data center as we know it

Keith Lynch UK Head of AppDev [email protected]

Agenda

Containers 101 - What are containers

Benefits

Container Managers

Standards

What this all means

Revolutions in IT

3

Speed & Capacity Automation Accessibility Approach

...but we still deliver apps the same way

4

Devs Ops

What Devs see

5

Devs Ops

What Operations see

6

Devs Ops

It is a tightly coupled, linear process

7

Development Operations

Devs and Ops are fundamentally different

8

Devs Ops

Talking at cross purposes

9

Devs Ops

Jar

WAR

EXE

MSI

tar

ZIP

CPU

RAMiSCSI

selinux

nic

vmdk

rpm

The vision becomes compromised

10

Enter: Containers

11

● Container Runtime - Container● Container Packaging - Container Image

What are containers?

12

Hardware

Host OS

LIBS A LIBS B LIBS..

APP A APP B

Hardware

Guest OS

LIBS A

APP A

Hypervisor

Guest OS

LIBS B

APP B

Guest OS

LIBS C

APP C

Hardware

Container

LIBS A

APP A

Host Minimal OS

Container

LIBS B

APP B

Container

LIBS C

APP C

Traditional Virtual Container

Container Runtime

13

selinux, cgroups, lxc, linux namespaces, runc, crio

Container Packaging

14

Docker, rkt, appc, OCI-Image Specification

Containers connect dev to ops

15

Devs Ops

Jar

WAR

EXE

MSI

tar

ZIP

CPU

RAMiSCSI

selinu

x

nic

vmdk

rpm

Devs and Ops start talking a common language

16

Devs Ops

OS

runtime

app

As a developer I want to build a java app on Tomcat 8.0.33

17

As a developer I want to build a java app on Tomcat 8.0.33and i want to do it with containers

18

19

Ops

Creates and approves Base RHEL 7.2 image

Devs

20

Ops

Uses RHEL 7.2 image to build Open JDK 1.8

Devs

RHEL 7.2OSOS

21

OpsDevs

Suggests Open JDK 1.8

21

RHEL 7.2OSOS

22

OpsDevs

RHEL 7.2OS

Approves JDK 1.8 image

RHEL 7.2OS

JDK 1.8JVM

Lang

uage

OS

23

OpsDevs

RHEL 7.2OS

RHEL 7.2OS

JDK 1.8JVM

Lang

uage

OSUses JDK 1.8 image to build Tomcat 8.0.33 Image

24

OpsDevs

RHEL 7.2OS

RHEL 7.2OS

JDK 1.8JVM

Lang

uage

OS

Suggests Tomcat 8.0.33 image

25

OpsDevs

RHEL 7.2OS

Approves Application Image

RHEL 7.2OS

JDK 1.8JVM

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

AS

Imag

eLa

ngua

geO

S

26

Ops

Uses Tomcat image to build MyApp

Devs

RHEL 7.2OS

RHEL 7.2OS

JDK 1.8JVM

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

AS

Imag

eLa

ngua

geO

S

27

OpsDevs

RHEL 7.2OS

RHEL 7.2OS

JDK 1.8JVM

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

AS

Imag

eLa

ngua

geO

S

Suggests App Image

28

OpsDevs

RHEL 7.2OS

RHEL 7.2OS

JDK 1.8JVM

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

AS

Imag

eLa

ngua

geO

S

Suggests App Image after rigorous automated testing of

course

29

OpsDevs

RHEL 7.2OS

Approves image

RHEL 7.2OS

JDK 1.8JVM

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

MyAppAPP

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

App

Imag

eA

S Im

age

Lang

uage

OS

30

Ops

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

MyAppAPP

App

Imag

e

UAT

PROD

QA

31

CI/CD

RHEL 7.2OS

JDK 1.8JVM

TC 8.0.33AS

MyAppAPP

App

Imag

e

UAT

PROD

QA

Enabling a loosely coupled delivery process

32

Development

Operations

Portability

No Recompilation, it worked on my machine

Increased Security + Governance at design and run-time

Increased Density

Ability to automate

Benefits

33

Container Manager

34

Google confidential │ Do not distribute

Google has been developing and using containers to manage their applications for over 10 years.

Images by Connie Zhou

2B launched per week● simplifies management● performance isolation● efficiency

Separation of concerns = operations specialization

• separate infrastructure ops from cluster ops from app ops

• deliver common cluster service

• radically reduced operations overhead

What Google gained...

Deeper automation = fewer bad outcomes

• higher abstraction provides more insight into behavior

• orchestration made far easier

• self-healing and self-managing systems

What Google gained...

Radically better physical efficiency

• containers offer efficient and fine grained resource isolation

• resource aware scheduling

• safer, less intrusive overcommitment

What Google gained...

Integrating containers into enterprise IT

PHYSICAL OR VIRTUAL INFRASTRUCTURE

RED HAT ENTERPRISE LINUX

CONTAINER RUNTIME & PACKAGING

CONTAINER HOST

NETWORKING SECURITYSTORAGE REGISTRY TELEMETRY

CONTAINER ORCHESTRATION CLUSTER SERVICES

MIDDLEWARE + DATA SERVICES SERVICE CATALOG

SELF-SERVICE

APPLICATION LIFECYCLE MANAGEMENT

BUILD AUTOMATION DEPLOYMENT AUTOMATION

PROVISIONING AUTOMATION CONSOLE

CONTAINER CONTAINERCONTAINER CONTAINER CONTAINER • Inspired by Google, built by a community

• Built with support of the people that built Borg and Omega

• Simple, modular, extensible

What about lock-in

41

Kubernetes distributions and support

Open Standards

43

INSERT DESIGNATOR, IF NEEDED44

• Open source project conceived by DotCloud/Docker Inc• Docker, Red Hat, Google and IBM are the top contributors• Fast paced open source project with some politics• Fear of a single vendor lock-in has led to the creation of the Open Container Initiative (OCI)• Red Hat is a major contributor to OCI and wants an industry standard• Provides

• Tools to easily move container images around (Registry)• Tools to easily run Linux Containers (Daemon and Client)• De-facto image format• De-facto registry format

• Relies on other projects to provide• Linux Kernel• Container images• Orchestration• Management• Security

45

INSERT DESIGNATOR, IF NEEDED46

• A common set of tools for cloud native apps shared through a modern, trusted commons• Software and patterns for Container based, Microservices oriented, Programmable

infrastructure• Projects

• Kubernetes• Prometheus

• Emergent standards based on real world USE• Is NOT a ‘Kubernetes foundation’• Areas of interest

• Containers, microservices, programmable infrastructure• CI/CD - Networking - Storage - Logging - Nodes - Services - Monitoring - Visualization

47

What does it all mean

48

Abstracts away infrastructure

What does it mean

49

Abstracts away infrastructure

Divert resources towards innovation and away from keeping the lights on

What does it mean

50

Abstracts away infrastructure

Divert resources towards innovation and away from keeping the lights on

Focus on building what’s of most value to you (your applications)

What does it mean

51

Abstracts away infrastructure

Divert resources towards innovation and away from keeping the lights on

Focus on building what’s of most value to you (your applications)

Move towards a microservices architecture

What does it mean

52

Abstracts away infrastructure

Divert resources towards innovation and away from keeping the lights on

Focus on building what’s of most value to you (your applications)

Move towards a microservices architecture

Follow OCI and CCNF standards to avoid lock in

What does it mean

53

Abstracts away infrastructure

Divert resources towards innovation and away from keeping the lights on

Focus on building what’s of most value to you (your applications)

Move towards a microservices architecture

Follow OCI and CCNF standards to avoid lock in

Standard application delivery format and a platform standard runtime

What does it mean

54

INSERT DESIGNATOR, IF NEEDED55

Links

OpenShift https://www.openshift.com/

OCI https://www.opencontainers.org

CNCF https://cncf.io/

Kubernetes Blog http://blog.kubernetes.io/

Kube Weekly https://kubeweekly.com/

CNCF Presentations https://github.com/cncf/presentations/tree/master/2016-collaboration-summit

This Presentation http://tinyurl.com/hb5nnbp