Apache kafka Apache Kafka-bootstrap.servers中url的DNS解析失败(无法构造Kafka producer)
我用主机名构造kafka producer时遇到问题。 这就是我所做的 1) 我将host.name、port config设置为server.properties 2) 我将主机ip和别名添加到/etc/hosts 3) 使用iptables设置防火墙Apache kafka Apache Kafka-bootstrap.servers中url的DNS解析失败(无法构造Kafka producer),apache-kafka,Apache Kafka,我用主机名构造kafka producer时遇到问题。 这就是我所做的 1) 我将host.name、port config设置为server.properties 2) 我将主机ip和别名添加到/etc/hosts 3) 使用iptables设置防火墙 -A INPUT -p tcp -m tcp --dport 3888 -j ACCEPT -A INPUT -p tcp -m tcp --dport 2888 -j ACCEPT -A INPUT -p tcp -m tcp --dport
-A INPUT -p tcp -m tcp --dport 3888 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2888 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2181 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 9092 -j ACCEPT
4) 我用下面的配置构造生产者。
我设置了“主机名:端口”而不是“ip:端口”
运行生产者时发生异常。
这是错误日志。
我不明白为什么不能建造卡夫卡制作人。
请核对一下
线程“main”org.apache.kafka.common.KafkaException中的异常:*无法构造kafka生产者**
位于org.apache.kafka.clients.producer.KafkaProducer.(KafkaProducer.java:321)
位于org.apache.kafka.clients.producer.KafkaProducer.(KafkaProducer.java:181)
在com.lgcns.sep.kafka.producer.MessageSender.createProducer(MessageSender.java:47)
在com.lgcns.sep.kafka.producer.MessageSender.getInstance(MessageSender.java:22)上
位于com.lgcns.jartest.producerTest.main(producerTest.java:27)
原因:org.apache.kafka.common.config.ConfigException:*引导程序中url的DNS解析失败。服务器**:server002.sep.com:9092
位于org.apache.kafka.clients.ClientUtils.parseandvalidateAddress(ClientUtils.java:49)
位于org.apache.kafka.clients.producer.KafkaProducer.(KafkaProducer.java:269)
... 4更多
我正在使用两个虚拟机。具有kafka客户端java程序的1vm。第二个虚拟机具有所有卡夫卡设置。在vm2的server.properties文件中添加属性“host.name=hostname\u of_vm2\u not_localhost”,将其作为bootstrap.server值添加到vm1中的kafka客户端程序中
您应该从vm1终端启动vm2,否则您将得到该错误。我也得到了同样的
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.0.102 server002.sep.com
-A INPUT -p tcp -m tcp --dport 3888 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2888 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 2181 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 9092 -j ACCEPT
props = new Properties();
**props.put("bootstrap.servers", "server002.sep.com:9092");
props.put("acks", "0");
props.put("retries", "0");
Exception in thread "main" org.apache.kafka.common.KafkaException: **Failed to construct kafka producer**
at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:321)
at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:181)
at com.lgcns.sep.kafka.producer.MessageSender.createProducer(MessageSender.java:47)
at com.lgcns.sep.kafka.producer.MessageSender.getInstance(MessageSender.java:22)
at com.lgcns.jartest.producerTest.main(producerTest.java:27)
Caused by: org.apache.kafka.common.config.ConfigException: **DNS resolution failed for url in bootstrap.servers**: server002.sep.com:9092
at org.apache.kafka.clients.ClientUtils.parseAndValidateAddresses(ClientUtils.java:49)
at org.apache.kafka.clients.producer.KafkaProducer.<init>(KafkaProducer.java:269)
... 4 more