Кафка-докер: не может создавать сообщения - PullRequest
0 голосов
/ 06 мая 2018

Я настроил kafka в Docker-контейнере, используя этот проект https://github.com/wurstmeister/kafka-docker. Я могу успешно создавать и перечислять темы по нему, но как только я пытаюсь создать сообщение с

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

или

bin/kafka-console-producer.sh --broker-list 0.0.0.0:9092 --topic test

Я получаю следующую ошибку:

ОШИБКА Ошибка при отправке сообщения в тест темы с ключом: ноль, значение: 4 байта с ошибкой: (Org.apache.kafka.clients.producer.internals.ErrorLoggingCallback) org.apache.kafka.common.errors.TimeoutException: срок истекает 1 запись (и) для теста 0: прошло 1536 мс с момента создания партии плюс время ожидания

Мой docker-compose.yml выглядит так:

version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka:
    build: .
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: docker.for.mac.localhost
      KAFKA_ADVERTISED_PORT: 9092
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

Я пробовал разные опции для свойства KAFKA_ADVERTISED_HOST_NAME , включая docker.for.mac.localhost , который должен быть разрешен как фактический ip хоста докера, и 0.0 .0.0 , но результат тот же.

Ответы [ 2 ]

0 голосов
/ 18 ноября 2018

Не используйте локальные IP-адреса, такие как 127.0.0.1. Вместо этого используйте настоящий IP.

0 голосов
/ 28 июня 2018

Вы можете попробовать с этим docker-compose, он работает для меня:

version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    stdin_open: true
    tty: true
    ports:
    - 2181:2181/tcp
  kafka:
    image: wurstmeister/kafka:0.11.0.1
    environment:
      KAFKA_CREATE_TOPICS: test:1:1
      KAFKA_ZOOKEEPER_CONNECT: <<HOST_IP>>:2181
      KAFKA_ADVERTISED_HOST_NAME: <<HOST_IP>>
      KAFKA_ADVERTISED_PORT: '9092'
      KAFKA_BROKER_ID: '999'
    stdin_open: true
    tty: true
    links:
    - zookeeper:zookeeper
    ports:
    - 9092:9092/tcp
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...