Создать несколько потребителей в Кафке в командной строке

Я новичок в Кафке. Когда я запустил пример быстрого запуска в командной строке, я обнаружил, что не могу создать несколько потребителей в командной строке.

Состояние:

Я создал тему с именем test с 3 разделами, а также создал продюсера по этой теме.

Затем я хотел создать двух разных потребителей с одной и той же группой потребителей с именем test1 по этой теме.

Я выполнил команду, как показано ниже:

   bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --group test1

Первый работал, но когда я запускался во второй раз, первый отключался, а второй работал.

Итак, как я могу создать двух или более потребителей в одной группе потребителей в командной строке?

    WARN Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect (org.apache.zookeeper.ClientCnxn)
java.net.ConnectException: Connection refused
    at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
    at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739)
    at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1146)

4 ответа

Помимо использования --consumer.config опцию, как ответ Secfree, вы также можете использовать

--consumer-property group.id=your_group

Возможность указать имя группы без редактирования файла конфигурации.

  1. По умолчанию, kafka-console-consumer.sh создаст случайную группу.
  2. Если вы хотите указать имя группы, вы можете:
    1. добавлять group.id=group_name в локальный файл filename
    2. использование --consumer.config filename вариант kafka-console-consumer.sh установить группу
  3. Вы можете проверить свои группы в зоопарке /consumers/ каталог.

См.: kafka / core / src / main / scala / kafka / tools / ConsoleConsumer.scala

Вы можете использовать команду ниже для создания потребителей в группе "test-consumer-group" для "test" раздела:

bin/kafka-console-consumer.sh --bootstrap-server <brokerIP>:9092 --topic test --consumer-property group.id=test-consumer-group

Ниже команда перечислит конфигурацию группы потребителей:

bin/kafka-consumer-groups.sh --bootstrap-server <brokerIP>:9092 --describe --group test-consumer-group

Например:

GROUP || TOPIC || PARTITION || CURRENT-OFFSET || LOG-END-OFFSET || LAG      || OWNER
test-consumer-group || test || 0 || 10 || 10 || 0 || consumer-1_/10.210.223.170

Использовать этот:

--partition <Integer: partition>        The partition to consume from. 

Когда вы используете тему без groupid Kafka, создайте случайный groupid для вашего сеанса. Вы можете указать groupid --consumer-property group.id=test-consumer-group, если groupid существует, или вы можете добавить в свой сеанс новый groupid(имя), когда вы используете, если группа не существует --topic second-topic --group my -first-group p и Kafka создадут новую группу

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