? ? 安裝好cdh后在cloudera-manager管理界面上并沒有kafka服務(wù),在CDH官網(wǎng)中關(guān)于Kafka的安裝和升級(jí)中已經(jīng)說到,在CDH中铐拐,Kafka作為一個(gè)分布式的parcel,單獨(dú)出來作為parcel分發(fā)安裝包。只要我們把分離開的kafka的服務(wù)描述jar包和服務(wù)parcel包下載了厕吉,就可以實(shí)現(xiàn)完美集成了酱固。
(一)查看版本對(duì)應(yīng)
訪問網(wǎng)址https://www.cloudera.com/documentation/enterprise/release-notes/topics/rn_consolidated_pcm.html#pcm_kafka查看cdh與kafka版本的對(duì)應(yīng)關(guān)系,如下圖所示:
本次cdh使用的是5.15.1所以選擇kafka3.1
(二)下載kafka包
訪問下載地址:http://archive.cloudera.com/kafka/parcels/latest/头朱,下載如下圖所示紅框中的文件:
(三)修改文件
1)重命名KAFKA-3.1.1-1.3.1.1.p0.2-el7.parcel.sha1為KAFKA-3.1.1-1.3.1.1.p0.2-el7.parcel.sha
2)將manifest.json文件中parcelName為KAFKA-3.1.1-1.3.1.1.p0.2-el7.parcel的hash值拷貝到KAFKA-3.1.1-1.3.1.1.p0.2-el7.parcel.sha中运悲,如果KAFKA-3.1.1-1.3.1.1.p0.2-el7.parcel.sha中的值和manifest.json文件中的hash一致則省略該步。
(四)拷貝文件
將KAFKA-3.1.1-1.3.1.1.p0.2-el7.parcel.sha项钮、KAFKA-3.1.1-1.3.1.1.p0.2-el7.parcel和manifest.json文件拷貝到/opt/cloudera/parcel-repo路徑下班眯,如果該路徑下已經(jīng)存在manifest.json文件則將其重命名,如下圖所示:
(五)配置Kafka-1.2.0.jar
訪問下載地址:http://archive.cloudera.com/csds/kafka/烁巫,下載Kafka-1.2.0.jar署隘,如下圖所示:
將Kafka-1.2.0.jar文件拷貝到路徑/opt/cloudera/csd,如下圖所示:
(六)添加kafka服務(wù)
添加kafka會(huì)出現(xiàn)如下圖所示亚隙,需要先安裝kafka包磁餐,
點(diǎn)擊install the parcel first,檢查更新parcel阿弃,分配崖媚,激活。
如下圖所示則說明成功:
(七)kafka集群驗(yàn)證
?????? 啟動(dòng)kafka服務(wù)之后恤浪,執(zhí)行命令:kafka-topics --create --topic test --zookeeper node3:2181 --partitions 2 --replication-factor 2創(chuàng)建名為test的topic畅哑,執(zhí)行命令:
kafka-topics --list --zookeeper node3:2181查看已創(chuàng)建topic信息,如下圖所示:
? ? ? ?在不同機(jī)器上分別執(zhí)行如下命令水由,啟動(dòng)生產(chǎn)者和消費(fèi)者荠呐,進(jìn)行消息的生產(chǎn)和消費(fèi):
?????? kafka-console-producer --topic test --broker-list node3:9092 (生產(chǎn)者)
?????? kafka-console-consumer --zookeeper node3:2181? --topic test (消費(fèi)者)
啟動(dòng)生產(chǎn)者和消費(fèi)者之后模擬消息的生產(chǎn)和消費(fèi),如下圖所示:
????今天的分享就到這砂客,有看不明白的地方一定是我寫的不夠清楚泥张,所有歡迎提任何問題以及改善方法。