Rancher概述
Ranhcer是一个开放源码的软件平台,使企业能够在生产中运行容器。使用Rancher,组织不再需要使用不同的开源技术从头开始构建容器服务平台。Rancher提供管理生产中的容器所需的整个软件堆栈。
Rancher软件由四个主要组成部分组成:
基础设施协调
Rancher以Linux 主机的形式从任何公共或私有云接收原始计算资源。每个Linux主机都可以是虚拟机或物理机。rancher不会过多的消耗每个主机的CPU,内存,本地磁盘存储和网络连接都有更多的空间。从Rancher的角度来看,来自云提供商的VM实例和托管的裸机服务器是没有区别的。
Rancher实现了专门为集装箱应用服务的便携式基础架构服务层。rancher基础架构服务包括网络,存储,负载平衡器,DNS和安全性。Rancher基础架构服务通常作为容器部署,因此,相同的Rancher基础架构服务可以在来自云端的任何Linux主机上运行。
容器编排和调度
许多用户选择使用容器编排和调度框架运行容器化应用程序。Rancher包含了所有受欢迎的容器编排和调度框架,包括Docker Swarm,Kubernetes和Mesos。同一用户可以创建多个Swarm或Kubernetes群集。然后,他们可以使用本机Swarm或Kubernetes工具来管理其应用程序。
除了Swarm,Kubernetes和Mesos,Rancher还支持自己的容器编排和调度框架,称为“Cattle”。Cattle最初设计为Docker Swarm的扩展。随着Docker Swarm的不断发展,Cattle和Swarm开始分歧。因此,rancher将支持Cattle和Swarm ,作为未来的单独框架。Rancher广泛使用Cattle来协调基础设施服务,以及建立,管理和升级Swarm,Kubernetes和Mesos群集。
应用目录
Rancher用户可以从应用程序目录中部署整个多容器集群应用程序,只需单击一个按钮即可。用户可以管理部署的应用程序,并在新版本的应用程序可用时执行全自动升级。Rancher维护着由Rancher社区贡献的主流的应用程序的公共目录。rancher用户可以创建私有目录。
企业级控制
Rancher支持灵活的用户验证插件,并与Active Directory,LDAP和GitHub 进行预先建立的用户身份验证集成。rancher支持基于角色的访问控制(RBAC)在水平环境中,允许用户和组共享或拒绝访问,例如,开发和生产环境。
下图显示了Rancher的主要组件和功能。