我是靠谱客的博主 含糊电灯胆,最近开发中收集的这篇文章主要介绍Docker(五) - 创建 Swarm mode集群,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Swarm集群由管理节点工作节点组成。我将用一个管理节点和俩个工作节点来讲解。

初始化集群 (该节点自动成为管理节点)

# docker swarm init --advertise-addr ip地址

在这里插入图片描述
新开俩个虚拟机(推荐使用vmware,有克隆的功能,测试完可以删掉。),俩个虚拟机都输入上图 docker swarm join 那一行,加入集群。

# docker swarm join --token SWMTKN-1-40m9z7lf0b5oq7remw9foss359jid7y8vdrcu5equzifj8npc6-6su7ggk7e3z8wbh27m119dm1l 192.168.247.130:2377

你不能跟着我复制,你需要复制你初始化完的令牌。
在这里插入图片描述
每增加一个worker节点我就 docker node ls 查询一次。上面的“ * ” 指的是当前机器所属的节点。

已经创建成功了,最下面有增加管理节点的内容,如果不需要给其它节点改名就跳过俩条横线之间的内容。

---------------------------------不需要改名跳过横线内内容----------------------------------------------------------------
但是,因为我的虚拟机是克隆的,所以HOSTNAME全部都一个名了,需要对它们进行修改,不然不便管理(可读性)。
让切换到fom714b08yxo1tdu4v26o6xmw虚拟机终端,让它离开集群

# docker swarm leave

切换到管理节点终端
在这里插入图片描述
管理节点就显示为Down了,如果不为Down,就等一会。因为不为Down无法执行下面的删除操作。那为啥要删?因为worker节点退出后,管理节点还是存在,只是状态为Down了,而worker节点重连后是新增了一条信息,为Down的那一条就没有用了。

删除

# docker node rm fom714b08yxo1tdu4v26o6xmw

切换到刚才删除的那台机器,设置名称

# hostnamectl set-hostname worker1

加入集群

# docker swarm join --token SWMTKN-1-40m9z7lf0b5oq7remw9foss359jid7y8vdrcu5equzifj8npc6-6su7ggk7e3z8wbh27m119dm1l 192.168.247.130:2377

切换管理节点终端

在这里插入图片描述

第二个worker节点也改了,改成manager2
---------------------------------不需要改名跳过横线内内容----------------------------------------------------------------
宕机止损
此时,我有三台主机:
bogen(管理节点)
worker1(工作节点)
manager2(工作节点)
这个manager2呢,咱把它升一下级,升为管理节点。

切换到管理节点终端

# docker node promote manager2
# docker node ls

在这里插入图片描述
这个老大呢,就是为首的管理节点。这个老二就是当老大挂了的时候老二接替上。
现在就去把老大弄死(关机),去看看老二有多开心。
在这里插入图片描述

说需要有一半以上的管理节点存活才行。那我们先复活老大,让老二哭去。再去克隆一个虚拟机,命名为manager3升级为管理节点。
好了,看在老大有功的份上,这次不弄死它了,让它退休(关机)吧。
切换到管理节点老二那

# docker node ls

在这里插入图片描述
可以见得,老二已经接管了。

那么,总结就是,你起码需要有三个管理节点。

在我临走前,第二代老二恭敬的问:您老何时再来?我好去接您。

最后

以上就是含糊电灯胆为你收集整理的Docker(五) - 创建 Swarm mode集群的全部内容,希望文章能够帮你解决Docker(五) - 创建 Swarm mode集群所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部