Kafka в докере: нет соединения с узлом с идентификатором 1Python

Программы на Python
Ответить
Anonymous
 Kafka в докере: нет соединения с узлом с идентификатором 1

Сообщение Anonymous »

Я пытаюсь отправить данные в локальную инфраструктуру Kafka
Моя инфраструктура:
version: "3.8"

services:
zookeeper:
image: bitnami/zookeeper:latest
ports:
- 2181:2181
environment:
- ALLOW_ANONYMOUS_LOGIN=yes

kafka:
image: bitnami/kafka:latest
ports:
- 9092:9092
- 9093:9093
environment:
- KAFKA_BROKER_ID=1
- KAFKA_CFG_LISTENERS=PLAINTEXT://:9092
- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://127.0.0.1:9092
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
- ALLOW_PLAINTEXT_LISTENER=yes
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CLIENT:PLAINTEXT
- KAFKA_CFG_LISTENERS=CLIENT://:9092
- KAFKA_CFG_ADVERTISED_LISTENERS=CLIENT://kafka:9092
- KAFKA_CFG_INTER_BROKER_LISTENER_NAME=CLIENT
depends_on:
- zookeeper


Я пытаюсь отправить данные в Kafka:
import asyncio

from aiokafka import AIOKafkaProducer

async def send_to_kafka():
producer = AIOKafkaProducer(
bootstrap_servers='localhost:9092',
enable_idempotence=True)
await producer.start()
try:
await producer.send_and_wait("my_topic", b"Super message")
finally:
await producer.stop()

asyncio.run(send_to_kafka())

У меня ошибка:
Traceback (most recent call last):
File "tests/test_producer.py", line 16, in
asyncio.run(send_to_kafka())
File "/usr/local/Cellar/python@3.8/3.8.20/Frameworks/Python.framework/Versions/3.8/lib/python3.8/asyncio/runners.py", line 44, in run
return loop.run_until_complete(main)
File "/usr/local/Cellar/python@3.8/3.8.20/Frameworks/Python.framework/Versions/3.8/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
return future.result()
File "tests/test_producer.py", line 10, in send_to_kafka
await producer.start()
File "/Users/aamoskalenko/0_root_folder/02_dev/51_fetcher_new/Fetcher-Service/venv/lib/python3.8/site-packages/aiokafka/producer/producer.py", line 352, in start
await self.client.bootstrap()
File "/Users/aamoskalenko/0_root_folder/02_dev/51_fetcher_new/Fetcher-Service/venv/lib/python3.8/site-packages/aiokafka/client.py", line 269, in bootstrap
self._api_version = await self.check_version()
File "/Users/aamoskalenko/0_root_folder/02_dev/51_fetcher_new/Fetcher-Service/venv/lib/python3.8/site-packages/aiokafka/client.py", line 564, in check_version
raise KafkaConnectionError(f"No connection to node with id {node_id}")
aiokafka.errors.KafkaConnectionError: KafkaConnectionError: No connection to node with id 1
Unclosed AIOKafkaProducer

Также пытался заменить сервер начальной загрузки на
bootstrap_servers='kafka:9092',

Но все равно есть ошибка:
File "/Users/aamoskalenko/0_root_folder/02_dev/51_fetcher_new/Fetcher-Service/venv/lib/python3.8/site-packages/aiokafka/client.py", line 265, in bootstrap
raise KafkaConnectionError(f"Unable to bootstrap from {self.hosts}")
aiokafka.errors.KafkaConnectionError: KafkaConnectionError: Unable to bootstrap from [('kafka', 9092, )]
Unclosed AIOKafkaProducer


Подробнее здесь: https://stackoverflow.com/questions/792 ... -with-id-1
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»