Our Community is getting an upgrade! To get everything ready for the relaunch, we’ll be placing the site in read-only mode starting September 21st.
We really appreciate your understanding while we get things set up behind the scenes. Catch up on all the exciting details about the move here.
Need help or have questions? Drop us a line at [email protected]
Created 02-13-2018 04:56 AM
Team,
Post disabling kerberos kafka brokers failed to start with below error. I am using HDP 2.6 and ambari 2.6
Error:
[2018-02-13 04:44:11,112] FATAL Fatal error during KafkaServerStartable startup. Prepare to shutdown (kafka.server.KafkaServerStartable) java.lang.SecurityException: zookeeper.set.acl is true, but the verification of the JAAS login file failed. at kafka.server.KafkaServer.initZk(KafkaServer.scala:314) at kafka.server.KafkaServer.startup(KafkaServer.scala:200) at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:39) at kafka.Kafka$.main(Kafka.scala:67) at kafka.Kafka.main(Kafka.scala) [2018-02-13 04:44:11,113] INFO shutting down (kafka.server.KafkaServer)
Below find server.properties from kafka broker
[root@vijayhdf-1 conf]# cat server.properties # Generated by Apache Ambari. Tue Feb 13 04:53:24 2018 auto.create.topics.enable=true auto.leader.rebalance.enable=true broker.rack=/default-rack compression.type=producer controlled.shutdown.enable=true controlled.shutdown.max.retries=3 controlled.shutdown.retry.backoff.ms=5000 controller.message.queue.size=10 controller.socket.timeout.ms=30000 default.replication.factor=1 delete.topic.enable=false external.kafka.metrics.exclude.prefix=kafka.network.RequestMetrics,kafka.server.DelayedOperationPurgatory,kafka.server.BrokerTopicMetrics.BytesRejectedPerSec,kafka.server.KafkaServer.ClusterId external.kafka.metrics.include.prefix=kafka.network.RequestMetrics.ResponseQueueTimeMs.request.OffsetCommit.98percentile,kafka.network.RequestMetrics.ResponseQueueTimeMs.request.Offsets.95percentile,kafka.network.RequestMetrics.ResponseSendTimeMs.request.Fetch.95percentile,kafka.network.RequestMetrics.RequestsPerSec.request fetch.purgatory.purge.interval.requests=10000 kafka.ganglia.metrics.group=kafka kafka.ganglia.metrics.host=localhost kafka.ganglia.metrics.port=8671 kafka.ganglia.metrics.reporter.enabled=true kafka.metrics.reporters=org.apache.hadoop.metrics2.sink.kafka.KafkaTimelineMetricsReporter kafka.timeline.metrics.hosts=vijayhdp-1.novalocal kafka.timeline.metrics.maxRowCacheSize=10000 kafka.timeline.metrics.port=6188 kafka.timeline.metrics.protocol=http kafka.timeline.metrics.reporter.enabled=true kafka.timeline.metrics.reporter.sendInterval=5900 kafka.timeline.metrics.truststore.password=bigdata kafka.timeline.metrics.truststore.path=/etc/security/clientKeys/all.jks kafka.timeline.metrics.truststore.type=jks leader.imbalance.check.interval.seconds=300 leader.imbalance.per.broker.percentage=10 listeners=PLAINTEXT://vijayhdf-1.novalocal:6667 log.cleanup.interval.mins=10 log.dirs=/kafka-logs log.index.interval.bytes=4096 log.index.size.max.bytes=10485760 log.retention.bytes=-1 log.retention.hours=168 log.roll.hours=168 log.segment.bytes=1073741824 message.max.bytes=1000000 min.insync.replicas=1 num.io.threads=8 num.network.threads=3 num.partitions=1 num.recovery.threads.per.data.dir=1 num.replica.fetchers=1 offset.metadata.max.bytes=4096 offsets.commit.required.acks=-1 offsets.commit.timeout.ms=5000 offsets.load.buffer.size=5242880 offsets.retention.check.interval.ms=600000 offsets.retention.minutes=86400000 offsets.topic.compression.codec=0 offsets.topic.num.partitions=50 offsets.topic.replication.factor=3 offsets.topic.segment.bytes=104857600 port=6667 producer.purgatory.purge.interval.requests=10000 queued.max.requests=500 replica.fetch.max.bytes=1048576 replica.fetch.min.bytes=1 replica.fetch.wait.max.ms=500 replica.high.watermark.checkpoint.interval.ms=5000 replica.lag.max.messages=4000 replica.lag.time.max.ms=10000 replica.socket.receive.buffer.bytes=65536 replica.socket.timeout.ms=30000 sasl.kerberos.principal.to.local.rules=RULE:[1:$1@$0]([email protected])s/.*/ambari-qa/,RULE:[1:$1@$0]([email protected])s/.*/hbase/,RULE:[1:$1@$0]([email protected])s/.*/hdfs/,RULE:[1:$1@$0](.*@NOVALOCAL.COM)s/@.*//,RULE:[2:$1@$0]([email protected])s/.*/activity_analyzer/,RULE:[2:$1@$0]([email protected])s/.*/activity_explorer/,RULE:[2:$1@$0]([email protected])s/.*/ams/,RULE:[2:$1@$0]([email protected])s/.*/ams/,RULE:[2:$1@$0]([email protected])s/.*/hdfs/,RULE:[2:$1@$0]([email protected])s/.*/hbase/,RULE:[2:$1@$0]([email protected])s/.*/hive/,RULE:[2:$1@$0]([email protected])s/.*/mapred/,RULE:[2:$1@$0]([email protected])s/.*/hdfs/,RULE:[2:$1@$0]([email protected])s/.*/knox/,RULE:[2:$1@$0]([email protected])s/.*/nifi/,RULE:[2:$1@$0]([email protected])s/.*/yarn/,RULE:[2:$1@$0]([email protected])s/.*/hdfs/,RULE:[2:$1@$0]([email protected])s/.*/ranger/,RULE:[2:$1@$0]([email protected])s/.*/rangertagsync/,RULE:[2:$1@$0]([email protected])s/.*/rangerusersync/,RULE:[2:$1@$0]([email protected])s/.*/yarn/,RULE:[2:$1@$0]([email protected])s/.*/yarn/,DEFAULT socket.receive.buffer.bytes=102400 socket.request.max.bytes=104857600 socket.send.buffer.bytes=102400 zookeeper.connect=vijayhdp-3.novalocal:2181,vijayhdp-2.novalocal:2181,vijayhdp-1.novalocal:2181 zookeeper.connection.timeout.ms=25000 zookeeper.session.timeout.ms=30000 zookeeper.set.acl=true zookeeper.sync.time.ms=2000
Kindly help me to fix the issue
Created 02-13-2018 08:06 PM
One quick thing you can do is to change the kafka root zk node (this is create a new znode and kafka will not have any reference of any old data).
zookeeper.connect=zk1:2181,zk2:2181,zk3:2181/kafka
or you need to enable the kerberos again and change the ACl's using below commands (Kafka will have old data) :
Log-in as user "kafka" on one of Kafka nodes: kinit -k -t /etc/security/keytabs/kafka.service.keytab kafka/_HOST where _HOST should be replaced by the hostname of that node Run the following command to open zookeeper shell: /usr/hdp/current/kafka-broker/bin/zookeeper-shell.sh zkhostname:2181 setAcl /brokers world:anyone:crdwa setAcl /config world:anyone:crdwa setAcl /controller world:anyone:crdwa setAcl /admin world:anyone:crdwa
Post changing the acl's disable the kerberos.
Created 02-13-2018 08:01 AM
zookeeper acl's needs to be changed before disabling the kerberos. Do you have any important data in kafka?
Created 02-13-2018 08:46 AM
@ Sandeep Nemuri,
No there is no imp data inside kafka brokers.
Kindly suggest.
- Vijay Mishra
Created 02-13-2018 08:06 PM
One quick thing you can do is to change the kafka root zk node (this is create a new znode and kafka will not have any reference of any old data).
zookeeper.connect=zk1:2181,zk2:2181,zk3:2181/kafka
or you need to enable the kerberos again and change the ACl's using below commands (Kafka will have old data) :
Log-in as user "kafka" on one of Kafka nodes: kinit -k -t /etc/security/keytabs/kafka.service.keytab kafka/_HOST where _HOST should be replaced by the hostname of that node Run the following command to open zookeeper shell: /usr/hdp/current/kafka-broker/bin/zookeeper-shell.sh zkhostname:2181 setAcl /brokers world:anyone:crdwa setAcl /config world:anyone:crdwa setAcl /controller world:anyone:crdwa setAcl /admin world:anyone:crdwa
Post changing the acl's disable the kerberos.
Created 02-14-2018 04:36 AM
I have done enable and disable the kerberos which has fixed the issue for kafka not coming up post disabling the kerberos.
Your solution also looks good, i will try the same if i will get the error.
Other problem i have is kafka principals and keytab not getting created after enabling the cluster on same cluster, Is there anything you can suggest?
- Vijay Mishra