運用概要
kanade の day-2 運用は 2 つのフローに分かれます:
-
直接インストール — まっさらなホストにバイナリと config を置いて Windows サービスを登録します。最初の agent、最初の backend、NATS サーバーをブートストラップするときに使います。スクリプト:
scripts/deploy/agent.ps1、scripts/deploy/backend.ps1、scripts/deploy/nats.ps1。対象ホスト上で手動で実行します。 -
agent 経由のアップデート — agent がいったん動き出せば、その agent 自身が ssh / RDP なしで同じホスト上の他コンポーネントをインストール・更新できます。operator はバイナリとスクリプト本体をブローカーに publish し、ジョブを起動。agent が fetch・検証・swap・サービス再起動を行います。day-2 運用の大半はこれ。
agent 経由フローの形は、何をアップデートする場合でも同じです:
operator host ─► kanade CLI ─► NATS broker ─► agent (on target host)
│ │
├── publish binary ────────────► fetches from
│ to OBJECT_APP_PACKAGES OBJECT_APP_PACKAGES
├── publish script ────────────► fetches from
│ to OBJECT_SCRIPTS OBJECT_SCRIPTS
├── register / update job ─────► reads job manifest
│ from `jobs` KV
└── exec job ──────────────────► PowerShell child
runs the script
コンポーネント別ガイド:
- kanade-backend — HTTP / projector バイナリ
- kanade-client — Tauri 製のエンドユーザーアプリ
- NATS サーバー — ブローカー本体 (はい、ブローカー越しにブローカーをアップデートできます)
- kanade-agent 自身 — agent の self-update 経路 (他 3 つと違い、汎用の OBJECT_APP_PACKAGES + script ペアではなく専用の rollout バケットを使います)