strimzi-kafka-cli について
Strimzi Kafka CLI は、従来の Apache Kafka に慣れた開発者や管理者が Kubernetes 用オペレーター Strimzi に移行できるよう支援するコマンドラインツールです。コマンドは kafka-* スクリプトに近い形で、kfk として実行します。内蔵の MCP サーバーにより、AI アシスタントから Kubernetes 上の Kafka を管理できます。
主な機能
- 01Kafka クラスター、トピック、ユーザーの管理
- 02Kafka Connect と MirrorMaker2 の管理
- 03Kafka と Connect のバックアップと復元
- 04ACL、ノードプール、オペレーターの管理
- 0542 個の MCP ツールを提供
活用シーン
- 01kafka-* コマンドに慣れたチームの Strimzi への移行
- 02AI アシスタント経由での Kubernetes 上の Kafka リソースの操作
- 03Strimzi 管理下の Kafka クラスターのバックアップと復元
MCP 対応
kfk mcp コマンドで内蔵の MCP サーバーを起動し、Strimzi リソースを管理する 42 個のツールを AI アシスタントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Strimzi Kafka CLI
Strimzi Kafka CLI は、従来の Apache Kafka ユーザー(開発者と管理者の両方)が、Apache Kafka 用の Kubernetes オペレーターである Strimzi に簡単に移行できるよう支援する CLI です。
主な目的は、通常の Kafka パッケージの bin ディレクトリにある kafka-* で始まる従来の Apache Kafka ツールと同様の CLI エクスペリエンスを提供し、Strimzi の利用を促進することです。
Strimzi Kafka CLI では、「Kafka For Kubernetes(Kafka for Kubernetes)」、または単に「k a f k a」を略した kfk コマンドを使用します。これは、従来の 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: Managing Strimzi in a Kafka Native Way」をご覧ください。
インストール
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 には、AI アシスタントが Kubernetes 上の Strimzi Kafka デプロイメントを管理できるようにする MCP(Model Context Protocol) サーバーが含まれています。
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 |
| オペレーター | 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 サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。