Kafka Eagle 1. Install Mysql
Kafka-Eagle 的安装依赖于 MySQL,MySQL 主要用来存储可视化展示的数据。
2.Kafka 环境准备
调整Kafka内存占用等参数,暴露JMX
JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架。JMX是一套标准的代理和服务,使用户能够在任何Java应用程序中使用这些代理和服务实现管理。对外暴露数据,方便某些插件来监控和管理。
修改kafka-server-start.sh脚本 vim bin/kafka-server-start.sh 将一下内容
1 2 3 if [ "x$KAFKA_HEAP_OPTS " = "x" ]; then export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G" fi
替换为
1 2 3 4 5 if [ "x$KAFKA_HEAP_OPTS " = "x" ]; then export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70" export JMX_PORT="9999" fi
注:集群内每一个节点都修改。若集群已启动,需要重启。
3.Kafka-Eagle 安装 官网地址:https://www.kafka-eagle.org/
3.1.解压包 1 2 tar -zxvf kafka-eagle-bin-3.0.1.tar.gz tar -zxvf kafka-eagle-bin-3.0.1/efak-web-3.0.1-bin.tar.gz -C /opt/software/
3.2.配置环境变量 vim /etc/profile.d/myenv.sh
1 2 3 # kafka EFAK_HOME export KE_HOME=/opt/software/efak-web-3.0.1 export PATH=$PATH:$KE_HOME/bin
3.3.授权并激活
3.4.配置说明 vim /opt/efak/conf/system-config.properties
3.4.1.修改zookeeper相关 1 2 efak.zk.cluster.alias =cluster1 cluster1.zk.list =master01:2181,master02:2181,worker01:2181
3.4.2.修改zookeeper客户端线程限制[可选]
3.4.3.修改kafka offset 保存位置 1 2 cluster1.efak.offset.storage =kafka
3.4.4.配置 mysql 连接 1 2 3 4 efak.driver =com.mysql.cj.jdbc.Driver efak.url =jdbc:mysql://master01:3308/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull efak.username =root efak.password =Yb#12211
3.4.5.配置kafka的JMX的地址 1 cluster1.efak.jmx.uri =service:jmx:rmi:///jndi/rmi://master01:9999/jmxrmi
3.5.完整配置文件如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 efak.zk.cluster.alias =cluster1 cluster1.zk.list =master01:2181,master02:2181,worker01:2181 cluster1.zk.acl.enable =false cluster1.zk.acl.schema =digest cluster1.zk.acl.username =test cluster1.zk.acl.password =test123 cluster1.efak.broker.size =20 kafka.zk.limit.size =32 efak.webui.port =8048 efak.distributed.enable =false efak.cluster.mode.status =master efak.worknode.master.host =master01 efak.worknode.port =8085 cluster1.efak.jmx.acl =false cluster1.efak.jmx.user =keadmin cluster1.efak.jmx.password =keadmin123 cluster1.efak.jmx.ssl =false cluster1.efak.jmx.truststore.location =/data/ssl/certificates/kafka.truststore cluster1.efak.jmx.truststore.password =ke123456 cluster1.efak.offset.storage =kafka cluster1.efak.jmx.uri =service:jmx:rmi:///jndi/rmi://master01:9999/jmxrmi efak.metrics.charts =true efak.metrics.retain =15 efak.sql.topic.records.max =5000 efak.sql.topic.preview.records.max =10 efak.topic.token =keadmin cluster1.efak.sasl.enable =false cluster1.efak.sasl.protocol =SASL_PLAINTEXT cluster1.efak.sasl.mechanism =SCRAM-SHA-256 cluster1.efak.sasl.jaas.config =org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle"; cluster1.efak.sasl.client.id =cluster1.efak.blacklist.topics =cluster1.efak.sasl.cgroup.enable =false cluster1.efak.sasl.cgroup.topics =cluster2.efak.sasl.enable =false cluster2.efak.sasl.protocol =SASL_PLAINTEXT cluster2.efak.sasl.mechanism =PLAIN cluster2.efak.sasl.jaas.config =org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle"; cluster2.efak.sasl.client.id =cluster2.efak.blacklist.topics =cluster2.efak.sasl.cgroup.enable =false cluster2.efak.sasl.cgroup.topics =cluster3.efak.ssl.enable =false cluster3.efak.ssl.protocol =SSL cluster3.efak.ssl.truststore.location =cluster3.efak.ssl.truststore.password =cluster3.efak.ssl.keystore.location =cluster3.efak.ssl.keystore.password =cluster3.efak.ssl.key.password =cluster3.efak.ssl.endpoint.identification.algorithm =https cluster3.efak.blacklist.topics =cluster3.efak.ssl.cgroup.enable =false cluster3.efak.ssl.cgroup.topics =efak.driver =com.mysql.cj.jdbc.Driver efak.url =jdbc:mysql://master01:3308/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull efak.username =root efak.password =Yb#12211
4.启动 启动的前提条件是先启动Zookeeper、Kafka
5.访问 http://master01:8048/ username: admin password: 123456
5.停止