当我从kafka经纪人那里消费消息时,我得到了以下错误,有人可以建议我做错了什么或我错过了,我已经把我正在遵循的步骤创建一个topi,产生一条消息,然后消息(消息)仅供参考HDP 2.5.5和kafka 0.10.x)

export BK =“node1:6667,node1:6667,node1:6667”

export ZK =“zk1:2181,zk1:2181,zk1:2181”

创建了一个主题:Kinit到kafka用户bin / kafka-topics.sh --create --zookeeper zk1:2181,zk1:2181,zk1:2181 --rerelication-factor 3 --partitions 1 --topic test3

列出主题:bin / kafka-topics.sh --list --zookeeper zk1:2181,zk1:2181,zk1:2181 localhost:2181关于主题生成消息:bin / kafka-console-producer.sh --broker -list $ BK --topic test3我可以生成消息或者使用端口9092 bin / kafka-console-producer.sh --broker-list node1:9092,node2:9092,node2:9092 --topic test3

消费消息:bin / kafka-console-consumer.sh --zookeeper $ ZK --bootstrap-server $ BK --topic test3 --from-beginning也尝试使用-security-protocol PLAINTEXTSASL获取错误:[2017-06- 21 02:09:09,620]警告无法登录:要求客户端输入密码,但Zookeeper客户端代码当前不支持从用户获取密码 . 确保客户端配置为使用票证缓存(使用JAAS配置设置'useTicketCache = true)'并重新启动客户端 . 如果此后仍然收到此消息,则票证缓存中的TGT已过期,必须手动刷新 . 为此,请首先确定您使用的是密码还是密钥表 . 如果是前者,请在运行此Zookeeper客户端的用户的环境中使用命令'kinit'(其中是客户端的Kerberos主体的名称)在Unix shell中运行kinit . 如果是后者,请执行'kinit -k -t'(其中是Kerberos主体的名称,并且是keytab文件的位置) . 手动刷新缓存后,重新启动此客户端 . 如果在手动刷新缓存后仍继续看到此消息,请确保KDC主机的时钟与此主机的时钟同步 . (org.apache.zookeeper.client.ZooKeeperSaslClient)[2017-06-21 02:09:09,622] WARN SASL配置失败:javax.security.auth.login.LoginException:未提供密码将继续连接到没有SASL身份验证的Zookeeper服务器,如果Zookeeper服务器允许它 . (org.apache.zookeeper.ClientCnxn)在ZK找不到经纪人 .