CDH5.16.1 离线安装 Kafka

1.环境

CDH 5.16.1
CentOS 7.6

2.安装前准备

1.查看Kafka与CDH版本对应

https://docs.cloudera.com/documentation/enterprise/release-notes/topics/rn_consolidated_pcm.html#pcm_kafka

CDH5.16.1 离线安装 Kafka

2.下载Kafka的parcel包

http://archive.cloudera.com/kafka/parcels/latest/

CDH5.16.1 离线安装 Kafka

将三个文件拷贝到 /opt/cloudera/parcel-repo 目录下,如果有有相同文件,就将之前的文件重命名

CDH5.16.1 离线安装 Kafka

3.下载Kafka-1.2.0.jar

http://archive.cloudera.com/csds/kafka/

拷贝 KAFKA-1.2.0.jar 到 /opt/cloudera/csd 目录下

3.安装Kafka

CDH5.16.1 离线安装 Kafka

依次点击 “分配” --> “**”

选择kafka节点分配

CDH5.16.1 离线安装 Kafka

 

4.启动kafka

报错:
CDH5.16.1 离线安装 Kafka

1.内存溢出,配置 Java Heap Size

CDH5.16.1 离线安装 Kafka

========================================================

善后工作

安装完成后,便可以在添加服务里,添加kafka服务了。这里如果遇到最后一步,启动kafka的时候,失败报错如下:

 

Fatal error during KafkaServerStartable startup. Prepare to shutdown java.lang.OutOfMemoryError: Java heap space at java.nio.HeapByteBuffer.<init>(HeapByteBuffer.java:57) at java.nio.ByteBuffer.allocate(ByteBuffer.java:335) at kafka.log.SkimpyOffsetMap.<init>(OffsetMap.scala:43) at kafka.log.LogCleaner$CleanerThread.<init>(LogCleaner.scala:186) at kafka.log.LogCleaner

anonfun$1.apply(LogCleaner.scala:83)atkafka.log.LogCleaneranonfun$1.apply(LogCleaner.scala:83)atkafka.log.LogCleaner

anonfun$1.apply(LogCleaner.scala:83)

 

这是因为 Java Heap Size配置小了(奇怪的是安装kafka的时候它也没提示我设置啊,简直怪了),这里如下解决:

 

回到CDH主页面,点击kafka,进入配置页面,修改 Java Heap Size of Broker为1G,如下:,然后保存,重启KAFKA,OK,这下终于好了

CDH5.16.1 离线安装 Kafka