Top Banner
The age of orchestration NICOLA PAOLUCCI DEVELOPER INSTIGATOR ATLASSIAN @DURDN From Docker basics to cluster management
42

AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Aug 05, 2015

Download

Technology

Atlassian
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

The age of orchestration

NICOLA PAOLUCCI • DEVELOPER INSTIGATOR • ATLASSIAN • @DURDN

From Docker basics to cluster management

Page 2: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

3 minute intro?

Page 3: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 4: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 5: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Format Interfaces Cache Registry

Page 6: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Where’s on ?

Page 7: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Dockerized Agents

Page 8: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 9: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Docker Task!(since 5.8)

Page 10: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

• Dynamic port mapping• Mount multiple volumes• Set the working directory• Add additional arguments

New in Bamboo 5.9

Page 11: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Official image for

Page 12: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 13: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

What about the other products?

Grab a PM here.

Page 14: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Our internal PaaS, called Micros

Page 15: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

File infrastructure numbers

8Microservices

Page 16: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

File infrastructure numbers

5Containers spun per conversion

Page 17: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

File infrastructure numbers

6 MillionContainers spun per month

Page 18: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 19: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Orchestration is the next arena

Page 20: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

What’s Orchestration?

Page 21: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 22: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 23: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 24: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 25: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Docker’s Own Orchestration

Page 26: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

machine swarmcompose

Page 27: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

• Provision a machine on a PaaS• Pull PostgreSQL and• Stash from the Registry• Use Compose to start the app• Tear down the machine

The plan for the first DEMO

$ docker-machine create -d virtualbox dev

INFO[0000] Downloading boot2docker.iso from... INFO[0001] Creating SSH key... INFO[0001] Creating VirtualBox VM... INFO[0006] Starting VirtualBox VM... INFO[0007] Waiting for VM to start... INFO[0041] "dev" has been created and is now active

Page 28: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 29: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

• “docker-machine create” to provision the host• Edit “docker-compose.yml” to describe our app• “docker-compose up -d” to start our application• “docker-machine rm atlascamp-standalone" to

remove it

Recap of what you saw

$ docker-machine create -d virtualbox dev

INFO[0000] Downloading boot2docker.iso from... INFO[0001] Creating SSH key... INFO[0001] Creating VirtualBox VM... INFO[0006] Starting VirtualBox VM... INFO[0007] Waiting for VM to start... INFO[0041] "dev" has been created and is now active

Page 30: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Docker swarmswarm master

swarm node swarm node swarm node

container

container

container

container

container

container

discovery service

High level architecture

scheduler

Page 31: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

• Strategies• Spread• Binpack• Random

• Filters• Constraint• Affinity• Port• Dependency• Health

Swarm comes with strategies and filters

$ docker run -e \ constraint:instance==database --name db

Page 32: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

• Provision a Docker swarm• Made up of three hosts

• master node• node with 2gb of RAM• simple node

• Use labels to deploy to nodes• Run Stash and PostgreSQL on

different nodes

The plan for the second DEMO

$ docker pull swarm

$ docker run --rm swarm create 6856663cdefdec325839a4b7e1de38e8

Page 33: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 34: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

After Step 1atlascamp-master

atlascamp-1 atlascamp-2

label: java

discovery service

Current Architecture

scheduler

RAM: 2GB

label: database

RAM: 2GB

Page 35: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management
Page 36: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

After Step 2atlascamp-master

atlascamp-1 atlascamp-2

label: java

discovery service

Current Architecture

scheduler

RAM: 2GB

label: database

RAM: 512MB

PostgreSQL

Page 37: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

JIRA at your service

NAME • TITLE • COMPANY • @TWITTERHANDLE

Page 38: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

After Step 3atlascamp-master

atlascamp-1 atlascamp-2

label: java

discovery service

Current Architecture

scheduler

RAM: 2GB

label: database

RAM: 512MB

PostgreSQLStash

Page 39: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Join us for more at the breakout sessions!

Page 40: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Thank you!

NICOLA PAOLUCCI • DEVELOPER INSTIGATOR • ATLASSIAN • @DURDN

@durdn

Page 41: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

Credits

Page 42: AtlasCamp 2015: The age of orchestration: From Docker basics to cluster management

The age of orchestration: from Docker basics to cluster management

Submit your feedback: go.atlassian.com/acdocker