在日常开发和运维中,查看 Kafka Topic、消费消息、排查数据问题,都是常见操作。如果这些工作能直接在 Web 界面完成,会方便不少。
最近,开源数据库管理工具 CloudDM 新增了 Kafka 支持,不仅可以查看和管理 Topic、消费消息,还提供权限管控和操作审计能力。
接下来,我们就结合实际操作,看看 CloudDM 如何让 Kafka 的日常使用和管理更方便。
Kafka 日常管理,有哪些麻烦?
Kafka 自带的命令行工具能够完成各种管理操作,但日常使用时,还是有些不方便。
比如,想查看 Topic 信息、消费消息,通常需要打开终端,输入对应的命令和参数。对于不经常操作 Kafka 的用户来说,可能还得临时查找命令用法,操作不够直观。
另外,Kafka 经常和 MySQL、PostgreSQL 等数据库配合使用。排查业务问题时,可能既要查询数据库中的记录,又要检查 Kafka 中的消息。如果使用不同的管理工具,就需要在多个界面之间来回切换。
如果能在一个平台中管理 Kafka 和其他数据库,同时提供更方便的操作方式,日常开发和排查问题也能省事不少。
针对这些需求,CloudDM 提供了一个统一的管理入口。
CloudDM 能为 Kafka 做什么?
CloudDM 是一款开源的数据库管理工具,支持 30 多种数据库的数据查询、对象管理、权限管控、操作审计以及数据库 CI/CD 等功能。
在 4.4.0 版本中,CloudDM 新增了 Kafka 数据源支持。现在,用户可以通过 CloudDM 的 Web 界面完成 Kafka 的部分日常管理操作,主要包括:
- Topic 浏览与管理:查看 Kafka Topic 信息,并执行支持的管理操作。
- 消息消费与查看:直接消费 Topic 中的消息,方便开发调试和数据排查。
- 命令补全与模板:输入命令时提供补全提示,常用命令可以直接套用,不用自己查找命令和参数。
- 安全连接:支持 TLS/SASL 认证,适应不同 Kafka 环境。
- 权限控制与操作审计:对用户访问和相关操作进行管理与追溯。
实操:使用 CloudDM 管理 Kafka
下面通过一个简单的示例,看看具体如何使用。
1. 连接 Kafka
首先,在 CloudDM 中添加 Kafka 数据源。
进入数据源管理页面,选择新增数据源 > Kafka。

根据实际环境填写 Kafka 集群的连接地址及相关配置。如果集群启用了身份认证或加密连接,也可以配置相应的 SASL、TLS 参数。
填写完成后,点击测试连接。确认连接成功,再保存数据源。

2. 查看和管理 Topic
连接成功后,进入数据查询界面,选择 Kafka 数据源,即可浏览对应的 Topic。
除了查看,CloudDM 还提供 Topic 管理能力,你可以创建、删除 Topic 等,并自带命令补全功能,还可以查看常用语句模板,帮助用户完成常见操作。

3. 消费并查看消息
在 CloudDM 中选择目标 Topic 后,你可以直接消费消息,并查看返回的内容。

团队使用 Kafka,还需要什么?
选择数据库管理工具时,个人开发者可能主要考虑工具操作是否方便。但在团队环境中,管理需求通常会更复杂。例如,开发人员需要查看测试环境的消息,运维人员负责管理生产环境资源,而部分成员可能只需要查看权限。如果所有人都使用同一套高权限账号,一旦出现误操作,后续很难明确责任。
CloudDM 在提供 Kafka 操作能力的同时,也将权限管控和操作审计纳入了管理范围。
1. 权限管控,按需授权
CloudDM 提供基于角色和资源的权限管理机制。
管理员可以通过角色控制成员能够使用哪些功能,再结合资源授权,管理成员能够访问的数据源及相应操作。Kafka 授权粒度最小为 Topic。
当团队成员发生变化,或项目权限需要调整时,也可以通过统一的管理入口维护授权关系。

2. 操作审计,全程可追溯
多人共同使用 Kafka 和数据库时,除了控制访问权限,还需要知道谁在什么时间执行了哪些操作,方便后续排查和追溯。
CloudDM 提供了两类审计能力:
- 操作审计:记录用户在平台内的操作行为,包括操作人员、时间、操作对象等信息。

- SQL 审计:针对数据库中的 SQL 执行行为,记录执行人、SQL 内容、执行时间等信息。

这些对于日常问题排查、内部管理以及需要保留操作记录的团队都很有帮助。
结尾
Kafka 的使用场景越来越丰富,围绕它的日常管理工作也在不断增加。从查看 Topic、消费消息,到多人协作时的权限分配与操作追溯,这些事情都需要一个方便、可控的管理入口。
CloudDM 4.4.0 新增 Kafka 支持,让数据库与 Kafka 可以在同一个平台中管理。
如果你正在寻找一款开源的 Kafka 管理工具,或者希望将团队使用的数据库和 Kafka 纳入统一管理,不妨体验一下 CloudDM。
- 官网:www.cdmgr.com/
- GitHub:github.com/ClouGence/o...
- Gitee:gitee.com/clougence/o...
快速体验
国内镜像
bash
docker run -d --name cgdm-alone \
-p 8222:8222 \
-v cgdm_alone_conf:/root/cgdm/alone/conf \
-v cgdm_alone_logs:/root/cgdm/alone/logs \
-v cgdm_alone_data:/root/cgdm/alone/data \
-v cgdm_mysql_data:/var/lib/mysql \
cloudcanal-registry.cn-shanghai.cr.aliyuncs.com/clougence/cgdm-alone:latest
海外镜像
bash
docker run -d --name cgdm-alone \
-p 8222:8222 \
-v cgdm_alone_conf:/root/cgdm/alone/conf \
-v cgdm_alone_logs:/root/cgdm/alone/logs \
-v cgdm_alone_data:/root/cgdm/alone/data \
-v cgdm_mysql_data:/var/lib/mysql \
bladepipe/cgdm-alone:latest
启动完成后,浏览器访问:http://localhost:8222