knative serving开发环境搭建
knative serving开发环境搭建。本文基官方knative serving的开发环境搭建文档,加自己的实践,给出以下knative serving开发环境的搭建方案。开始之前请确保已按上面的开发环境搭建文档搭好Kubernetes(1.10以上)和istio。
knative serving开发环境搭建。本文基官方knative serving的开发环境搭建文档,加自己的实践,给出以下knative serving开发环境的搭建方案。开始之前请确保已按上面的开发环境搭建文档搭好Kubernetes(1.10以上)和istio。
service mesh社区的健康发展离不开控制面和数据面之间的标准化接口,从而使得无论是控制面的开发团队还是数据面的开发团队都可以集中精力依照统一标准开发。对此,istio社区中提出了xds这种data plane api,并号召开源社区的广泛参与和采用。本文着重分析istio项目中的xds主要存在形式,包括cds和eds
如下图所示,istio的pilot模块扮演服务注册中心、istio控制平面到Envoy之间的桥梁作用。pilot主要功能包括:1.监控服务注册中心(如Kubernetes)的服务注册情况。在Kubernetes环境下,会监控service、endpoint、pod、node等资源信息 2.监控istio控制面信息变化,在Kubernetes环境下,会监控包括RouteRule、 VirtualService、Gateway、EgressRule、ServiceEntry等以Kubernetes CRD形式存在的istio控制面配置信息。3.将上述两类信息合并组合为Envoy可以理解的(即遵循Envoy data plane api的)配置信息,并将这些信息以gRPC协议提供给Envoy
如istio官方关于pilot模块的架构图所示,istio中的agent模块负责的工作包括:1.生成envoy的配置;2.启动envoy;3.监控并管理envoy的运行状况,比如envoy出错时pilot-agent负责重启envoy,或者envoy配置变更后reload envoy。而envoy负责接受所有发往该pod的网络流量,分发所有从pod中发出的网络流量。
Copyright ©️ 2020 SEL Laboratory , ZJ University all rights reserved.