简介:

CDH的parcel包中是没有kafka的,kafka被剥离了出来,需要从新下载parcel包安装。或者在线安装,但是在线安装都很慢,这里使用下载parcel包离线安装的方式。

PS:kafka有很多版本,CDH也有很多版本,那也许你会疑问如何知道你的CDH应该安装什么kafka版本。这个官方有介绍,文档地址:https://www.cloudera.com/documentation/enterprise/release-notes/topics/rn_consolidated_pcm.html#pcm_kafka ,这里截图:

由于我的CDH是5.11,所以只支持kafka2.1.x的,所以我安装的就是这个版本

一。安装准备:

所需软件:

①kafka csd包,下载地址:http://archive.cloudera.com/csds/kafka/

②kafka parcel包:

地址:http://archive.cloudera.com/kafka/parcels/latest/,根据操作系统,下载对应的包

。开始安装

1.上传kafka。

注意,以下操作,需要在你CDH的所有机器执行,不然待会检测不到。

①上传CSD包KAFKA-1.2.0.jar,到服务器CDH目录下,路径为/opt/cloudera/csd

②上传parcel包中的那3个文件,到目录/opt/cloudera/parcel-repo下,注意如果有文件重名,如manifest那个文件,把以前的重命名为其他名字

2.分配,激活

进入CDH的管理界面,点击主机->parcel->检查新parcel

如果成功,则会看到你的kafka一项,并且有分配按钮,点击分配,等待,然后分配按钮编程激活按钮,点击激活,等待,操作成功后如下

OK,kafka安装完成

5)手动修改配置文件(也可通过CM界面进行配置)

激活完成后,进入Kafka配置文件目录:/DATA/cloudera/parcels/KAFKA-0.8.2.0-1.kafka1.4.0.p0.56/etc/kafka/conf.dist

编辑server.properties文件,修改内容如下:

broker.id=1,其他两个为2、3

port=9092,其他两个为9093、9094

host.name=xx.xx.xx.xx,每个配置文件的这项改为本服务器的实际IP/hostname

zookeeper.connect=xx.xx.xx.xx:2181,xx.xx.xx.xx:2181,xx.xx.xx.xx:2181,此处填写实际zookeeper的配置信息。

(6)所有配置完成后,在CM中添加Kafka服务,添加服务时需要配置的两项如下:

就是所有kafka节点list.

然后将下面的4.相关问题先配置完毕,不然第一次启动可能会失败,然后启动Kafka服务即可。

4.相关问题

(1)白名单配置问题,具体表现为Kafka MirrorMaker启动失败。

在CM中点击Kafka–>配置,然后搜索WhiteList,修改如下Topic Whitelist值为具体值,此值在Kafka生产环境中是如何分配的就填写相应的分配的值。格式:hostname:port。

(2)Java Heap Size参数设置问题,具体表现为启动broker时查看日志发现OOM异常。

同样在CM中点击Kafka–>配置,然后搜索heap,修改如下值

这是因为 Java Heap size of Broker这个选项默认配置是 50M ,需要将其修改成 256M 或者更多,这里修改成 1G ,保存配置后,重新启动kafka集群即可