1、 Istio 虽然强大,但主要处理 HTTP 协议,将其他协议看做 TCP 流量,这是服务网格在产品落地时遇到的主要问题之一。在微服务中经常会使用到其他的协议,例如 Dubbo、Thrift、Redis,以及私有协议等。只使用 Istio 无法对这些流量进行服务治理。Aeraki Mesh 提供了一种非侵入的、高度可扩展的解决方案来管理服务网格中的任何七层流量。在 Istio 中为非 HTTP 协议提供了和 HTTP 协议同等的治理能力,加速了服务网格成熟商用和产品落地的进程。
——Aeraki Mesh 的定位非常明确:只处理服务网格的非 HTTP 七层流量,将 HTTP 流量留给 Istio 。
采用 Istio + Aeraki Mesh 来构建一个可以同时管理 HTTP 和其他七层协议的全栈服务网格。支持在 Istio 中管理 Dubbo、Thrift、Redis 等开源协议的流量。
Aeraki 和 Istio 工作在控制面,数据面则由 Envoy sidecar 组成。Aeraki 在控制面提供了 RedisService 和 RedisDestination 两个用户友好的 Kubernetes CRD 来作为面向运维的操作接口,并将用户配置的流量规则转换为数据面配置,通过 xDS 下发到 Envoy Sidecar。Envoy Sidecar 拦截 Redis client 的请求,并根据控制面下发的配置提供相关的流量管理能力。——Database Mesh: 使用 Aeraki 对 Redis 进行流量管理-赵化冰的博客 | Zhaohuabing Blog
- 通过配置 RedisDestination 中的模式为 CLUSTER,Aeraki Mesh 可以为我们屏蔽 Cluster 模式和独立模式的差异。
- 使用 Aeraki Mesh 来对 Redis 进行流量治理,包括流量路由、流量镜像、故障注入等功能。
2、Kubernetes Gateway API 是 Kubernetes 1.18 版本引入的一种新的 API 规范,是 Kubernetes 官方正在开发的新的 API,Ingress 是 Kubernetes 已有的 API。Gateway API 会成为 Ingress 的下一代替代方案。Gateway API 提供更丰富的功能,支持 TCP、UDP、TLS 等,不仅仅是 HTTP。
Kubernetes Gateway API 深入解读和落地指南 | 云原生社区(中国) (cloudnative.to)
3、