Kafka Magic 是一个用于处理 Apache Kafka 集群的 GUI 工具。它可以查找和显示消息、在 Topic 之间转换和移动消息、查看和更新模式、管理 Topic 以及自动化复杂任务。
Kafka Magic 通过方便的用户界面促进 Topic 管理、QA 和集成测试。
Kafka Magic Community Edition 可免费供个人和企业使用。在这里下载
使用 JavaScript 查询搜索、查看、过滤消息
- 浏览 Kafka 集群、Topic 和分区。
- 使用带有消息字段、标题、键的任意组合的 JavaScript 查询来搜索消息。
- 按分区、偏移量和时间戳过滤消息。
- 查看字符串、JSON 或 Avro 序列化消息。
- 支持 Ssl、PlainText、Sasl Plain Text、Sasl Ssl 安全协议的集群
- 支持 GSSAPI、PLAIN、SCRAM-SHA-256、SCRAM-SHA-512 的 Sasl mechanism 的集群

发布消息
- 将 JSON 或 Avro 消息发布到 Topic
- 使用 Context 发布消息:Key、Headers、Partition Id
- 在一个步骤中将多条消息发布为一个数组
在 Topic 之间移动消息
- 在一个 Topic 中查找消息并将它们发送到另一个 Topic
- 即时转换消息并更改分配的架构
- 在多个 Topic 之间有条件地分发消息
管理 Topic 和 Avro 模式
- 读取集群和 Topic 元数据
- 创建、克隆和删除 Topic
- 读取和注册 Avro 模式
自动化复杂任务
- 使用 JavaScript(完全符合 ECMAScript)编写任何复杂的自动化脚本
- 使用 IntelliSense 和自动完成助手支持的简单命令编写脚本
- 直接从 UI 执行长时间运行的集成测试
- 保持对测试执行的完全控制
Kafka Magic 有效地处理包含数百万条消息的非常大的 Topic。
专为企业环境而设计
使用场景
- 发展:利用 Apache Kafka 快速验证软件
- 一体化:验证 Avro 模式和消息
- 测试和质量保证:运行复杂的集成测试脚本
- 支持:发现并解决运营问题
- 遵守:在 Kafka 中搜索特定内容
以您想要的任何方式部署:
- 作为 Windows、Linux 和 Mac 的桌面应用程序。
- 作为部署在更靠近 Kafka 集群的 Docker 容器。
- 单独为每个开发人员,
- 或整个团队的单个实例。(每个用户可能仍需要用户访问许可证)
部署
docker 部署
参考:
docker 部署
Kafka Magic Docker 容器 (Linux amd64) 托管在 Docker Hub 的存储库digitaly/kafka-magic中。
拉取镜像:
Web 界面在端口 80 上公开。要运行容器并映射到不同的端口(例如 8080):
在浏览器中导航到http://localhost:8080
docker-compose 部署
对于 docker-compose 示例,请参见 快速开始
Kubernetes 中部署
默认情况下,Kafka Magic 应用程序的 Docker 容器版本配置为将配置存储在内存中。
要配置文件存储,您可以通过环境变量更新配置。使用的配置环境变量的名称 KMAGIC 前缀,需要创建这些环境变量:
完整的部署 Yaml 如下:
使用了 ceph-rbd storageclass 存储。
笔者的集群为扁平化网络,Service ClusterIP 和 PodIP 集群外是可以访问的,集群泛域名已经在内网 DNS 中配置转发规则。
当然也可以通过 NodePort、Ingress 方式暴露服务。
笔者部署之后 Kafka Magic 的访问地址为:
使用
不注册账号只能添加集群查询消息。注册一个账号,可以使用的功能更多。
注意:用 qq 邮箱,总是收不到验证码。用 gmail 邮箱可以了。
注册 Kafka 集群
点击 Register New 注册 Kafka 集群:

发送消息

查询消息

Maximum Result 的范围是[0, 10000]

执行自动化任务
下面脚本将在My cluster name 集群中创建一个my_new_topic_name 的 topic,并发送消息{ "myField1": "bar", "myField2": 3 },然后查询消息,最后 delete topic:
将消息从 A topic 复制到 B topic

















