Redian新闻
>
Netflix 为 Envoy 开发新功能,实现零配置服务网格

Netflix 为 Envoy 开发新功能,实现零配置服务网格

科技

作者 | Claudio Masolo
译者 | 明知山
策划 | 丁晓昀

Netflix 在这篇文章中描述了他们为什么与 Envoy 社区和 Kinvolk 合作为 Lyft 开源的代理 Envoy 实现了一项新功能。这个叫作按需集群发现的新功能帮助 Netflix 实现了零配置服务网格。

进程间通信 (IPC) 对于 Netflix 来说至关重要。自 Netflix 从 2010 年将所有基础设施转移到云端 (AWS),就一直需要使用针对云原生环境的工具。其中一些工具是商业版的,一些是内部开发的。为了方便管理 IPC,Netflix 开发了用于服务发现的 Eureka 和用于 IPC 的 Ribbon。Eureka 的主要目标是用虚拟 IP(VIP) 抽象目标服务的名称,并且如果有必要的话还可以确保与安全虚拟 IP(VIP) 的安全通信。目标服务名称和通信类型 (安全或不安全) 是服务连接到另一个服务所需的信息。IPC 客户端使用目标 VIP 或 SVIP 实例化,Eureka 客户端负责 VIP 或 SVIP 和端口到 IP 的转换,从 Eureka 服务器获取信息。其缺点是从负载均衡器迁移到 Eureka 存在单点故障问题。

使用 Eureka 的 IPC

这种架构存在了很长时间,不过 Netflix 因为一些原因需要迁移到 服务网格,主要的三个原因如下:

  1. 现在使用了 RESTgraphQLgRPC 混合的 IPC 技术。

  2. 已经从 Java 基础架构迁移到了多语言架构。

  3. 向 IPC 客户端中添加功能。

Netflix 决定使用 Envoy 集中实现 IPC 功能集,并让使用各种语言开发的客户端尽可能简单。此外,Envoy 支持发现抽象(Discovery Abstraction),因此 IPC 客户端可以继续使用它。缺点是 Envoy 需要在代理配置中指定集群,这对 Netflix 架构来说是个问题,因为一个服务可能与十几个集群进行通信。此外,Netflix 的架构是不断变化的,这意味着集群会随着时间的推移而变化。为了解决这个问题,Netflix 团队调研了一些方案:

  • 让服务所有者定义他们的服务需要通信的集群。

  • 根据服务的调用图自动生成 Envoy 配置。

  • 将所有的集群信息推送给每个应用。

但所有这些方案都存在缺点,因此他们最终的解决方案是在运行时按需获取集群信息。为了实现这个解决方案,Envoy 需要一个新特性。于是,Envoy 社区、Netflix 和 Kinvolk 合作开发了按需集群发现 (ODCDS) 功能。现在,代理可以在第一次连接时查找集群信息。新的流程如下:

  1. 客户端的请求进入 Envoy;

  2. 根据主机地址提取目标集群信息。如果集群是已知的,进入步骤 7;

  3. 如果集群不存在,请求被暂停;

  4. 向控制平面上的集群发现服务 (CDS) 端点发出请求。控制平面根据服务的配置和 Eureka 注册信息生成自定义 CDS 响应;

  5. Envoy 拿到集群信息 (CDS),通过端点发现服务 (EDS) 拉取端点信息,然后根据 VIP 或 SVIP 的 Eureka 状态信息返回集群的端点;

  6. 客户端的请求继续;

  7. Envoy 像往常一样处理请求:使用负载均衡算法选择一个端点并发出请求。

使用 Eureka 和 Envoy 的 IPC

这个流程的执行速度为毫秒级,但在某些场景中,服务需要更低的延迟。为了解决这个问题,目前的解决方案有:

  1. 服务需在发出第一个请求之前预先定义目标集群或建立主要连接。

  2. 在代理启动时,根据历史请求模式从控制平面预推送集群信息。

Netflix 和 Envoy 社区将继续合作改进 Envoy。

原文链接

https://www.infoq.com/news/2023/09/zero-config-service-mesh-netflix/

声明:本文为 InfoQ 翻译,未经许可禁止转载。

点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!

今日好文推荐
微软裁员内幕
Angular 重磅回归
安息吧,元宇宙

裁错了还是变相降薪?大厂粗暴裁员后又求员工回来,网友:拿什么再爱你?

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
公募鏖战ETF,基金发行"冰火两重天"!何时实现"每四人就有一人买ETF"?金融服务实体经济 ETF助力高质量发展——上海国企ETF功能作用座谈会召开Amex Marriott Bonvoy Bevy 信用卡【125k 开卡奖励】倾听者K5值得买吗?不尬吹!颠覆性创新功能,实力诠释“省妈神器”!K5全新上市 | 不尬吹!颠覆性创新功能,实力诠释“省妈神器”!STTT | 同济大学房健民等团队开发新的方法,实现新抗原设计万豪酒店会员 (Marriott Bonvoy) 促销活动【Q4 促销上线,每次入住 1500 分,每3个品牌 3000 分】5131 血壮山河之武汉会战 信罗战役 4你好,我是筚(bì)篥( lì)!开发成本降至5%!OpenAI计划推出新功能吸引开发者,也稳住用他们模型亏损的“大冤种”客户ETF逆市“吸金”!Global X ETFs首席投资官重磅解析ETF大时代下的关键趋势【络绎GO本周项目】柔性脑机接口技术、VOCs网格化监测技术注意iPhone更新后这个新功能,美国警方向家长发出警告被车企“抛弃”的车主:质保不敢想,零配件也拿不到红色日记 5.1-10Chase Marriott Bonvoy Boundless 信用卡:5FN 开卡奖励!Woolies推出“会员价”新功能,澳洲购物者却怒了!“本来就是特价的商品,现在更贵了...”裁掉所有码农,关闭核心业务,Convoy濒临破产!!!西雅图中华女子操练队火了;估值38亿美元的西雅图初创公司Convoy经历完美风暴;谁更能代表你?西雅图市议员候选人的观点一览表万豪酒店会员 (Marriott Bonvoy) 促销活动更新:Home & Villas 双倍房晚(仅限钛金和大使)iOS 17.0.3将修复iPhone 15 Pro过热问题/诺贝尔物理学奖授予阿秒激光/Netflix 计划再次涨价从服务网格看,如何做好通用的网络性能优化?Spotify 开源 ANN 搜索库 Voyager,比Annoy快10倍有点炸裂!拼多多新功能,重要性堪比朋友圈?2024求职季|Netflix (US) 已开放Software Engineer暑期实习岗老海归给首长会诊《花信风之立秋》“氢舟”,实现零的突破!iOS17正式推出这6大超好用新功能,快更新尝鲜AmEx Marriott Bonvoy Business 商业信用卡【2023.9 更新:125k 开卡奖励】注意!iPhone更新后这个新功能,警方向家长发出警告《金缕曲 - 立秋》AmEx Marriott Bonvoy Brilliant 信用卡【2 FN (up to 85k) 开卡奖励】Netflix 年费涨了,大家会退订吗?2024年临时居民也能享受新移民安置服务了!帮忙找工作、学语言!专访丨积家CEO Catherine Rénier:情感联结和艺术表达对腕表也至关重要
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。