#advertise-addr 来指定其他节点连接时的地址
docker swarm init --advertise-addr 192.168.198.106:2377 --listen-addr
#查看节点信息docker node ls
#查看网络信息 docker-swarm 初始化时会创建一个类型为overlay的网络docker network ls
二 节点 添加、删除、权限提升、降低
1 添加manager 节点 –token 会失效 时效为24小时 以后添加节点时 执行 docker swarm join-token 获取最新的token 标记文本
#在manager节点执行。可以作为manager节点加入集群docker swarm join-token manager
2 添加worker 节点 –token 会失效 时效为24小时 以后添加节点时 执行 docker swarm join-token 获取最新的token
#在manager节点执行。可以作为worker节点加入集群docker swarm join-token worker
MANAGER STATUS列说明:
Leader 意味着该节点是使得群的所有群管理和编排决策的主要管理器节点。
:Reachable 意味着节点是管理者节点正在参与Raft共识。如果领导节点不可用,则该节点有资格被选为新领导者。
:Unavailable 意味着节点是不能与其他管理器通信的管理器。如果管理器节点不可用,您应该将新的管理器节点加入群集,或者将工作器节点升级为管理器。
AVAILABILITY列说明:
Active 意味着调度程序可以将任务分配给节点。
Pause 意味着调度程序不会将新任务分配给节点,但现有任务仍在运行。
Drain 意味着调度程序不会向节点分配新任务。调度程序关闭所有现有任务并在可用节点上调度它们。
3.3 节点权限提升降低
三 节点权限提升降低
#将worker节点提升为manager节点,在manager节点执行如下命令:docker node promote work-01
docker node ls
#将manager节点降低为worker节点,在manager节点执行如下命令:docker node demote work-02
docker node ls
三 脱离集群
#想要那个节点脱离集群就在那个节点下执行以下命令docker swarm leave
#删除已经脱离集群的节点
docker node rm work-02
#删除已经脱离集群的work-02节点 ps:如果是多个manager节点中的其中一个节点需要先将节点降为worker节点才能删除
#manager节点只能强制退出 manager退出后意味着整个swarm不复存在。docker swarm leave --force
常用命令如下:
swarm命令
命令 描述
docker swarm join 初始化一个 swarm 群集
docker swarm join 加入群集作为节点或管理器
docker swarm join-token 管理用于加入群集的令牌
docker swarm leave 离开 swarm 群集
docker swarm unlock 解锁 swarm 群集
docker swarm unlock-key 管理解锁钥匙
docker swarm update 更新 swarm 群集
node命令
命令 描述
docker node demote 从 swarm 群集管理器中降级一个或多个节点
docker node inspect 显示一个或多个节点的详细信息
docker node ls 列出 swarm 群集中的节点
docker node promote 将一个或多个节点推入到群集管理器中
docker node ps 列出在一个或多个节点上运行的任务,默认为当前节点
docker node rm 从 swarm 群集删除一个或多个节点
docker node update 更新一个节点
service 命令
命令 描述
docker service create 创建服务
docker service inspect 显示一个或多个服务的详细信息
docker service logs 获取服务的日志
docker service ls 列出服务
docker service rm 删除一个或多个服务
docker service scale 设置服务的实例数量
docker service update 更新服务
docker service rollback 恢复服务至update之前的配置
stack命令
命令 描述
docker stack deploy 部署新的堆栈或更新现有堆栈
docker stack ls 列出现有堆栈
docker stack ps 列出堆栈中的任务
docker stack rm 删除一个或多个堆栈
docker stack services 列出堆栈中的服务