如何在RHEM OS的librdkafka库中使用kerberos配置sasl机制。
我已经设定了:
WITH_SASL =y
安装了libsasl2包
答案 0 :(得分:0)
请按照以下步骤操作:
我猜您是在RHEL上,所以请务必先安装以下软件包:cyrus-sasl cyrus-sasl-devel cyrus-sasl-gssapi
然后从librdkafka目录运行./configure
,检查输出并确保它列出WITH_SASL y
。
运行make
和sudo make install
通过询问您的Kafka运营团队或查看代理的server.properties文件中的listeners=..
配置属性,找出代理的SASL_PLAINTEXT监听器正在侦听的端口。
按照此Wiki帖子中列出的步骤设置keytabs等:https://github.com/edenhill/librdkafka/wiki/Using-SASL-with-librdkafka
验证它是否适用于其中一个示例程序,例如:examples/rdkafka_example -b <broker>:<sasl_port> -L -d security -X security.protocol=SASL_PLAINTEXT -X sasl.kerberos.service.name=<service> -X sasl.kerberos.keytab=/path/to/clients.keytab -X sasl.kerberos.principle=<clientname>/<clienthost>
当您使用示例程序时,将配置属性移动到您的程序中(rd_kafka_conf_set()
et.al)
另请参阅此处更详细的SASL文档: http://docs.confluent.io/3.1.1/kafka/sasl.html