2017-01-14 2 views
0

Я пытаюсь подключиться к удаленному клану kafka в шторме. Я использую следующий код:Как найти zkroot и clientid для SpoutConfig

Broker brokerForPartition0 = new Broker("208.113.164.114:9091"); 
      Broker brokerForPartition1 = new Broker("208.113.164.115:9092"); 
      Broker brokerForPartition2 = new Broker("208.113.164.117:9093"); 
      GlobalPartitionInformation partitionInfo = new GlobalPartitionInformation(); 
      partitionInfo.addPartition(0, brokerForPartition2);//mapping from partition 0 to brokerForPartition0 
    partitionInfo.addPartition(1, brokerForPartition0);//mapping from partition 1 to brokerForPartition1 
    partitionInfo.addPartition(2, brokerForPartition1);//mapping from partition 2 to brokerForPartition2 
    StaticHosts hosts = new StaticHosts(partitionInfo); 
    SpoutConfig spoutConfig = new SpoutConfig(hosts, "newImageTest","/brokers","console-consumer-61818"); 
    spoutConfig.scheme = new SchemeAsMultiScheme(new StringScheme()); 
    KafkaSpout kafkaSpout = new KafkaSpout(spoutConfig); 

В создании экземпляра spoutConfig, я должен положить как параметры zkroot и ClientId.

java public SpoutConfig(BrokerHosts hosts, String topic, String zkRoot, String id); 

Где я могу найти эти две информации? Или я должен их создать?

Спасибо!

ответ

0

От this documentation,

Spoutconfig является продолжением KafkaConfig, который поддерживает дополнительное поля с информацией Zookeeper подключения и для управления поведением специфичного для KafkaSpout. Zkroot будет использоваться как root для хранения вашего . Идентификатор должен однозначно идентифицировать ваш носик.

Zkroot, поэтому должен быть какой-то ZNode путь как /some/path который будет использоваться для хранения потребителя компенсировано как упомянуто.

id - это некоторая строка, (например, UUID), которая может использоваться для уникальной идентификации вашего носика, как упомянуто.

Смежные вопросы