Aeraki Mesh 正式成为CNCF沙箱项目,腾讯云携手合作伙伴加速服务网格成熟商用

作者:腾讯云高级工程师 赵化冰

刚刚获悉,由腾讯云主导,联合百度、灵雀云、腾讯音乐、滴滴、政采网等多家合作伙伴发起的服务网格开源项目 Aeraki Mesh 通过了全球顶级开源基金会云原生计算基金会(CNCF)技术监督委员会评定,正式成为CNCF 沙箱项目。这意味着 Aeraki Mesh 得到了云原生开源社区的认可,而且加入 CNCF 也保证了项目的中立和开源开放,为 Aeraki Mesh 在云原生生态系统的进一步发展迈出了坚定的一步。

Aeraki Mesh 加入 CNCF 的这个时间点,恰好在Istio 宣布将 Istio 捐赠给 CNCF 基金会不久。作为 Service Mesh 开源领域的领军项目,Istio 受到了广大开发者的欢迎,加入 CNCF 标志着 Istio 和 K8s,Knative 三大云原生容器自动化框架纳入了同一个治理架构,Istio 和 CNCF 中其他的项目之间的合作将更为密切顺畅,也为 Istio 成为 Service Mesh 领域的事实标准扫清了最后的障碍。然而 Istio 虽然强大,但主要处理 HTTP 协议,将其他协议看做 TCP 流量,这是服务网格在产品落地时遇到的主要问题之一。在微服务中经常会使用到其他的协议,例如 Dubbo、Thrift、Redis,以及私有协议等。只使用 Istio 无法对这些流量进行服务治理。Aeraki Mesh 提供了一种非侵入的、高度可扩展的解决方案来管理服务网格中的任何七层流量。Aeraki Mesh 在此时间节点加入 CNCF,在 Istio 中为非 HTTP 协议提供了和 HTTP 协议同等的治理能力,加速了服务网格成熟商用和产品落地的进程。

Aeraki [Air-rah-ki] 是希腊语 ”微风“ 的意思。 该命名的寓意是希望 Aeraki Mesh 这股“微风”能帮助 Istio 和 Kubernetes 在云原生的旅程中行得更快更远。Aeraki Mesh 的定位非常明确:只处理服务网格的非 HTTP 七层流量,将 HTTP 流量留给 Istio 。(我们认为现有的项目已经足够优秀,不必重新造轮子)。

在这里插入图片描述
Aeraki Mesh 架构

正如该图所示,Aeraki Mesh 由以下两部分组成

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

MetaProtocol Proxy: MetaProtocol Proxy 工作在数据面,是一个七层代理框架,为七层协议提供了常用的流量管理能力,如负载均衡、熔断、路由、本地/全局限流、故障注入、指标收集、调用跟踪等等。我们可以基于 MetaProtocol Proxy 提供的通用能力创建自己专有协议的七层代理。要在服务网格中加入一个新的协议,唯一需要做的就是实现 编解码器接口 (通常只需数百行代码)和几行 yaml 配置。如果有特殊的要求,而内置的功能又不能满足,MetaProtocol Proxy 还提供了一个扩展机制,允许用户编写自己的七层过滤器,将自定义的逻辑加入 MetaProtocol Proxy 中。

MetaProtocol Proxy 中已经支持了 Dubbo, Thrift ,bRPC 和一系列私有协议。如果你正在使用一个闭源的专有协议,也可以在服务网格中管理它,只需为它编写一个 MetaProtocol 编解码器即可。

在这里插入图片描述
MetaProtocol Proxy 架构

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

下图是 MetaProtocolProxy 处理一个请求处理的过程:

在这里插入图片描述
MetaProtocol Proxy 请求处理流程

Aeraki Mesh 的主要特点:

  • 和 Istio 无缝集成,是 Istio Ecosystem 集成推荐项目。您可以采用 Istio + Aeraki Mesh
    来构建一个可以同时管理 HTTP 和其他七层协议的全栈服务网格。
  • 支持在 Istio 中管理 Dubbo、Thrift、Redis 等开源协议的流量。
  • 支持在 Istio 中管理私有协议的流量,只需数百行代码,对 Istio 无任何改动。
  • 支持请求级负载均衡,支持任意匹配条件的动态路由,全局和本地限流,流量镜像等强大的七层流量管理能力。
  • 提供丰富的请求级性能指标,包括请求时延、错误、数量等,支持分布式调用跟踪。
  • 对 Istio,Envoy 等上游开源项目完全无侵入,可以跟随上游项目进行快速迭代,充分利用上游项目新版本提供的新增能力。

Aeraki Mesh 已经在央视频、腾讯音乐等大型项目中产品化落地,并经过了 2022 冬奥会线上大规模流量的实战检验。目前有多个产品正在接入测试中。百度、灵雀云、滴滴、政采云等多个合作伙伴已经加入社区进行共建。

Aeraki Mesh 社区正在大力发展中,欢迎大家加入!
安装试用: https://www.aeraki.net/zh/docs/v1.0/quickstart/
加入社区会议: https://www.aeraki.net/zh/community/#community-meetings
Star 一下: https://github.com/aeraki-mesh/aeraki

Aeraki Mesh 产品落地实践:
Istiocon 2022 分享:Istio + Aeraki 在腾讯音乐的服务网格落地 | Aeraki Mesh
腾讯云原生分享:Areaki Mesh 在 2022 冬奥会视频直播应用中的服务网格实践 | Aeraki Mesh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/68745.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文纵览Umi‘s Friends生态,GameFi浪潮的变革者

以“P2E”为特性的 GameFi,代表着游戏时代的新盈利模式,它将 NFT 或其他形式的代币化资产作为游戏内容,游戏内资产的寿命会,则随着这些资产继续存在于玩家的钱包中而延长(即便游戏关闭),资产的互…

一个骨灰级玩家的游戏加速器使用心得分享

骨灰级玩家可能算不上,但绝对算得上是一个stream的忠实玩家。虽然不能像大部分玩家一样天天吃鸡,但是作为一个stream的忠实玩家,也会经常玩《CSGO》、《全境封锁》、《GAT5》之类的游戏。在steam上也前前后后大概买了六七款游戏。 玩单机游戏…

高校如何学习思政课程?关键技术是这个

高校多方位多角度动态的进行质量监控,不断促进思政课程转变教学理念、改革教学方法,提高思政课的针对性、吸引力和感染力。 思政课程是高校落实立德树人根本任务,推进三全育人纵深发展的关键环节,与作为立德树人关键课程的思政课同…

AI in Finance<量化交易人工智能金融投资>(上)

投资有风险,操作需谨慎!!!! 本文为个人笔记,请审核通过,谢谢 不管多么优秀的统计模型都有局限,风险控制永远都要放到第一位! 分散化不要把鸡蛋放在一个篮子里&#xff0…

chatgpt赋能python:Python考试怎么办?一份高效备考指南

Python考试怎么办?一份高效备考指南 作为一名有10年Python编程经验的工程师,笔者认为在备考Python考试时需要注意以下几点: 1. 了解考试内容和考试形式 在备考时需要明确Python考试的大致内容和考试形式。Python考试通常包含Python基础语法…

chatgpt赋能python:Python考级指南:如何成功通过Python等级认证考试

Python考级指南:如何成功通过Python等级认证考试 Python是一门非常流行的编程语言,尤其在数据分析、人工智能和机器学习领域中非常受欢迎。Python的高级特性、易读性和可扩展性,使其成为越来越多企业和组织中必不可少的一部分。因此&#xf…

chatgpt赋能python:Python怎么考?全面解析Python相关考试内容及考试技巧

Python怎么考?全面解析Python相关考试内容及考试技巧 Python是一种高级编程语言,广泛应用于人工智能、数据分析、Web应用程序和游戏等领域。因此,Python也成为互联网公司招聘的热门技能之一。但是,如何有效地备考Python相关考试&…

《Web应用技术》期末复习(END)

说明:不知道是哪位兄台在群里说了一句,整的我压力山大。这是我个人的期末复习梳理,自己使用并且提供给几位有需要的朋友使用,并不确定期末考试考不考这些。请大家视情况查看和使用,如果有错误,也欢迎大家找…

刘赖简介——同泰国医馆专家介绍

刘赖,1961年出生,毕业于成都中医药大学,后就职于河北省华北油田总医院,主治医师。现任同泰国医馆咨询专家。 从事中医临床工作32年,精于中医内科、皮肤科,擅长于治疗男性性功能减弱和女性内分泌失调导致的…

选品推荐|shopee|lazada泰国热销的5大品类

泰国电商市场最热卖品类都有哪些? 2021年跟着Shopee. Lazada出海东南亚,跨境卖家应重点关注的市场之一便是泰国:泰国电商增长潜力巨大,至2025年将达130亿美金,在东南亚排名第三;Shopee Lazada跨境泰国站在机器翻译、SLS LGS及运营支持方面深耕已久,效能全面提升,2021年…

泰国地图高清中文版 电子版​

泰国地图高清中文版 电子版 软件大小:1.19MB 软件语言:简体中文 软件类别:图像浏览 软件授权:官方版 更新时间:2015-01-28 应用平台:/Win8/Win7/WinXP 泰国地图高清中文版完整的介绍了泰国的国土&#xff0…

泰国TISI标志LOGO

PCN 提供文章 The Product certification schemes of TISI Consists of 2 Types with different certification marks. TISI 的产品认证方案包括两种不同的认证标志 Voluntray Certification markmandatory certification mark 自愿性认证标志和强制性认证标志。 备注:所谓的…

Chrome浏览器扩展的写法

Chrome浏览器扩展写法 1.写在前面2.前言2.1. 什么是Chrome插件2.2. 学习Chrome插件开发有什么意义2.3. 为什么是Chrome插件而不是Firefox插件 3.开发与调试4. 核心介绍4.1. manifest.jsonbackgroundevent-pagespopupinjected-scripthomepage_url 5.Chrome插件的8种展示形式5.1 …

chatgpt赋能python:Python怎么横着输出?

Python怎么横着输出? 如果你是一名有10年Python编程经验的工程师,你一定已经经历过许多项目,很可能你曾经需要对代码进行一些横向格式化或输出。Python作为一种高级编程语言,有各种各样的技巧和技能。在本文中,我们将…

面板回归分析操作步骤

面板数据(panel data)是指不同对象在不同时间上的指标数据。目前面板数据被广泛地应用于经济研究中。本文简单介绍下,使用SPSSAU进行面板数据回归分析步骤。 一、数据格式 下图中,展示的就是一个面板数据的例子。数据为9个地区20…

利用python进行回归分析

通常大家会认为曲线拟合和回归分析类似,但其实回归分析中是包含曲线拟合的。拟合是研究因变量和自变量的函数关系的。而回归是研究随机变量间的相关关系的。拟合侧重于调整参数,使得与给出的数据相符合。而回归则是侧重于研究变量的关系,对拟…

数据分析之回归分析

回归分析 1、概述2、分类3、线性回归3.1 单变量线性回归3.2 多变量线性回归3.3 线性回归分析的步骤: 4、评价回归算法的指标5、Excel 实践 1、概述 \quad \quad 回归分析(Regression)是确定两种或两种以上变数间相互依赖的定量关系的一种统计…

用Excel做回归分析

Excel数据分析工具库是个很强大的工具,可以满足基本的统计分析,这里介绍用Excel数据分析工具库中的回归做回归分析。本文仅作为学习笔记之用,欢迎各位交流指正。 本节知识点: Excel数据分析工具库—回归 线性回归和非线性回归 简…

《数据分析实战》--用R做多元回归分析

《数据分析实战》——用R做多元回归分析 本文参考的是《数据分析实战》的第六章。 背景:针对某公司对产品的不同广告平台投放,基于过去的新增用户数据和投放数据,希望获得更好的广告投放方式,以此建立数据模型。 现状&#xff…

公众号运营5大技巧,自媒体人非常适用

互联网时代,公众号算是一种很常见的一种推广渠道,常用的方式就是通过公众号来推广内容,传递信息,表达自己的观点,宣传自己的品牌等。今天就和大家分享一下公众号新手如何开展运营。 1.明确定位 首先要做的&#xff0c…