• CDS(集群发现服务)
    • 统计
    • 参考

    CDS(集群发现服务)

    集群发现服务(CDS)是一个可选的 API,Envoy 将调用该 API 来动态获取 cluster manager 的成员。Envoy 还将根据 API 响应协调集群管理,根据需要完成添加、修改或删除已知的集群。

    关于 Envoy 是如何通过 CDS 从 pilot-discovery 服务中获取的 cluster 配置,请参考 Service Mesh深度学习系列part3—istio源码分析之pilot-discovery模块分析(续)一文中的 CDS 服务部分。

    注意

    • 在 Envoy 配置中静态定义的 cluster 不能通过 CDS API 进行修改或删除。

    • Envoy 从 1.9 版本开始已不再支持 v1 API。

    • v2 CDS API

    统计

    CDS 的统计树以 cluster_manager.cds. 为根,统计如下:

    名字 类型 描述
    config_reload Counter 因配置不同而导致配置重新加载的总次数
    update_attempt Counter 尝试调用配置加载 API 的总次数
    update_success Counter 调用配置加载 API 成功的总次数
    update_failure Counter 调用配置加载 API 因网络错误的失败总数
    update_rejected Counter 调用配置加载 API 因 schema/验证错误的失败总次数
    version Gauge 来自上次成功调用配置加载API的内容哈希
    control_plane.connected_state Gauge 布尔值,用来表示与管理服务器的连接状态,1表示已连接,0表示断开连接

    参考

    • Service Mesh深度学习系列part3—istio源码分析之pilot-discovery模块分析(续)- servicemesher.com
    • Cluster discovery service - envoyproxy.io