Docker(五) - 创建 Swarm 集群

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

切换管理节点终端

在这里插入图片描述

扫描二维码关注公众号,回复: 4525460 查看本文章

第二个worker节点也改了,改成manager2,这个manager2呢,咱把它升一下级,升为管理节点。

切换到管理节点终端

# docker node promote manager2
# docker node ls

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

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

# docker node ls

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

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

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

猜你喜欢

转载自blog.csdn.net/weikaixxxxxx/article/details/84988701
今日推荐