Docker Swarm 官方教程部分实践.
准备
-
49.233.14.19 manager
-
49.232.2.215 worker
-
49.193.125.218 worker
-
大聪明是我没跑了, 折腾了半天虚拟机, 最后买了三台腾讯服务器...按时间/流量买的, 钱没白花(才5毛钱), 学到了:)
官方流程
| docker swarm init | Initialize a swarm |
| ----------------------- | ------------------------------------- |
| docker swarm join | Join a swarm as a node and/or manager |
| docker swarm join-token | Manage join tokens |
| docker swarm leave | Leave the swarm |
| docker swarm unlock | Unlock swarm |
| docker swarm unlock-key | Manage the unlock key |
| docker swarm update | Update the swarm |
init
- 初始化 (node/manager, join)
sudo docker swarm init --advertise-addr 192.168.0.108
Swarm initialized: current node (fotvc7m73dar1t0p48gflmcg1) is now a manager.
To add a worker to this swarm, run the following command:
docker swarm join --token SWMTKN-1-595cs5j33r4j7vuwgu45c9f9ayvmxvllfa4h1ap6r5zq5n0uf8-et6d1c656lce4raotegtkyucb 192.168.0.108:2377
To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.
- 查看docker swarm信息 (clusterID)
docker info
Swarm: active
NodeID: fotvc7m73dar1t0p48gflmcg1
Is Manager: true
ClusterID: b18jkvkfkv1vndp4k5peom2et
Managers: 1
Nodes: 1
Default Address Pool: 10.0.0.0/8
SubnetSize: 24
Data Path Port: 4789
Orchestration:
Task History Retention Limit: 5
join
1 manager 2 worker
docker swarm join --token SWMTKN-1-595cs5j33r4j7vuwgu45c9f9ayvmxvllfa4h1ap6r5zq5n0uf8-et6d1c656lce4raotegtkyucb 192.168.0.108:2377
ubuntu@VM-16-7-ubuntu:~$ docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
wvm63vim2zz89gc84s3hx0xsb VM-0-5-ubuntu Ready Active 20.10.7
o4iy3kqfbr0c31grvktewhoy5 VM-0-6-ubuntu Ready Active 20.10.7
ox88eqv22abu2grslu1we2edc * VM-16-7-ubuntu Ready Active Leader 20.10.8
service
服务创建及扩缩容.
docker service create --name redis --replicas=5 redis:3.0.6
ubuntu@VM-16-7-ubuntu:~$ docker service ps redis
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
n207mmo0p9kj redis.1 redis:3.0.6 VM-0-5-ubuntu Running Running 4 minutes ago
5vbp2n1yzkqu redis.2 redis:3.0.6 VM-0-6-ubuntu Running Running 4 minutes ago
pbkbkvlt37v1 redis.3 redis:3.0.6 VM-16-7-ubuntu Running Running 5 minutes ago
qttp0jimvaae redis.4 redis:3.0.6 VM-0-5-ubuntu Running Running 4 minutes ago
mezxg72e4vmq redis.5 redis:3.0.6 VM-16-7-ubuntu Running Running 5 minutes ago
ubuntu@VM-16-7-ubuntu:~$ docker service update --replicas=3 redis
redis
overall progress: 3 out of 3 tasks
1/3: running [==================================================>]
2/3: running [==================================================>]
3/3: running [==================================================>]
verify: Service converged
ubuntu@VM-16-7-ubuntu:~$ docker service ps redis
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS
n207mmo0p9kj redis.1 redis:3.0.6 VM-0-5-ubuntu Running Running 7 minutes ago
5vbp2n1yzkqu redis.2 redis:3.0.6 VM-0-6-ubuntu Running Running 7 minutes ago
pbkbkvlt37v1 redis.3 redis:3.0.6 VM-16-7-ubuntu Running Running 8 minutes ago