既然 Kubernetes 已经非常好了,为什么还需要 Knative 呢? -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

既然 Kubernetes 已经非常好了,为什么还需要 Knative 呢?

1358896759097293 2021-03-23 20:16:52 163

既然 Kubernetes 已经非常好了,为什么还需要 Knative 呢?

云服务器登录 云服务器设置
分享到
取消 提交回答
全部回答(1)
  • 1358896759097293
    2021-03-24 13:58:27

    我 们先梳理一下 Serverless 应用都有哪些共同特质:  按需使用,自动弹性 按需使用云资源,业务量上涨的时候自动扩容,业务量下降的时候自动缩容,所以需要 自动弹性能力。  灰度发布 要能支持多版本管理,应用升级的时候可以使用各种灰度发布策略上线新的版本。  流量管理 能够管理南北流量,可以按照流量百分比对不同版本进行灰度。  负载均衡、服务发现 应用弹性过程中自动增加或者减少实例数量,流量管理需要具备负载均衡和服务发现的 功能。 Gateway 多个应用部署在同一个集群中,需要一个接入层网关对多个应用以及同一个应用的不同 版本进行流量的管理。 随着 Kubernetes 和云原生概念的崛起,第一直觉可能是直接在 Kubernetes 之上 部署 Serverless 应用。Serverless 应用需要的是面向应用的管理动作,比如应用托管、升级、回滚、灰度发 布、流量管理以及弹性等功能,而 Kubernetes 提供的是 IaaS 的使用抽象。所以 Kubernetes 和 Serverless 应用之间少了一层应用编排的抽象。 而 Knative 就是建立在 Kubernetes 之上的 Serverless 应用编排框架。除了 Knative 以外,社区也有好几款 FaaS 类的编排框架,但这些框架编排出来的应用没有统 一的标准,每一个框架都有一套自己的规范,而且和 Kubernetes API 完全不兼容,不兼 容的 API 就导致使用难度高、可复制性不强。云原生的一个核心标准就是 Kubernetes 的 API 标准,Knative 管理的 Serverless 应用保持 Kubernetes API 语义不变,和 Kubernetes API 具有良好的兼容性,就是 Knative 的云原生特性所在。

    0 0
阿里巴巴云原生
使用钉钉扫一扫加入圈子
+ 订阅

关注云原生中间件、微服务、Serverless、容器、Service Mesh等技术领域、聚焦云原生技术趋势、云原生大规模的落地实践

推荐文章
相似问题
最新问题
推荐课程