containers, docker and microservices

42

Upload: gowtham-sadasivam

Post on 13-Jan-2016

71 views

Category:

Documents


2 download

DESCRIPTION

Containers, Docker and Microservices

TRANSCRIPT

Page 1: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 1/61

Page 2: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 2/61

Containers,Docker, and

Microservice

Page 3: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 3/61

Jérôme Petazzoni(@jpetazzo)

Grumpy French DevOps- Go away or I will replace you

with a very small shell script

Runs everything in containers- Docker-in-Docker

- !"-in-Docker

- #M-in-Docker

- $org-in-Docker

- %%%

Page 4: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 4/61

Jérôme Petazzoni(@jpetazzo)

&uilt and scaled dotCloud!''( with )*+ servicesI counted them.- some e/amples0 hosts, nats,

containers, 1uilds, snapshots,

metrics, 1illing, user permissions,in2rastructure management, logs, %%%

Page 5: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 5/61

Page 6: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 6/61

outline

Page 7: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 7/61

Outline

3hy microservices4

3hat5s the challenge4

6ow does Docker help4

Getting started with stacks o2 containers

Page 8: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 8/61

why

microservic

Page 9: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 9/61

What is a microservice architectu

&reak 1ig application down into many small

7/ample0 e-commerce- we1 2ront-end

- catalog o2 products

- inventory8stock management

-shipping calculator

- payment processor

- 1illing8invoicing

- recommendation engine

- user pro2iles

Page 10: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 10/61

Why is this useful?

9se di22erent stacks 2or di22erent services

can 1e seen as 1oth good and 1ad.Replace e%g% re2actor. individual services easervice 1oundary en2orces '!I separation.

Decouples deployment: re;uires less coordin

deploy early, deploy o2ten: more agility.

6elps implementing <e22 &e=os5 >two-pi==a rmany small teams overper2orm a single 1ig

More e22ective >ownership? o2 services

Page 11: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 11/61

what5s the

challenge4

Page 12: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 12/61

Page 13: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 13/61

Issues e ill not  a!!ress to!ay

Fast, e22icient R!C calls

-@eroR!C

- Cap5n !roto

- $MAR!C

- (O'!

-

Dnode- R7(B

- ueues like 'M!., 2or long-running8async operations

Page 14: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 14/61

Issues e ill not  a!!ress to!ay

6ow to 1reak application down in small part

-this is not always easy

- try to get help 2rom people who have already done it

- 1ut0 it helps to achieve a 1etter architecture I promise.

Page 15: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 15/61

Issues e could a!!ress to!ay

Our app is now spread across multiple servic

Bhose services might will. end up on many

(ome o2 those services might will. 1e scale

Conse;uences0- our services will have to discover each other5s location

- we will have to learn a1out load 1alancing

Page 16: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 16/61

Issues e will  a!!ress to!ay

3e5re deploying E microservices instead o2

3e want to 1e a1le to deploy o2ten

O1vious conse;uence0 our deploy process m- it must 1e 2ast

- it must 1e relia1le

-it must 1e automated

Page 17: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 17/61

how does

Docker hel

Page 18: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 18/61

the 1ig

picture

Page 19: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 19/61

"oc#er$s mission

build, ship, and run any application, anywhe

Page 20: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 20/61

%ay a&ain?

&uild0 package your application in a containe

(hip0 move that container 2rom a machine t

Run0 e/ecute that container i%e% your applic

'ny application0 anything that runs on Ainu/

'nywhere0 local M, cloud instance, 1are m

Page 21: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 21/61

1uild

Page 22: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 22/61

"oc#erfile

FROM ubuntu:14.04

MAINTAINER Docker Team <education@docker.

R!N a"t#$et u"dateR!N a"t#$et in%ta&& #' n$in(R!N ec)o *+i, I am in 'our container* -

  u%r%)aren$in()tm&inde(.)tm&

/MD n$in(, #$, daemon o223

E56O7E 80

Page 23: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 23/61

Page 24: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 24/61

ship

Page 25: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 25/61

"oc#er 'u

Image name should 1e username8repo

e%g%0 Hpeta==o8we1docker push

docker pull

Page 26: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 26/61

Page 27: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 27/61

"oc#er 'u

Image name should 1e username8repo

e%g%0 Hpeta==o8we1docker push

docker pull

It5s magic

Page 28: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 28/61

Page 29: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 29/61

run

Page 30: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 30/61

*ecution is fast an! lightweight

Aet5s look at a 2ew 1enchmarks

Page 31: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 31/61

+enchmar#, container creation

9 time docker run ubuntu ec)o )e&&o o

)e&&o or&drea& 0m0.;8%

Disk usage0 less than )** k&

Memory usage0 less than )% M&

Page 32: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 32/61

+enchmar#, infinian!

Page 33: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 33/61

+enchmar#, oot Open%tac# inst

Page 34: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 34/61

+enchmar#, memory spee!

Page 35: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 35/61

Page 36: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 36/61

-et$s start a fe containers

<ust 2or run% 7h, 2or 2un%

Page 37: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 37/61

Page 38: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 38/61

any app

If i -i i ill i "

Page 39: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 39/61

If it runs on -inu*. it ill run in "

3e1 apps

'!I 1ackendsData1ases (A, "o(A.

&ig data

Message ;ueues

'nd more

If it -i it ill i "

Page 40: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 40/61

If it runs on -inu*. it ill run in "

Fire2o/-in-Docker

$org-in-Docker!"-in-Docker

Firewall-in-Docker

Docker-in-Docker

#M-in-Docker

Page 41: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 41/61

Page 42: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 42/61

anywhere

Page 43: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 43/61

anywhere

*Limitations may apply

"oc#er has official support for,

Page 44: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 44/61

"oc#er has official support for,

Intel + 1its /K+L+. code

Recent kernels %K and a1ove.Coming soon0 3indows ContainersI2 you have ;uestions a1out this, ask Micro

/0umors1 say that people also ru

Page 45: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 45/61

/0umors1 say that people also ru

Intel E 1its

'RM E and + 1itsMI!(

!owerK

Older kernels please don5t.

"ote0 the main issue is that the Docker 6u1 renot arch-aware, and images are not compati1

Page 46: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 46/61

CONTAINERSThey're stable they said Stack them they said

Page 47: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 47/61

runningstacks o2containers

Page 48: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 48/61

2irst steps

Page 49: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 49/61

2irst steps

Online tutorial in 1rowser, <( 1ased, =ero in

http088www%docker%com8tryit81ootEdocker E M& universal M image.http0881ootEdocker%io8

(cary install script

curl -s(A https088get%docker%com8 N sh3e have ordinary packages too

'nd most clouds have Docker images

3hec#list

Page 50: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 50/61

3hec#list

Install 1ootEdocker

Run your 2irst container echo hello world.

3rite your 2irst Docker2ile

Create your Docker 6u1 account 2ree.

!ush image to Docker 6u1

(etup automated 1uild

Run your 2irst comple/ app with Fig

Page 51: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 51/61

2i&

Page 52: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 52/61

2i&

Run your stack with one command0 2i$ u"

Descri1e your stack with one 2ile0 2i$.'m&

7/ample0 run a one node. Mesos cluster- Mesos master

- Mesos slave

-olt 2ramework

ma%ter:  ima$e: red=ackme%o%#ma%ter

Page 53: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 53/61

  command: me%o%#ma%ter ##ork>dir?me%o%  "ort%:  # 00:00

%&ae:

  ima$e: red=ackme%o%#%&ae  &ink%:  # ma%ter:ma%ter  command: me%o%#%&ae ##ma%ter?ma%ter:00 ##containerier%?docker  o&ume%:  # %'%2%c$rou":%'%2%c$rou"  # arrundocker.%ock:arrundocker.%ock  # u%rbindocker:bindocker

o&t:  ima$e: o&to&t  &ink%:  # ma%ter:ma%ter  command: ##ma%ter?ma%ter:00  "ort%:  # 8080:8080

Page 54: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 54/61

Page 55: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 55/61

?

Page 56: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 56/61

what5s ne/

Page 57: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 57/61

4!vance! topics

Page 58: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 58/61

4!vance! topics

'll Bhings Docker

http0881log%docker%com8Running your own private registryhttps088githu1%com8docker8docker-registry

Containers and securityhttp088www%slideshare%net8Hpeta==o8docker-linu/-containers-l/c-and-se

https088medium%com8ewindisch8on-the-security-o2-containers-Ec+*22

(ervice discoverylook 2or >am1assador pattern?.

Q 'nd more

Page 59: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 59/61

thank you

;uestions

Woul! 5ou -i#e 6o 7no 8ore?

Page 60: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 60/61

ou ! ou e o o o e

Get in touch on Freenode

docker docker-dev'sk me tricky ;uestions Heromedocker%com

Get your own Docker 6u1 on prem

salesdocker%comFollow us on Bwitterdocker, Hpeta==o

Page 61: Containers, Docker and Microservices

7/18/2019 Containers, Docker and Microservices

http://slidepdf.com/reader/full/containers-docker-and-microservices 61/61