要旨。NFSv4.1 共有上で CI と大量テストが重なるとクライアントが律速となり、ローカル SSD だけでは収束しません。IO Nice 閾値、rsync 指数退避、OpenClaw のマージ健全性 Webhook を六手順に束ねます。Flux Webhook 稿とJuiceFS 稿も参照ください。
三つの律速
- メタデータ嵐。小さな生成物の連続更新で getattr が詰まりキャッシュ無効化が連鎖します。
- 帯域とディスク。同期がネットとローカルを同時に食い、一テラ級では黄信号が遅れて見えます。
- 合流点。複数ノードが同一エクスポートへ同時書き込みするとマージ検証が単一障害点になります。
決定マトリクス
テナントごとにセルを固定し、ステージングで負荷形を先に再現します。
| 観点 | 低衝突 | 高スループット | 目安 |
|---|---|---|---|
| actimeo | 三~一〇秒 | 六〇~一八〇秒 | メタ多なら短め |
| 硬/ソフト | 硬既定 | ソフト検証 | 本番は硬優先 |
| rsync | 八~一六メガ毎秒・一 | 二四~四八・二~三 | 小ファイルは並列下げ |
| 水位 | 黄一八赤一二 | 黄二二赤一五 | 二テラは黄早め |
IO Nice はビルド三・同期二の二段閾値が扱いやすいです。黄帯で同期も三へ戻します。
六手順
- ノード別にテナント用マウントを切り、エクスポート共有を避ける表をリポジトリ先頭へ置きます。
- OpenClaw を入れ Base URL とスコープを分離、Bearer は九十日ローテと緊急失効用副鍵を併記します。
- rsync に ionice 二と bwlimit を固定し、失敗は二・四・八秒の指数退避でログ化します。
- actimeo と硬既定を文書化し、フェイルオーバー演習ではアンマウント順まで手順化します。
- 五分巡回が JSON 一行を返す shell を用意し、マージ健全性 Webhook へ Authorization 付き POST する契約を README に書きます。
- 黄越えならノード追加か夜間窓再配分を二択で提示し、探針合算稿の閾値と照合します。
引用三行
- テナント境界はマウント単位で分離しログに拠点名を載せる。
- rsync 再試行は三回まで、四回目は人手キューへ送る。
- Webhook JSON はスキーマ版一桁で後方互換を守る。
FAQ:stale file handle
切り分け
サーバ側でファイル ID が変わり古い inode を掴んだ状態です。書き込み停止後にアンマウントと再マウント、二重同期なら rsync の tmp を分離します。再発時は actimeo 短縮か読み取り専用キャッシュへ寄せる二案を比較してください。
サーバ側でファイル ID が変わり古い inode を掴んだ状態です。書き込み停止後にアンマウントと再マウント、二重同期なら rsync の tmp を分離します。再発時は actimeo 短縮か読み取り専用キャッシュへ寄せる二案を比較してください。
免責。実装は版差あり。ステージングで先に再現してください。