0
点赞
收藏
分享

微信扫一扫

Serverless平台knative第一章概述和基础

简介:

knatvie是基于kubernetes平台,用于部署和管理现代Serverless工作负载,是Serverless平台,而非Serverless的实现。它是kubernetes平台的原生扩展组件,让其能够轻松地部署、运行和管理Serverless类型的云原生应用。目标在于Serverless技术标准化

注意:Knative并未提供Faas

Knative为Kubernetes扩展出的功能

  Serving

      替代Deployment控制器,负责编排运行基于HTTP协议的无状态应用

      额外的功有特性:

          - Knative的Service对像,相当于Kubernetes上的Service+Deployment的功能

          - 基于单个请求进行负载均衡

          - 基于请求的快速 、自动化扩缩容,并支持将Pod收缩至0实例 

          - 通过在Pod扩展时缓冲请求来削峰填谷

          - 流量切分

   Eventing

       - 声明式配置接口

缺点:冷服务启动延时

Knative适合运行的应用类型

Knative仅适合运行特定的类型的应用:无状态、容器化的服务器应用

监听于某套接字之上提供服务的应用,不适合运行批处理作业

仅支持通过HTTP/1、HTTP/2或gPRC通信的服务端应用


组件介绍:

Serving

  - 部署、管理及扩展无状态应用

  - 支持由请求驱动计算

  - 支持缩容至0

Eventing

  - 以声明的方式创建对事件源的订阅,并将事件路由到目标端点

  - 事件订阅、传递和处理

  - 基于pub/sub模型连接knative的工作负载

Build

  - 从源代码构建出应用镜像

  - 已经由独立的Tekton项目取代


CRD介绍:

  主要包含四个CRD

Serverless平台knative第一章概述和基础_knative

  - Service

      对自动编排Serverless类型应用的功能的抽像,负责自动管理工作负载的整个生命周期

  - Configuation

     反映了Service当前期望状态(Spen)的配置,Service对像的更新,也将导致Configuation的更新

  - Revision

     Service的每次代码或配置变理都会生成一个Revision

  - Route

     将请求流量路由到目标Revion

     支持将流量按比例切分并路由到多个Revision


  




举报

相关推荐

0 条评论