它如何与Envoy一起工作?
假设我配置了一个上游集群,如下所示:
clusters:
-
name: "service_a_cluster"
connect_timeout: "0.25s"
type: "strict_dns"
lb_policy: "ROUND_ROBIN"
hosts:
-
socket_address:
address: "service_a"
port_value: 8786
我的Envoy实例(ClusterManager?(将如何解析service_a
它将向谁发送DNS查询?
Envoy有进行解析的内部机制,这些机制都可以通过配置获得。看起来您使用的是Envoy v2 api,因此相关的高级配置位于此处的集群对象中。
如果您阅读了它,您会注意到hosts
字段引用了type
字段。这个type
字段告诉特使如何处理发现/解析。该机制的全部细节在这里。