Knative

一个基于 Kubernetes 的平台,用于构建、部署和管理现代无服务器工作负载。

全能的必备基本组件

Knative 提供了一组中间件组件,这些组件对于构建可在任何地方(在本地、在云端,甚至在第三方数据中心)运行的现代、以源代码为中心和基于容器的应用至关重要。Knative 组件在 Kubernetes 的基础上构建,并对实践中基于 Kubernetes 的成功框架采取的通行最佳做法进行了标准化。它使开发者能够专注于编写有趣的代码,而无需在构建、部署和管理应用等“单调而棘手”的工作上耗费精力。

对开发者友好的软件

Knative 提供了一组可重用的组件,专用于解决许多单调而棘手的任务,例如编排“源代码到容器”工作流、在部署期间路由和管理流量、自动调节工作负载,或将所运行的服务绑定到事件生态系统。开发者甚至可以使用熟悉的习语、语言和框架来部署任何工作负载:函数、应用或容器。

支持流行的开发模式

Knative 遵循开发者习惯。它支持常见的开发模式,如 GitOps、DockerOps、ManualOps,以及 Django、Ruby on Rails、Spring 等各种工具和框架。

两全其美:灵活性和可控性

Knative 旨在供您轻松嵌入现有构建工具链和持续集成/持续交付工具链。利用以 Kubernetes 为基石且可在任何位置、任何云和任何基础架构上运行的开源优先技术,企业可以自由地将工作负载转移到最适合的地方。这为客户提供了调整系统以适应其独特需求的灵活性和可控性。

操作简便

Knative 的设计目标是在所有主要云服务商的平台上作为服务运行。Google 与 Pivotal、SAP、Red Hat、IBM 等行业领导者携手合作,共同打造最能满足开发者需求的构件。Knative 为现实工作负载提供支持,并且能够兼容 Kubernetes 和 Istio 等其他前沿技术。

在 Kubernetes Engine 上运行无服务器工作负载

启用无服务器插件后,您即可在 Google Kubernetes Engine (GKE) 上运行无服务器工作负载。该插件由 Knative 驱动,让开发者只需轻轻一点即可编排构建、服务和事件,从而利用 GKE 的灵活性和可控性获享符合习惯的开发者体验。

Knative 功能

功能名称 功能说明
服务 请求驱动的计算模型,计算资源可调节到零
构建 云原生的“源代码到容器”编排
事件 事件的全局订阅、传递和管理
GKE 上的无服务器插件 在 Kubernetes 上实现 GCP 托管无服务器堆栈

Knative 能够帮助我们的开发者专注于构建业务逻辑,而无需耗费精力来构建底层平台功能,如构建、部署、自动扩缩、监控和可观察性。例如,我们用 Java/Vert.x 开发的 T-Mobile 店铺定位应用可以轻松借助 Knative 迁移到 GCP。我们很轻松便完成了这项迁移任务,因为 Knative 提供了许多平台层级的功能,而无需我们的开发者再构建这些功能。

Ram Gopinathan,T-Mobile 主技术架构师

资源

安装 Knative

这份安装指南介绍了如何使用预构建映像来安装最新版 Knative

Knative 文档

快速了解 Knative 及其组件

开发者资源

常用语言的 Hello world 代码示例

Knative 构建

“源代码到容器”构建和工作流编排

构建模板

从构建模板库中选择

事件

Knative 事件绑定和传递的规范和实现

社区资源