滴滴开源的kafka-manager编译及部署使用 - Go语言中文社区

滴滴开源的kafka-manager编译及部署使用


github: https://github.com/didi/kafka-manager

使用文档:https://github.com/didi/kafka-manager/blob/master/doc/user_cn_guide.md

本文介绍滴滴的kafka-manager的编译及使用。修改了默认的mariadb为mysql8。

如果不想编译的话也可以直接使用我编译好的版本:didi-kafka-manager

配合下面的yml文件和初始化SQL即可直接使用。

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


主要功能特性

集群监控维度

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

集群管控维度

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

用户使用维度

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

kafka-manager架构图

 

环境准备:

jdk8

mysql

mysql建库kafka-manager,执行初始化脚本 create_mysql_table.sql

编译:

下载最新的源码。

修改默认管理数据库驱动:

进入下载的源码目录/kafka-manager-master/dao修改pom.xml文件,新增mysql8的依赖,如果需要mysql5也是一样的方法。

<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>8.0.13</version>
</dependency>

修改之后到/kafka-manager-master目录下进入cmd命令,执行mvn install,等待一会即可编译成功。

然后进入kafka-manager-master\web\src\main\resources下将application.yml 以及kafka-manager-master\web\target下的编译成功后的kafka-manager-web-1.0.0-SNAPSHOT.jar取出来,启动系统只需要这两个文件就行了。

修改application.yml配置文件

server:
  port: 8080
  tomcat:
    accept-count: 100
    max-connections: 1000
    max-threads: 20
    min-spare-threads: 20

spring:
  application:
    name: kafkamanager
  datasource:
    kafka-manager:
      jdbc-url: jdbc:mysql://localhost:3306/kafka_manager?characterEncoding=UTF-8&serverTimezone=GMT%2B8
      username: root
      password: 123456
      driver-class-name: com.mysql.jdbc.Driver #MYSQL8 需要在dao文件夹内修改pom.xml里的依赖为mysql8然后重新打包
  main:
    allow-bean-definition-overriding: true

  profiles:
    active: dev

logging:
  config: classpath:logback-spring.xml

# kafka监控
kafka-monitor:
  enabled: true
  notify-kafka:
    cluster-id: 95
    topic-name: kmo_monitor

启动验证:

nohup java -jar kafka-manager-web-1.0.0-SNAPSHOT.jar --spring.config.location=./application.yml > /dev/null 2>&1 &

访问http://localhost:8080,输入帐号及密码进行登录,默认账号是admin/admin(在管理数据库account表内也可以查到)

新增集群:

集群指标监控:

topic信息及指标监控,(忽略我这个测试环境没数据)。监控指标需要开启kafka的JMX port,这个在另一篇kafka-eagle文章内有提到。

告警:支持Lag/BytesIn/BytesOut这三类告警,告警被触发后,告警消息会被发往指定的Topic(yml配置文件内kafka-monitor.notify-kafka.topic-name)。可以主动消费该告警Topic的数据或者统一由管理员将该数据接入外部通知系统,比如接入短信通知或电话邮件通知等。据小道消息后面会将告警和滴滴另一个开源监控系统:夜莺监控系统

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/wsdc0521/article/details/105833978
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2023-01-02 19:00:04
  • 阅读 ( 183 )
  • 分类:Go开源项目

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢