跨区 Mac mini M4 並列 CI で PulumiS3 互換リモート状態は単一の真実源。ロック租約切れで二重更新、並列プレビュー過多で ビルドロックと帯域が衝突します。状態パス・TTL・CI シャード・1TB/2TB 水位の四軸で main 合流前の統合検収を一枚化します。

詰まりどころ(三つ)

成果物の扇展開と OS 層ロックは rsync 成果物マトリクス稿、スケジューラ側の単一ライターは Nomad 親和・ビルドロック稿 と役割分担してください。ここでは「状態バックエンド上の排他」と「プレビュー洪水」に焦点を当てます。

  • 租約レース: TTL 直後に二ランナーが同一キーを掴むと版競合でスナップ分岐。
  • プレビュー飽和: シャード無しの preview 増加で読取と up が帯域衝突。
  • ディスク盲目: 1TB はキャッシュで黄信号早い。2TB も Simulator 多版で再崖(Xcode 並列・水位稿)。

意思決定マトリクス:パターン × パス × 租約 × シャード × ディスク

パターン 状態キー/パス ロック租約 CI シャード 1TB/2TB 目安
単一リーダー 接頭辞/スタック/リージョン固定。プレビューは接尾辞で分離。 up は短 TTL・昇格のみ直列。長時間マージは別プロファイル。 シャードごとルート分離+同時上限ポリシー。 1TB は単一リージョン+抑制。2TB はプレビュー枠やや拡げ可。
多プレビュー preview/<branch> 固定、main と非交差。 main より短 TTL。期限接近と更新失敗アラート分離。 同時上限+キュー。超過はノード増/時間帯シフト。 1TB 同時 2 前後・2TB 4 目安(帯域で再調整)。

S3 互換実装ごとにロック寿命と条件付き書き込みが異なるため、ステージングで「租約切れ→再取得」を必ず再現してください。

状態ファイルのパス(キー規約)

オブジェクトキーは「組織接頭辞 → スタック → リージョン/環境」の順でフラット化を避けます。プラグインキャッシュとワークツリーはノード SSD、リモートはスナップのみ。バージョニングとライフサイクルは「分岐状態の復旧」を優先して設計します。

ロック租約(TTL)

preview 用と up 用で TTL プロファイルを分け、「期限接近」と「ロック更新失敗」を監視上も分離します。更新失敗は即再試行せず、同一キーを握る先行ジョブを確認してからキューへ戻すと分岐を抑えられます。

CI のシャーディング(並列プレビュー)

シャード境界はディレクトリ単位のスタックかサービス単位に寄せ、シャード内はプレビュー直列・シャード間のみ並列にすると書き込み競合が激減します。CI マトリクスとランナーラベル(Nomad meta 等)を揃え跨区でもトレース可能にします。

ディスク水位(1TB/2TB)

プレビュー作業ディレクトリとプラグインキャッシュが同一ボリュームを共有するため、使用率は同時ジョブと連動。下表は運用目安(SLA ではありません)。

使用率帯 1TB ライン 2TB ライン
〜70% キャッシュローテと古いプレビュー掃除を自動化。 同左。猶予ありも放置しない。
70〜80%(黄) プレビュー同時数を一段階下げ、増設/シャードを計画。 黄は遅れて現れる。バースト上限を先に下げる。
80〜90% 新規プレビュー停止、up は窓口限定。ロック待ち可視化。 2TB も Simulator 多版で再詰まり。メタで重ジョブ分散。
90% 超(赤) 書き込み系をハードストップし、バックエンド側のリスト/バージョン列挙コストも点検。クラスタ追加・ディスク段階アップを最優先。

main 合流前:統合検収チェックリスト(五段階)

  1. 認証・バージョニング・リージョン確認、ランナー RTT を記録。
  2. キー規約(接頭辞/接尾辞/シャード)を Runbook 固定。
  3. 期限接近と更新失敗アラートをチャネル分離。
  4. プレビュー上限・キュー・超過エスカレーションを明文化。
  5. 1TB で黄なら枠削減。2TB でも 80% 超はローリングで減荷。
レビュー時の三行メモ
  • 租約切れと更新失敗を同一アラートにまとめない。
  • プレビュー用キーを main と永続的に分離する。
  • 1TB で 80% を超えたら、まず並列プレビューから減らす。

購入・拡張の判断(まとめ) 重いチームは 2TB+シャード余白を優先し、状態バックエンドを runner 拠点寄せで RTT 削減。料金比較ヘルプはログイン不要、申込は 購入ページ

エンジニアリング実務向けの目安です。 Pulumi および各 S3 互換製品の挙動は公式ドキュメントを正とし、本文のしきい値は運用ガイドラインであり保証ではありません。
状態・ロック・ディスクを同じ方針で揃える同型ノード

Pulumi 並列プレビュー向け Mac mini M4 クラスタ

RTT・ビルドロック・水位を一本の Runbook で揃えるなら同型ノード増でシャード余白が最短。プラン比較ヘルプはログイン不要。関連記事は本文リンクへ。

クラスタ/並列リソースを購入 プランを比較