① MeshMac 多ノードと OpenClaw デプロイアーキテクチャ概要
MeshMac 上で OpenClaw を多ノード運用する場合、State Server を 1 台に置き、複数の Mac ノードがそれぞれエージェントとして gRPC で State Server に接続する構成になります。タスクキューと実行状態は State Server に集約され、負荷分散は「空きノードがキューからタスクを取得」する形で実現し、あるノードが落ちても他ノードが同じキューから引き継げるため故障転送が可能です。
- State Server 用ノードを 1 台決め、内網で他ノードから到達可能にする。
- 各 Mac ノードに OpenClaw エージェントを同一バージョンでインストールする。
- 全エージェントが State Server のアドレス・ポートで gRPC 接続するように設定する。
② 多ノード上の OpenClaw インストールと統一設定のポイント
再現性を出すため、全ノードで OS・Xcode バージョンを揃え、OpenClaw も同一バージョンで入れます。設定ファイル(YAML プロファイル)は 1 つ用意し、全ノードに同じ内容を配布してください。
- 各ノードで
curl -sSL ... | shまたは Docker で同一タグの OpenClaw をインストール。 openclaw onboard/openclaw doctorで各ノードの動作を検証。- State Server の接続先(ホスト・ポート)を全ノードの YAML で同一にし、プロファイルを scp/Ansible 等で一括配布。
③ 負荷分散とタスク配分の再現可能な設定
負荷分散はタスクキュー+複数エージェントで実現します。手順は次のとおりです。
- State Server を起動し、全エージェントが gRPC で接続済みであることを確認する。
- タスクキュー(キュー名・優先度)を YAML または API で定義し、全ノードで同一設定にする。
- タスク投入時はキューに投入するだけにし、どのノードが拾うかはキューから「取得可能なノード」が取りにいく形にする。
- 必要に応じてノードごとの重みやラベルで「特定キューは特定ノード群のみ」といった制御をする。
これで、複数ノードが同じキューからタスクを取得するため、自然に負荷が分散されます。タスクキューとリトライ手順でリトライ戦略も合わせて設定することをおすすめします。
④ 単一障害点の故障転送とヘルスチェックの設定手順
あるノードが落ちたときに、他ノードがタスクを引き継ぐには、ヘルスチェックとタイムアウトを設定し、State Server が「ノード無応答」と判断したらキュー内タスクを他ノードに再配分するようにします。
- エージェントのヘルスチェック間隔(例: 30 秒)と、State Server 側の「無応答とみなすタイムアウト」(例: 90 秒)を YAML で設定する。
- 検証用に、1 台のエージェントを意図的に停止し、そのノードに割り当てられていたタスクが他ノードで再取得・実行されることを確認する。
- State Server 自体の可用性を上げる場合は、State Server を冗長化する構成(推奨は別ドキュメント)を検討する。
| 項目 | 推奨目安 |
|---|---|
| ヘルスチェック間隔 | 30 秒 |
| 無応答タイムアウト | 90 秒(ヘルス 3 回連続失敗で故障とみなす等) |
⑤ よくあるエラーとトラブルシュート
- 接続拒否(Connection refused):State Server が起動しているか、gRPC ポートが開放されているか、ファイアウォールで許可されているかを確認する。
- タイムアウト:ノード間の ping・traceroute、gRPC ポートの到達性を確認。内網の遅延が大きい場合はヘルスチェックのタイムアウトを少し伸ばす。
- 状態が同期しない:全ノードの YAML が同一か、全エージェントが同じ State Server に接続しているかを確認。ログの gRPC エラーを確認する。
- 故障転送後にタスクが実行されない:ヘルスチェック間隔・無応答タイムアウトが短すぎると誤検知しやすい。長すぎると引き継ぎが遅れる。上記④の推奨値で再検証する。
まとめ
MeshMac 多ノードで OpenClaw を運用する場合、State Server 1 台+複数エージェントの構成で、負荷分散はタスクキューによる自然な分散、故障転送はヘルスチェックとタイムアウトで実現できます。上記①〜⑤の手順をそのまま実行すれば再現可能です。小チームで複数 Mac ノードを用意するなら、MeshMac のレンタル Mac ノードで即構築できます。料金・購入はホームページからログイン不要でご確認いただけます。