云原生的年代service mesh不止Istio,还有另一个选择-Kuma

  

云原生的年代service mesh不止Istio,还有另一个选择-Kuma

  Kuma、Kuma

  什么是Kuma

  官方给出的解释:A modern distributed Control Plane with a bundled Envoy Proxy integration.

  (一个与Envoty代理组件捆绑在一起的现代化分布式控制平面)。

  简单来说Kuma就是基于Envoy作为数据平面的控制平面组件。

  可能很多人没听说Kuma,Kuma是Kong组织实现的Service Mesh控制平面,而数据面使用的是Envoy,跟Istio类似。

  (那么有人问了Kong又是哪个,大家如果看过我之前的文章话,应该会知道,Kong组织最出名的项目基于Openresty开发的API网关Kong)

  Kuma架构图

  Kuma因为与Kong是一家公司出品,所以其架构图看起来也一样,Kong最上面是一个猩猩,而这里是一只熊。

  熊下面都是Kuma自身所带的功能,包括路由、日志、自定义策略、Tracing、Service权限控制等等。

  最下层是服务Service,每个服务都携带一个代理(Envoy),下面两个紫色的图标是envoy,作为数据平面来真正的代理流量。

  

云原生的年代service mesh不止Istio,还有另一个选择-Kuma

  Kuma架构图

  Kuma加入CNCF黑盒

  在前几天,Kuma已经加入了CNCF,因为控制面板采用了CNCF家族已经毕业的Envoy,所以其可用性和未来应该还是挺不错的。

  

云原生的年代service mesh不止Istio,还有另一个选择-Kuma

  Kuma与Istio对比

  从架构上来讲,Kuma非常的简单,而Istio非常的复杂,组件繁多,流程复杂。安装部署、维护也是老大难的问题。而Istio自己也发现了这个问题,从今年年初发版的1.5版本开始逐步的减少组件、简化流程,一切为了实际生产。

  架构对比图如下

  

云原生的年代service mesh不止Istio,还有另一个选择-Kuma

  Kuma架构图

  

云原生的年代service mesh不止Istio,还有另一个选择-Kuma

  Istio 1.5以前架构

  

云原生的年代service mesh不止Istio,还有另一个选择-Kuma

  Istio 1.5之后的架构

  Kuma未来可期

  今天Kuma刚刚发布了0.6版本,虽然还是在0.x版本,但是已经有生产在使用了,而且因为其架构简单、安装部署运维入门简单,与Envoy的良好结合,所以前景也是非常不错的,在我们期待Istio的同时,看看身边其他的Service Mesh组件也是好的。

上一篇:Docker部署 Elasticsearch+Kibana+Cerebro 7.x版本


下一篇:服务网格和Istio初识