Serving 核心是 Knative Service,Knative Controller 通过 Service 的配置自动 操作 Kubernetes Service 和 Deployment,从而实现简化应用管理的目标。Knative Service 对应一个叫做 Configuration 的资源,每次 Service 变化如果需 要创建新的 Workload 就更新 Configuration,然后每次 Configuration 更新都会创建 一个唯一的 Revision。Revision 可以认为是 Configuration 的版本管理机制。理论上 Revision 创建完以后是不会修改的。 Route 主要负责 Knative 的流量管理,Knative Route Controller 通过 Route 的配置自动生成 Knative Ingress 配置,Ingress Controller 基于 Ingress 策略实现 路由的管理。 Knative Serving 对应用 Workload 的 Serverless 编排是从流量开始的。流量首 先达到 Knative 的 Gateway,Gateway 根据 Route 的配置自动把流量根据百分比拆 分到不同的 Revision 上,然后每一个 Revision 都有一个自己独立的弹性策略。当过来 的流量请求变多时,当前 Revision 就开始自动扩容。每一个 Revision 的扩容策略都是 独立的,相互不影响。 基于流量百分比对不同的 Revision 进行灰度,每一个 Revision 都有一个独立的弹 性策略。Knative Serving 通过对流量的控制实现了流量管理、弹性和灰度三者的完美结 合。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。