OpenClawclustervps の複数ノードへ載せ替えるとき、設定の統合だけでなくログの多路切片落盤クォータWebhook 失敗の digest ブロードキャストを同じ runbook で揃えないと再現性が崩れます。本文は HowTo 手順と、ローテinode中心の排障チェックです。マージ境界は フラグメントマージ稿、網関と署名は マルチ AZ 網関稿 と役割分担してください。

典型痛点(三つに圧縮)

1)単一路ログへ全ノードが追記し、容量より先に inode が枯れる。2)Webhook の失敗が各ホストに散らばり、運用が追跡不能になる。3)トークン輪換と切片の境界がずれ、digest が二重配信される。

ログ切片と通知の意思決定マトリクス

方式 長所 注意(クォータ)
ノードローカル JSONL+日次ローテ 共有ボリュームのロック争いが少ない 世代本数と総容量をノード合算で上限化。inode はファイル数で見る。
stdout/audit の多路 障害切り分けが速い ストリームごとにローテ周期を分け、同時 open 数を抑える。
Webhook digest(五分窓) 失敗要約を一チャネルへ集約 idempotency キーと世代掃除順を固定。429 時は窓を伸ばす。

テナント分割と doctor の合成は テナント分割・doctor 稿 を正とし、本稿はログと通知に限定します。

最小再現手順(HowTo)

  1. パス約定: 状態ディレクトリを $HOSTNAME/$TENANT 配下に固定し、共有 NFS へ生 JSONL を直書きしない。
  2. マージ: テンプレート優先順とロックを決め、カナリア比率は既存 Runbook と同じブックマークで戻す。
  3. 多路ログ: 応用ログと監査ログを別ファイルに分け、ローテは「最大七世代・合算サイズ上限」を Runbook に数値で残す。
  4. digest: Webhook の HTTP ステータスを五分窓で集計し、共用チャットへブロードキャスト。失敗閾値は環境ごとに一つだけ持つ。
  5. 合成 readiness: 各ノードの /healthz と doctor を合算し、LB のみ許可トラフィックを段階的に増やす。
  6. 戻し順: LB 比率→ログ切片→launchd/plist→トークン世代の逆順でロールバックする。

排障チェックリスト(ローテ・ディスク・inode)

  • ローテ: digest が二重なら窓境界と掃除順を確認。古い世代を先に閉じてから新ファイルを開く。
  • ディスク: df -h が緑でも書き込みエラーなら df -i と小ファイル数を併記。八割超で切片を減らすかオブジェクトストレージへ逃がす。
  • Webhook: 五xx 集中時は一時的に単路へ戻し、網関タイムアウトと署名鍵の世代を突き合わせる。
5分
digest 集計窓の既定目安。
7
ログ世代の上限例(Runbook 化)。
80%
inode 使用率の黄信号ライン目安。
免責。 OpenClaw のフラグ名や既定値はリリースで変わり得ます。本稿の数値は SLA ではなく、ステージングで一度 dry-run してから本番クォータへ写してください。
クラスタ用 Mac ノード

同型 Mac mini M4 でログ切片と監視余白を先に確保

公開の 料金ページ で帯域とディスク段階を見積もり、購入・申し込みページ からノードを足してローテ余白と inode ヘッドルームを確保できます。

Mac mini M4 を購入・申し込み 料金・プランを比較