news 2025/12/14 11:36:10

Kafka监控工具 EFAK-AI 介绍

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Kafka监控工具 EFAK-AI 介绍

1.概述

在大数据与人工智能深度融合的新时代,Apache Kafka 已成为企业实时数据流处理的核心引擎。然而,随着业务规模的不断扩大,Kafka 集群的监控与运维复杂度也随之攀升——指标繁多、延迟难察、告警频繁,传统监控手段难以快速定位问题与优化性能。正因如此,EFAK-AI(Eagle For Apache Kafka - AI Enhanced,原Kafka Eagle) 应运而生。它在经典 EFAK 的基础上全面升级,融合 AI 智能分析与分布式监控能力,为 Kafka 运维注入了全新的智能化体验。本文将带您深入了解 EFAK-AI 5.0.0 的全新功能与技术亮点。

GitHub开源地址:https://github.com/smartloli/EFAK

2.内容

EFAK-AI (Eagle For Apache Kafka - AI Enhanced) 是一款开源的 Kafka 智能监控与管理平台,融合了人工智能技术,为 Kafka 运维提供智能化、可视化、自动化的全方位解决方案。

🎯 核心优势

🧠 AI 驱动: 集成主流大语言模型(OpenAI、Claude、DeepSeek 等),提供智能对话式运维

📊 实时监控: 全方位监控 Kafka 集群健康状态、性能指标、消费延迟等关键数据

🚀 高性能: 基于 Spring Boot 3.x 和 JDK 17,采用响应式编程和异步处理

🔧 易部署: 支持 Docker 一键部署和传统 tar.gz 安装包两种方式

2.1 核心特性

🤖 AI 智能助手

多模型支持: 集成 OpenAI、Claude、DeepSeek 等多种大语言模型

Function Calling: AI 可自动调用后端函数查询实时数据

图表自动生成: 根据时序数据自动生成可视化图表

Kafka 专家: 专业的 Kafka 集群分析、性能优化和故障诊断建议

流式对话: 基于 SSE 的实时流式响应,体验更流畅

Markdown 渲染: 支持代码高亮、表格、Mermaid 图表等丰富格式

对话历史: 完整的会话管理和历史记录功能

📊 集群监控

实时监控: Broker 节点状态、主题分区、消费者组监控

性能指标: 吞吐量、延迟、存储容量等关键指标

历史数据: 长期趋势分析和性能对比

多集群支持: 同时管理多个 Kafka 集群

⚡ 分布式任务调度

智能分片: 基于 Redis 的分布式任务分片执行

故障转移: 自动检测节点故障并重新分配任务

负载均衡: 动态调整任务分配,优化资源利用

单节点优化: 自动检测单节点环境,跳过分片逻辑

🚨 告警管理

多渠道告警: 支持钉钉、微信、飞书等多种告警渠道

智能阈值: 基于历史数据的动态阈值调整

告警聚合: 避免告警风暴,提供告警聚合和降噪

可视化配置: 直观的告警规则配置界面

2.2 技术架构

模块结构

复制代码

EFAK-AI/

├── efak-ai/ # 告警功能模块

├── efak-core/ # 核心功能模块 (Kafka 连接、监控逻辑)

├── efak-dto/ # 数据传输对象

├── efak-tool/ # 工具类模块

└── efak-web/ # Web 应用模块 (控制器、服务、前端)

复制代码

技术栈

后端框架: Spring Boot 3.4.5

数据库: MySQL 8.0+ (主数据库)

缓存: Redis 6.0+ (分布式锁、任务调度)

消息队列: Apache Kafka 4.0.0

ORM: MyBatis 3.0.4

前端: Thymeleaf

构建工具: Maven 3.6+

Java 版本: JDK 17

2.3 快速开始

EFAK-AI 提供两种部署方式:Docker 容器化部署(推荐)和 tar.gz 安装包部署。

🚀 一键启动(超简单!)

复制代码

# 克隆项目

git clone https://github.com/smartloli/EFAK-AI.git

cd EFAK-AI

# 运行快速启动脚本

./quick-start.sh

复制代码

快速启动脚本提供:

Docker 一键部署

tar.gz 安装包构建

日志查看和服务管理

方式一:Docker 部署(推荐)⚡

环境要求

Docker Desktop 4.43.2+

Docker Compose 2.0+

一键启动

复制代码

# 1. 克隆项目

git clone https://github.com/smartloli/EFAK-AI.git

cd EFAK-AI

# 2. 启动所有服务(包括 MySQL、Redis)

docker-compose up -d

# 3. 查看日志

docker-compose logs -f efak-ai

# 4. 访问应用

# http://localhost:8080

# 默认账号: admin / admin

复制代码

启动 Nginx 反向代理(可选)

# 使用 nginx profile 启动

docker-compose --profile nginx up -d

# 通过 http://localhost (80端口) 访问

常用 Docker 命令

复制代码

# 查看运行状态

docker-compose ps

# 停止服务

docker-compose down

# 重启服务

docker-compose restart efak-ai

# 查看日志

docker-compose logs -f

复制代码

方式二:tar.gz 安装包部署

环境要求

JDK 17+

MySQL 8.0+

Redis 6.0+

1. 构建安装包

复制代码

# 克隆项目

git clone https://github.com/smartloli/EFAK-AI.git

cd EFAK-AI

# 执行构建脚本

./build-package.sh

# 生成安装包: efak-ai-5.0.0.tar.gz

复制代码

2. 部署安装包

复制代码

# 传输到服务器(如果需要)

scp efak-ai-5.0.0.tar.gz user@server:/opt/

# 解压

cd /opt

tar -zxvf efak-ai-5.0.0.tar.gz

cd efak-ai-5.0.0

# 目录结构

# bin/ - 启动脚本

# config/ - 配置文件

# libs/ - JAR 包

# logs/ - 日志目录

# sql/ - SQL 脚本

复制代码

3. 初始化数据库

mysql -u root -p

CREATE DATABASE efak_ai CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

USE efak_ai;

SOURCE /opt/efak-ai-5.0.0/sql/ke.sql;

4. 修改配置编辑 config/application.yml:

复制代码

spring:

datasource:

url: jdbc:mysql://localhost:3306/efak_ai?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai

username: root

password: your_password

data:

redis:

host: localhost

port: 6379

复制代码

5. 启动应用

复制代码

# 启动

./bin/start.sh

# 查看日志

tail -f logs/efak-ai.log

# 查看状态

./bin/status.sh

# 停止

./bin/stop.sh

# 重启

./bin/restart.sh

复制代码

6. 访问应用

应用地址: http://localhost:8080

默认账号: admin / admin123

7. 验证进程

# 查看进程(进程名显示为 KafkaEagle)

ps aux | grep KafkaEagle

3.EFAK-AI 功能预览

本文档展示 EFAK-AI (Eagle For Apache Kafka - AI Enhanced) 系统的核心功能界面和特性。

3.1 快速启动

1. 使用快速启动脚本

EFAK-AI 提供了一键启动脚本 quick-start.sh,支持多种部署方式:

image

功能选项:

选项 1: Docker Compose 部署(推荐)

选项 2: Docker 手动构建并部署

选项 3: 构建 tar.gz 安装包

选项 4: 停止 Docker 服务

选项 5: 查看 Docker 日志

选项 6: 查看 Docker 状态

选项 7: 退出

2. 部署成功示例

部署成功

部署成功后,您可以:

访问应用: http://localhost:8080

查看日志: docker compose logs -f efak-ai

查看状态: docker compose ps

查看进程: docker compose exec efak-ai jps

3.2 核心功能

1. 仪表盘 (Dashboard)

仪表盘

功能特性:

实时监控: Kafka 集群整体运行状态

可视化图表: 消息流量、Topic 数量、Consumer 组状态

性能指标: 吞吐量、延迟、存储使用情况

告警统计: 实时告警数量和类型分布

响应式设计: 支持桌面和移动端访问

关键指标:

Broker 数量和状态

Topic 总数和活跃数

Consumer Group 数量

消息总量和增长趋势

集群健康度评分

2. 集群管理 (Cluster)

集群管理

功能特性:

多集群管理: 支持管理多个 Kafka 集群

Broker 详情: 查看每个 Broker 的详细信息

性能监控: 实时 Broker CPU、内存、磁盘使用率

配置管理: 查看和修改集群配置

健康检查: 自动检测 Broker 健康状态

支持的操作:

添加/删除集群配置

查看 Broker 列表和状态

监控 Broker 性能指标

查看 Controller 信息

集群元数据查询

3. 主题管理 (Topics)

主题管理

功能特性:

Topic 列表: 展示所有 Topic 及其关键信息

高级搜索: 支持按名称、分区数、副本数搜索

统计信息: 消息数量、存储大小、消费者组数

创建 Topic: 可视化创建 Topic 界面

删除 Topic: 安全删除 Topic(带确认)

批量操作: 支持批量删除、修改配置

显示字段:

Topic 名称

分区数量

副本因子

消息总数

存储大小

消费者组数量

创建时间

操作按钮

4. 主题详情 (Topic Detail)

主题详情

功能特性:

分区详情: 每个分区的 Offset、Leader、Replicas

消息流量: 实时消息生产和消费速率

消息查询: 按 Offset、时间戳、Key 查询消息

配置管理: 查看和修改 Topic 配置

分区重分配: 手动触发分区重新分配

消费延迟: 各消费者组的消费进度和延迟

详细信息:

分区分布和状态

ISR (In-Sync Replicas) 列表

Leader 选举历史

消息保留策略

压缩类型和配置

消费者组订阅情况

5. 消费者监控 (Consumer)

消费者监控

功能特性:

消费者组列表: 所有活跃的消费者组

消费进度: 每个组的消费 Offset 和 Lag

延迟告警: 消费延迟超过阈值自动告警

消费者详情: 查看组内每个消费者实例

消费趋势: 消费速率和延迟趋势图

重置 Offset: 支持重置消费位置

监控指标:

Consumer Group ID

订阅的 Topic 列表

总 Lag 数量

消费速率 (msg/s)

消费者实例数

最后消费时间

分区分配策略

6. AI 智能对话 (AI Chat)

AI 智能对话

功能特性:

智能助手: 基于大语言模型的 Kafka 运维助手

自然语言交互: 用自然语言查询 Kafka 状态

数据可视化: 自动生成图表展示数据

问题诊断: 智能分析和解决 Kafka 问题

操作建议: 提供最佳实践和优化建议

历史记录: 保存对话历史便于回溯

支持的查询类型:

"查询集群状态"

"分析 Topic XYZ 的消费延迟"

"为什么消费者组 ABC 停止消费?"

"如何优化 Topic 性能?"

"生成消息流量趋势图"

"诊断 Broker 性能问题"

AI 能力:

自动理解用户意图

查询 Kafka 元数据和指标

生成可视化图表 (Chart.js)

提供运维建议和最佳实践

解释 Kafka 概念和参数

7. 模型配置 (Model)

模型配置

功能特性:

模型管理: 配置和切换 AI 大语言模型

API 配置: 管理 OpenAI、Azure、本地模型 API Key

参数调优: 调整 Temperature、Max Tokens 等参数

模型测试: 在线测试模型响应效果

使用统计: 查看 API 调用次数和费用

多模型支持: 支持 OpenAI GPT、Azure OpenAI、本地模型

支持的模型:

OpenAI GPT-5 模型

Azure OpenAI Service

本地部署的开源模型 (如 Llama, ChatGLM)

自定义模型接口

配置项:

模型名称和版本

API Endpoint

API Key / Token

Temperature (0.0 - 1.0)

Max Tokens

超时设置

重试策略

8. 性能监控 (Performance)

性能监控

功能特性:

实时监控: Broker、Topic、Consumer 性能指标

历史数据: 支持查询历史性能数据

自定义图表: 自定义监控指标和时间范围

性能分析: 自动分析性能瓶颈

趋势预测: 基于历史数据预测趋势

性能告警: 指标超过阈值自动告警

监控指标:

Broker 指标:

CPU、内存、磁盘使用率

网络 I/O 吞吐量

请求处理延迟

活跃连接数

Topic 指标:

消息生产速率

消息消费速率

字节流入/流出速率

分区 Leader 分布

Consumer 指标:

消费延迟 (Lag)

消费速率

提交频率

重平衡次数

9. 告警管理 (Alert)

告警管理

功能特性:

告警规则: 自定义告警规则和阈值

多渠道通知: 支持钉钉、微信、飞书、Webhook

告警统计: 告警历史和趋势分析

告警静默: 临时屏蔽特定告警

智能告警: AI 分析告警原因和建议

告警模板: 预定义常用告警规则

告警类型:

Broker 告警:

Broker 下线

CPU/内存/磁盘使用率过高

网络异常

Topic 告警:

分区 ISR 不足

消息积压

副本同步延迟

Consumer 告警:

消费延迟过高

消费者组下线

消费停滞

通知渠道配置:

钉钉: Webhook URL

微信: Webhook URL

飞书: Webhook URL

Webhook: 自定义 HTTP 回调

10. 任务调度 (Task)

任务调度

功能特性:

定时任务: 创建和管理定时任务

Cron 表达式: 支持复杂的调度规则

任务类型: 数据采集、清理、备份、分析

执行历史: 查看任务执行记录和结果

失败重试: 自动重试失败的任务

任务日志: 详细的执行日志

支持的任务类型:

数据采集任务:

Kafka 指标采集

JMX 数据采集

日志收集

清理任务:

过期数据清理

日志归档

临时文件清理

备份任务:

配置备份

元数据导出

数据快照

分析任务:

性能报告生成

趋势分析

异常检测

调度配置:

Cron 表达式编辑器

执行时间设置

并发控制

超时设置

失败重试策略

11. 用户管理 (Users)

用户管理

功能特性:

用户管理: 创建、编辑、删除用户

权限控制: 基于角色的访问控制 (RBAC)

密码策略: 强制密码复杂度和定期更换

角色和权限:

超级管理员:

所有权限

用户管理

系统配置

管理员:

集群管理

Topic 管理

告警配置

运维人员:

监控查看

告警处理

任务管理

只读用户:

查看监控数据

查看告警信息

无修改权限

用户字段:

用户名

角色

状态 (启用/禁用)

最后登录时间

创建时间

12. 多集群管理 (Manager)

多集群管理

功能特性:

多集群统一管理: 在一个平台管理多个 Kafka 集群

环境隔离: 支持测试、预发、生产等不同环境的集群管理

集群切换: 快速在不同集群间切换查看和操作

集群对比: 对比不同集群的配置和性能指标

多环境集群管理:

生产环境 (Production):

高可用配置

严格的权限控制

完整的审计日志

实时性能监控

7×24 告警响应

预发环境 (Staging):

与生产环境配置一致

用于上线前验证

支持压力测试

数据脱敏处理

测试环境 (Testing):

开发团队使用

支持快速创建/删除 Topic

灵活的配置调整

数据自动清理

开发环境 (Development):

本地开发调试

无告警限制

支持实验性功能

集群配置管理:

连接配置:

Broker 地址列表

Zookeeper 地址(如使用)

SASL/SSL 认证配置

超时和重试参数

环境标识:

集群名称

环境标签 (dev/test/staging/prod)

颜色标识(防止误操作)

备注说明

访问控制:

基于角色的集群访问权限

生产集群限制高危操作

操作审批流程(生产环境)

集群状态监控:

集群在线状态

Broker 总数和存活数

Topic 和分区统计

消费者组数量

消息吞吐量

存储使用情况

连接健康度

4.总结

总结来看,EFAK-AI 5.0.0 以分布式架构与 AI 智能分析为核心,全面提升了 Kafka 集群的可观测性与运维效率。它不仅让监控更实时、告警更精准,还让问题分析与决策更智能。EFAK-AI 正在让 Kafka 运维从被动监控迈向主动洞察,助力构建更高效、更智能的数据流生态。

5.结束语

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/12 11:47:30

SSM物业缴费管理系统u8mx4(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面

系统程序文件列表系统项目功能:物业,用户,项目类型,缴费通知,缴费信息,反馈信息,报修信息,健康上报,公告信息SSM物业缴费管理系统开题报告一、课题背景与意义1.1 课题背景随着我国城市化进程的加速,居民小区数量不断增加,物业管理作为小区运营…

作者头像 李华
网站建设 2025/12/12 11:47:01

如何在PowerPoint中轻松插入LaTeX公式:终极解决方案

如何在PowerPoint中轻松插入LaTeX公式:终极解决方案 【免费下载链接】latex-ppt Use LaTeX in PowerPoint 项目地址: https://gitcode.com/gh_mirrors/la/latex-ppt 还在为PowerPoint中复杂的数学公式排版而烦恼吗?想要让学术演示文稿达到论文级别…

作者头像 李华
网站建设 2025/12/12 11:46:59

Ultralytics YOLOv11终极性能优化:从配置到实战的完整指南

Ultralytics YOLOv11终极性能优化:从配置到实战的完整指南 【免费下载链接】ultralytics ultralytics - 提供 YOLOv8 模型,用于目标检测、图像分割、姿态估计和图像分类,适合机器学习和计算机视觉领域的开发者。 项目地址: https://gitcode…

作者头像 李华
网站建设 2025/12/12 11:46:58

突破传统:3大实战方法让GLM语言模型成为你的AI生产力工具

突破传统:3大实战方法让GLM语言模型成为你的AI生产力工具 【免费下载链接】GLM GLM (General Language Model) 项目地址: https://gitcode.com/gh_mirrors/glm2/GLM 你是否曾经遇到过这样的困境:面对海量文本数据却无从下手?想要构建智…

作者头像 李华
网站建设 2025/12/12 11:46:52

3步快速解决HeyGem.ai性能问题:终极优化指南

3步快速解决HeyGem.ai性能问题:终极优化指南 【免费下载链接】HeyGem.ai 项目地址: https://gitcode.com/GitHub_Trending/he/HeyGem.ai 想要让HeyGem.ai运行更流畅?作为一款强大的AI数字人生成工具,性能优化是每个用户都应该掌握的核…

作者头像 李华