1. 程式人生 > >CDH5.11新增kafka服務及其初始啟動OutOfMemoryError失敗解決

CDH5.11新增kafka服務及其初始啟動OutOfMemoryError失敗解決

簡介: CDH的parcel包中是沒有kafka的,kafka被剝離了出來,需要從新下載parcel包安裝。或者線上安裝,但是線上安裝都很慢,這裡使用下載parcel包離線安裝的方式。
由於我的CDH是5.11,所以只支援kafka2.1.x的,所以我安裝的就是這個版本 一。安裝準備: 所需軟體:
②kafka parcel包:
二。開始安裝 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安裝完成 三。善後工作 安裝完成後,便可以在新增服務裡,新增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) at kafka.log.LogCleaner$$anonfun$1.apply(LogCleaner.scala:83) 這是因為 Java Heap Size配置小了(奇怪的是安裝kafka的時候它也沒提示我設定啊,簡直怪了),這裡如下解決: 回到CDH主頁面,點選kafka,進入配置頁面,修改 Java Heap Size of Broker為1G,如下:,然後儲存,重啟KAFKA,OK,這下終於好了