使用步骤
1.需要环境
4台Linux服务器
这里使用一台虚拟机克隆3台
2.创建swarm
代码如下(示例):
#ip为本机ip(管理者)
docker swarm init --advertise-addr 192.168.249.131
#生成一个加入worker的token
docker swarm join-token worker
#生成一个加入manager的token
docker swarm join-token manager
#其他主机可以通过这个命令加入当前swarm(工作者)
docker swarm join --token SWMTKN-1-0a16fcwclqdvncf3e2bqx7wl6tzb0ke6dwnrc8l4cdseql9ktg-bry1kwfp6m63paoy48tlr0c26 192.168.249.131:2377
#脱离集群
docker swarm leave
#查看节点信息
docker node ls
2主2从
raft协议(一致性协议)
保证大多数节点存活才可以用,大于1(不等于1)
2主2从是不科学的,最少得3主
#开启一个服务
docker service create -p 8888:80 --name my-nginx nginx
#查看服务
docker service ls
当前只有一个副本
动态扩缩容
#更新成3个副本
docker service update --replicas 3 my-nginx
#扩缩容成5个副本
docker service scale my-nginx=5
总结
核心概念:动态扩缩容