containers - revolutionizing software of all sizes

29
Containers – revolutionizing software of all sizes Rick Osowski, @rosowski MADRID · NOV 27-28 · 2015

Upload: rick-osowski

Post on 11-Jan-2017

409 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Containers - revolutionizing software of all sizes

Containers – revolutionizing software of all sizesRick Osowski, @rosowskiMADRID · NOV 27-28 · 2015

Page 2: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Let’s get to know each other…

20 Questions!!!

Page 3: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

20 Questions…• Who considers themselves a developer?• Who considers themselves a developer manager?• Who considers themselves an ops person?• Who works for a startup? An enterprise?• Who has heard of Docker before?• Who uses Docker now?• Who was at DockerCon?

Page 4: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

What is a container?

What is a container?

Page 5: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Static website

Web frontend

User DBQueue

Analytics DB

Background workersAPI endpoint

nginx 1.5 + modsecurity + openssl + bootstrap 2

postgresql + pgv8 + v8 hadoop + hive + thrift + OpenJDK

Ruby + Rails + sass + Unicorn

Redis + redis-sentinel

Python 3.0 + celery + pyredis + libcurl + ffmpeg + libopencv + nodejs + phantomjs

Python 2.7 + Flask + pyredis + celery + psycopg + postgresql-client

Development VM

QA serverPublic Cloud

Disaster recoveryContributor’s laptop

Production Servers

The Challenge

Production Cluster

Customer Data Center

Page 6: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Cargo Transport Pre-1960

Page 7: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Solution: Intermodal Shipping Container

…in between, can be loaded and unloaded, stacked, transported efficiently over long distances, and transferred from one mode of transport to another

A standard container that is loaded with virtually any goods, and stays sealed until it reaches final delivery.

Page 8: Containers - revolutionizing software of all sizes

© IBM Corporation 8

Page 9: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Static website Web frontend User DB Queue Analytics DB

QA server Public Cloud

Docker is a shipping container system for code

Production Cluster

Customer Data Center

Development VM Contributor’s

laptop

…that can be manipulated using standard operations and run consistently on virtually any hardware platform

An engine that enables any payload to be encapsulated as a lightweight, portable, self-sufficient container…

Page 10: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Why it works — separation of concerns

Oscar the Ops Guy

Worries about what’s “outside” the container• Logging• Remote access• Monitoring• Network config

All containers start, stop, copy, attach, migrate, etc. the same way

Dan the Developer

Worries about what’s “inside” the container• His code• His Libraries• His Package Manager• His Apps• His Data

All Linux servers look the same

Page 11: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Docker ContainersA technical view into the shared and layered file systems technology

Docker uses a copy-on-write (union) filesystemNew files(& edits) are only visible to current/above layers

Layers allow for highly-efficient reuseMore containers per host – higher overall server utilizationFaster start-up/download time – base layers are "cached"

Filesystem

Base OS / Kernel

Fedora Ubuntu

tomcat tomcatliberty

CNTR1 CNTR2 CNTR3 CNTR4

app1 app2 app4app3

Layer

Layer

Layer

Page 12: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Docker MissionDocker is an open platform for building distributed applications for developers and system administrators.

Build Ship Run

Anywhere

Any App

Page 13: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

BUILD

Page 14: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Page 15: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

SHIP

Page 16: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Page 17: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Docker Delivers Innovation, Speed and Savings

Deploys 1,500X a week

“Docker gives us more speed and speed for us is a huge measure of our transformation. Getting value to the customers faster, that’s where Docker helps us.”

CI jobs run over 60% faster

“Docker is a natural fit for us. We wanted testing environments that

we could change easily and Docker handles this for us”

Ships 100X a day

“I love Docker. It’s simple for developers and it works for ops.

There is a really positive emotional connection that

Docker has created with our developer community “

Page 18: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

RUN

Page 19: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

“Over 40% of Docker users are running Docker in production.”

Docker CEO Ben Golub, @golubbe

Page 20: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

So what does this all mean?

Page 21: Containers - revolutionizing software of all sizes

Dockerized Distributed Apps in the Enterprise

E-Commerce Media Life Sciences Finance

Vertical Search IT SaaS IaaS PaaS

Page 22: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

What’s next?

Page 23: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015And many more available at stackshare.io

Architecture from a large entertainment company

Runtimes

Cloud-Native Applications

Page 24: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Runtimes

Cloud-Native ApplicationsArchitecture from a large entertainment company

And many more available at stackshare.io

Page 25: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Moving from monoliths to microservices…

Scaling a monolith Scaling microservices

Container managers:

Kubernetes Mesos / Marathon Fleet

Microservice frameworks:

Yelp’s PaaSTa MANTL.io Weave IBM Bluemix

Page 26: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

How can you get started?o Piece by pieceo Small use caseso Grow with successeso Understand the technology

o Then implement on something that brings value to all your necessary platform components…

Page 27: Containers - revolutionizing software of all sizes

27© IBM Corporation

IBM Containers – A hosted Docker runtime• IBM-managed Docker registry with pre-built Node, Java, and other runtimes• Private Docker Registry for all your containers• GUI & CLI access to manage all your containers• External persistent storage volumes, hosted on Bluemix• Pre-integrated access to 150+ Bluemix services• Hosted deployment pipeline to automate build & deployment• Single container deployments & resilient container groups• Integrated monitoring & logging via managed, multi-tenant ELK stack• Vulnerability Advisor automatically scans your pushed images

Get started at https://bluemix.net

Page 28: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Next Steps / References Docker Docs - https://docs.docker.com/engine/userguide/

Docker Getting Started - https://docs.docker.com/mac/started/

Docker Cheat Sheet - https://github.com/wsargent/docker-cheat-sheet

IBM Containers – https://bluemix.net

Getting Started with IBM Containers – https://ibm.biz/BdHvRi

IBM Containers Labs - https://github.com/osowski/ibm-containers-codemotion

Page 29: Containers - revolutionizing software of all sizes

MADRID · NOV 27-28 · 2015

Gracias!Keep in touch via https://twitter.com/rosowski