Kafka報錯
解決方法:Failed to acquire lock on file .lock in /var/log/kafka-logs.--問題原因是有其他的程序在使用kafka,ps -ef|grep kafka,殺掉使用該目錄的程序即可;
原因是配置檔案:kafka_client_jaas.conf中配置有問題,keyTab的路徑不對,導緻的;
報錯關鍵資訊:Failed to construct kafka producer
解決方法:配置檔案問題:KafkaClient中serviceName應該是kafka,之前配置成了zookeeper;重新開機後,就好了;
配置檔案如下:
問題描述:
衍生問題:
kafka生産消息就會報錯:
把KafkaClient更改為如下的配置,就可以 了:
消費時報錯:Error while executing topic command : replication factor: 1 larger than available brokers: 0
解決辦法:/confluent-3.0.0/bin 下重新開機daemon
然後zk重新開機;sh zkCli.sh -server ai186;
/usr/hdp/2.4.2.0-258/zookeeper/bin/zkCli.sh --腳本的目錄
如果還報錯,可以檢視配置檔案中下面的配置:
zookeeper.connect=dcp18:2181/kafkakerberos; --是group名稱
解決方法:配置檔案中下面的參數中的User的U必須是大寫;
super.users=User:kafka
或者有可能是server.properties中的adver.listen的IP是不對的,有可能是代碼中寫死的IP;
無法消費,則檢視kafka的啟動日志中的報錯資訊:日志檔案的所屬組不對,應該是hadoop;
或者,檢視kafka對應的zookeeper的配置字尾,是否已經更改,如果更改了,則topic需要重新生成才行;
更改代碼中,tomcat的心跳逾時時間如下:
沒有改之前的:;
重新開機後,日志中顯示:
建立topic時報錯:
問題定位:是jaas檔案有問題:
解決方法:server.properties檔案中的super.user要和jaas檔案中的keytab的principle一緻;
kafka_server_jaas.conf檔案改為: