我一直在思考Rancher(或DC/OS)与Kubernetes的区别。它们都声称是容器管理工具,为什么我们需要两者?它们有何不同之处?
我一直在思考Rancher(或DC/OS)与Kubernetes的区别。它们都声称是容器管理工具,为什么我们需要两者?它们有何不同之处?
这个问题最初是3年前发布的。此后技术发展已经有所变化。
例如,DCOS背后的公司Mesosphere已经更名,并将重点放在了Kubernetes上,详情请参见 此处。同样地,Rancher 将自己定位为 Kubernetes 的安装和管理层。
如果这个问题仍然困扰你,建议提出新问题。
Rancher是一个很棒的工具,最好描述为Kubernetes的部署工具,它还集成了网络和负载均衡支持。
Rancher最初创建了自己的框架Cattle,用于协调多个主机上的Docker容器。当时Docker只能在单个主机上运行。 Rancher通过在主机之间提供网络来解决这个问题,这最终成为Docker Swarm的一部分。
现在Rancher使用户可以选择Cattle、Docker Swarm、Apache Mesos(DCOS的上游项目)或Kubernetes来管理容器。
对jdc0589的回复
你是对的。对于容器用户而言,Kubernetes把计算、网络和存储的底层实现细节抽象出来了。 Rancher帮助处理这个底层细节的设置问题。Rancher的网络提供了一个跨平台的一致性解决方案。我发现在裸机或标准(非云)虚拟服务器上运行时特别有用。
如果你只使用AWS,我建议使用kops并利用你提到的本地集成优势。
虽然我很固定在Kubernetes上,但必须承认,Rancher还允许轻松安装其他框架(Swarm和Mesos)。 我建议尝试一下它,即使只是为了了解为什么不需要它。
Rancher 2.0 是一个开源产品,能够简化 Kubernetes 部署和管理的过程。无论 Kubernetes 运行在何处,此产品都可以解决 Kubernetes 用户的三个主要问题:
RKE 是部署和升级 Kubernetes 的 Kubernetes 发行版和安装程序,可以独立于 Rancher 使用。类似于 kops、kubespray 等工具,RKE 让 Kubernetes 部署和升级变得非常容易。
Rancher 2.0 是一个多集群管理工具,可用于管理 Kubernetes 集群。无论您是使用 RKE 创建集群、拥有现有 Kubernetes 集群,还是使用托管 Kubernetes 集群(如 GKE、EKS 或 AKS),Rancher 都能集中管理这些集群。它特别解决了用户管理和 RBAC、安全策略管理、容量管理、委派管理、集群备份和恢复、日志和监控等问题。
Rancher 是团队使用 Kubernetes 的用户界面。它为用户提供与其访问权限下的 Kubernetes 集群交互的 UI 和 API。用户也可以直接使用 KubeCTL。此层提供了集成工具,使使用 Kubernetes 变得非常容易,包括集成日志管理、CI / CD、警报等。Helm 很好地集成了进来,使得共享模板非常容易。即将推出的版本还将集成 Istio 和 Prometheus。