Xds (eXtensible Discovery Service)理解

Xds (eXtensible Discovery Service)理解

概念介绍

XDS:全称是 eXtensible Discovery Service,中文译为”可扩展的服务发现“。是一个扩展性的协议,可以用于配置和控制 Envoy 代理的各个方面,包括路由规则、负载均衡、健康检查等。XDS 协议的设计目标是支持大规模、动态和高可用的微服务架构。

组成

  1. RDS(Route Discovery Service):RDS 是 XDS 协议的一个组成部分,用于动态发现和配置 Envoy 代理的路由规则。RDS 定义了用于路由配置的接口和协议。
  2. LDS(Listener Discovery Service):LDS 是 XDS 协议的另一个组成部分,用于动态发现和配置 Envoy 代理的监听器。LDS 定义了用于监听器配置的接口和协议。
  3. CDS(Cluster Discovery Service):CDS 是 XDS 协议的一部分,用于动态发现和配置 Envoy 代理的集群信息。CDS 定义了用于集群配置的接口和协议。
  4. EDS(Endpoint Discovery Service):EDS 是 XDS 协议的一部分,用于动态发现和配置 Envoy 代理的终端节点(即后端服务)信息。EDS 定义了用于终端节点配置的接口和协议。
  5. SDS(Secret Discovery Service):SDS 是 XDS 协议的一部分,用于动态发现和配置 Envoy 代理所需的安全凭证(如证书、密钥等)。SDS 定义了用于安全凭证配置的接口和协议。

工作原理

XDS 的工作原理是 Envoy 代理与服务发现平台之间通过 XDS 协议进行通信,代理向平台注册自身并拉取配置信息,然后根据配置更新自身的状态和行为

Xds 在 Envoy 中的作用

Envoy 介绍

这里简单介绍一下 envoy :是一个高性能、可扩展的开源代理和通信中间件,由 Lyft 公司开发并贡献给 CNCF(Cloud Native Computing Foundation)。它被设计用于支持现代的云原生应用架构,并提供可靠的服务发现、负载均衡、流量管理和安全性等功能。(来自 gpt)

envoy 同 nginx 类似。

Envoy 和 Xds

上文中已经说明了 xds 协议的作用,就是通过 xds 来动态的更新 envoy 中的配置信息,更新 envoy 的行为和状态。对比 nginx 只能通过 reload 来重启 nginx 服务来刷新配置优秀的多。(nginx 也乐意通过 lua 插件来热重载)

Xds 在 Istio 中的作用

Istio 介绍

Istio 是一个开源的、可扩展的服务网格平台,用于解决微服务架构中的通信、安全性、可观察性和流量管理等。提供了一组功能强大的工具和组件,帮助用户更好地管理和控制微服务应用程序。

以下是 Istio 提供的主要功能和组件:

  1. 服务发现和负载均衡:Istio 使用 Envoy 作为其默认的数据平面代理,通过与服务发现平台集成,实现服务的自动发现和负载均衡。这使得 Istio 能够准确地路由请求到目标服务。
  2. 流量管理:Istio 提供了灵活的流量控制机制,包括智能路由、A/B 测试、金丝雀发布和故障注入等。这使得用户可以更好地控制和管理流量,确保应用程序的可靠性和弹性。
  3. 安全性:Istio 提供了丰富的安全功能,包括身份认证、授权、加密通信和访问控制等。它可以通过强制策略和安全控制来保护服务之间的通信,并提供细粒度的访问控制。
  4. 可观察性:Istio 提供了全面的可观察性工具,帮助用户了解和监控微服务的运行状况。这包括请求跟踪、指标收集、日志记录和分布式追踪等功能,使用户能够深入了解服务的性能和健康状况。
  5. 策略和配置管理:Istio 提供了一个控制平面,使用 Mixer 和 Pilot 组件来管理和配置服务的策略和行为。它通过与数据平面代理(如 Envoy)之间的 XDS 协议进行通信,实现动态的配置和更新。

Envoy 和 Istio

上文中说到的那样:Istio 使用 Envoy 作为其默认的数据平面代理,以提供服务之间的通信和流量管理。

Envoy 被用作 Istio 的数据平面组件,负责处理和路由应用程序之间的网络流量。Envoy 提供了丰富的功能,包括负载均衡、流量控制、故障恢复和安全性等,这些功能在 Istio 中被广泛使用。

Istio 和 xds

Istio 使用 XDS(Envoy的动态配置协议)来管理和配置其底层的 Envoy 代理。XDS 是Envoy代理与服务发现平台之间进行通信和配置的协议。

在这里插入图片描述

图中 Sidecar 即为 Envoy。

  • 17
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值