当我从kafka经纪人那里消费消息时,我收到了以下错误,有人可以建议我做错了什么或者我错过了,我已经按照我要遵循的步骤来创建topi,生成消息然后消费消息(仅供参考HDI 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已过期,必须手动刷新。为此,请首先确定您使用的是密码还是密钥表。如果是前者,使用命令'kinit'(其中是客户端的Kerberos主体的名称)在运行此Zookeeper客户端的用户的环境中在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:未提供密码如果Zookeeper服务器允许,将继续连接到没有SASL身份验证的Zookeeper服务器。 (org.apache.zookeeper.ClientCnxn)在ZK找不到经纪人。