系统架构¶
服务网格产品具有多网格管理以及多集群服务聚合治理的能力;用户可以在多云的环境中将不同来源的集群接入网格中,进行统一的流量管理与安全治理。
从整体架构上讲,服务网格产品可分为三个层面:全局管理模块、托管网格模块、被托管集群网格
-
全局管理模块
运行于独立的控制面集群 Global Service Cluster(以下简称 GSC),⽤于统⼀对多个服务⽹格进⾏管理,处理与终端⽤户的交互。 整个网格管理平台的资源配置、安全治理等主要业务逻辑都将在这⼀层进⾏构建。同时,也是和其它系统对接的主要承担模块,这样,将减少其它模块的适配成本。 因其不参与具体的服务治理事务,因此并不包含 Istio 相关组件。
-
托管网格模块
运行于 Mesh Control Plane Cluster(以下简称 MCPC),本质上也是用户工作集群,同时具备网格控制面的角色,一个 GSC 可以管理多个 MCPC。 Istio 等核心控制组件会安装在该集群,作为网格的核心控制平面,直接对本网格内的多个集群进行管理,进行统一的策略管控和服务发现,实际执行、下发各项流量策略和安全策略,并确保仅有写入 MCPC 的策略才会对整个网格生效。
-
被托管集群网格
处于一个网格中的实际工作集群中,包含了 Istio 的基本组件,但不会作为控制面使用,仅是提供一个类似管理代理的模式,主要负责边车注入、证书转发、xDS 转发等业务,同步来自 MCPC 的策略、服务注册信息下发至集群的所在业务 Sidecar。
贯穿整体架构的拓展模块主要有:观测模块、微服务平台/应用工作台
-
观测模块
可观测性完全由 Insight 处理,服务网格通过接口调用的方式获取流量指标信息绘制拓扑图,并直接调用 Istio 原生 grafana 为用户提供各项指标图表。
-
微服务平台/应用工作台
微服务平台可以通过网格对其微服务进行网格能力的赋能,方便用户通过单一平台对各类微服务系统做统一管理。
功能架构¶
如上图所示,服务网格提供了 9 个模块 12 个子模块功能,实现了多样化集群接入、多种模式的网格管理的能力。