我有一个关于 AWS 上的 Kafka 代理集群的问题。现在集群前面有一个 AWS ELB,但是当我将生产者或消费者的“bootstrap.servers”属性设置为我的 ELB 的“A”记录(和正确的端口号)时,生产者和消费者无法分别生产和消费消息。我已关闭代理上的所有 SSL,并通过 PLAINTEXT 9092 端口进行连接,我的 ELB 使用该端口将端口 1234 转发到 9092。因此,例如,在我的 Producer Configs 属性中,我将拥有...
bootstrap.servers =(ELB的“A”记录):1234
更多信息:
有人在 ELB 后面运行 Kafka 有什么运气吗?如果是这样,请帮帮我!
最佳答案
您可以使用 ELB 作为 bootstrap.servers
,但客户端仍然需要直接访问代理。 ELB 将用于客户端发出的初始元数据请求,以确定哪些主题分区在哪些代理上,但之后它将使用服务器的主机名(或 advertised.listeners
设置,如果您需要自定义它, ,例如在 EC2 实例上可能需要获取服务器的公共(public) IP)。
关于apache-kafka - Kafka在broker集群前是否支持ELB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38666795/