多集群应用如何帮助企业级Kubernetes获益

扩大Kubernetes集群规模运维人员有两个选择:Scale Up和Scale Out。若是想将工做量以及成本维持在较低水平,那么多集群应用程序将是一个重要功能。本文将介绍这两种选择,并阐述为什么多集群应用程序如此重要。git


Kubernetes有许多受用户喜好的功能。它提供了一种在大型资源池上部署和运行应用程序的最佳方式。github

凭借其易于使用的UI和开箱即用的RBAC、监控、审计、日志等功能,Rancher能够轻松地管理企业级Kubernetes。安全

使用Rancher,IT运维人员能够链接他们的云提供商(AWS、GCP、Azure等)或者数据中心,只需简单点击几下就能够建立集群。微信

随着企业对Kubernetes需求的增加,IT运维人员能够有两种选择:运维

  • Scale Up:团队在相关项目上一块儿工做,不须要经过添加更多节点来扩大现有集群的规模。工具

  • Scale Out:因为安全问题、资源回收或其余缘由,团队须要高度隔离,能够经过添加更多集群来scale out Kubernetes环境。Rancher均支持这两种选择。测试

要如何作到不管选择scale up仍是scale out,都可以确保企业级Kubernetes管理的工做量和成本都控制在一个比较低的水平呢?3d

支持多集群应用程序就是实现这一目标的其中一步。尽管名称上仿佛表示该功能仅适用于多个集群,但其实它也适用于同一集群中的多个项目。日志

Scale up场景server

随着对高可靠性、高可用性或更大规模集群的需求增加,集群管理员可能会向现有集群添加更多节点。为了实现某种程度的隔离,管理员能够为每一个团队提供他们本身的项目。Rancher中的项目是比命名空间更高级别的抽象,可使用RBAC进行限制。

使用相同集群的团队仍然能够在本身的项目中工做,而不须要查看其余项目。出于公司的需求或者不一样的团队可能使用相同的应用程序,所以必须将该应用程序的副本push到多个项目中。例如,由内部开发人员组成的项目团队可能必须与外包团队协做。由于他们必须在相同的应用程序上工做,而须要有本身的独立实例,所以两个项目中都应该有应用程序的副本。

Scale out场景

随着Kubernetes在企业中的应用愈来愈多,咱们常常发现客户会构建多个集群,以在不一样的团队之间得到最高级别的隔离。在这种状况下,企业需求(例如须要在每一个集群中部署安全工具)要求集群管理员将相同应用程序的副本push到每一个集群。

在客户可能拥有数百(甚至数千)个集群的边缘计算场景中,这种问题的复杂度是指数级的。

为什么多集群应用程序如此重要

在这两种状况下,将应用程序副本部署到多个目标的场景都算是较小的问题。若是没有复杂的脚本和高度熟练的支持团队,想要升级和维护这些应用程序的同步几乎是不可能的。

这就是对于多集群应用程序的支持变得如此重要的缘由。想象一下在同一(或多)集群上的多个项目内针对应用程序的Helm charts,咱们须要提供配置的值,覆盖项目/集群具体的设置,而后单击一个按钮部署应用程序。

不久前的如何部署和管理多Kubernetes集群一文就详细介绍了这种功能。

为这些应用程序选择升级策略(滚动或同步更新)的能力,进一步简化了应用程序保持最新版本的方式。

能够说,不管是那些支持具备多个集群的企业级Kubernetes用户,仍是那些职场时具备多个项目、单个集群的用户,多集群应用程序都拥有着强大的能力。

总 结

百闻不如一见,试着用用它吧。你可能会发现,采用Kubernetes做为你的企业策略并不会像有些人说的那样复杂!

若是要在实验室或者开发环境中测试这些特性,请安装最新的alpha版本:

https://rancher.com/docs/rancher/v2.x/en/installation/server-tags/#helm-chart-repositories

若是有任何须要反馈的内容,请进入Github中的issue,或者直接加入咱们的论坛或者添加小助手微信(rancher2)进技术群,与同道中人一块儿交流。

Github:

https://github.com/rancher/rancher/issues

论坛连接:

https://forums.cnrancher.com/

相关文章
相关标签/搜索