Swarm集群弹性创建服务

 

 

容器、服务、副本

 

体验:创建服务、动态扩展服务、动态更新服务!

 

 

 

 

 

1、我们先启动一个服务

[root@walker1 ~]# docker service create -p 8888:80 --name my-nginx nginx
fotud1vi69pclwdhbsxrsj4ql
overall progress: 1 out of 1 tasks
1/1: running   [==================================================>]
verify: Service converged
[root@walker1 ~]#

我们可以和docker run对比:

docker run :容器启动,不具有扩缩容器!

docker service :服务启动,具有扩缩容器,滚动更新!灰度发布(金丝雀发布)

 

2、查看服务

 

docker service ls

 

 

 

我们发现,Docker-1启动的服务,随机跑在了Docker-2上面!

 

 

 

 

3、我们给nginx再开启2个副本,经过测试,发现四个机器下面各有有个nginx服务

 

[root@walker1 ~]# docker service update --replicas 3 my-nginx
my-nginx
overall progress: 3 out of 3 tasks
1/3: running   [==================================================>]
2/3: running   [==================================================>]
3/3: running   [==================================================>]
verify: Service converged
[root@walker1 ~]#

我们可以通过输入ip:端口号来访问:http://192.168.0.105:8888/

 

无论我们开多少个服务,集群中任意节点都可以访问,服务可以有多个副本动态扩缩容实现高可用!

 

 

4、如果我们觉得服务太多,想要回滚到一个服务,这是完全没有问题的!

 

[root@walker1 ~]# docker service update --replicas 1 my-nginx
my-nginx
overall progress: 1 out of 1 tasks
1/1: running   [==================================================>]
verify: Service converged
[root@walker1 ~]#

 

5、我们也可以用这条命令,和update的效果是一样的,稍微省事些!

docker service scale my-nginx=2

 

 

 

 

6、我们也可以移除服务

docker service rm my-nginx

 

 

 

 

7、小结

docker swarm 其实并不难!

我们只要会搭建集群,会启动服务,动态管理容器就可以了!

了解docker swarm后,对我们后来学习k8s会有帮助的!

 

posted @   屯子里唯一的架构师  阅读(115)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示