0
点赞
收藏
分享

微信扫一扫

0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。


Fayson的github:

​​https://github.com/fayson/cdhproject​​


提示:代码块部分可以左右滑动查看噢


1

文档编写目的


Fayson在前面的文章介绍了《​​如何在CDH集群安装Kafka Manager​​》和《​​0542-6.1.0-非安全环境下Kafka管理工具Kafka Eagle安装使用​​》。Kafka-eagle支持Kerberos环境下的Kafka集群管理,本篇文章Fayson主要介绍在Kerberos环境下Kafka管理工具Kafka Eagle安装使用。 


  • 内容概述

1.Kafka-eagle配置

2.Kafka-eagle使用

3.总结


  • 测试环境

1.CM和CDH版本为5.15.0

2.Kafka版本为0.10.2+kafka2.2.0

3.Kafka-eagle版本为1.2.9


2

Kafka-eagle配置


在前面的文章《​​6.1.0-非Kerberos环境下Kafka管理工具Kafka Eagle安装使用​​》已经介绍了Kafka-eagle的安装及配置,这里就不再重复的讲了。既然要集成Kerberos环境下的Kafka,当然少不了Principal账号和keytab文件。


1.准备一个kafka的Principal账号及keytab文件

使用AD的话window下导出keytab命令:


ktpass -princ kafka/admin@FAYSON.COM  -mapuser kafka/admin -pass 123!QAZ -out kafkaadmin.keytab -crypto RC4-HMAC-NT


使用KDC的话Linux下导出keytab命令:


kadmin.local -q "xst -norandkey -k kafkaadmin.keytab kafka/admin@FAYSON.COM"


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_hadoop


2.进入{KE_HOME}/conf目录,在system-config.properties配置文件中找到“kafka sasl authenticate”片段将配置修改为如下内容


kafka.eagle.sasl.enable=true
kafka.eagle.sasl.protocol=SASL_PLAINTEXT
kafka.eagle.sasl.mechanism=GSSAPI


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_kafka_02


3.修改${KE_HOME}/conf/kafka_client_jaas.conf文件,内容如下:


KafkaClient {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
storeKey=true
serviceName=kafka
keyTab="/opt/cloudera/kafka-eagle/keytab/kafkaadmin.keytab"
principal="kafka/admin@FAYSON.COM";
};

Client {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
storeKey=true
keyTab="/opt/cloudera/kafka-eagle/keytab/kafkaadmin.keytab"
principal="kafka/admin@FAYSON.COM";
};


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_kafka_03


注意:kafka_client_jaas.conf文件中配置的serviceName=kafka参数,在Kerberos环境下访问Kafka时需要获取serviceName,之前Fayson是在代码里面指定“sasl.kerberos.service.name”与jaas.conf文件中指定效果一致。如下是KafkaClient加载Kerberos配置时获取serviceName代码片段


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_hadoop_04


3

Kafka-eagle使用


1.kafka-eagle监控主页


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_hadoop_05


2.Topic列表界面


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_hadoop_06


3.模拟向指定Topic发送消息界面


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_cloudera_07


4.Consumers监控界面


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_kafka_08


5.Kafka指标监控界面


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_hadoop_09


4

总结


1.在集成Kerberos环境下的Kafka时需要注意jaas.conf文件中需要增加serviceName属性,否则Kafka-eagle在访问Kakfa时会报“No serviceName defined in either JAAS or Kafka config”错误。


2.Kafka-eagle1.2.9版本使用的Kafka客户端为2.0.0,目前集成Kafka0.10.2版本未发现有什么异常。


0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_kafka_10


更多功能可参考官方文档:https://ke.smartloli.org/


在安装测试过程总使用的Kafka自带的性能测试脚本生成和消费消息


[root@cdh05 lib]# more /data/disk1/client.properties 
security.protocol=SASL_PLAINTEXT
sasl.kerberos.service.name=kafka
client.id=testgroup
bootstrap.servers=cdh2.fayson.com:9092,cdh3.fayson.com:9092,cdh4.fayson.com:9092
max.request.size=4192256


生产消息脚本


export KAFKA_OPTS="-Djava.security.auth.login.config=/opt/cloudera/kafka-eagle/conf/kafka_client_jaas.conf "
sh /opt/cloudera/parcels/KAFKA/lib/kafka/bin/kafka-producer-perf-test.sh \
--topic topic_eagle_1 \
--num-records 1000 \
--producer.config /data/disk1/client.properties \
--throughput 10 \
--record-size 1024


消费消息脚本


export KAFKA_OPTS="-Djava.security.auth.login.config=/opt/cloudera/kafka-eagle/conf/kafka_client_jaas.conf "
/opt/cloudera/parcels/KAFKA/lib/kafka/bin/kafka-consumer-perf-test.sh \
--topic topic_eagle_1 \
--messages 10000 \
--fetch-size 10 \
--broker-list cdh2.fayson.com:9092,cdh3.fayson.com:9092,cdh4.fayson.com:9092 \
--consumer.config /data/disk1/client.properties



提示:代码块部分可以左右滑动查看噢


为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。


推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用_kafka_11

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操



举报

相关推荐

0 条评论