Cross-Platform Hybrid Cloud with Docker

Hybrid Cloud and Docker

ARM and Low-Power Clouds

Our story

$ machine ls
NAME ACTIVE DRIVER STATE URL SWARM
rack-1-node-11 aiyara tcp://192.168.1.11:2376 rack-1-node-12 aiyara tcp://192.168.1.12:2376 rack-1-node-13 * aiyara tcp://192.168.1.13:2376 rack-1-node-14 aiyara tcp://192.168.1.14:2376 rack-1-node-15 aiyara tcp://192.168.1.15:2376
$ machine ls
NAME ACTIVE DRIVER STATE URL SWARM
master * none tcp://127.0.0.1:3376
ocean-1 digitalocean Running
tcp://128.199.108.67:2376
rack-1-node-4 aiyara tcp://192.168.1.4:2376
$ docker $(machine config master --swarm) info
Containers: 2
Strategy: spread
Filters: affinity, health, constraint, port, dependency
Nodes: 2
ocean-1: 128.199.108.67:2376
└ Containers: 1
└ Reserved CPUs: 0 / 1
└ Reserved Memory: 0 B / 514.5 MiB
└ Labels: executiondriver=native-0.2, kernelversion=3.13.0-43-generic, operatingsystem=Ubuntu 14.04.1 LTS, provider=digitalocean, storagedriver=aufs
rack-1-node-4: 192.168.1.4:2376
└ Containers: 1
└ Reserved CPUs: 0 / 2
└ Reserved Memory: 0 B / 2.069 GiB
└ Labels: architecture=arm, executiondriver=native-0.2, kernelversion=3.19.4, operatingsystem=Debian GNU/Linux 7 (wheezy), provider=aiyara, storagedriver=aufs
$ docker $(machine config master --swarm) pull debianrack-1-node-4: Pulling debian:latest...
ocean-1: Pulling debian:latest...
ocean-1: Pulling debian:latest... : downloaded
rack-1-node-4: Pulling debian:latest... : downloaded
$ docker $(machine config master --swarm) run debian uname -aLinux e75d5877493e 3.19.4 #2 SMP Mon Apr 20 02:39:39 ICT 2015 armv7l GNU/Linux$ docker $(machine config master --swarm) run debian uname -aLinux 6d6b9d406f88 3.13.0-43-generic #72-Ubuntu SMP Mon Dec 8 19:35:06 UTC 2014 x86_64 GNU/Linux
$ docker $(machine config master --swarm) ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6d6b9d406f88 debian:latest "uname -a" 14 minutes ago Exited (0) 13 minutes ago ocean-1/focused_leakey
e75d5877493e aiyara/debian:latest.arm "uname -a" 14 minutes ago Exited (0) 14 minutes ago rack-1-node-4/modest_ritchie

A 100-node Cluster

$ machine create  \
-d digitalocean \
--digitalocean-access-token=token \
--digitalocean-region=sgp1 ocean-1
$ cat docker-compose.yml
web:
image: nginx
ports:
- "80:80"
$ docker-compose up -d
$ docker-compose scale web=100

Conclusion

Kubernetes & GitOps for Terraform, DX @weaveworks, Go nut since r57

Love podcasts or audiobooks? Learn on the go with our new app.