技术漫谈 | 对企业更加友好的Kubernetes已经来临


Kubernetes 在美国独立日前发布了最新的1.7版,用新安全功能以及更广泛的有状态应用支持功能增添了些节日礼花,这些新功能肯定会受到令人垂涎的企业市场的青睐。

Kubernetes 1.7 增强了安全方面功能。

从beta到稳定版的网络策略API允许用户通过设置规则来限制个别Kubernetes pod之间的通信,同时隔离多租户架构中各个应用程序以及个人用户的网络流量。在以前的版本中,每个应用程序都可以被赋予自己的Kubernetes命名空间,但现在这些应用程序中的特定服务可以在命名空间中进行控制。

新节点授权器和入口控制插件允许对kubelet(在集群中的每个主机上运行Kubernetes的主要软件代理)、Secrets、pod和节点级别的其他对象之间的通信进行更细粒度的控制。 Kubernetes的Secrets管理也在Docker Secrets基础上做了一个测试版本功能,可以加密etcd数据存储中的Secrets。

许多企业都在生产中使用Kubernetes的有状态的应用支持功能,而这个Kubernetes发行版则提炼了StatefulSets来支持新的更新方法,如滚动更新。 Kubernetes的持久化卷也在Kubernetes 1.7中向前走了一步,对本地存储卷提供了了测试版本支持,这对于许多有大数据和HPC应用场景的用户来说很受欢迎。

Kubernetes 1.7 增强了容器运行时支持以及可扩展性。

尽管Kubernetes 1.7的新功能肯定会掀起浪潮,但随着容器运行时的标准化和商业化,发布公告中的另一个有趣的方面与这些行业的潜在影响有关。例如,Kubernetes在这个版本开始与Docker containerd集成,企业可以在容器运行时支持中获得更大的稳定性。 Docker开源的containerd是Docker的核心容器运行时,并在今年早些时候捐赠给了Cloud Native Computing Foundation。

在线文档分享和协作公司Box的联合创始人兼解决方案架构师Sam Ghods说:“大家对Kubernetes平台在此之前(集成Containerd之前)的稳定性和模块性肯定有一些担忧,容器运行时应该是可交换的。

这在未来的Kubernetes版本中将会实现。而现在,Kubernetes 1.7为更好地支持替代容器运行时提供了基础,该功能对容器运行时接口(容器运行时插件API)进行了增强。通过版本1.7,开发人员可以通过界面更密切地监视各种容器运行时,也可以在容器运行时与界面集成上使用新发布的验证测试。

在随后的版本中,除了Docker containerd之外,还将支持包含CRI-O和rkt的运行时的生产支持。

根据Google项目监察人员描述,Docker公司一直积极参与开发Kubernetes 1.7,containerd已经将Docker公司和Kubernetes社区联系的更紧密了。然而,一些行业观察者可能想知道Docker业务的未来发展方向,毕竟现在供应商可以在没有Docker的增值产品的情况下对核心containerd的功能进行标准化。

这次Kubernetes版本发布中的新扩展功能(如API聚合)将有利于基于Kubernetes的发行商,这一新功能使得高级用户能够将第三方工具作为Kubernetes集群的一部分进行管理。

“我们现在可以重用API服务器和Kubernetes etcd来构建第三方资源,而不是通过自己的方法为每个微服务创建一个数据存储和API服务器,”Ghods说。 “它减少了开发服务的时间和复杂度。”Ghods补充说,他希望新的扩展功能将会催生出类似于Netflix Spinnaker这样的的Kubernetes CI / CD工具。目前还没有具体的这样一个工具的计划,但是Kubernetes现在已经具备了实现这些功能的基础。

作者:Beth Pariseau
翻译:Alex

0 个评论

要回复文章请先登录注册