kafka-console-producer和kerberos抛出安全协议不是公认的选项

时间:2019-07-09 11:57:23

标签: apache-kafka kerberos kafka-producer-api ambari

我已启用从Ambari v2.7.3和HDP v3.1.0到所有Hadoop服务的Kerberos。我已经使用NIFI验证了HBase身份验证。我也需要测试Kafka。在Kafka控制台中,我可以创建一个主题。但是在生产和消费时,我遇到了如下错误。

security-protocol is not a recognized option

下面是我尝试过的Kafka生产者命令

/usr/hdp/3.1.0.0-78/kafka/bin/kafka-console-producer.sh --broker-list HOSTNAME:6667 --topic test_new_topic --security-protocol SASL_PLAINTEXT

2 个答案:

答案 0 :(得分:0)

--property与以下属性名称一起使用:

/usr/hdp/3.1.0.0-78/kafka/bin/kafka-console-producer.sh --broker-list HOSTNAME:6667 --topic test_new_topic  --property security.protocol=SASL_PLAINTEXT

答案 1 :(得分:0)

我的建议是将所有属性添加到具有以下内容的单个文件(例如client-ssl.properties)下:

security.protocol=SASL_PLAINTEXT

最后使用–-producer.config将属性文件传递给控制台生产者:

/usr/hdp/3.1.0.0-78/kafka/bin/kafka-console-producer.sh –-broker-list HOSTNAME:6667 –-topic test_new_topic –-producer.config client-ssl.properties

如果您不想使用属性文件,则可以使用--producer-property来传递security.protocol配置:

/usr/hdp/3.1.0.0-78/kafka/bin/kafka-console-producer.sh --broker-list HOSTNAME:6667 --topic test_new_topic  --producer-property security.protocol=SASL_PLAINTEXT