文章目录

  • 1.Kafka Monitor
  • 2.Kafka Manager
  • 2.1 部署
  • 2.2 总结
  • 3.Kafka Eagle

1.Kafka Monitor

下载链接: https://github.com/Morningstar/kafka-offset-monitor/releases/tag/0.4.6

  1. 上传jar包KafkaOffsetMonitor-assembly-0.4.6-SNAPSHOT.jar到集群
  2. 在/opt/module/下创建kafka-offset-console文件夹
  3. 将上传的jar包放入刚创建的目录下
  4. 在/opt/module/kafka-offset-console目录下创建启动脚本start_en.sh,内容如下:
#!/bin/bash
# 默认port为8086,由于我的环境8086端口已被占用,所有改为8087
java -Xms512M -Xmx512M -Xss1024K -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m -cp KafkaOffsetMonitor-assembly-0.4.6-SNAPSHOT.jar \
com.quantifind.kafka.offsetapp.OffsetGetterWeb \
--offsetStorage kafka \
--kafkaBrokers cm1:9092,cm2:9092,cm3:9092 \
--kafkaSecurityProtocol PLAINTEXT \
--zk cm1:2181,cm2:2181,cm3:2181 \
--port 8087 \
--refresh 10.seconds \
--retain 2.days \
--dbName offsetapp_kafka 1>mobile-logs/stdout.log 2>mobile-logs/stderr.log &
  1. 在/opt/module/kafka-offset-console目录下创建mobile-logs文件夹
mkdir /opt/module/kafka-offset-console/mobile-logs
  1. 启动KafkaMonitor
./start_en.sh
  1. 登录页面cm1:8087端口查看详情

kafka manage kafka manager eagle_java

启动一个消费者和一个生产者

kafka manage kafka manager eagle_kafka manage_02


kafka manage kafka manager eagle_kafka_03

2.Kafka Manager

2.1 部署

https://github.com/yahoo/kafka-manager/archive/1.3.3.15.zip

  1. 上传压缩包kafka-manager-1.3.3.15.zip到集群
  2. 解压kafka-manager-1.3.3.15.zip
$ unzip kafka-manager-1.3.3.15.zip
  1. 修改kafka-manager-1.3.3.21/conf/application.conf文件启用Kafka-Manager使用账号登录
# 修改为:
kafka-manager.zkhosts="cm1:2181,cm2:2181,cm3:2181"
basicAuthentication.enabled=true
basicAuthentication.enabled=${?KAFKA_MANAGER_AUTH_ENABLED}
basicAuthentication.username="admin"
basicAuthentication.username=${?KAFKA_MANAGER_USERNAME}
basicAuthentication.password="admin"
basicAuthentication.password=${?KAFKA_MANAGER_PASSWORD}
basicAuthentication.realm="Kafka-Manager"

将登录Kafka-Manager的账号密码设置为admin。

  1. 使用如下命令启动Kafka-Manager
    修改文件的权限
[root@cm1 bin]$ chmod 777 kafka-manager
# 默认为9000,但是我的集群有端口冲突,改为8090
[root@cm1 kafka-manager-1.3.3.15]$ nohup bin/kafka-manager -Dhttp.port=8090 > nohup.out 2>&1 &

端口8090监听成功。

[root@cm1 kafka-manager-1.3.3.15]$ netstat -apn | grep 8090
tcp6       0      0 :::8090                 :::*                    LISTEN      32934/java
  1. 在浏览器输入http://cm1:8090访问即可

到此为止Kafka-Manager就部署成功了。

  1. 登录Kafka-Manager管理界面

点击Cluster菜单,添加一个Kafka集群

kafka manage kafka manager eagle_JAVA_04

kafka manage kafka manager eagle_kafka_05

根据自己当前Kafka集群的环境进行相应的配置,点击“Save”完成集群添加

kafka manage kafka manager eagle_JAVA_06

点击“Kafka-CDH”连接,进入Kafka集群的详细界面,下图为Kafka的统计信息

kafka manage kafka manager eagle_java_07

Brokers界面,可以看到当前Kafka集群的所有Broker节点及综合指标

kafka manage kafka manager eagle_JAVA_08

点击相应的Broker ID可以看到每个Broker的统计信息及详细指标等

kafka manage kafka manager eagle_JAVA_09

kafka manage kafka manager eagle_java_10

在Topic菜单下,可以创建和查看集群的所有Topic

kafka manage kafka manager eagle_kafka_11

创建一个Topic

kafka manage kafka manager eagle_kafka_12

2.2 总结

  1. Kafka-Manager支持Kafka的0.8.x,0.9.x,0.10.x,0.11.x版本
  2. Kafka需要JDK8的环境运行
  3. Kafka-Manager支持管理多个Kafka集群。
  4. 可以便捷的查看Kafka集群的状态(Brokers、Topics、副本分布及分区分布情况)
  5. 通过界面的方式创建Topic及为Topic重新分配分区等功能。
  6. Kafka-Manager启动默认端口号为9000,可以通过-Dhttp.port来指定端口号

3.Kafka Eagle

  1. 从git上下载:https://github.com/smartloli/kafka-eagle-bin/archive/v1.4.8.tar.gz(本例选择1.2.9版本
  2. 解压(需要解压两次)
cd /opt/module/
tar -zxf kafka-eagle-bin-1.4.8.tar.gz
cd kafka-eagle-bin-1.4.8
tar -zxf kafka-eagle-web-1.4.8-bin.tar.gz
  1. 设置全局变量,设置JDK的全局变量JAVA_HOME和本应用的KE_HOME
export JAVA_HOME=/usr/java/jdk1.8.0_131-cloudera
export KE_HOME=/opt/module/kafka-eagle-bin-1.4.8/kafka-eagle-web-1.4.8
export PATH=$JAVA_HOME/bin:$KE_HOME/bin:$PATH
  1. 进入kafka-eagle的conf目录下修改配置文件 system-config.properties ,配置基础配置
cd /opt/module/kafka-eagle-bin-1.4.8/kafka-eagle-web-1.4.8

# 修改为以下内容

#设置kafka集群(可以多个)
kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=cm1:2181,cm2:2181,cm3:2181


######################################
# kafka eagle 的端口
######################################
kafka.eagle.webui.port=8048


######################################
# kafka jdbc 地址注意可以自己安装数据mysql也可以自带的
######################################
kafka.eagle.driver=org.sqlite.JDBC
kafka.eagle.url=jdbc:sqlite:/opt/module/kafka-eagle-bin-1.4.8/kafka-eagle-web-1.4.8/db/ke.db
kafka.eagle.username=root
kafka.eagle.password=123456
  1. 文件配置完毕后开始启动 ,启动要进入bin目录下
#进入bin目录后会看到 ke.sh 文件先修改文件的权限
chomd 777 ke.sh

ke.sh start
# 停止
ke.sh stop

启动成功后的控制台输出

kafka manage kafka manager eagle_java_13

部署完成结束

  1. 下面介绍下他的页面功能
    功能界面

使用下 kafkasql查询的功能

kafka manage kafka manager eagle_java_14