DNS 层将服务发现作为解析器而不是 SRV

swe*_*web 3 domain-name-system load-balancing healthcheck consul

我需要知道是否有任何解决方案可以解决我的问题。我有一个 BIND DNS 服务器和 consul 作为服务发现者。这就是我想要的简单图:

在此输入图像描述

如何配置此示例设置并让 BIND 将 A 记录解析为运行状况良好的负载均衡器服务器的 IP 地址?

如果客户端向 DNS 服务器查询 的 A 记录,则必须获取Healthy ( ) 服务器domain.example的 IP 地址192.168.1.100

consul for DNS 的示例配置显示了如何配置 SRV 记录,而不是 A 记录。我怎样才能让它与健康服务器的 A 记录一起工作。

我需要告诉领事绑定询问记录,但是怎么做呢?我的示例区域文件:

$TTL    300 ;
$ORIGIN example.com.
@  1D  IN  SOA ns1.example.com. hostmaster.example.com. (
                2002022401 ; serial
                3H ; refresh
                15 ; retry
                1w ; expire
                3h ; nxdomain ttl
               )
www    IN  A      192.168.0.2  ; how can i tell bind using consul as IP resolver on this record
Run Code Online (Sandbox Code Playgroud)

领事使用端口进行解析,我如何告诉绑定使用领事。

Tom*_*iie 5

我相信大家都过于关注BIND服务器了。根据Consul文档,您只需要BIND即可将DNS查询从端口53转发到Consul使用的端口8600。Consul 是此设置中的 DNS 服务器。

Consul 使用检查来确定两个(或多个)服务器中哪一个是“健康”的。

接下来,它可以使用A 和 SRV 记录进行响应,如文档中所示。

因此,与其要求我们阅读整个 Consul 文档并为您提供一个工作配置,不如您向我们提供您的配置文件并告诉我们哪些内容未按预期工作。这样我们就可以更轻松地帮助您解决手头的问题。

我需要告诉领事绑定询问记录,但是怎么做呢?

该确切问题的答案在文档中给出!请阅读文档!