Knative概述

Knative是一款基于Kubernetes的Serverless框架。其目标是制定云原生、跨平台的Serverless编排标准。Knative通过整合容器构建(或者函数)、工作负载管理(动态扩缩)以及事件模型这三者,来帮助您部署和管理现代化的Serverless工作负载,打造企业级Serverless容器平台。

组件介绍

阿里云容器服务Knative完全兼容开源Knative,并与容器服务ACK、消息、存储、网络等云产品进行了全方位的融合,提供生产级别的Knative能力。

image

作为一个通用的Serverless框架,Knative由以下核心组件组成:

  • Serving:管理Serverless工作负载,和事件结合提供基于请求驱动的自动扩缩容能力。

    Serving组件的职责是管理工作负载以对外提供服务。自动伸缩是Knative Serving组件最为重要的特性之一,目前伸缩边界无限制。在没有服务需要处理时,可缩容至零个实例。同时,Knative Serving还支持灰度发布。

  • Eventing:提供了事件的接入、触发等一系列完整的事件管理能力。

    Eventing组件针对Serverless事件驱动模式具备一套完整的设计,包括外部事件源的接入、事件注册和订阅、以及对事件的过滤等功能。事件模型可以有效地解耦生产者和消费者的依赖关系。生产者可以在消费者启动之前产生事件,消费者也可以在生产者启动之前监听事件。

  • Function: Knative Functions为您提供了一个简单的方式来创建、构建和部署Knative服务。

    您无需深入了解底层技术栈(如Kubernetes、容器和Knative),通过使用Knative Functions,即可将无状态、事件驱动的函数作为Knative服务部署到Kubernetes集群中。

使用说明

注册集群支持使用Knative功能,使用时,您需要满足以下条件:

  • 已通过容器服务Kubernetes版接入一个注册的Kubernetes集群(当前仅支持Kubernetes 1.18版本)。具体操作,请参见创建注册集群

文档使用指引

功能

相关文档

Knative版本发布说明

Knative版本发布说明

阿里云Knative和开源Knative对比

阿里云Knative和开源Knative对比

Knative组件管理

Knative服务管理

Knative事件驱动

Knative函数部署

基于Knative部署函数服务

KServe

Knative最佳实践