EFAK(kafka eagle)的介绍和保姆级安装教程

本文主要介绍Apache和CDH平台下kafka eagle的安装配置教程,Cloudera CDP平台可以选择自带的SMM,也可以像CDH一样配置kafka eagle(推荐)。

简介

EFAK(原名kafka eagle) 是一款国内开源的Kafka集群监控系统,可以用来监视kafka集群的broker状态、Topic信息、IO、内存、consumer线程、偏移量等信息,并进行可视化图表展示。独特的KQL还可以通过SQL在线查询kafka中的数据。
在这里插入图片描述
大屏
在这里插入图片描述
使用KSQL查询kafka中的数据在这里插入图片描述

官网地址 https://www.kafka-eagle.org/
github地址:https://github.com/smartloli/EFAK

下载

下载地址http://download.kafka-eagle.org/

本文安装的是3.0.1版本,支持Kafka版本0.8,0.9.x,0.10.x,0.11.x,1.x,2.x

wget https://github.com/smartloli/kafka-eagle-bin/archive/v3.0.1.tar.gz

安装

解压
tar -zvxf v3.0.1.tar.gz 

cd kafka-eagle-bin-3.0.1/ 
tar -zxvf efak-web-3.0.1-bin.tar.gz -C /opt/bd/
cd ../
mv efak-web-3.0.1 efak
创建mysql数据库ke 用来储存元数据
MySQL >CREATE DATABASE ke DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON ke.* TO 'ke'@'%' IDENTIFIED BY 'xxxxx';#可选 设给efak置单独的用户名和密码
设置环境变量
vim /etc/profile
export KE_HOME=/opt/bd/efak
export PATH=$PATH:$KE_HOME/bin
source  /etc/profile

基本设置

修改配置文件

cd ${KE_HOME}/conf
vim system-config.properties

配置zookeeper地址

kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=tdn1:2181,tdn2:2181,tdn3:2181/kafka

重要提示

  • 此处示例的kafka是2.4版本 所以zookeeper地址后加上 /kafka, 如果不清楚版本,建议复制kafka配置文件的zookeeper配置(CDH6.3.x及以下不需要加)
  • mysql 8.0 在2.0.x版本使用中会有问题

配置Mysql

注释掉sqlite jdbc driver address 修改mysql jdbc driver address 改成自己的MySQL密码

kafka.eagle.driver=com.mysql.cj.jdbc.Driver
kafka.eagle.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
#Mysql密码
kafka.eagle.username=root
kafka.eagle.password=123456

开启JMX监控

eagle通过jmx收集一些指标,在使用jmx之前需要确保kafka开启了jmx监控

Apache版本:

开启方法1:kafka启动时要添加JMX_PORT=9999

开启方法2:vim bin/kafka-server-start.sh

...
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
CDH

修改每个broker节点的broker_java_opts:

-server -XX:+UseG1GC   -XX:MaxGCPauseMillis=20   -XX:InitiatingHeapOccupancyPercent=35   -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50   -XX:MaxMetaspaceFreeRatio=80   -XX:+DisableExplicitGC   -Djava.awt.headless=true   -Djava.net.preferIPv4Stack=true   -Dcom.sun.management.jmxremote=true

在这里插入图片描述

其他可选设置 (普通用户忽略,直接跳到最后一步)

配置项默认值解释
kafka.eagle.sql.fix.errorfalsekafka sql查询失败是否允许自动修复
cluster1.zk.listke01:2181,ke02:2181,ke03:2181/cluster1zookeeper 集群地址.
kafka.zk.limit.size25eagle连接 Zookeeper 的最大client数.
cluster1.kafka.eagle.broker.size10Kafka broker size online list.
kafka.eagle.webui.port8048Kafka Eagle webui 端口.
cluster1.kafka.eagle.offset.storagekafkaKafka消费者offsets 存储位置kafka.0.10前版本是zookeeper
kafka.eagle.sql.topic.records.max5000Kafka Eagle SQL 每次查询的最大记录数
  • 如果Kafka开启了安全认证如则需要修改sasl设置
cluster1.kafka.eagle.sasl.enable=true
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=GSSAPI
cluster1.kafka.eagle.sasl.jaas.config=com.sun.security.auth.module.Krb5LoginModule required useKeyTab=true storeKey=true keyTab="/etc/security/keytabs/kafka_client.keytab" principal="kafka-eagle.org@EXAMPLE.COM";
# make sure there is a local ticket cache "klist -l" to view
# cluster1.kafka.eagle.sasl.jaas.config=com.sun.security.auth.module.Krb5LoginModule required useTicketCache=true renewTicket=true serviceName="kafka-eagle.org";
# if your kafka cluster doesn't require it, you don't need to set it up
# cluster1.kafka.eagle.sasl.client.id=
  • 如果开启了zookeeper acl认证 需要修改以下配置
# Add zookeeper acl
cluster1.zk.acl.enable=true
cluster1.zk.acl.schema=digest
cluster1.zk.acl.username=test
cluster1.zk.acl.password=test123
  • kafka 如果开启了acl ssl 需要修改配置
######################################
# kafka jmx acl and ssl authenticate
######################################
cluster1.kafka.eagle.jmx.acl=true
cluster1.kafka.eagle.jmx.user=keadmin
cluster1.kafka.eagle.jmx.password=keadmin123
cluster1.kafka.eagle.jmx.ssl=false
cluster1.kafka.eagle.jmx.truststore.location=/Users/dengjie/workspace/ssl/certificates/kafka.truststore
cluster1.kafka.eagle.jmx.truststore.password=ke123456

######################################


kafka jmx uri(建议保持默认)

cluster1.kafka.eagle.jmx.uri=service:jmx:rmi:///jndi/rmi://%s/jmxrmi

启动

$KE_HOME/bin/ke.sh start

进度条100%后会出现启动成功界面,端口默认8048
在这里插入图片描述

输入密码 admin/123456 登录即可
在这里插入图片描述
首页
在这里插入图片描述
创建topic
在这里插入图片描述
查看kafka的监控信息
在这里插入图片描述

其他命令

$KE_HOME/bin/ke.sh [start|status|stop|restart|stats] 

TIP

可以设置域名让浏览器缓存js文件,大大提高加载速度。

参考资料

www.kafka-eagle.org

本文发自csdn,尊重原创,转载请先经过许可

  • 18
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
要在Docker中安装kafka-eaglekafka,你可以按照以下步骤进行操作: 1. 首先,克隆kafka-eagle的GitHub仓库并进入该目录: ``` mkdir /opt/kafka & cd git clone https://github.com/nick-zh/docker-kafka-eagle.git cd docker-kafka-eagle ```\[1\] 2. 接下来,使用docker-compose来安装kafka-eaglekafka。你可以在docker-compose.yml文件中配置kafkakafka-eagle的相关参数,然后运行以下命令启动容器: ``` docker-compose up -d ```\[2\] 3. 等待一段时间,容器将会启动并运行kafkakafka-eagle。 现在,你已经成功在Docker中安装了kafka-eaglekafka。你可以通过访问kafka-eagle的Web界面来监控和管理kafka集群。请确保你已经按照上述步骤正确配置了docker-compose.yml文件中的参数。\[3\] #### 引用[.reference_title] - *1* *2* [利用docker安装kafkakafka-eagle](https://blog.csdn.net/weixin_43848469/article/details/124505415)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [(一)docker镜像制作案例——关于kafka-eagle-2.0.8(EFAK)版本的kafka管理工具实现镜像制作及发布](https://blog.csdn.net/yprufeng/article/details/121236167)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值