Rancher应用于swarm集群管理的调研
Rancher简单概述
提供多容器集群环境部署到管理的整套方案,而不仅限于面板监控等个别功能
适合场景
容器集群快速部署,做多个集群统一管理入口。
一个典型的Rancher高可用环境管理多容器集群
重要约束
对整个集群的管理要从部署开始控制,对已经手动部署的swarm集群不能直接纳入
功能覆盖
-
部署容器集群
部署swarm集群的简单几步骤
其中第2步中添加的主机是需要安装好支持版本的docker,并且互相开通必备端口访问。
第3、4步全部由脚本自动完成,在每个主机上安装开启了多个基础组件(容器形式),因为国内网络问题,耗时稍长。基础组件中包含了一个portainer,作为集群管理控制面板。
-
基础架构管理
包括 主机、容器、存储、密文、证书、镜像库。
除了证书以为其他管理功能和portainer重合。
-
应用商店
可以用于基础设施应用的部署(非集群上service)
功能缺失
-
集群上部署编排容器服务
这点portainer可以做到,目前Rancher对swarm的支持还实验阶段,也许以后可以。
结论
从部署上看,单个swarm集群的手工方式已经足够简单,Rancher的便捷意义不大,批量多套swarm环境,确实会简化一些工作。对K8S可能会减轻更多工作。
从管理多个容器集群的角度看,Rancher提供了统一的管理入口和管理方式,提供各种环境和服务的模板,并且有操作审计的功能,这些都很有意义。但选用Rancher,也意味以后的集群资源的管理以rancher为枢纽,使用rancher化的方式,和原生手工的方法略有差别,比如它有自己的编排脚本rancher-compose.yml。
日后Rancher对swarm集群服务的支持增加,它也许会提供给我们一些有借鉴意义的管理方法,例如如何对外暴露访问性,添加负载均衡等等。
目前线上环境使用rancher的主要约束是必须要铲掉已有swarm集群,用Rancher重新部署。
测试环境 Rancher 访问地址:http://192.168.240.68:8080