关于 strimzi-kafka-cli
Strimzi Kafka CLI 是命令行工具,名为 kfk,帮助熟悉传统 Apache Kafka 的开发者和管理员迁移到 Strimzi(Kubernetes 上的 Kafka 运行器)。它的命令风格接近 kafka-* 系列脚本,并可通过 MCP 服务让 AI 助手管理 Kubernetes 上的 Kafka 部署。
主要功能
- 01管理 Kafka 集群、主题与用户
- 02管理 Kafka Connect 与 MirrorMaker2
- 03备份与恢复 Kafka 及 Connect
- 04管理 ACL、节点池与 Operator
- 05提供 42 个 MCP 工具
适用场景
- 01将熟悉 kafka-* 命令的团队迁移到 Strimzi
- 02通过 AI 助手查询与变更 Kubernetes 上的 Kafka 资源
- 03备份与恢复 Strimzi 管理的 Kafka 集群
MCP 相关
该工具通过 kfk mcp 启动内置 MCP 服务,向 AI 助手暴露 42 个用于管理 Strimzi 资源的工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Strimzi Kafka CLI
Strimzi Kafka CLI 是一款命令行工具,可帮助传统 Apache Kafka 用户(包括开发者和管理员)轻松适配 Strimzi,这是一款用于 Apache Kafka 的 Kubernetes operator。
其主要目的是通过提供与传统 Apache Kafka 工具相似的命令行体验,推动 Strimzi 的使用。这些工具通常位于普通 Kafka 软件包的 bin 目录下,名称以 kafka-* 为前缀。
Strimzi Kafka CLI 使用 kfk 命令作为“Kafka For Kubernetes”(面向 Kubernetes 的 Kafka)的缩写,或者简单地读作“k a f k a”,让人联想到普通 Kafka 脚本文件名中的 kafka-* 前缀。
对于一些常见对象,Strimzi Kafka CLI 提供了一组类似的命令或选项,同时还具备一些用于管理或配置 Strimzi 相关资源的额外功能。
以下是当前版本 Strimzi Kafka CLI 中用于不同用途的命令:
Usage: kfk [OPTIONS] COMMAND [ARGS]...
Strimzi Kafka CLI.
Options:
--version Show the version and exit.
--help Show this message and exit.
Commands:
acls Manages ACLs on Kafka.
backup Backs up and restores Strimzi resources.
kafka Backs up or restores a Kafka cluster and its resources.
connect Backs up or restores a Kafka Connect cluster and its connectors.
clusters Creates, alters, deletes, describes Kafka cluster(s).
configs Adds/Removes entity config for a topic, client, user...
connect Manages Kafka Connect clusters, connectors, and MirrorMaker2.
clusters Creates, alters, deletes, describes KafkaConnect cluster(s).
connectors Creates, alters, deletes, describes KafkaConnector(s).
mirror-maker Lists, describes, creates, deletes KafkaMirrorMaker2(s).
console-consumer Reads data from Kafka topics and outputs it to...
console-producer Reads data from standard input and publish it to Kafka.
mcp Starts the Strimzi MCP server.
node-pools Lists, describes, creates, deletes KafkaNodePool(s).
operator Installs/Uninstalls Strimzi Kafka Operator.
topics Creates, alters, deletes, describes Kafka topic(s).
users Creates, alters, deletes, describes Kafka users(s).
如需了解更多详情,请参阅相关文章 Strimzi Kafka CLI:以原生 Kafka 的方式管理 Strimzi。
安装
使用 Python 软件包安装程序
pip install strimzi-kafka-cli --user
或者,要在隔离环境中安装 Strimzi Kafka CLI,可以直接使用 pipx:
pipx install strimzi-kafka-cli
安装并启用 MCP 服务支持:
pip install strimzi-kafka-cli[mcp] --user
或者使用 pipx:
pipx install strimzi-kafka-cli[mcp]
使用 Homebrew
#Tap the homebrew repository first.
brew tap systemcraftsman/strimzi-kafka-cli
#Install Strimzi Kafka CLI
brew install strimzi-kafka-cli
使用 Homebrew 安装 CLI 时会自动使用虚拟环境,因此无需担心影响主 Python 环境。默认包含 MCP 服务支持。
项目要求:Python >=3.11
示例
MCP 服务
Strimzi Kafka CLI 内含一个 MCP(Model Context Protocol) 服务,可让 AI 助手管理 Kubernetes 上的 Strimzi Kafka 部署。
启动 MCP 服务
kfk mcp
在 Claude Code 中注册
claude mcp add strimzi-kafka-cli -- kfk mcp
可用工具(42)
| 类别 | 工具 |
|---|---|
| Kafka 集群 | list_kafkas、get_kafka、get_kafka_status、create_kafka、delete_kafka、alter_kafka_config |
| 主题 | list_topics、get_topic、create_topic、delete_topic、alter_topic |
| 用户 | list_users、get_user、create_user、delete_user、alter_user |
| Connect 集群 | list_connects、get_connect、create_connect、delete_connect、alter_connect |
| 连接器 | list_connectors、get_connector、create_connector、delete_connector、alter_connector |
| MirrorMaker2 | list_mirror_maker_2s、get_mirror_maker_2、create_mirror_maker_2、delete_mirror_maker_2 |
| 备份 | backup_kafka、restore_kafka、backup_connect、restore_connect |
| ACL | add_or_remove_acls |
| Operator | install_operator、uninstall_operator |
| 节点池 | list_node_pools、get_node_pool、create_node_pool、delete_node_pool |
| 版本 | get_version |
依赖项
Python 依赖项
请参阅 pyproject.toml 文件。
外部依赖项
首次运行 kfk 命令时,会自动下载 Strimzi resources。Strimzi Kafka CLI 使用 Python Kubernetes 客户端直接与集群交互。你可以通过以下命令查看依赖项版本:
kfk --version
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。