在第一次搭建kafka集群遇到了很多的错误,在网上搜索了很多,在这里,我把我搭建kafka环境遇到的问题汇总一下。

  • 1. kafka启动后秒退。
  • 2.升级jdk为jdk-8u181后,再次启动kafka,依然闪退。
  • 3.修改好之后重新启动kafka,发现其中有一台节点的kafka没有闪退,其他两台会存在1分钟之后依然退出。
  • 修改好之后,再次启动,一切正常,kafka也不会闪退了


1. kafka启动后秒退。

在搭建好环境,首先打开zookeeper,然后使用命令bin/kafka-server-start.sh -daemon config/server.properties启动kafka后,kafka进程会存在几秒钟,之后直接秒退,三台节点都是这样。启动不了之后打开logs(该文件夹为搭建环境时创建的日志文件夹,以自己创建的为主)文件夹下的server.log文件:
Exception in thread “main” java.lang.VerifyError: Uninitialized object exists on backward branch 209
Exception Details:

Location:
 scala/collection/immutable/HashMap$HashTrieMap.split()Lscala/collection/immutable/Seq; @249: goto
 Reason:
 Error exists in the bytecode
 Bytecode:
 0x0000000: 2ab6 0060 04a0 001e b200 b8b2 00bd 04bd
 0x0000010: 0002 5903 2a53 c000 bfb6 00c3 b600 c7c0
 0x0000020: 00c9 b02a b600 36b8 0040 3c1b 04a4 015e
 0x0000030: 1b05 6c3d 2a1b 056c 2ab6 0036 b700 cb3e
 0x0000040: 2ab6 0036 021d 787e 3604 2ab6 0036 0210
 0x0000050: 201d 647c 7e36 05bb 0019 59b2 00bd 2ab6
 0x0000060: 0038 c000 bfb6 00cf b700 d21c b600 d63a
 0x0000070: 0619 06c6 001a 1906 b600 dac0 0086 3a07
 0x0000080: 1906 b600 ddc0 0086 3a08 a700 0dbb 00df
 0x0000090: 5919 06b7 00e2 bf19 073a 0919 083a 0abb
 0x00000a0: 0002 5915 0419 09bb 0019 59b2 00bd 1909
 0x00000b0: c000 bfb6 00cf b700 d203 b800 e83a 0e3a
 0x00000c0: 0d03 190d b900 ec01 0019 0e3a 1136 1036
 0x00000d0: 0f15 0f15 109f 0027 150f 0460 1510 190d
 0x00000e0: 150f b900 ef02 00c0 0005 3a17 1911 1917
 0x00000f0: b800 f33a 1136 1036 0fa7 ffd8 1911 b800


解决方法:这种情况其实挺常见的,主要就是jdk的版本兼容,将jdk升级为jdk-8u181。

2.升级jdk为jdk-8u181后,再次启动kafka,依然闪退。

再次打开日志文件:zookeeper.connect" which has no default value

看到这个,基本可以断定是因为zookeeper的问题,在网上搜索,发现可能是因为zookeeper版本和kafka版本之间不兼容。

解决方法:打开kafka的libs文件夹:

kafka 如果异常还会消费吗 kafka异常退出_闪退


可以看到该版本的kafka中下的jar包是3.5.7版本的,而我用的是3.6的,卸载该zookeeper,下载对应版本的。

3.修改好之后重新启动kafka,发现其中有一台节点的kafka没有闪退,其他两台会存在1分钟之后依然退出。

其实这个问题是因为自己太粗心了,对于后面两台节点的listeners后没有加上ip地址。

解决方法:

kafka 如果异常还会消费吗 kafka异常退出_闪退_02

修改好之后,再次启动,一切正常,kafka也不会闪退了

这次遇到的问题主要就是这三个,出现问题后在网上搜索了很多,其中内存也有可能是导致kafka闪退的原因之一,虽然我并没有遇到。在第三个错误完全是因为自己的粗心造成的,在学习过程中千万不能着急。