DiDi Kafka-Manager安装和简单使用

时间:2022-07-26
本文章向大家介绍DiDi Kafka-Manager安装和简单使用,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

之前本来想装kafka-manager,现在叫做CMAK,后来发现滴滴开源的kafka-manager,功能更丰富。看了下它的架构图和源码,还是很值得参考和借鉴的。

让我们来看看didi kafka-manager官网介绍的功能:

一站式 ApacheKafka集群指标监控与运维管控平台

主要功能特性

集群监控维度

  • 多版本集群管控,支持从 0.10.22.4版本;
  • 集群Topic、Broker等多维度历史与实时关键指标查看;

集群管控维度

  • 集群运维,包括逻辑Region方式管理集群;
  • Broker运维,包括优先副本选举;
  • Topic运维,包括创建、查询、扩容、修改属性、数据采样及迁移等;
  • 消费组运维,包括指定时间或指定偏移两种方式进行重置消费偏移;

用户使用维度

  • 管理员用户与普通用户视角区分;
  • 管理员用户与普通用户权限区分;

kafka-manager架构图

安装手册

环境依赖

  • Maven3.5.0+(后端打包依赖)
  • node v8.12.0+(前端打包依赖)
  • Java8+(运行环境需要)
  • MySQLPostgreSQL(数据存储)

环境初始化

mysql建库kafka-manager,执行初始化脚本 createmysqltable.sql,从而创建所需的MySQL库及表,默认创建的库名是 kafka_manager

打包

执行 mvn install命令即可。

备注:每一次执行 mvn install命令,都将在 web/src/main/resources/templates下面生成最新的前端资源文件,如果 console模块下的代码没有变更,可以修改 ./pom.xml文件,忽略对 console模块的打包。

在对console执行npm的过程中遇到下面的错误:

“Unexpected end of JSON input while parsing near···”

解决方法:先清除缓存,再重新安装

清除缓存

npm cache clean --force

在重新执行命令

启动

############# application.yml 是配置文件
cp web/src/main/resources/application.yml web/target/
cd web/target/
nohup java -jar kafka-manager-web-1.0.0-SNAPSHOT.jar --spring.config.location=./application.yml > /dev/null 2>&

由于集群8080端口被占用,我们改成了9005

Web界面

用管理员帐号admin/admin登录

我们需要添加kafka集群

这里注意,我们CDH中zookeeper的连接地址为 cdh1.macro.com:2181,cdh2.macro.com:2181,cdh3.macro.com:2181/kafka

后续我们深度使用,看会遇到哪些问题。