【问题标题】:Accessing Kafka clusters using DNS使用 DNS 访问 Kafka 集群
【发布时间】:2020-02-22 02:53:55
【问题描述】:

我们在生产系统中运行 Kafka 集群(3 个物理节点),我们的应用程序将事件推送到 Kafka,这些事件由某个 diff 团队拥有的 Kafka 消费者消费。

问题:现在,每当我们在数据中心进行更改时,让从 DC1 到 DC2,我们的 Kafka IP 都会发生更改,我们必须要求我们的消费者更改 IP 并在他们的结局,我觉得很奇怪。

问题:我们有什么办法可以在 DNS 后面公开 Kafka 代理并更改 DNS 后面的 IP,同时从 DC1 移动到 DC2,反之亦然,以避免在消费者端发生变化?我知道adverted.listeners,但这会起作用吗?我也担心安全问题。

【问题讨论】:

    标签: apache-kafka kafka-consumer-api


    【解决方案1】:

    您可以使用 VIP,然后在您的消费者应用程序配置中使用它, 所以暴露给 VIP 和实际 IP 的消费者应用程序可以改变,

    如下图

    kafka: bootstrap-servers: vip-host:9092

    请参阅为生产者提供的Kafka FAQs,但对消费者也应该以同样的方式工作

    此外,提出并采用此issue 可能有助于获取更多信息。

    【讨论】:

    • VIP 可能具有相同的 IP,但 Kafka 消费者正在尝试建立连接,这将如何工作?消费者需要重启吗? bcz 而不是创建 VIP,我们尝试为 3 个代理节点创建 3 个 DNS,但 Kafka 消费者仍然需要重新启动 DNS 更改 bcz Kafka 元数据没有为消费者刷新
    • @RE350 这是 Java DNS 缓存的问题,不是 Kafka
    • @cricket_007 这个问题不应该和元数据刷新间隔有关吗??
    • @RE3 你指的是哪个属性?
    猜你喜欢
    • 1970-01-01
    • 2022-08-13
    • 2018-07-23
    • 1970-01-01
    • 1970-01-01
    • 2019-06-18
    • 1970-01-01
    • 2022-08-04
    • 2020-10-08
    相关资源
    最近更新 更多