用于Zookeeper仲裁的Apache风暴Kafka SpoutConfig

时间:2018-02-20 09:01:17

标签: java apache-zookeeper apache-storm

要配置kafkaSpout,它需要BrokerHosts,而BrokerHosts host = new ZkHosts("server-1:2181"); SpoutConfig spoutConfig = new SpoutConfig(host, TopologyConstants.KAFKA_QUEUE.SOURCE, "/" + TopologyConstants.KAFKA_QUEUE.SOURCE, ID); KafkaSpout kafkaSpout = new KafkaSpout(spoutConfig); 又会占用一个zookeeper主机。

KafkaSpout

问题是,如果我有一个zookeeper仲裁(3个zk服务器的集群),我如何配置{{1}}以取得仲裁的所有成员而不是1。 由于一个zookeeper服务器可能会关闭,整个拓扑将不可用。

1 个答案:

答案 0 :(得分:0)

找到我的问题的答案: 连接字符串格式为"host1:port1,host2:port2,host3:port3..."(storm-kafka在引擎盖下使用Curator),因此只需向ZkHosts构造函数提供多个Zookeeper服务器URL