Warpgate

Warpgate(ワープゲート)は、ワークロードをMezusphere(メズスフェア)に接続する軽量サイドカーエージェントです。反転イングレスモデルを実装しています。インバウンドポートを開放してファイアウォールを設定する代わりに、Warpgate(ワープゲート)Mezusphere(メズスフェア)のグローバルエッジに対して外側に接続します。

仕組み

  1. Warpgate(ワープゲート)がワークロードと一緒に起動
  2. Mezusphere(メズスフェア)のグローバルエッジへのアウトバウンドTLS 1.3接続を開始
  3. サービスアカウントAPIキーで認証
  4. Mezusphere(メズスフェア)がこの確立されたトンネルを通じてエンドユーザートラフィックを転送
  5. Warpgate(ワープゲート)がlocalhostのワークロードにトラフィックを渡す

ワークロードはインターネットからのインバウンド接続を受け入れません。オープンポート、ファイアウォールルール、パブリックIPアドレスは不要です。

デプロイオプション

Docker

アプリケーションと一緒にWarpgate(ワープゲート)をコンテナとして実行:

docker run mezusphere/warpgate \
  --token YOUR_WARPGATE_TOKEN \
  --upstream localhost:8080

またはdocker-compose.ymlに追加:

services:
  app:
    image: your-app:latest
    ports:
      - "8080:8080"

  warpgate:
    image: mezusphere/warpgate
    command: ["--token", "YOUR_WARPGATE_TOKEN", "--upstream", "app:8080"]
    depends_on:
      - app

スタンドアロンバイナリ

プラットフォーム用のWarpgate(ワープゲート)バイナリをダウンロードして直接実行:

# ダウンロード
curl -fsSL https://get.mezusphere.com/warpgate | sh

# フォアグラウンドプロセスとして実行
warpgate --token YOUR_WARPGATE_TOKEN --upstream localhost:8080

# またはsystemdサービスとして実行
sudo warpgate install --token YOUR_WARPGATE_TOKEN --upstream localhost:8080
sudo systemctl start warpgate

対応プラットフォーム:Linux(amd64、arm64)、macOS(amd64、arm64)、Windows(amd64)。

Kubernetes

ポッドのサイドカーコンテナとしてWarpgate(ワープゲート)をデプロイ:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-service
spec:
  template:
    spec:
      containers:
        - name: app
          image: your-app:latest
          ports:
            - containerPort: 8080
        - name: warpgate
          image: mezusphere/warpgate
          args:
            - "--token"
            - "YOUR_WARPGATE_TOKEN"
            - "--upstream"
            - "localhost:8080"

任意のKubernetesディストリビューションで動作:EKS、GKE、AKS、k3s、セルフマネージドクラスター。

設定

コマンドラインフラグ

フラグ説明デフォルト
--token認証用サービスアカウントAPIキー必須
--upstreamワークロードのアドレスlocalhost:8080
--log-levelログの詳細度(debug、info、warn、error)info

環境変数

すべてのフラグはWARPGATE_プレフィックス付きの環境変数でも設定できます:

変数対応するフラグ
WARPGATE_TOKEN--token
WARPGATE_UPSTREAM--upstream
WARPGATE_LOG_LEVEL--log-level

接続性

アウトバウンド接続

Warpgate(ワープゲート)は、相互認証(mTLS)付きTLS 1.3を使用してMezusphere(メズスフェア)のグローバルエッジへの永続的なアウトバウンド接続を確立します。接続は:

  • 暗号化:TLS 1.3、ダウングレードなし
  • 認証済み:サービスアカウント認証情報による相互TLS
  • 永続的Warpgate(ワープゲート)プロセスのライフタイム中維持
  • 自動再接続:ネットワーク中断時にバックオフ付きで自動再接続

ネットワーク要件

Warpgate(ワープゲート)はアウトバウンドHTTPS接続のみ必要です。インバウンドポート、ファイアウォールルール、VPN設定は不要です。

方向ポートプロトコル目的
アウトバウンド443TLS 1.3Mezusphere(メズスフェア)エッジへの接続

クラウド非依存

Warpgate(ワープゲート)はワークロードがどこで動作していても同一に動作します:

  • AWS(EC2、ECS、EKS、Lambda)
  • Google Cloud(GCE、GKE、Cloud Run)
  • Azure(VM、AKS、Container Instances)
  • オンプレミスデータセンター
  • ローカル開発マシン
  • エッジデバイス(Raspberry Pi、IoT)

デプロイパターンは常に同じ:ワークロードと一緒にWarpgate(ワープゲート)を実行し、トークンを提供し、アップストリームを指定。

リソース使用量

Warpgate(ワープゲート)は軽量に設計されています:

  • 単一の静的バイナリ
  • 最小限のメモリフットプリント
  • 無視できるCPUオーバーヘッド
  • ログ以外のディスクI/Oなし

プロキシでも、サービスメッシュコントロールプレーンでも、テレメトリを送信するエージェントでもありません。