c语言sscanf函数的用法是什么
247
2022-10-22
Docker(CE版本18.09.1)踩坑笔记(四)------Swarm集中管理Docker
上篇文章中,执行 docker swarm init 之后,得到了一个 token,本文中,我们将利用这个 token 构造多个 Docker 机器的集中化管理。 在进行集群化之前,你需要多准备1-2台安装好 Docker 的机器。
在执行完 docker swarm init 之后,使用下面指令查看当前所有节点
docker node ls
输出内容中可以看到我们当前的机器:
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSIONyipgq87kiwbq2rwcp7ni5b0eq * localhost.localdomain Ready Active Leader 18.09.1
我们假定两台Docker服务器A和B,A作为主,B作为从,当然你应该修改 A B 两台服务器的 HOSTNAME,来达到后面区分的目的。这里我们只将B的HOSTNAME修改为 10.150.1.60。
在A机器上,开放防火墙 2377 端口,以支持其他机器可以通过这个端口注册到A机器的 swarm 上。
firewall-cmd --zone=public --add-port=2377/tcp --permanentfirewall-cmd --reload
查看是否添加成功:
firewall-cmd --list-ports
在B机器上,执行
docker swarm join --token SWMTKN-1-32h9o052kscg6h04qsi0t0r5orqgqv5j3nufjoup6i7n1crvnv-21ml1d9niakydkp7dw2um2xk7 10.150.1.99:2377
提示 This node joined a swarm as a worker. 即表示B机器加入成功。
这时,在A机器上执行 docker node ls 可以看到如下结果
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION4u65amsuuwtoqm295h8ai0rb1 10.150.1.60 Ready Active 18.09.0yipgq87kiwbq2rwcp7ni5b0eq * localhost.localdomain Ready Active Leader 18.09.1
已经有两个节点。
然后发布你的程序
docker stack deploy -c docker-compose.yml yourapp
然后执行 docker stack ps yourapp 即可看到应用部署到了两台不同的Docker服务器上
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTSyc9ryhcqfl4u yourapp_web.1 walli/yourapp:v1.0.0 10.150.1.60 Running Running 6 minutes ago73yjb566n35r yourapp_web.2 walli/yourapp:v1.0.0 localhost.localdomain Running Running 9 minutes agotqh9jti3s7x0 yourapp_web.3 walli/yourapp:v1.0.0 localhost.localdomain Running Running 9 minutes ago
其实这中间的过程应该是,你应该在 A B 两台机器上都使用 docker login 登录你的账号,然后将上一篇文章中制作的带tag镜像上传到 Docker 服务器上,这时候你在 A机器(Swarm管理端)去发布你的应用的时候,在B机器上才能正常下载这个镜像并且安装。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~