SlideShare a Scribd company logo
Docker Swarm
Introduction
Evan Lin @Linker Networks
About Me
● Cloud Architect @ Linker
Networks
● Top 10 Taiwan Golang open
source contributor (github
award)
● Developer, Curator, Blogger
Agenda
● Docker Swarm
● Docker SwarmKit
● Introduction Docker Swarm Mode (Swarm
V2)
● Docker Swarm Mode Features
● Docker Swarm Mode Tutorial
● Q&A
Original Docker
Management multiple docker between
machines
Let’s use Docker Swarm (Tranditional)
Let’s use Docker Swarm (Tranditional)
Architecture
Let’s use Docker Swarm (Tranditional)
Steps
Setup Docker Swarm
● Startup a K/V value server (Consul) keystore
● Create a swarm manager
● Connect swarm manager to the keystore
● Create multiple swarm workers
● Connect swarm worker to keystore
● Swarm worker join to swarm manager
Load balancer ?
● Create a load balancer ...
Step 1:
Startup Keystore
● Create A docker-Machine
○ docker-machine create -d virtualbox
--virtualbox-memory "2000"
--engine-opt="label=com.function=consul"
keystore
● Sync to keystore machine
○ eval $(docker-machine env keystore)
● Run “consul” a K/V server container
○ docker run --restart=unless-stopped -d -p
8500:8500 -h consul progrium/consul
-server -bootstrap
Step 2:
Startup Swarm Manager
● Create docker-machine for swarm manager
○ docker-machine create -d virtualbox
--virtualbox-memory "2000"
--engine-opt="label=com.function=manage
r"
--engine-opt="cluster-store=consul://$(doc
ker-machine ip keystore):8500"
--engine-opt="cluster-advertise=eth1:2376"
manager
● Sync to swarm manager machine
○ eval $(docker-machine env manager)
Step 2:
Startup Swarm Manager
● Start docker swarm
container
○ docker run --restart=unless-stopped -d -p 3376:2375 -v
/var/lib/boot2docker:/certs:ro swarm manage --tlsverify
--tlscacert=/certs/ca.pem --tlscert=/certs/server.pem
--tlskey=/certs/server-key.pem consul://$(docker-machine ip
keystore):8500
Step 3~6:
Startup Swarm Manager
● Start docker swarm worker
○ docker-machine create -d virtualbox --virtualbox-memory "2000"
--engine-opt="label=com.function=frontend01"
--engine-opt="cluster-store=consul://$(docker-machine ip
keystore):8500" --engine-opt="cluster-advertise=eth1:2376"
frontend01
● Sync to fronted01
○ eval $(docker-machine env frontend01)
● Join to Swarm Manager
○ docker run -d swarm join --addr=$(docker-machine ip
frontend01):2376 consul://$(docker-machine ip keystore):8500
Step 7:
Startup Load Balancer
● Start docker swarm worker
○ docker-machine create -d virtualbox --virtualbox-memory "2000"
--engine-opt="label=com.function=interlock" loadbalancer
● Download “Interlock” and setup
○ git clone https://github.com/ehazlett/interlock.git
○ cd config
○ Fill with `config.toml` ...
● Run Load Balancer “Interlock”
○ docker run -P -d -ti -v nginx:/etc/conf -v
/var/lib/boot2docker:/var/lib/boot2docker:ro -v
/var/run/docker.sock:/var/run/docker.sock -v
$(pwd)/config.toml:/etc/config.toml --name interlock
ehazlett/interlock:1.0.1 -D run -c /etc/config.toml
I can do this “ALL DAY”
SwarmKit
Different with Docker Swarm
● Where is “Consul” ?
○ The K/V DB already built-in in
Swarm Kit
● More security communication.
○ It default support TLS
● What is Raft Consensus ?
○ For data consistentcy and election
node if master is down.
SwarmKit
Master
● Build SwarmKit binaries
○ git clone
https://github.com/docker/swarmkit.git
○ cd swarmkit
○ make setup
○ make all
● Run Swarm manager
○ swarmd -d /tmp/node-1
--listen-control-api
/tmp/manager1/swarm.sock
--hostname node-1
SwarmKit
Master
● Sync swarm socket
○ export
SWARM_SOCKET=/tmp/manager1/
swarm.sock
● Check Swarm master
○ swarmctl cluster inspect default
SwarmKit
Agent
● Run Swarm Agent (worker)
○ swarmd -d /tmp/node-2 --hostname node-2
--join-addr 127.0.0.1:4242 --join-token
SWMTKN-1-1wttj6u10f9fueptptma9ohf99zcxt0gia1
wt3a5odphi6nt1f-c4y428p7wwr23efwo4xw6qiwz
○ swarmd -d /tmp/node-3 --hostname node-3
--join-addr 127.0.0.1:4242 --join-token
SWMTKN-1-1wttj6u10f9fueptptma9ohf99zcxt0gia1
wt3a5odphi6nt1f-c4y428p7wwr23efwo4xw6qiwz
● Check node status
○ swarmctl node ls
Complete SwarmKit setup
SwarmKit
Create A Service
● Create a Swarm Kit service
○ swarmctl service create --name redis
--image redis:3.0.5
● Make sure service status
○ swarmctl node ls
SwarmKit
Create A Service
● Create a Swarm Kit service
○ swarmctl service create --name redis
--image redis:3.0.5
● Make sure service status
○ swarmctl service ls
● Check detail of service
○ swarmctl service inspect redis
SwarmKit
Scale Your Service
● Scale Swarm Kit service
○ swarmctl service update redis
--replicas 6
● Make sure service status
○ swarmctl service ls
○ swarmctl service ls
SwarmKit
Scale Your Service
● Inspect service detail
○ swarmctl service inspect redis
SwarmKit
Update Service
● Update service directly
○ swarmctl service update redis
--image redis:3.0.6
SwarmKit
Rolling Update
● Update two services every 10 seconds
○ swarmctl service update redis
--image redis:3.0.7
--update-parallelism 2
--update-delay 10s
SwarmKit
Drain Node
● Stop node 1
○ swarmctl node drain node-1
● Docker Swarm Mode ( Swarm
version 2)
● New feature from Docker Engine
1.12
● Powerful and more security
Docker Swarm Mode
Different between
Docker Swarm, SwarmKit and Swarm V2
Docker Swarm SwarmKit Swarm Mode (v2)
Docker Version All All >= 1.12
K/V DB Need extra one Built-In Built-In
Extra Binaries No
Yes
(Use Go 1.6)
No
Security None Built-In Built-In
Extra Service None None
Routing Mesh
Load Balance
Support Docker
Compose,
Docker-Machine
Yes Yes
No
(for now)
Docker Swarm Mode Tutorial - Vote App
Docker Swarm Mode:
● Create three docker machine
○ docker-machine create --driver
virtualbox v1
○ docker-machine create --driver
virtualbox v2
○ docker-machine create --driver
virtualbox v3
V1
192.168.99.100
V2
192.168.99.101
V3
192.168.99.102
Docker Swarm Mode:
● Connect to V1 node
○ docker-machine ssh v1
○ ifconfig
● Init docker swarm manager
○ docker swarm init --listen-addr
192.168.99.100:2377
--advertise-addr 192.168.99.100
V1
192.168.99.100
V2
192.168.99.101
V3
192.168.99.102
Docker Swarm Mode:
● Connect to V2, V3 node
○ docker-machine ssh v2
○ docker-machine ssh v3
● Init docker swarm worker
○ docker swarm join --token
SWMTKN-1-62q9gzw8uc43fbv7n79
h7lsnmc6j2tqpzb4qy2osurxufxz87u-
97v5wplu0dvit5ssveo5da2h6
192.168.99.100:2377
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
Docker Swarm Mode:
● Check current node status
○ docker-machine ssh v1
○ docker node ls
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
Docker Swarm Mode: All setup is
done
Docker Swarm Mode:
● Connect to Swarm Manager create
service “vote”
○ docker-machine ssh v1
○ docker service create --name vote -p
8080:80 instavote/vote
● Check detail of this service
○ docker service ls
● Check which node run this service
○ docker service ps vote
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
instavote/
vote
Docker Swarm Mode:
● Scale “vote” service to 3
○ docker service scale vote=2
● Check detail of this service
○ docker service ls
● Check which node run this service
○ docker service ps vote
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
instavote/
vote
instavote/
vote
Random
Load Balacncer
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
instavote/
vote
instavote/
vote
Client
LB
Docker Swarm Mode:
● Scale “vote” service from 2 to 3
○ docker service scale vote=3
● Check detail of this service
○ docker service ls
● Check which node run this service
○ docker service ps vote
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
instavote/
vote
instavote/
vote
instavote/
vote
Docker Swarm Mode:
● Service update (Immediately)
○ docker service update --image
instavote/vote:movies vote
● Check detail of this service
○ docker service ls
● Check which node run this service
○ docker service ps vote
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
instavote/
vote:
movies
instavote/
vote:
movies
instavote/
vote:
movies
Docker Swarm Mode:
● Service update (Rolling Update)
○ docker service update vote --image
instavote/vote:indent
--update-parallelism 1
--update-delay 10s
● Check detail of this service
○ docker service ls
● Check which node run this service
○ docker service ps vote
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
instavote/
vote:
indent
instavote/
vote:
indent
instavote/
vote:
indent
Docker Swarm Mode:
● Global Services
○ docker service create --mode=global --name prometheus
prom/prometheus
● Check detail of this service
○ docker service ls
● Check which node run this service
○ docker service ps prometheus
V1
(Manager)
192.168.99.100
V2
(Worker)
192.168.99.101
V3
(Worker)
192.168.99.102
instavote/
vote:
indent
instavote/
vote:
indent
instavote/
vote:
indent
prometheus
prometheus
prometheus
Different between Docker Swarm, SwarmKit
and Swarm V2
Docker Swarm SwarmKit Swarm Mode (v2)
Docker Version All All >= 1.12
K/V DB Need extra one Built-In Built-In
Extra Binaries No
Yes
(Use Go 1.6)
No
Security None Built-In Built-In
Extra Service None None
Routing Mesh
Load Balance
Support Docker
Compose,
Docker-Machine
Yes Yes
No
(for now)
Q&A

More Related Content

What's hot

Kubernetes Architecture and Introduction
Kubernetes Architecture and IntroductionKubernetes Architecture and Introduction
Kubernetes Architecture and Introduction
Stefan Schimanski
 
Docker
DockerDocker
Containers 101
Containers 101Containers 101
Containers 101
Black Duck by Synopsys
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
Martin Danielsson
 
Docker Containers Deep Dive
Docker Containers Deep DiveDocker Containers Deep Dive
Docker Containers Deep Dive
Will Kinard
 
Introduction to Docker Compose
Introduction to Docker ComposeIntroduction to Docker Compose
Introduction to Docker Compose
Ajeet Singh Raina
 
Introduction to container based virtualization with docker
Introduction to container based virtualization with dockerIntroduction to container based virtualization with docker
Introduction to container based virtualization with docker
Bangladesh Network Operators Group
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
Aditya Konarde
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
Peng Xiao
 
Evolution of containers to kubernetes
Evolution of containers to kubernetesEvolution of containers to kubernetes
Evolution of containers to kubernetes
Krishna-Kumar
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
Peng Xiao
 
Kubernetes - introduction
Kubernetes - introductionKubernetes - introduction
Kubernetes - introduction
Sparkbit
 
Helm intro
Helm introHelm intro
Why Docker
Why DockerWhy Docker
Why DockerdotCloud
 
Docker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and ContainersDocker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and Containers
Yajushi Srivastava
 
Kubernetes Architecture
 Kubernetes Architecture Kubernetes Architecture
Kubernetes Architecture
Knoldus Inc.
 
Introduction to helm
Introduction to helmIntroduction to helm
Introduction to helm
Jeeva Chelladhurai
 
Multi Stage Docker Build
Multi Stage Docker Build Multi Stage Docker Build
Multi Stage Docker Build
Prasenjit Sarkar
 
쿠버네티스 ( Kubernetes ) 소개 자료
쿠버네티스 ( Kubernetes ) 소개 자료쿠버네티스 ( Kubernetes ) 소개 자료
쿠버네티스 ( Kubernetes ) 소개 자료
Opennaru, inc.
 
Dockers and kubernetes
Dockers and kubernetesDockers and kubernetes
Dockers and kubernetes
Dr Ganesh Iyer
 

What's hot (20)

Kubernetes Architecture and Introduction
Kubernetes Architecture and IntroductionKubernetes Architecture and Introduction
Kubernetes Architecture and Introduction
 
Docker
DockerDocker
Docker
 
Containers 101
Containers 101Containers 101
Containers 101
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Docker Containers Deep Dive
Docker Containers Deep DiveDocker Containers Deep Dive
Docker Containers Deep Dive
 
Introduction to Docker Compose
Introduction to Docker ComposeIntroduction to Docker Compose
Introduction to Docker Compose
 
Introduction to container based virtualization with docker
Introduction to container based virtualization with dockerIntroduction to container based virtualization with docker
Introduction to container based virtualization with docker
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Evolution of containers to kubernetes
Evolution of containers to kubernetesEvolution of containers to kubernetes
Evolution of containers to kubernetes
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Kubernetes - introduction
Kubernetes - introductionKubernetes - introduction
Kubernetes - introduction
 
Helm intro
Helm introHelm intro
Helm intro
 
Why Docker
Why DockerWhy Docker
Why Docker
 
Docker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and ContainersDocker 101 : Introduction to Docker and Containers
Docker 101 : Introduction to Docker and Containers
 
Kubernetes Architecture
 Kubernetes Architecture Kubernetes Architecture
Kubernetes Architecture
 
Introduction to helm
Introduction to helmIntroduction to helm
Introduction to helm
 
Multi Stage Docker Build
Multi Stage Docker Build Multi Stage Docker Build
Multi Stage Docker Build
 
쿠버네티스 ( Kubernetes ) 소개 자료
쿠버네티스 ( Kubernetes ) 소개 자료쿠버네티스 ( Kubernetes ) 소개 자료
쿠버네티스 ( Kubernetes ) 소개 자료
 
Dockers and kubernetes
Dockers and kubernetesDockers and kubernetes
Dockers and kubernetes
 

Viewers also liked

Modern Web 2016: Using Golang to build a smart IM Bot
Modern Web 2016: Using Golang to build a smart IM Bot Modern Web 2016: Using Golang to build a smart IM Bot
Modern Web 2016: Using Golang to build a smart IM Bot
Evan Lin
 
Advanced ETL2 Pentaho
Advanced ETL2  Pentaho Advanced ETL2  Pentaho
Advanced ETL2 Pentaho Sunny U Okoro
 
Elementos ETL - Kettle Pentaho
Elementos ETL - Kettle Pentaho Elementos ETL - Kettle Pentaho
Elementos ETL - Kettle Pentaho valex_haro
 
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) ItalyClustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Giovanni Toraldo
 
Scaling Jenkins with Docker and Kubernetes
Scaling Jenkins with Docker and KubernetesScaling Jenkins with Docker and Kubernetes
Scaling Jenkins with Docker and Kubernetes
Carlos Sanchez
 
Jenkins Peru Meetup Docker Ecosystem
Jenkins Peru Meetup Docker EcosystemJenkins Peru Meetup Docker Ecosystem
Jenkins Peru Meetup Docker Ecosystem
Mario IC
 
Pentaho | Data Integration & Report designer
Pentaho | Data Integration & Report designerPentaho | Data Integration & Report designer
Pentaho | Data Integration & Report designer
Hamdi Hmidi
 
Migración de datos con OpenERP-Kettle
Migración de datos con OpenERP-KettleMigración de datos con OpenERP-Kettle
Migración de datos con OpenERP-Kettle
raimonesteve
 
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, RegistryDocker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Mario IC
 
Introduction to docker swarm
Introduction to docker swarmIntroduction to docker swarm
Introduction to docker swarm
Walid Ashraf
 
Docker Ecosystem - Part II - Compose
Docker Ecosystem - Part II - ComposeDocker Ecosystem - Part II - Compose
Docker Ecosystem - Part II - Compose
Mario IC
 
NGINX Plus PLATFORM For Flawless Application Delivery
NGINX Plus PLATFORM For Flawless Application DeliveryNGINX Plus PLATFORM For Flawless Application Delivery
NGINX Plus PLATFORM For Flawless Application Delivery
Ashnikbiz
 
Building Data Integration and Transformations using Pentaho
Building Data Integration and Transformations using PentahoBuilding Data Integration and Transformations using Pentaho
Building Data Integration and Transformations using Pentaho
Ashnikbiz
 
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Puppet
 
Business Intelligence and Big Data Analytics with Pentaho
Business Intelligence and Big Data Analytics with Pentaho Business Intelligence and Big Data Analytics with Pentaho
Business Intelligence and Big Data Analytics with Pentaho
Uday Kothari
 
Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?
Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?
Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?
Carlos Sanchez
 
Indic threads pune12-accelerating computation in html 5
Indic threads pune12-accelerating computation in html 5Indic threads pune12-accelerating computation in html 5
Indic threads pune12-accelerating computation in html 5
IndicThreads
 
Building a data warehouse with Pentaho and Docker
Building a data warehouse with Pentaho and DockerBuilding a data warehouse with Pentaho and Docker
Building a data warehouse with Pentaho and Docker
Wellington Marinho
 

Viewers also liked (20)

Modern Web 2016: Using Golang to build a smart IM Bot
Modern Web 2016: Using Golang to build a smart IM Bot Modern Web 2016: Using Golang to build a smart IM Bot
Modern Web 2016: Using Golang to build a smart IM Bot
 
Advanced ETL2 Pentaho
Advanced ETL2  Pentaho Advanced ETL2  Pentaho
Advanced ETL2 Pentaho
 
Elementos ETL - Kettle Pentaho
Elementos ETL - Kettle Pentaho Elementos ETL - Kettle Pentaho
Elementos ETL - Kettle Pentaho
 
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) ItalyClustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
Clustering with Docker Swarm - Dockerops 2016 @ Cento (FE) Italy
 
Scaling Jenkins with Docker and Kubernetes
Scaling Jenkins with Docker and KubernetesScaling Jenkins with Docker and Kubernetes
Scaling Jenkins with Docker and Kubernetes
 
Jenkins Peru Meetup Docker Ecosystem
Jenkins Peru Meetup Docker EcosystemJenkins Peru Meetup Docker Ecosystem
Jenkins Peru Meetup Docker Ecosystem
 
Pentaho | Data Integration & Report designer
Pentaho | Data Integration & Report designerPentaho | Data Integration & Report designer
Pentaho | Data Integration & Report designer
 
Tao zhang
Tao zhangTao zhang
Tao zhang
 
Migración de datos con OpenERP-Kettle
Migración de datos con OpenERP-KettleMigración de datos con OpenERP-Kettle
Migración de datos con OpenERP-Kettle
 
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, RegistryDocker Ecosystem: Engine, Compose, Machine, Swarm, Registry
Docker Ecosystem: Engine, Compose, Machine, Swarm, Registry
 
Introduction to docker swarm
Introduction to docker swarmIntroduction to docker swarm
Introduction to docker swarm
 
Docker Ecosystem - Part II - Compose
Docker Ecosystem - Part II - ComposeDocker Ecosystem - Part II - Compose
Docker Ecosystem - Part II - Compose
 
NGINX Plus PLATFORM For Flawless Application Delivery
NGINX Plus PLATFORM For Flawless Application DeliveryNGINX Plus PLATFORM For Flawless Application Delivery
NGINX Plus PLATFORM For Flawless Application Delivery
 
Building Data Integration and Transformations using Pentaho
Building Data Integration and Transformations using PentahoBuilding Data Integration and Transformations using Pentaho
Building Data Integration and Transformations using Pentaho
 
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
 
Business Intelligence and Big Data Analytics with Pentaho
Business Intelligence and Big Data Analytics with Pentaho Business Intelligence and Big Data Analytics with Pentaho
Business Intelligence and Big Data Analytics with Pentaho
 
Introduction to GPU Programming
Introduction to GPU ProgrammingIntroduction to GPU Programming
Introduction to GPU Programming
 
Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?
Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?
Scaling Jenkins with Docker: Swarm, Kubernetes or Mesos?
 
Indic threads pune12-accelerating computation in html 5
Indic threads pune12-accelerating computation in html 5Indic threads pune12-accelerating computation in html 5
Indic threads pune12-accelerating computation in html 5
 
Building a data warehouse with Pentaho and Docker
Building a data warehouse with Pentaho and DockerBuilding a data warehouse with Pentaho and Docker
Building a data warehouse with Pentaho and Docker
 

Similar to Docker swarm introduction

Swarm: Native Docker Clustering
Swarm: Native Docker ClusteringSwarm: Native Docker Clustering
Swarm: Native Docker Clustering
Royee Tager
 
Docker-machine
Docker-machineDocker-machine
Docker-machine
Sabyrzhan Tynybayev
 
Docker 1.12 and swarm mode
Docker 1.12 and swarm modeDocker 1.12 and swarm mode
Docker 1.12 and swarm mode
Wesley Charles Blake
 
Clustering Docker with Docker Swarm on openSUSE
Clustering Docker with Docker Swarm on openSUSEClustering Docker with Docker Swarm on openSUSE
Clustering Docker with Docker Swarm on openSUSE
Saputro Aryulianto
 
OSDC 2019 | Evolution of a Microservice-Infrastructure by Jan Martens
OSDC 2019 | Evolution of a Microservice-Infrastructure by Jan MartensOSDC 2019 | Evolution of a Microservice-Infrastructure by Jan Martens
OSDC 2019 | Evolution of a Microservice-Infrastructure by Jan Martens
NETWAYS
 
Docker HK Meetup - 201707
Docker HK Meetup - 201707Docker HK Meetup - 201707
Docker HK Meetup - 201707
Clarence Ho
 
Docker cluster with swarm, consul, registrator and consul-template
Docker cluster with swarm, consul, registrator and consul-templateDocker cluster with swarm, consul, registrator and consul-template
Docker cluster with swarm, consul, registrator and consul-template
Julien Maitrehenry
 
What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16
What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16 What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16
What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16
Docker, Inc.
 
What’s new in Swarm 1.1
What’s new in Swarm 1.1What’s new in Swarm 1.1
What’s new in Swarm 1.1
k z
 
Docker 進階實務班
Docker 進階實務班Docker 進階實務班
Docker 進階實務班
Philip Zheng
 
廣宣學堂: 容器進階實務 - Docker進深研究班
廣宣學堂: 容器進階實務 - Docker進深研究班廣宣學堂: 容器進階實務 - Docker進深研究班
廣宣學堂: 容器進階實務 - Docker進深研究班
Paul Chao
 
Swarm mode
Swarm modeSwarm mode
Swarm mode
Dharmit Shah
 
Introduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxDataIntroduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxData
InfluxData
 
Scala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camouScala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camou
J On The Beach
 
Docker
DockerDocker
Docker Essentials Workshop— Innovation Labs July 2020
Docker Essentials Workshop— Innovation Labs July 2020Docker Essentials Workshop— Innovation Labs July 2020
Docker Essentials Workshop— Innovation Labs July 2020
CloudHero
 
DockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing AureaDockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing Aurea
Łukasz Piątkowski
 
Perspectives on Docker
Perspectives on DockerPerspectives on Docker
Perspectives on Docker
RightScale
 
Making kubernetes simple for developers
Making kubernetes simple for developersMaking kubernetes simple for developers
Making kubernetes simple for developers
Suraj Deshmukh
 
Building Bizweb Microservices with Docker
Building Bizweb Microservices with DockerBuilding Bizweb Microservices with Docker
Building Bizweb Microservices with Docker
Khôi Nguyễn Minh
 

Similar to Docker swarm introduction (20)

Swarm: Native Docker Clustering
Swarm: Native Docker ClusteringSwarm: Native Docker Clustering
Swarm: Native Docker Clustering
 
Docker-machine
Docker-machineDocker-machine
Docker-machine
 
Docker 1.12 and swarm mode
Docker 1.12 and swarm modeDocker 1.12 and swarm mode
Docker 1.12 and swarm mode
 
Clustering Docker with Docker Swarm on openSUSE
Clustering Docker with Docker Swarm on openSUSEClustering Docker with Docker Swarm on openSUSE
Clustering Docker with Docker Swarm on openSUSE
 
OSDC 2019 | Evolution of a Microservice-Infrastructure by Jan Martens
OSDC 2019 | Evolution of a Microservice-Infrastructure by Jan MartensOSDC 2019 | Evolution of a Microservice-Infrastructure by Jan Martens
OSDC 2019 | Evolution of a Microservice-Infrastructure by Jan Martens
 
Docker HK Meetup - 201707
Docker HK Meetup - 201707Docker HK Meetup - 201707
Docker HK Meetup - 201707
 
Docker cluster with swarm, consul, registrator and consul-template
Docker cluster with swarm, consul, registrator and consul-templateDocker cluster with swarm, consul, registrator and consul-template
Docker cluster with swarm, consul, registrator and consul-template
 
What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16
What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16 What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16
What's New in Docker 1.12 by Nishant Totla for Docker SF Meetup 08.03.16
 
What’s new in Swarm 1.1
What’s new in Swarm 1.1What’s new in Swarm 1.1
What’s new in Swarm 1.1
 
Docker 進階實務班
Docker 進階實務班Docker 進階實務班
Docker 進階實務班
 
廣宣學堂: 容器進階實務 - Docker進深研究班
廣宣學堂: 容器進階實務 - Docker進深研究班廣宣學堂: 容器進階實務 - Docker進深研究班
廣宣學堂: 容器進階實務 - Docker進深研究班
 
Swarm mode
Swarm modeSwarm mode
Swarm mode
 
Introduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxDataIntroduction to Docker and Monitoring with InfluxData
Introduction to Docker and Monitoring with InfluxData
 
Scala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camouScala, docker and testing, oh my! mario camou
Scala, docker and testing, oh my! mario camou
 
Docker
DockerDocker
Docker
 
Docker Essentials Workshop— Innovation Labs July 2020
Docker Essentials Workshop— Innovation Labs July 2020Docker Essentials Workshop— Innovation Labs July 2020
Docker Essentials Workshop— Innovation Labs July 2020
 
DockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing AureaDockerCon EU '17 - Dockerizing Aurea
DockerCon EU '17 - Dockerizing Aurea
 
Perspectives on Docker
Perspectives on DockerPerspectives on Docker
Perspectives on Docker
 
Making kubernetes simple for developers
Making kubernetes simple for developersMaking kubernetes simple for developers
Making kubernetes simple for developers
 
Building Bizweb Microservices with Docker
Building Bizweb Microservices with DockerBuilding Bizweb Microservices with Docker
Building Bizweb Microservices with Docker
 

More from Evan Lin

好書分享: 一人公司 Company Of One
好書分享:  一人公司  Company Of One好書分享:  一人公司  Company Of One
好書分享: 一人公司 Company Of One
Evan Lin
 
How to master a programming language: a Golang example"
How to master a programming language: a Golang example"How to master a programming language: a Golang example"
How to master a programming language: a Golang example"
Evan Lin
 
Golang taipei #45 10th birthday
Golang taipei #45 10th birthdayGolang taipei #45 10th birthday
Golang taipei #45 10th birthday
Evan Lin
 
How I become Go GDE
How I become Go GDEHow I become Go GDE
How I become Go GDE
Evan Lin
 
iThome Modern Web 2018: 如何打造高效的機器學習平台
iThome Modern Web 2018: 如何打造高效的機器學習平台iThome Modern Web 2018: 如何打造高效的機器學習平台
iThome Modern Web 2018: 如何打造高效的機器學習平台
Evan Lin
 
Kubernetes secret introduction
Kubernetes secret introductionKubernetes secret introduction
Kubernetes secret introduction
Evan Lin
 
Consistent hashing algorithmic tradeoffs
Consistent hashing  algorithmic tradeoffsConsistent hashing  algorithmic tradeoffs
Consistent hashing algorithmic tradeoffs
Evan Lin
 
GTG30: Introduction vgo
GTG30: Introduction vgoGTG30: Introduction vgo
GTG30: Introduction vgo
Evan Lin
 
Kubernetes v.s. mesos
Kubernetes v.s. mesosKubernetes v.s. mesos
Kubernetes v.s. mesos
Evan Lin
 
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
Evan Lin
 
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
Evan Lin
 
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
Evan Lin
 
Google APAC Machine Learning Expert Day
Google APAC Machine Learning Expert DayGoogle APAC Machine Learning Expert Day
Google APAC Machine Learning Expert Day
Evan Lin
 
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
Evan Lin
 
Use go channel to write a disk queue
Use go channel to write a disk queueUse go channel to write a disk queue
Use go channel to write a disk queue
Evan Lin
 
Gopher Taiwan Gathering #16: Build a smart bot via Golang
Gopher Taiwan Gathering #16:  Build a smart bot via GolangGopher Taiwan Gathering #16:  Build a smart bot via Golang
Gopher Taiwan Gathering #16: Build a smart bot via Golang
Evan Lin
 
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 GolangCOSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
Evan Lin
 
Docker introduction in Hardware Company
Docker introduction in Hardware CompanyDocker introduction in Hardware Company
Docker introduction in Hardware Company
Evan Lin
 
Host Line Bot with Golang
Host Line Bot with GolangHost Line Bot with Golang
Host Line Bot with Golang
Evan Lin
 
Project52
Project52Project52
Project52
Evan Lin
 

More from Evan Lin (20)

好書分享: 一人公司 Company Of One
好書分享:  一人公司  Company Of One好書分享:  一人公司  Company Of One
好書分享: 一人公司 Company Of One
 
How to master a programming language: a Golang example"
How to master a programming language: a Golang example"How to master a programming language: a Golang example"
How to master a programming language: a Golang example"
 
Golang taipei #45 10th birthday
Golang taipei #45 10th birthdayGolang taipei #45 10th birthday
Golang taipei #45 10th birthday
 
How I become Go GDE
How I become Go GDEHow I become Go GDE
How I become Go GDE
 
iThome Modern Web 2018: 如何打造高效的機器學習平台
iThome Modern Web 2018: 如何打造高效的機器學習平台iThome Modern Web 2018: 如何打造高效的機器學習平台
iThome Modern Web 2018: 如何打造高效的機器學習平台
 
Kubernetes secret introduction
Kubernetes secret introductionKubernetes secret introduction
Kubernetes secret introduction
 
Consistent hashing algorithmic tradeoffs
Consistent hashing  algorithmic tradeoffsConsistent hashing  algorithmic tradeoffs
Consistent hashing algorithmic tradeoffs
 
GTG30: Introduction vgo
GTG30: Introduction vgoGTG30: Introduction vgo
GTG30: Introduction vgo
 
Kubernetes v.s. mesos
Kubernetes v.s. mesosKubernetes v.s. mesos
Kubernetes v.s. mesos
 
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)iTHome Gopher Day 2017: What can Golang do?  (Using project 52 as examples)
iTHome Gopher Day 2017: What can Golang do? (Using project 52 as examples)
 
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
iThome Cloud Summit: The next generation of data center: Machine Intelligent ...
 
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
iThome Chatbot Day: 透過 Golang 無痛建置機器學習聊天機器人
 
Google APAC Machine Learning Expert Day
Google APAC Machine Learning Expert DayGoogle APAC Machine Learning Expert Day
Google APAC Machine Learning Expert Day
 
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
如何透過 Golang 與 Heroku 來一鍵部署 臉書機器人與 Line Bot
 
Use go channel to write a disk queue
Use go channel to write a disk queueUse go channel to write a disk queue
Use go channel to write a disk queue
 
Gopher Taiwan Gathering #16: Build a smart bot via Golang
Gopher Taiwan Gathering #16:  Build a smart bot via GolangGopher Taiwan Gathering #16:  Build a smart bot via Golang
Gopher Taiwan Gathering #16: Build a smart bot via Golang
 
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 GolangCOSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
 
Docker introduction in Hardware Company
Docker introduction in Hardware CompanyDocker introduction in Hardware Company
Docker introduction in Hardware Company
 
Host Line Bot with Golang
Host Line Bot with GolangHost Line Bot with Golang
Host Line Bot with Golang
 
Project52
Project52Project52
Project52
 

Recently uploaded

1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
JeyaPerumal1
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
3ipehhoa
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
natyesu
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Sanjeev Rampal
 
Comptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guideComptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guide
GTProductions1
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
eutxy
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
laozhuseo02
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Brad Spiegel Macon GA
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
3ipehhoa
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
ufdana
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptxInternet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
VivekSinghShekhawat2
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
Arif0071
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
Javier Lasa
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
nirahealhty
 
guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
Rogerio Filho
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
JungkooksNonexistent
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
Gal Baras
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
laozhuseo02
 

Recently uploaded (20)

1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...1.Wireless Communication System_Wireless communication is a broad term that i...
1.Wireless Communication System_Wireless communication is a broad term that i...
 
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
急速办(bedfordhire毕业证书)英国贝德福特大学毕业证成绩单原版一模一样
 
BASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptxBASIC C++ lecture NOTE C++ lecture 3.pptx
BASIC C++ lecture NOTE C++ lecture 3.pptx
 
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesMulti-cluster Kubernetes Networking- Patterns, Projects and Guidelines
Multi-cluster Kubernetes Networking- Patterns, Projects and Guidelines
 
Comptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guideComptia N+ Standard Networking lesson guide
Comptia N+ Standard Networking lesson guide
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
 
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shopHistory+of+E-commerce+Development+in+China-www.cfye-commerce.shop
History+of+E-commerce+Development+in+China-www.cfye-commerce.shop
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
 
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
原版仿制(uob毕业证书)英国伯明翰大学毕业证本科学历证书原版一模一样
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptxInternet-Security-Safeguarding-Your-Digital-World (1).pptx
Internet-Security-Safeguarding-Your-Digital-World (1).pptx
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
 
This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!This 7-second Brain Wave Ritual Attracts Money To You.!
This 7-second Brain Wave Ritual Attracts Money To You.!
 
guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
 
Latest trends in computer networking.pptx
Latest trends in computer networking.pptxLatest trends in computer networking.pptx
Latest trends in computer networking.pptx
 
How to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptxHow to Use Contact Form 7 Like a Pro.pptx
How to Use Contact Form 7 Like a Pro.pptx
 
The+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptxThe+Prospects+of+E-Commerce+in+China.pptx
The+Prospects+of+E-Commerce+in+China.pptx
 

Docker swarm introduction

  • 2. About Me ● Cloud Architect @ Linker Networks ● Top 10 Taiwan Golang open source contributor (github award) ● Developer, Curator, Blogger
  • 3. Agenda ● Docker Swarm ● Docker SwarmKit ● Introduction Docker Swarm Mode (Swarm V2) ● Docker Swarm Mode Features ● Docker Swarm Mode Tutorial ● Q&A
  • 5. Management multiple docker between machines
  • 6. Let’s use Docker Swarm (Tranditional)
  • 7. Let’s use Docker Swarm (Tranditional) Architecture
  • 8. Let’s use Docker Swarm (Tranditional) Steps Setup Docker Swarm ● Startup a K/V value server (Consul) keystore ● Create a swarm manager ● Connect swarm manager to the keystore ● Create multiple swarm workers ● Connect swarm worker to keystore ● Swarm worker join to swarm manager Load balancer ? ● Create a load balancer ...
  • 9. Step 1: Startup Keystore ● Create A docker-Machine ○ docker-machine create -d virtualbox --virtualbox-memory "2000" --engine-opt="label=com.function=consul" keystore ● Sync to keystore machine ○ eval $(docker-machine env keystore) ● Run “consul” a K/V server container ○ docker run --restart=unless-stopped -d -p 8500:8500 -h consul progrium/consul -server -bootstrap
  • 10. Step 2: Startup Swarm Manager ● Create docker-machine for swarm manager ○ docker-machine create -d virtualbox --virtualbox-memory "2000" --engine-opt="label=com.function=manage r" --engine-opt="cluster-store=consul://$(doc ker-machine ip keystore):8500" --engine-opt="cluster-advertise=eth1:2376" manager ● Sync to swarm manager machine ○ eval $(docker-machine env manager)
  • 11. Step 2: Startup Swarm Manager ● Start docker swarm container ○ docker run --restart=unless-stopped -d -p 3376:2375 -v /var/lib/boot2docker:/certs:ro swarm manage --tlsverify --tlscacert=/certs/ca.pem --tlscert=/certs/server.pem --tlskey=/certs/server-key.pem consul://$(docker-machine ip keystore):8500
  • 12. Step 3~6: Startup Swarm Manager ● Start docker swarm worker ○ docker-machine create -d virtualbox --virtualbox-memory "2000" --engine-opt="label=com.function=frontend01" --engine-opt="cluster-store=consul://$(docker-machine ip keystore):8500" --engine-opt="cluster-advertise=eth1:2376" frontend01 ● Sync to fronted01 ○ eval $(docker-machine env frontend01) ● Join to Swarm Manager ○ docker run -d swarm join --addr=$(docker-machine ip frontend01):2376 consul://$(docker-machine ip keystore):8500
  • 13. Step 7: Startup Load Balancer ● Start docker swarm worker ○ docker-machine create -d virtualbox --virtualbox-memory "2000" --engine-opt="label=com.function=interlock" loadbalancer ● Download “Interlock” and setup ○ git clone https://github.com/ehazlett/interlock.git ○ cd config ○ Fill with `config.toml` ... ● Run Load Balancer “Interlock” ○ docker run -P -d -ti -v nginx:/etc/conf -v /var/lib/boot2docker:/var/lib/boot2docker:ro -v /var/run/docker.sock:/var/run/docker.sock -v $(pwd)/config.toml:/etc/config.toml --name interlock ehazlett/interlock:1.0.1 -D run -c /etc/config.toml
  • 14. I can do this “ALL DAY”
  • 16. Different with Docker Swarm ● Where is “Consul” ? ○ The K/V DB already built-in in Swarm Kit ● More security communication. ○ It default support TLS ● What is Raft Consensus ? ○ For data consistentcy and election node if master is down.
  • 17. SwarmKit Master ● Build SwarmKit binaries ○ git clone https://github.com/docker/swarmkit.git ○ cd swarmkit ○ make setup ○ make all ● Run Swarm manager ○ swarmd -d /tmp/node-1 --listen-control-api /tmp/manager1/swarm.sock --hostname node-1
  • 18. SwarmKit Master ● Sync swarm socket ○ export SWARM_SOCKET=/tmp/manager1/ swarm.sock ● Check Swarm master ○ swarmctl cluster inspect default
  • 19. SwarmKit Agent ● Run Swarm Agent (worker) ○ swarmd -d /tmp/node-2 --hostname node-2 --join-addr 127.0.0.1:4242 --join-token SWMTKN-1-1wttj6u10f9fueptptma9ohf99zcxt0gia1 wt3a5odphi6nt1f-c4y428p7wwr23efwo4xw6qiwz ○ swarmd -d /tmp/node-3 --hostname node-3 --join-addr 127.0.0.1:4242 --join-token SWMTKN-1-1wttj6u10f9fueptptma9ohf99zcxt0gia1 wt3a5odphi6nt1f-c4y428p7wwr23efwo4xw6qiwz ● Check node status ○ swarmctl node ls
  • 21. SwarmKit Create A Service ● Create a Swarm Kit service ○ swarmctl service create --name redis --image redis:3.0.5 ● Make sure service status ○ swarmctl node ls
  • 22. SwarmKit Create A Service ● Create a Swarm Kit service ○ swarmctl service create --name redis --image redis:3.0.5 ● Make sure service status ○ swarmctl service ls ● Check detail of service ○ swarmctl service inspect redis
  • 23. SwarmKit Scale Your Service ● Scale Swarm Kit service ○ swarmctl service update redis --replicas 6 ● Make sure service status ○ swarmctl service ls ○ swarmctl service ls
  • 24. SwarmKit Scale Your Service ● Inspect service detail ○ swarmctl service inspect redis
  • 25. SwarmKit Update Service ● Update service directly ○ swarmctl service update redis --image redis:3.0.6
  • 26.
  • 27. SwarmKit Rolling Update ● Update two services every 10 seconds ○ swarmctl service update redis --image redis:3.0.7 --update-parallelism 2 --update-delay 10s
  • 28. SwarmKit Drain Node ● Stop node 1 ○ swarmctl node drain node-1
  • 29.
  • 30. ● Docker Swarm Mode ( Swarm version 2) ● New feature from Docker Engine 1.12 ● Powerful and more security Docker Swarm Mode
  • 31. Different between Docker Swarm, SwarmKit and Swarm V2 Docker Swarm SwarmKit Swarm Mode (v2) Docker Version All All >= 1.12 K/V DB Need extra one Built-In Built-In Extra Binaries No Yes (Use Go 1.6) No Security None Built-In Built-In Extra Service None None Routing Mesh Load Balance Support Docker Compose, Docker-Machine Yes Yes No (for now)
  • 32.
  • 33. Docker Swarm Mode Tutorial - Vote App
  • 34. Docker Swarm Mode: ● Create three docker machine ○ docker-machine create --driver virtualbox v1 ○ docker-machine create --driver virtualbox v2 ○ docker-machine create --driver virtualbox v3 V1 192.168.99.100 V2 192.168.99.101 V3 192.168.99.102
  • 35. Docker Swarm Mode: ● Connect to V1 node ○ docker-machine ssh v1 ○ ifconfig ● Init docker swarm manager ○ docker swarm init --listen-addr 192.168.99.100:2377 --advertise-addr 192.168.99.100 V1 192.168.99.100 V2 192.168.99.101 V3 192.168.99.102
  • 36. Docker Swarm Mode: ● Connect to V2, V3 node ○ docker-machine ssh v2 ○ docker-machine ssh v3 ● Init docker swarm worker ○ docker swarm join --token SWMTKN-1-62q9gzw8uc43fbv7n79 h7lsnmc6j2tqpzb4qy2osurxufxz87u- 97v5wplu0dvit5ssveo5da2h6 192.168.99.100:2377 V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102
  • 37. Docker Swarm Mode: ● Check current node status ○ docker-machine ssh v1 ○ docker node ls V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102
  • 38. Docker Swarm Mode: All setup is done
  • 39. Docker Swarm Mode: ● Connect to Swarm Manager create service “vote” ○ docker-machine ssh v1 ○ docker service create --name vote -p 8080:80 instavote/vote ● Check detail of this service ○ docker service ls ● Check which node run this service ○ docker service ps vote V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102 instavote/ vote
  • 40.
  • 41.
  • 42. Docker Swarm Mode: ● Scale “vote” service to 3 ○ docker service scale vote=2 ● Check detail of this service ○ docker service ls ● Check which node run this service ○ docker service ps vote V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102 instavote/ vote instavote/ vote Random
  • 44. Docker Swarm Mode: ● Scale “vote” service from 2 to 3 ○ docker service scale vote=3 ● Check detail of this service ○ docker service ls ● Check which node run this service ○ docker service ps vote V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102 instavote/ vote instavote/ vote instavote/ vote
  • 45. Docker Swarm Mode: ● Service update (Immediately) ○ docker service update --image instavote/vote:movies vote ● Check detail of this service ○ docker service ls ● Check which node run this service ○ docker service ps vote V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102 instavote/ vote: movies instavote/ vote: movies instavote/ vote: movies
  • 46. Docker Swarm Mode: ● Service update (Rolling Update) ○ docker service update vote --image instavote/vote:indent --update-parallelism 1 --update-delay 10s ● Check detail of this service ○ docker service ls ● Check which node run this service ○ docker service ps vote V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102 instavote/ vote: indent instavote/ vote: indent instavote/ vote: indent
  • 47. Docker Swarm Mode: ● Global Services ○ docker service create --mode=global --name prometheus prom/prometheus ● Check detail of this service ○ docker service ls ● Check which node run this service ○ docker service ps prometheus V1 (Manager) 192.168.99.100 V2 (Worker) 192.168.99.101 V3 (Worker) 192.168.99.102 instavote/ vote: indent instavote/ vote: indent instavote/ vote: indent prometheus prometheus prometheus
  • 48. Different between Docker Swarm, SwarmKit and Swarm V2 Docker Swarm SwarmKit Swarm Mode (v2) Docker Version All All >= 1.12 K/V DB Need extra one Built-In Built-In Extra Binaries No Yes (Use Go 1.6) No Security None Built-In Built-In Extra Service None None Routing Mesh Load Balance Support Docker Compose, Docker-Machine Yes Yes No (for now)
  • 49. Q&A