写点什么

腾讯云 Aeraki Mesh 正式成为 CNCF 沙箱项目:与 Istio 无缝集成,支持 Dubbo、Thrift、bRPC 等

  • 2022-06-16
  • 本文字数:1603 字

    阅读完需:约 5 分钟

腾讯云 Aeraki Mesh 正式成为 CNCF 沙箱项目:与 Istio 无缝集成,支持Dubbo、Thrift、bRPC等

6 月 16 日消息,全球顶级开源基金会 CNCF(云原生计算基金会)宣布,腾讯云服务网格开源项目Aeraki Mesh通过 CNCF 技术监督委员会评定,正式成为 CNCF 沙箱项目,也是国内首个加入 CNCF 的服务网格项目。后续该项目代码、文档、官网等内容的所有权将全面由 CNCF 基金会进行托管,项目的中立性和开放性将进一步提升。

 

根据介绍,Aeraki [Air-rah-ki] 是希腊语“微风”的意思,该命名的寓意是希望 Aeraki Mesh 这股“微风”能帮助 Istio 和 Kubernetes 在云原生的旅程中行得更快更远。Aeraki Mesh 的定位非常明确:只处理服务网格的非 HTTP 七层流量,将 HTTP 流量留给 Istio 。


Aeraki Mesh 架构

 

上图显示,Aeraki Mesh 由 Aeraki 和 MetaProtocol Proxy 两部分组成。

 

Aeraki 工作在控制面,为运维提供高层次、用户友好的流量管理规则,将规则转化为 envoy 代理配置,并利用 Istio 提供的标准接口将配置推送给数据面的 sidecar 代理。 Aeraki 还在控制面中充当了 MetaProtocol Proxy 的 RDS(路由发现服务)服务器。不同于专注于 HTTP 的 Envoy RDS,Aeraki RDS 旨在为所有七层协议提供通用的动态路由能力。

 

MetaProtocol Proxy 工作在数据面,是一个七层代理框架,为七层协议提供了常用的流量管理能力,如负载均衡、熔断、路由、本地/全局限流、故障注入、指标收集、调用跟踪等等。开发者可以基于 MetaProtocol Proxy 提供的通用能力创建自己专有协议的七层代理。

 

根据腾讯云高级工程师赵化冰介绍,开发者如果要在服务网格中加入一个新的协议,唯一需要做的是实现编解码器接口(通常只需数百行代码)和几行 yaml 配置。MetaProtocol Proxy 还提供了一个扩展机制,允许用户编写自己的七层过滤器,将自定义的逻辑加入 MetaProtocol Proxy 中。


MetaProtocol Proxy 架构

 

MetaProtcolProxy 对七层协议进行了高度抽象,提取了 Metadata 这个非常灵活的扩展机制。应用协议在解码过程中将协议中的关键属性填充到 Metadata 中,这些属性可以用于请求路由、限流等后续的七层 filter 处理。框架层将 Meatdata 作为透明的 key/value 值串进行处理,不需要理解协议的业务细节。该设计可以确保任何基于 MetaProtocol 开发的应用协议都能使用同一套控制面 API 进行管理,是 Aeraki 实现对  DubboThriftbRPC以及其他协议进行统一管理的基础。

 

同时,MetaProtocolProxy 还提供了 Mutation 数据结构,用于在编码时对数据包进行修改,例如增加/修改请求头的内容。MetaProtocolProxy 处理请求过程如下:


据悉,早在 2017 年,腾讯云容器团队就选定 Istio 为技术路线,开始服务网格的相关研发工作。但 Istio 主要处理 HTTP 协议,微服务中经常使用到的其他协议,如 Dubbo、Thrift、Redis 以及私有协议等,只使用 Istio 无法对其进行服务治理。这也是服务网格落地的主要困难之一。

 

在这个过程中,腾讯云推出了一种非侵入的、高度可扩展的解决方案  Aeraki Mesh。根据赵化冰介绍,Aeraki Mesh 主要特点包括:

 

  • 和 Istio 无缝集成,是 Istio Ecosystem 集成推荐项目。开发者可以采用 Istio + Aeraki Mesh 来构建一个可以同时管理 HTTP 和其他七层协议​的全栈服务网格。​

  • 支持在 Istio 中管理 Dubbo、Thrift、Redis 等开源协议的流量。

  • 支持在 Istio 中管理私有协议的流量,只需数百行代码,对 Istio 无任何改动。

  • 支持请求级负载均衡,支持任意匹配条件的动态路由,全局和本地限流,流量镜像等强大的七层流量管理能力。

  • 提供丰富的请求级性能指标,包括请求时延、错误、数量等,支持分布式调用跟踪。

  • 对 Istio、Envoy 等上游开源项目完全无侵入,可以跟随上游项目进行快速迭代,充分利用上游项目新版本提供的新增能力。

 

据了解,Aeraki Mesh 由腾讯云主导,百度、灵雀云、腾讯音乐、滴滴、政采网等多家企业参与共建。此前,Aeraki Mesh 已加入 CNCF Landscape 云原生全景图,并经过 2022 冬奥会线上直播及央视频、腾讯音乐、小红书等多个超大型项目的实战检验。

2022-06-16 14:265775

评论

发布
暂无评论
发现更多内容

架构师第九周

Tulane

【架构师训练营 - week9 -1】作业

早睡早起

极客大学架构师训练营 0 期 week 08 作业

chun1123

hdfs 数据结构与算法

极客大学架构师训练营 0 期 week 08 学习笔记

chun1123

学习

第9周作业

王鑫龙

JVM垃圾回收原理&秒杀系统设计见解

潜默闻雨

第9周命题JVM回收&秒杀

慵秋

【架构师训练营】第 9 周总结

花生无翼

JVM垃圾回收与秒杀系统设计

走过路过飞过

架构师训练营第9周总结

王鑫龙

极客大学架构师训练营

《架构师训练营》第9周 命题作业

架构师训练营 week9 - 学习总结

devfan

week9 作业

Geek_z9dmvw

week 9 总结 JVM原理,编程优化

Geek_z9dmvw

垃圾回收算法及收集器介绍

考尔菲德

架构师课作业 - 第九周

Tulane

LeetCode题解:189. 旋转数组,环状替换,JavaScript,详细注释

Lee Chen

大前端 LeetCode

Java ThreadLocal

陈皮

JVM垃圾回收及秒杀系统设计

stars

极客大学架构师训练营 0 期 week 09 学习笔记

chun1123

学习 性能优化 秒杀系统

Typora 完美结合 PicGo,写作体验更佳!

逆锋起笔

程序员 写作 Typora markdown 图床

架构师必备的那些分布式事务解决方案!!

架构师修行之路

分布式 分布式事务 架构师

JVM 垃圾回收原理

纯纯

架构师训练营第 0 期第 9 周作业

无名氏

JVM 秒杀

第 09 周 JVM & 高性能 命题作业

Jaye

第9周-作业1

seng man

架构师训练营 week9

devfan

架构师课程第九周总结

dongge

Android VectorDrawable系列文章Review

teoking

android SVG

第9周-课后练习

Dawn

Week 09 总结

鱼_XueTr

腾讯云 Aeraki Mesh 正式成为 CNCF 沙箱项目:与 Istio 无缝集成,支持Dubbo、Thrift、bRPC等_服务革新_褚杏娟_InfoQ精选文章