Docker Swarm one-day Tour

服务器列表

IPhostnameswarm role
192.168.2.121ubuntumanager
192.168.2.122zipkinworker
192.168.2.123elasticworker
192.168.2.124tensorflowmanager

本次验证所使用的docker 版本如下:

kube@tensorflow:~$ docker version
Client:
 Version:      1.13.1
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   092cba3
 Built:        Wed Feb  8 06:42:29 2017
 OS/Arch:      linux/amd64

Server:
 Version:      1.13.1
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   092cba3
 Built:        Wed Feb  8 06:42:29 2017
 OS/Arch:      linux/amd64
 Experimental: false

本次验证的主要架构如下图所示:

这里写图片描述
为了防止Swarm Mange单点故障,引入了HA机制,Swarm Manage自身是无状态的,所以还是很容易实现HA的。 实现过程中采用主备方式,当主节点故障以后,会从新选主提供服务,选主过程中采用分布式锁实现,现在支持etcd、zookeeper、consul三种类型的分布式存储,用来提供分布式锁。 当备节点收到消息后,会将消息转发给主节点

Steps

kube@ubuntu:~$ docker swarm init --listen-addr 192.168.2.121:2377
Swarm initialized: current node (tlm00esjj8c794bnt27ohy6ax) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join \
    --token SWMTKN-1-1d0zbvscbn5n879a8d8gninqc0zrgio9eu21vvh4c3r48h22o1-a0iw8a8mkwwczrnxeedff57br \
    192.168.2.121:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
kube@ubuntu:~$ docker swarm join-token manager
To add a manager to this swarm, run the following command:

    docker swarm join \
    --token SWMTKN-1-1d0zbvscbn5n879a8d8gninqc0zrgio9eu21vvh4c3r48h22o1-brgeenpout0mom3506l19ioqi \
    192.168.2.121:2377
kube@ubuntu:~$ docker swarm join-token -q  manager      //查看swarm manager的token
SWMTKN-1-1d0zbvscbn5n879a8d8gninqc0zrgio9eu21vvh4c3r48h22o1-brgeenpout0mom3506l19ioqi
kube@ubuntu:~$ docker swarm join-token -q  worker       //查看swarm worker的token
SWMTKN-1-1d0zbvscbn5n879a8d8gninqc0zrgio9eu21vvh4c3r48h22o1-a0iw8a8mkwwczrnxeedff57br
kube@zipkin:~$ docker swarm join \
 --token SWMTKN-1-1d0zbvscbn5n879a8d8gninqc0zrgio9eu21vvh4c3r48h22o1-a0iw8a8mkwwczrnxeedff57br \
192.168.2.121:2377

This node joined a swarm as a worker.
kube@elastic:~$ docker swarm join \
--token SWMTKN-1-1d0zbvscbn5n879a8d8gninqc0zrgio9eu21vvh4c3r48h22o1-a0iw8a8mkwwczrnxeedff57br \
192.168.2.121:2377

This node joined a swarm as a worker.
kube@tensorflow:~$ docker swarm join \
--token SWMTKN-1-1d0zbvscbn5n879a8d8gninqc0zrgio9eu21vvh4c3r48h22o1-brgeenpout0mom3506l19ioqi \
192.168.2.121:2377

This node joined a swarm as a manager
kube@ubuntu:~$ docker  node ls
ID                           HOSTNAME    STATUS  AVAILABILITY  MANAGER STATUS
2p25ctjidc4ep93x9dtc94o41    elastic     Ready   Active        
tlm00esjj8c794bnt27ohy6ax *  ubuntu      Ready   Active        Leader
xw25t5biu4lt22ctfiqyy98ls    tensorflow  Ready   Active        Reachable
y3tbcpks0hmatb2eylxo93516    zipkin      Ready   Active
kube@ubuntu:~$ docker service create --replicas 1 --name svc alpine ping docker.com
yagle957bftymp5r9f4irpqe5
kube@ubuntu:~$ docker service create --replicas 3 --name redis --update-delay 10s --update-parallelism 1 redis:3.2.7
xbfehf2v0pmx8onc6n0jvj145
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值