File "producer.py", line 6, in <module> producer = KafkaProducer(bootstrap_servers='localhost:9092') File "/home/hadoop/.local/lib/python3.5/site-packages/kafka/producer/kafka.py", line 383, in __init__ **self.config) File "/home/hadoop/.local/lib/python3.5/site-packages/kafka/client_async.py", line 244, in __init__ self.config['api_version'] = self.check_version(timeout=check_timeout) File "/home/hadoop/.local/lib/python3.5/site-packages/kafka/client_async.py", line 900, in check_version raise Errors.NoBrokersAvailable() kafka.errors.NoBrokersAvailable: NoBrokersAvailable
时间: 2023-12-05 17:05:27 浏览: 278
这个错误通常是 Kafka Producer 无法连接到 Kafka Broker 导致的。请检查以下几点:
1. 确保 Kafka Broker 正在运行,并且监听的地址和端口与 `bootstrap_servers` 参数指定的地址和端口一致。
2. 确保在 Kafka Broker 上创建了对应的 topic。
3. 确保防火墙没有阻止 Kafka Producer 访问 Kafka Broker。
如果以上三点都没有问题,请检查你的 Kafka 配置文件中的 `advertised.listeners` 参数是否正确配置。如果你的 Kafka 集群是在本地运行,可以将 `advertised.listeners` 参数设置为 `PLAINTEXT://localhost:9092`。
相关问题
Traceback (most recent call last): File "producer.py", line 6, in <module> producer = KafkaProducer(bootstrap_servers='localhost:9092') File "/home/hadoop/.local/lib/python3.5/site-packages/kafka/producer/kafka.py", line 383, in __init__ **self.config) File "/home/hadoop/.local/lib/python3.5/site-packages/kafka/client_async.py", line 244, in __init__ self.config['api_version'] = self.check_version(timeout=check_timeout) File "/home/hadoop/.local/lib/python3.5/site-packages/kafka/client_async.py", line 900, in check_version raise Errors.NoBrokersAvailable() kafka.errors.NoBrokersAvailable: NoBrokersAvailable
这个错误是由于 KafkaProducer 没有连接到 Kafka 集群引起的。你需要确保 Kafka 集群已经启动并且使用正确的 IP 和端口连接到 Kafka 集群。另外,你还需要检查 Kafka 生产者的配置,确保它们正确地配置了 Kafka 集群的 IP 和端口。如果你已经检查了这些问题,但是仍然无法解决问题,那么你可以查看 Kafka 集群的日志以获取更多的信息,以确定问题的根本原因。
阅读全文