关于Kubernetes在2018年发展趋势的4项预测

容器技术、DevOps与云计算在2017年迎来了极为迅猛的发展势头。如果要对2017年做一个总结,那么对我所在的社区而言,Kubernetes将是惟一的答案。上月初在奥斯汀市举办的Kubecon大会将Kubernetes的关注度再次推向顶峰。Kubecon大会是一场吸引到超过4000名与会者的开发者、DevOps工程师、架构师、IT从业者和行业专家盛会。令人振奋的是,作为一套在云端构建并运行的应用平台,Kubernetes正在帮助真实客户转变其实际业务。

但面对这样的辉煌,我们仍有必要抱持谨慎的态度。俗话说得好:“当你享受舞会的时候,最好在门边跳舞。”有观点认为,Kubernetes目前正在经历的高峰时期仅仅只是暴风雨的前奏。当然从我个人来看,我认为不太可能出现这样的情况。Kubernetes能够提供大量有价值的收益,帮助人们得以轻松完成重大的转型性变革——比如“无服务架构”。

预测1:Kubernetes项目将在企业中获得成功,不过过程仍然坎坷。

立足2017年年底展望2018年,我认为用另外一句名言来表达会更好:“前途是光明的,道路是曲折的。”我对2018年的预测是,在财富500强企业当中,Kubernetes项目将在年底前实现软着陆。但在到达最终目的地之前,仍会出现一些动荡。具体原因如下:

Kubernetes难于使用

让我们从一个最显而易见的事实开始:Kubernetes相当复杂。Kubernetes被一些狂热粉丝冠以“优雅”的头衔,但是优雅并不代表简单。弦论是优雅的,但是理解它除了最难以理解的类比外还需要付出很大的努力。Kubernetes也是一样,使用Kubernetes构建和运行应用程序并不是一个简单的命题。

文化改变难于实现

与此同时,IT企业的整体文化已经由最初的命令-控制系统转化为经过严格定义的、由首席信息官驱动开发与运维角色,如今又逐步变成一种民主且分散的“DevOps”文化。因此我们面对的不仅仅是实现层面的难题,所在组织在经历这种重大文化改变时也要付出巨大的适应性努力。很明显,这绝非易事。

业务需求难于建立

除此之外,驱动应用程序开发的业务需求也在发生改变。

“必须能在任何主流公有云上运行。”

“无论在闲置还是运行时,都必须加密所有客户数据。”

“每台设备每天必须能够存储并处理15TB的数据,且设备总量可能高达上百万台。”

满足单一需求还远远不够,我们需要想办法满足面向全世界用户的复杂、关键性任务应用,而愈发严苛的业务需求正在令Kubernetes成为一种必需。毕竟如果不需要支持100万并发用户,那么大家根本不需要与ingress控制器这样的东西打交道。

我曾在Kubernetes项目与财富100强企业的合作当中,亲身体验到上述压力。执行团队会建立起一个积极的业务目标,并将Kubernetes作为正确的解决方案平台,同时亦通常会列出一些具有可量化性的里程碑以指导整个执行流程。然而即使拥有里程碑作为约束,他们还是会遭遇到包括etcd在内的各类Kubernetes配置和运行依赖性问题,或者是其它网络问题,甚至包括其云、操作系统或正在运行的容器镜像版本内存在的兼容性问题。

这些问题虽然都能够得到解决,但随着项目时间的推移,它们的不断涌现会很快消磨掉执行人员的精力与兴奋情绪。结果是,团队发现他们自己陷入非常艰难且前途无亮的困境当中,疲于解决内部Jira上出现的问题,最终导致领导者开始猜测并质疑这些解决问题的可行性。Kubernetes是正确的选择吗?有没有更简单的解决方案?

预测2:构建和运行Kubernetes应用的复杂性将由日益崛起的Kubernetes平台解决

我之前说过我认为Kubernetes社区将继续保持繁荣。那么这些问题该怎么解决呢?我相信Kubernetes平台的日益崛起将自然而然地化解这些矛盾。云原生容器基金会(CNCF)开始意识到实现Kubernetes已经成为一大严峻挑战,并因此为该平台建立起一套认证模式,即Kubernetes服务供应商认证。目前,kubernetes.io列出了16家获得Kubernetes服务供应商认证的厂商。作为最大的Kubernetes平台,红帽OpenShift未能进入这份列表,但是我认为这更多表明OpenShift仍需要来自云原生容器基金会的外部帮助,毕竟红帽在事实上已经成为运行大型Kubernetes应用程序的权威。

预测3:到2018年底,我们将看到近50家Kubernetes认证服务供应商

2018年, Kubernetes认证服务供应商可能将在数量上迎来三倍速增长。不过大部分客户将会把相关负载运行在其选定的云平台上,例如Azure容器服务(AKS),谷歌容器引擎(GKE)或者亚马逊的新服务,甚至是类似于红帽OpenShift以及Tectonic的其它云无关平台。客户究竟会选择哪种特定服务,在很大程度上取决于服务供应商方案的复杂性以及客户对此类方案的熟悉程度。

预测4:70%的客户将会从他们的云供应商、OpenShift或Tectonic处获取Kubernetes平台

尽管会严重限制多云策略的实现能力,小型客户仍有可能选择其云供应商直接打包提供的产品。这些平台提供更少的可定制配置选项,这一点比单纯的简化更为重要。大型企业则将会更多地选择与云无关的平台,这不仅是因为此类平台提供更为灵活的定制化空间,而且不太可能导致云提供商限制,这一点在商业谈判中非常重要。同样的,拥有一套能够随地运行的平台将有效简化应用程序在多个站点上的运行方式,这一实践也越来越多地成为各家企业间的一种共识性选择。

自从Portworx成为Kubernetes存储的供应商,大家可能对我们的看法感到好奇。我们的观点是,解决持久化存储将成为几乎所有Kubernetes项目当中的一项必要需求。也正因为如此, Portworx才能与所有主要的Kubernetes平台实现集成。人们常说,99%的企业应用是有状态的。我们相信这些应用中将有很重要的一部分运行在Kubernetes上,并且企业将需要高可用性(HA)、备份、加密、磁盘共享、动态配置、扩容以及他们所期望的其他运营能力与之相匹配。

我不知道2018年最终将以怎样的面貌走来,但可以肯定的是,寻求答案本身也是一件充满乐趣的工作。

原文链接:https://thenewstack.io/predictions-2018-rise-kubernetes-platform/

K8S中文社区微信公众号