zoukankan      html  css  js  c++  java
  • Kafka专业监控系统Kafka Eagle:支持kerberos认证,并且对接星环TDH集群

    在线文档:https://ke.smartloli.org/

    作者博客:https://www.cnblogs.com/wang3680

    源码地址:https://github.com/smartloli/kafka-eagle

    1. 环境要求:

    需要的java版本 java1.8以上版本

    下载包Kafka Eagle: kafka-eagle-bin-1.4.8.tar.gz

    部署到TDH集群管理节点中,我放置的目录为

    image

    修改目录 conf下面的文件system-config.properties

    ######################################
    # multi zookeeper & kafka cluster list
    ######################################
    kafka.eagle.zk.cluster.alias=cluster1                               #定义集群别名,不要乱改,下面用的这个
    cluster1.zk.list=xxxxxx:2181,xxxxxx:2181,xxxxxx:2181  #zk的地址,一般有三个
    #cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181

    ######################################
    # broker size online list
    ######################################
    cluster1.kafka.eagle.broker.size=20

    ######################################
    # zk client thread limit
    ######################################
    kafka.zk.limit.size=25

    ######################################
    # kafka eagle webui port
    ######################################
    kafka.eagle.webui.port=8048

    ######################################
    # kafka offset storage
    ######################################
    cluster1.kafka.eagle.offset.storage=zk                          #这里用zk,原因是TDH对应5.2.4,下面说原因

    ######################################
    # kafka metrics, 15 days by default
    ######################################
    kafka.eagle.metrics.charts=true
    kafka.eagle.metrics.retain=15


    ######################################
    # kafka sql topic records max
    ######################################
    kafka.eagle.sql.topic.records.max=5000
    kafka.eagle.sql.fix.error=true

    ######################################
    # delete kafka topic token
    ######################################
    kafka.eagle.topic.token=keadmin

    ######################################
    # kafka sasl authenticate
    ######################################
    cluster1.kafka.eagle.sasl.enable=true
    cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
    cluster1.kafka.eagle.sasl.mechanism=GSSAPI
    cluster1.kafka.eagle.sasl.client=/home/kafka-eagle/kafka-eagle-web-1.4.8/conf/kafka_client_jaas.conf  #对应kafka认证客户端 jaas文件

    ######################################
    # kafka ssl authenticate
    ######################################
    # kafka sqlite jdbc driver address
    ######################################
    kafka.eagle.driver=org.sqlite.JDBC
    kafka.eagle.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db    #需要创建对应的目录
    kafka.eagle.username=root
    kafka.eagle.password=www.kafka-eagle.org

    ######################################
    # kafka mysql jdbc driver address
    ######################################

    说明:

    cluster1.kafka.eagle.offset.storage=zk                          #这里用zk,原因是TDH对应5.2.4,下面说原因

    给出来的官方文档说明有两种方式,第一是存在zk中,第二是存到kafka中

    kafka 消费信息存储位置,用来兼容kafka低版本
    0.10以上的版本 一般存储在kafka中
    0.10以下的版本 一般存储在zk中 
    下面是作者给出来的说明:

    经过测试星环的TDH5.2.4对应kafka版本为0.10.2,经过测试存储在了zk里面
    # kafka sasl authenticate
    ######################################
    cluster1.kafka.eagle.sasl.enable=true
    cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
    cluster1.kafka.eagle.sasl.mechanism=GSSAPI
    cluster1.kafka.eagle.sasl.client=/home/kafka-eagle/kafka-eagle-web-1.4.8/conf/kafka_client_jaas.conf  #对应kafka认证客户端 jaas文件

    在Kafka 0.9.0.0之后,Kafka社区增加了一系列的功能,其中包含对Kafka集群进行安全管控。支持的权限认证方式如下:

    1. Broker与Client之间的权限认证(例如Producer和Consumer)。可以使用SSL或SASL,而SASL支持如下方案:
      • SASL/GSSAPI(Kerberos),开始于0.9.0.0版本
      • SASL/PLAIN,开始于0.10.0.0版本
      • SASL/SCRAM-SHA-256和SASL/SCRAM-SHA-512,开始于0.10.2.0版本
      • SASL/OAUTHBEARER,开始于2.0版本

       2. Broker和Zookeeper之间建立权限认证

       3. 在Broker和Client之间、Broker和Broker之间使用SSL建立权限认证时,性能会有所下降,其程度取决于CPU类型和JVM的实现

       4. 对Client进行读写认证

    在实际生产环境中,对于权限认证使用的较多的是SCRAM认证,其原因在《Kafka SCRAM和PLAIN实战》这篇博客中详细解释。

    kafka_client_jaas.conf  文件内容

    kafkaClient {
       com.sun.security.auth.module.Krb5LoginModule required
       useKeyTab=true
       keyTab="/etc/kafka1/conf/kafka.keytab"
       storeKey=true
       useTicketCache=false
       principal="kafka/******@TDH";
    };

    启动监控

    ke.sh命令使用:
    Usage: /home/kafka-eagle/kafka-eagle-web-1.4.8/bin/ke.sh {start|stop|restart|status|stats|find|gc|jdk|version|sdate}

    image

    浏览器访问监控 用户名admin 密码123456

    image

    BScreen界面,看着高大上

    image

    以上就是部署的内容,下次给大家带来监控项目的具体使用方法

     

     

     

     

     

     

     

     

  • 相关阅读:
    [NOI2005]维护数列——Splay
    [Poi2000]病毒——补全AC自动机
    POJ1509 Glass Beads——SAM(后缀自动机)
    「NOI2011」阿狸的打字机——AC自动机+树状数组
    7.12Test——Graph Theory 1
    [BJWC2010]严格次小生成树
    7.09Test——DS1
    [SCOI2015]小凸想跑步——半平面交
    词频统计器(第三版)
    四则运算(测试)
  • 原文地址:https://www.cnblogs.com/wang3680/p/13156654.html
Copyright © 2011-2022 走看看