Knative是无服务器的下一个阶段吗?

无服务器迅速崛起的副产品之一 是云提供商之间缺乏标准化和互操作性。由此导致供应商锁定的风险使得许多企业在无服务器革命时通过它们。

为了缩小差距,谷歌推出了Knative,它描述了一个开源框架,为Kubernetes提供无服务器构建模块,去年的Google Next活动。

作为扩大无服务器采用的一种手段,该项目由Google,Pivotal,IBM,SAP和Red Hat共同开发而成。Kubernetes是首选的容器平台,在Knative项目上合作的供应商集合确保了标准将在不同的功能即服务(FaaS)实现之间共享,从而提高了互操作性。

Knative v0.4 刚刚发布,平台引起了媒体的关注。现在是时候更深入地了解一下。以下是Knative的作用,它如何改变FaaS游戏,以及组织在未来一年可以从中实际期望它。

在Knative框架内
Knative是Kubernetes的一组扩展,允许您使用无服务器特性构建,运行和操作微服务,功能和容器,Red Hat高级首席产品经理William Markito Oliveira表示,其中包括Knative的OpenShift平台。

Knative构建于Kubernetes之上,Kubernetes是一个经过实战考验的生态系统,适用于希望在内部或任何云平台上运行无服务器的团队。

Knative平台由三个核心组件组成,它们反映了功能生命周期:

构建控制以功能的形式获取开发人员代码的过程,构建\并将其打包为可以通过Kubernetes部署的容器。
服务部署并运行这些容器,并根据应用程序功能的需要进行上下扩展。
事件提供函数的输入或函数的输出,例如API请求,新数据或系统更改。

“通过依赖Kubernetes基础架构,团队无需管理另一个分布式系统即可运行Knative。它可以专注于提供价值,使开发人员可以更轻松地构建无需学习即可扩展的应用程序平台的所有内在细节。“ 
– William Markito Oliveira

使无服务器更易于销售
RSA首席架构师和DevOps领导人Daniel Barker表示,Knative的使用案例与其他无服务器平台并没有太大的不同。处理来自IoT设备的数据,对您的网站运行可访问性检查,以及执行常规任务(例如验证安全组配置是否正确)都是Knative的常见应用程序。

但希望(和炒作)是Knative的简单框架,广泛的潜在用途以及对Kubernetes的捎带将加速无服务器架构的民主化并推动更广泛的采用。

“Knative正在将传统FaaS平台的许多操作问题委托给Kubernetes,这不是一件小事,”Red Hat的Oliveira说道。他说,大多数生产就绪的FaaS平台需要一些努力才能在内部部署环境中大规模运营。

如果您正在使用托管系统,这个问题可能会消失,但即使这些问题可能会更好“,如果您坚持使用已经为Kubernetes构建的经过验证的解决方案和工具来实现FaaS,”Oliveira补充道。

除了炒作之外,大多数专家都强调Knative仍然是一种不成熟的产品,不太可能很快渗透到主流企业。但SignalFx的首席技术官Arijit Mukherji表示,Knative确实让组织更容易在简单的用例中使用无服务器池,然后随着他们的熟悉程度和专业知识的增长逐渐转向更复杂的用户。

“我觉得Knative实际上简化了[无服务器]体验,特别是对于开发人员而言,因为他们不必担心许多外围问题,如构建和打包,并且可以专注于开发核心功能。” 
– Arijit Mukherji

同样对于运营商而言,如果他们熟悉部署和运营Kubernetes,那么“Knative不会带来大量额外的复杂性,”Mukherji补充道。

Knative入门
这就是问题所在。如果你没有运行Kubernetes-and Istio(Knative用作其网络路由层),那么你就无法运行Knative。RSA的巴克说,这将使许多组织的标准过高。同样,如果您的原始系统无法处理无服务器架构,您将无法获得迁移到Knative的好处。

但是,如果你的组织已经是Team Kubernetes的一部分,Knative很容易安装和配置,Barker说,“任何人都可以通过他们的笔记本电脑开始使用一些命令和一些YAML。”

就像开始一样容易,“我不会把它放在生产中用于任何关键的事情,”他告诫道。幸运的是,构建在这些类型平台上的应用程序本质上可以抵抗故障,他补充道。

“如果你计划尽快使用Knative,那么你应该以帮助项目和使用你的系统发现错误的思维方式进入它。” 
– 丹尼尔巴克

该平台已经允许开发人员使用多种先进技术构建和部署应用程序,Red Hat的Oliveira说。但他承认,现在的主要挑战是利用工具增强开发人员的体验,而参与项目的公司测试并巩固他们的API。

FaaS的未来?
现在判断Knative是否最终代表无服务器的下一阶段还为时尚早。RSA的巴克说,Knative是这个领域的众多竞争者之一,但竞争孕育了创新。

尽管如此,巴克确实看到Knative最终产生了影响。“Knative最终将无服务器平台推向更加模块化,可插拔的系统,通过CloudEvents实现互操作性,”他说。

从他的优势来看,SignalFx的Mukherji认为Knative的近期前景光明,引用了开发商以及他们所工作的公司越来越多的兴趣。

他预计,到今年年底,如果不采用该平台,将会有广泛的认知,他预计会在早期采用的Kubernetes商店中看到一些实验性项目。他说,这些早期实验将影响Knative开发的方向。

“我也希望看到云供应商今年对Knative提出意见。虽然一个普通的,供应商中立的,无服务器的框架可能不符合云服务提供商的最佳商业利益,但更多地采用无服务器更为可靠。” 
-Arijit Mukherji

最后更新于 三月 19, 2021

心有多大,路就有多远