producer 报错:
bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic test2
[2018-07-03 21:50:41,571] ERROR Error when sending message to topic test2 with key: null, value: 4 bytes with error:
(org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.TimeoutException: Failed to update metadata after 60000 ms.
consumer报错:
[root@rhel64-64bit kafka_2.12-0.10.2.1]# bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:90932
--from-beginning --topic test2
[2018-07-03 21:57:05,240] WARN Fetching topic metadata with correlation id 2 for topics [Set(test2)]
from broker [BrokerEndPoint(0,127.0.0.1,9092)] failed (kafka.client.ClientUtils$)
java.net.SocketTimeoutException
at sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:211)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:103)
at java.nio.channels.Channels$ReadableByteChannelImpl.read(Channels.java:385)
at org.apache.kafka.common.network.NetworkReceive.readFromReadableChannel(NetworkReceive.java:81)
at kafka.network.BlockingChannel.readCompletely(BlockingChannel.scala:129)
at kafka.network.BlockingChannel.receive(BlockingChannel.scala:120)
at kafka.producer.SyncProducer.liftedTree1$1(SyncProducer.scala:82)
at kafka.producer.SyncProducer.doSend(SyncProducer.scala:79)
at kafka.producer.SyncProducer.send(SyncProducer.scala:124)
at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:60)
at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:95)
at kafka.consumer.ConsumerFetcherManager$LeaderFinderThread.doWork(ConsumerFetcherManager.scala:72)
at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:63)
[2018-07-03 21:57:05,244] WARN [console-consumer-98962_rhel64-64bit-1530626133698-2b6c7348-leader-finder-thread],
Failed to find leader for Set(test2-0, test2-1) (kafka.consumer.ConsumerFetcherManager$LeaderFinderThread)
kafka.common.KafkaException: fetching topic metadata for topics [Set(test2)] from broker [ArrayBuffer(BrokerEndPoint(0,127.0.0.1,9092))] failed
at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:74)
at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:95)
at kafka.consumer.ConsumerFetcherManager$LeaderFinderThread.doWork(ConsumerFetcherManager.scala:72)
at kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:63)
Caused by: java.net.SocketTimeoutException
上面的报错可能原因1: 保证ip hostname port在配置文件中正确配置和/etc/hosts能解析通信
2: java版本和java 环境变量的设置
解决办法:
yum list java*
yum list installed|grep java
yum -y install java-1.8.0-openjdk*
[root@rhel64-64bit jre]# which java
/usr/bin/java
[root@rhel64-64bit jre]# whereis java
java: /usr/bin/java /etc/java /usr/lib/java /usr/share/java /usr/share/man/man1/java.1.gz
[root@rhel64-64bit jre]# ll /usr/bin/java
lrwxrwxrwx 1 root root 22 Jul 3 21:22 /usr/bin/java -> /etc/alternatives/java
[root@rhel64-64bit jre]# ll /etc/alternatives/java
lrwxrwxrwx 1 root root 46 Jul 3 21:22 /etc/alternatives/java -> /usr/lib/jvm/jre-1.8.0-openjdk.x86_64/bin/java
在/etc/profile:
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk.x86_64
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
source /etc/profile
[root@rhel64-64bit Desktop]# java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-b10)
OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode)