デプロイガイド 2026-04-08 14 分

2026年 OpenClaw Gateway の Kubernetes デプロイと検収 Runbook:バージョン固定、リソース割当、bind=lanport-forward、典型 OOM/NotReady ロールバック(FAQ+リモート物理 Mac ベアメタル対照)

プラットフォーム/SRE チームKubernetes 上に OpenClaw Gateway を載せるとき、イメージの漂流プローブとバインド先の不一致実トラフィックと噛み合わない port-forward スモークOOM/NotReady 時に戻すかチューニングするかで検収が止まりがちです。本稿では Kubernetes とリモート物理 Mac の対照表七ステップの Runbook、変更票に貼れる 閾値、症状ベースの FAQ を整理します。

2026年 OpenClaw Gateway の Kubernetes デプロイと検収 Runbook

1. はじめに:なぜゲートウェイ検収にネットワークと cgroup の根拠が要るか

ベアメタルでは「ポートが立った」ことがしばしばバインド成功と同義になります。Kubernetes では同じログ行でも、Service エンドポイント、kube-proxy(または CNI のデータパス)、NetworkPolicy、cgroup のメモリ計上を通過します。ノート PC 由来の 127.0.0.1 思考のままだと、Pod 内 curl は通るのに Service 経由は失敗するプロセスは生きているのに Ready が赤のままといった偽陰性が出ます。

本ガイドは変更票に貼れる根拠の鎖を示します:イメージダイジェストと Helm values のハッシュOOM イベントと整合した requests/limitstargetPort と一致した bind=lanport-forward スモークとクラスタ内プローブの突き合わせ。グローバルな macOS ノード配置も検討している場合は、2026年グローバル展開ガイド|地域別・最適なmacOSノードの選び方 とあわせ、「同一バージョン・二トラック」の親テンプレートとして使えます。

2. 三つの痛点:バージョン漂流、bind とプローブ、クォータとノイズ

  1. バージョン漂流と再現不能:本番が :latest やダイジェストのないタグだと、数週間後に同じタグでも挙動が変わります。ロールバックしても、インシデント当時の ReplicaSet とバイナリが一致したと証明しづらくなります。
  2. バインド先、Service、プローブの衝突:ゲートウェイがループバックで聴き、Readiness が Pod IP を叩く/あるいは bind=lan は正しいが NetworkPolicy が Ingress 側 CIDR しか許さず kubelet プローブが落ちる——NotReady とトラフィック停止が同居します。
  3. リソースクォータと隠れたコスト:requests 未設定だとスケジュールは「成功」し続け、ノード詰めのあと遅延 OOM。limits が小さすぎるとツール呼び出しのピークで exit 137 とログに残りにくい再起動が続き、メトリクスがないとリークと正常スパイクの区別がつきません。

3. 意思決定表:Kubernetes とリモート物理 Mac ベアメタル

「どの制約のもとでどちらが勝つか」を揃え、launchd の習慣を Pod にそのまま貼り付けないようにします。

観点 Kubernetes(Deployment+Service) リモート物理 Mac/launchd
リッスンバインド Service から届くには bind=lan(または 0.0.0.0)。同一 Pod 内サイドカーだけならループバック nginx/Caddy 背後ではしばしば 127.0.0.1
バージョン固定 イメージダイジェスト+チャート版+values の git SHA を変更票に チェックサム、ロックファイル、launchd plist の版フィールド
隔離 cgroup の OOMKilled と CPU スロットルが監査しやすい ユニファイドメモリとスワップ方針。メモリ圧と熱スロットルに注意
アドホック検収 kubectl port-forward はスモーク用——クラスタ内経路の代替ではない ローカル curl や SSH トンネル。経路が短くレプリカ角度が少ない
典型ロールバック kubectl rollout undo または固定した前ダイジェスト バイナリ/タグ差し替え+launchctl kickstart -k。単一インスタンスロックに注意

4. 七ステップ Runbook(bind=lan と port-forward)

  1. バージョン固定:CI がイメージ repo@sha256:…、Helm チャート版、values.yaml の git SHA をチケットに書き、浮動タグの本番パイプラインをブロックする。
  2. リソース宣言:requests.memory は P95 常駐に近づけ、limits.memory はツール呼び出しと JSON バッファを含める。CPU requests で過密ノードへのスケジュールを避ける。
  3. バインドとポート整合:トラフィックが Service/Ingress 経由なら bind=lan(または文書化したデュアルスタック)とし、containerPorttargetPort、プローブのポートを一致させる。
  4. プローブ設定:Readiness は実トラフィックと同じプロトコル/ホスト/パスの組み合わせ。cold start には initialDelaySeconds または startupProbe を入れ、スキル読み込みで NotReady がフラップしないようにする。
  5. port-forward スモーク:運用端末から kubectl port-forward deploy/openclaw-gateway 18789:18789(ポートは置換)で最小ヘルスと 1 回のツール呼び出しを完了。続けてクラスタ内プローブを実行し、両経路が一致するか記録する。
  6. 観測とアラート:再起動回数、OOMKilled、readiness=false の継続時間、5xx、ゲートウェイキュー深さを一枚のダッシュボードに。変更の前後 24 時間の窓を残す。
  7. ベアメタル対照検収:リモート物理 Mac で同一ダイジェストをネイティブまたは Compose で繰り返し、主要ヘルスシグナルの差分を文書化——クライアントから macOS ゲートウェイへの整合は 2026年 OpenClaw:Windows/Linux への導入とリモート macOS ゲートウェイ接続 — PowerShell と WSL2 の二系統、企業 HTTPS プロキシと Node 版固定の Runbook も参照。

5. 引用しやすい閾値とパラメータ

  • イメージ固定:本番チケットにダイジェストとビルド ID を含め、ロールバックはインシデント時刻と突き合わせる。
  • メモリ余裕:観測されたツール呼び出しスパイクでは、説明可能な P95 常駐より limits をおおよそ 25〜40% 上に。無制限に倍増する前にスロットルを優先。
  • プローブ起動:cold start が 30 秒超のゲートウェイは startupProbe か ≥40〜60 秒の猶予を、OpenClaw のワークスペース/スキル読み込み時間に合わせる。
  • port-forward:スモーク専用。検収 SLO にはクラスタ内 Service DNS と Ingress/TLS 経路を必ず含める。

6. FAQ:OOM、NotReady、ロールバック

bind=lan は露出を広げませんか?

Pod 内でループバック以外で聴くこと自体がインターネット公開と同義ではありません。表面積は Service 種別、Ingress、NetworkPolicy、egress で決まります。「プロセスのバインド」と「Pod に誰がルーティングできるか」は別監査です。

OOMKilled の第一歩は?

kubectl describe pod の Last State、ノードのメモリ圧、exit 137 を読み、同時ツール呼び出しやペイロードサイズと相関させて、スパイクをリークと取り違えないようにする。

ログでは listening なのに NotReady——まず何を直す?

プローブ URL のポート/パス、startupProbe 不足、kubelet 元を落とす NetworkPolicy、Ready になるまで HTTP ルートを掛けない設計を確認する。

コンプライアンス向けにロールバックをどう記録する?

前ダイジェストと Helm リビジョンを保持し、kubectl rollout undo 後にクラスタ内ヘルスと最小ビジネスハンドシェイクを実行、証跡をチケットに添付する。

7. 同一ゲートウェイ版を Mac mini に揃える利点

Kubernetes はレプリカ、ローリング更新、クォータ監査を担いますが、署名や Screen Sharing、Apple エコシステム連携では リモート物理 Mac——多くの場合 Mac mini M4——が現実的な基準ノードです。クラスタイメージを昇格する前に、同一 ダイジェスト を launchd 下で先に通すと、後からのバインドとプローブの驚きが減ります。

macOS では Unix ツールチェインと SSH がそのまま使え、Apple Silicon のユニファイドメモリは長寿命ゲートウェイに有利で、アイドル級数ワットの消費で 7×24 の対照試験も現実的です。Gatekeeper、SIP、FileVault は一般的な Windows フリートより脅威面を抑えやすくなります。クラスタとベアメタルで同等のヘルスシグナルを揃えたいなら、静音で効率的な Mac mini M4 は強い参照ノードになります。

本 Runbook を実ハードで検証する準備ができたら、Mac mini M4 は本番クラスタと並行して走らせるコスト効率の良い標準対照ノードです。ZoneMac の専用ノードで同じ手順を Apple Silicon 上に再現できます。今が手の届きやすいタイミングです。

期間限定キャンペーン

クラスタ外の「ゴールデン」対照に Mac mini を

先にリモート macOS で同一ビルドを検収してから Kubernetes イメージを昇格——プローブとバインドのインシデントを減らします。

従量課金 物理ノード 低アイドル電力
macOSクラウドレンタル 期間限定特別価格
今すぐ購入