1. EC versus attentes métier. Les équipes confondent souvent la capacité brute annoncée par un déploiement EC et la capacité logique réellement exposée aux pipelines ; lorsque la documentation ne sépare pas clairement les deux, les promoteurs CI croient disposer de marge là où le cluster déclenche déjà des opérations de heal coûteuses.
2. Réplication asynchrone. Une règle inter-régions qui chevauche la fenêtre d’intégration nocturne accumule un backlog d’objets ; sans plafond de débit ni fenêtre calendaire explicite, les lectures heal et le scanner local se superposent et déforment les courbes APFS que vous croyiez attribuer à Xcode ou à Gradle.
3. Promotions rsync. Copier des artefacts volumineux sans --bwlimit écrase les budgets WAN contractuels ; les passerelles qui agrègent les sondes OpenClaw reçoivent alors des alertes indistinctes mêlant saturation réseau, disque plein et simple contention de build.
Matrice décisionnelle : EC MinIO, réplication inter-seaux ou rsync ciblé
Commencez par la question « la cohérence doit-elle être immédiate ou événementielle ? ». L’EC natif protège un site unique contre la perte de médias, la réplication inter-seaux assure une copie géographique avec délai maîtrisable, tandis que rsync reste pertinent pour synchroniser des répertoires de build chauds vers un compartiment froid sans réécrire toute la topologie objet. Archivez le schéma choisi dans le dépôt d’infrastructure partagé avec l’astreinte.
| Stratégie | Quand la choisir | Coût principal | Signal d’alarme |
|---|---|---|---|
| EC natif | un seul site, tolérance aux disques | CPU heal + IOPS lecture | latence GET multipliée |
| Réplication | exigence multi-AZ légale | bande passante sortante | lag > fenêtre planifiée |
| rsync borné | artefacts Xcode/DerivedData | temps de promotion | fichiers partiels sans verrou |
Paramètres EC, fenêtre de réplication et rsync plafonné
Les schémas EC4+2 et EC6+3 restent les compromis les plus lisibles pour des nœuds Mac mini M4 dédiés : le premier offre une résilience modeste avec moins de fragments à reconstruire, le second absorbe davantage de panne disque au prix d’opérations heal plus longues. Fixez explicitement le nombre de lecteurs concurrents autorisés pendant un heal afin qu’une reconstruction nocturne ne monopolise pas les SSD qui hébergent aussi vos caches clients.
Pour la réplication inter-seaux, exprimez la fenêtre par fuseaux : « Europe vers Asie entre 01 h et 04 h UTC » évite la collision avec les builds américains. Couplez la règle à un plafond de workers et à une file observable ; alignez les métriques sur la matrice SeaweedFS.
| Paramètre | Rôle opératoire | Ordre de grandeur indicatif |
|---|---|---|
| Schéma EC | résilience intra-site | EC4+2 (compact) ou EC6+3 (large) |
| Fenêtre réplication | éviter collision CI | 2–4 h creuses par lien WAN |
--bwlimit rsync | préserver APFS | 8–32 Mbit/s selon contrat |
| Concurrence rsync | limiter inode storm | 1–2 flux simultanés |
| Rétention versionnée | rollback artefacts | 48–120 h sur compartiment CI |
OpenClaw : canari, sondes de santé et agrégation
Exposez un trafic canari sur la passerelle MinIO qui lit un objet témoin et mesure la latence ; fusionnez les corps webhook avec les sondes HTTP comme dans AnalysisRun pour traduire dérive heal ou réplication en code HTTP dégradé plutôt qu’en rumeur Slack. Limitez le digest à nœud, backlog réplication et pourcentage disque.
Déploiement : six étapes opératoires
- Inventorier les compartiments critiques, les règles de cycle de vie et les dépendances WAN entre chaque Mac mini M4 de la grappe.
- Choisir EC ou réplication selon la matrice ci-dessus ; archivez la décision et le schéma de parité dans votre dépôt d’infrastructure.
- Configurer les fenêtres de réplication avec décalage explicite par rapport aux verrous CI et aux sauvegardes restic/rclone.
- Encadrer rsync avec
--bwlimit, files d’attente et verrous conformément à la politique artefacts de l’équipe. - Brancher OpenClaw sur le canari et valider un test d’échec volontaire pour vérifier que les sondes distinguent saturation disque et saturation réseau.
- Contrôler les jalons disque 70 / 80 / 90 % avant d’ajouter un nœud ou d’élargir la réplication ; en cas de doute, commandez une capacité supplémentaire via la page d’achat publique.
| Jalon disque | Disque 1 To | Disque 2 To |
|---|---|---|
| 70 % vigilance | réduire concurrence heal MinIO | auditer doubles écritures réplication |
| 80 % freinage | couper promotions rsync non critiques | décaler fenêtre réplication |
| 90 % urgence | stopper jobs heal secondaires | évacuer caches locaux + vérifier df -i |
Règles vérifiables et synthèse plateforme
EC et réplication simultanés ? Oui si CPU et WAN sont dimensionnés ensemble ; sinon heal et flux répliqué se disputent les IOPS. Abandonner JuiceFS ? Non : JuiceFS peut rester POSIX pendant que MinIO porte l’objet ; séparez les graphes. Alerte locale ? Digest OpenClaw : nœud, backlog, pourcentage APFS.
- Règle : toute modification de schéma EC doit être accompagnée d’une mesure de latence GET avant et après sur un jeu de fichiers représentatif.
- Règle : chaque fenêtre de réplication doit posséder un propriétaire nommé et un canal d’escalade référencé dans le même runbook que les webhooks OpenClaw.
- Règle : conserver au moins quinze pour cent d’espace libre sur les volumes APFS qui hébergent les caches clients même lorsque l’objet distant semble confortable.