Конфигурационный кластер ZK_HOST по топологии шторма

Сейчас я только что успешно настроил свою топологию шторма с одним узлом на одной машине. Я использую KafkaSpout, как показано ниже:

String zkHostPort = "localhost:2181";
String topic = "sentences";

String zkRoot = "/kafka-sentence-spout";
String zkSpoutId = "sentence-spout";
ZkHosts zkHosts = new ZkHosts(zkHostPort);

SpoutConfig spoutCfg = new SpoutConfig(zkHosts, topic, zkRoot, zkSpoutId);
KafkaSpout kafkaSpout = new KafkaSpout(spoutCfg);
return kafkaSpout;

Теперь я установил кластер zookeeper (три узла: server1.com:2181, server2.com:2181. Server3.com:2181) и кластер kafka (три узла). Интересно, как я могу изменить код в Storm Topology для этой цели. Пожалуйста, помогите мне!!

1 ответ

Решение

Пожалуйста, используйте конфигурацию ниже:

String zkHostPort = "server1.com:2181,server2.com:2181,server3.com:2181";
String topic = "sentences";

String zkRoot = "/kafka-sentence-spout";
String zkSpoutId = "sentence-spout";
ZkHosts zkHosts = new ZkHosts(zkHostPort);

SpoutConfig spoutCfg = new SpoutConfig(zkHosts, topic, zkRoot, zkSpoutId);
KafkaSpout kafkaSpout = new KafkaSpout(spoutCfg);
return kafkaSpout;

Примечание: наиболее распространенная проблема здесь - это место между хостами после запятой, между хостами не должно быть места.

Правильный:

server1.com:2181,server2.com:2181,server3.com:2181

Неправильно:

server1.com:2181, server2.com:2181, server3.com:2181

Другие вопросы по тегам