mcpField
K
kubefwd

kubefwd

ローカル
github.com/txn2クラウド・インフラ4.2k2 週間前に更新

kubefwd について

kubefwd は、Kubernetes のサービスをローカルワークステーションへまとめてポートフォワードするコマンドラインツールです。クラスター内と同じサービス名でアクセスしながらローカル開発を行う開発者向けで、各サービスに個別のループバック IP が割り当てられます。

主な機能

  1. 01名前空間内のすべてのサービスの一括転送
  2. 02サービスごとに固有の 127.x.x.x IP を割り当て
  3. 03/etc/hosts へのサービス名の自動登録
  4. 04Pod の再起動や切断後の自動再接続
  5. 05トラフィックとログを表示するインタラクティブ TUI
  6. 06プログラムから制御できる REST API

活用シーン

  1. 01ローカル開発中に db や auth などのサービス名でクラスター内のサービスへアクセス
  2. 02複数のクラスターサービス間のポート競合の回避
  3. 03環境ごとの接続設定の削減

MCP 対応

kubefwd は MCP に対応しており、Claude Code や Cursor などの AI アシスタントと連携できます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
mcpbkubefwd-1.25.18-darwin-arm64.mcpb
mcpbkubefwd-1.25.18-darwin-amd64.mcpb
mcpbkubefwd-1.25.18-windows-amd64.mcpb

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

kubefwd(Kube Forward)

kubefwd - kubernetes bulk port forwarding

CNCF Landscape GitHub license codecov Go Report Card GitHub release GitHub Downloads OpenSSF Scorecard OpenSSF Best Practices SLSA 3

ドキュメント | はじめに | ユーザーガイド | API リファレンス | MCP(AI 統合)

Kubernetes に接続してローカルで開発

kubefwd を使うと、開発者はローカルマシンで作業しながら、Kubernetes クラスターで実行中のサービスにシームレスにアクセスできます。開発クラスターで動作している db:5432 のデータベース、auth:443 の認証サービス、redis:6379 のキャッシュに接続する新しい API を構築する場合、kubefwd を使えばクラスター内と同じサービス名で、それらをローカルから利用できます。環境ごとの設定も、ローカルサービスのセットアップも、Docker Compose ファイルも必要ありません。kubefwd を実行するだけで、アプリケーションに既存の接続文字列をそのまま使えます。

これが重要なユースケースです。ローカル開発時の環境ごとに異なる接続設定や構成を削減、または不要にします。本番環境でコードが http://api-gateway:8080 を使っているなら、kubefwd を使えばノート PC でも同じように動作します。

インタラクティブな TUI、サービスごとの一意な IP、自動再接続に対応した Kubernetes の一括ポートフォワーディング。

kubefwd は、Kubernetes サービスのポートを一括でローカルワークステーションに転送するコマンドラインユーティリティです。各サービスに専用のループバック IP(127.x.x.x)が割り当てられるため、ポートの競合を解消し、サービス名でクラスターのサービスにアクセスできる、実環境に近いローカル開発が可能になります。

kubefwd TUI - メインビュー

クイックスタート

# Install (macOS)
brew install kubefwd

# Forward all services in a namespace with the interactive TUI
sudo -E kubefwd svc -n my-namespace --tui

? を押すとヘルプが表示され、q を押すと終了します。インストールとセットアップの詳細については、はじめにをご覧ください。

仕組み

kubefwd - Kubernetes ポートフォワーディングの図

kubefwd は名前空間内のサービスを検出し、それぞれに一意なループバック IP を割り当て、サービス名を /etc/hosts に追加して、Kubernetes API 経由でポートフォワーディングを確立します。クラスター内と同じように、サービス名でアクセスできます。

curl http://api-service:8080
mysql -h database -P 3306
redis-cli -h cache -p 6379

機能

  • インタラクティブな TUI:トラフィック指標付きのリアルタイムサービス監視
  • サービスごとの一意な IP:各サービスに専用の 127.x.x.x アドレスを割り当て
  • 自動再接続:Pod の再起動や接続切断時に再接続
  • 一括フォワーディング:1 つのコマンドで名前空間内のすべてのサービスを転送
  • リアルタイムのトラフィック監視:送受信バイト数と HTTP アクティビティを表示
  • Pod ログのストリーミング:TUI でコンテナログを表示
  • REST API:HTTP エンドポイントによるプログラムからの制御
  • MCP サポート:AI アシスタント(Claude Code、Cursor)との統合

インストール

macOS:

brew install kubefwd

Linux: リリースから .deb、.rpm、または .tar.gz をダウンロードしてください

Windows:

winget install txn2.kubefwd
# or
scoop install kubefwd

Docker:

docker run -it --rm --privileged \
  -v "$HOME/.kube:/root/.kube:ro" \
  txn2/kubefwd services -n my-namespace --tui

使用方法

# Interactive mode (recommended)
sudo -E kubefwd svc -n default --tui

# Multiple namespaces
sudo -E kubefwd svc -n default,staging --tui

# Filter by label
sudo -E kubefwd svc -n default -l app=api --tui

# With REST API enabled
sudo -E kubefwd svc -n default --tui --api

なぜ kubefwd なのか?

kubectl port-forward とは異なり、kubefwd は次のことができます。

機能kubectl port-forwardkubefwd
コマンドあたりのサービス数1つネームスペース内のすべて
IP 割り当てlocalhost のみサービスごとに固有の IP
ポート競合手動管理なし(固有の IP)
サービス名の解決非対応自動(/etc/hosts)
自動再接続いいえはい
リアルタイム監視いいえメトリクス付き TUI

Telepresence、mirrord、その他のツールとの詳細な比較については、比較をご覧ください。

ドキュメント

完全なドキュメントは kubefwd.com にあります。

要件

  • クラスターアクセスが設定された kubectl
  • root/sudo アクセス(/etc/hosts およびネットワークインターフェース用)

コントリビューション

バグ修正、テスト、ドキュメントへのコントリビューションを歓迎します。機能開発はメンテナーに限定されています。詳細は CONTRIBUTING.md をご覧ください。

ライセンス

Apache License 2.0


Craig Johnston によるオープンソース、Deasil Works, Inc. がスポンサー

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。