Trois modèles de pool · SLO de file d'attente · Matrice de symptômes · Runbook en six étapes · FAQ
Responsables techniques, propriétaires DevOps et responsables de plateforme qui doivent défendre les SLO de file d'attente CI débat souvent lors de la mise à l'échelle : nœuds dédiés par rapport à la rotation partagée, quand ajouter de la capacité en rafale et combien de temps d'attente p95 signifie un réel déficit de capacité. Cet article nomme qui est confronté à quel problème lorsqu'un Mac Mesh relie des Mac distants mais qu'il lui manque un vocabulaire partagé pour isolation, coûts d'inactivité et observabilité des files d'attente; puis déclare le résultat: utiliser trois limites de pool, des SLO glissants sur 13 semaines et une matrice de décision sur les symptômes ainsi l’ajout de machines devient vérifiable au lieu d’intuitif. Vous obtenez un répartition des taxes cachées, table à trois pools, métriques SLO, runbook en six étapes, seuils stricts et matrice de dimensionnement. Lecture croisée serrures de siège et mutex, Fusionner le routage de la file d'attente, TCO d'achat ou de location, topologie de pool de construction partagé, diffusion d'artefacts, et accès au maillage privé; commander des nœuds via le page de commande et centre d'aide.
Relier des Mac distants dans un maillage ne génère pas automatiquement une capacité CI de qualité contractuelle. Ces cinq taxes récurrentes ralentissent davantage la livraison que l’ajout d’un autre coureur.
Mesurer le succès en heures-machine : compter la disponibilité tout en ignorant builds réussis par mois et la file d'attente p95, de sorte que les nœuds dédiés restent inactifs tout en semblant « suffisants ».
Pas de SLO d'isolation sur les pools partagés : DerivedData, les trousseaux et les sessions de connexion se propagent entre les locataires à mesure que voisins bruyants au lieu de mauvaises configurations traçables.
Éclater sans capuchons : les pics élastiques deviennent des surprises de fin de mois non vérifiables, et le partage d'étiquettes avec Fusionner la file d'attente amplifie la famine.
Inadéquation des étiquettes déguisée en pénurie : des files d'attente profondes avec un processeur d'exécution inférieur à 40 % signifient généralement des erreurs d'affinité tâche → coureur, et non un véritable déficit de capacité.
RTT interrégional plus thésaurisation des sièges : les étapes gourmandes en réseau réessayent davantage au-dessus d'environ 150 ms RTT tandis que les sièges restent réservés sans entrer dans le dénominateur SLO.
Livrables : dictionnaire à trois pools, tableaux de bord d'attente/complétude de 13 semaines, compteurs d'isolation de pool partagé et politique de préemption en rafale d'une page. Ignorez l’un de ces éléments et « mettre à l’échelle le maillage » ne devrait pas être un OKR.
Suivant : un tableau alignant Dédié, Partagé et Rafale par sémantique de bail, unité de facturation et interruption.
Ces pools ne sont pas des labels marketing, ils sont sémantique du bail, unités de facturation et interruption combinés. Imprimez la matrice et choisissez une valeur par défaut pour le trimestre.
| Piscine | Bail & isolement | Profil de coût | Idéal pour | Risque principal |
|---|---|---|---|---|
| Dédié | Bail à locataire unique ; meilleure localité de cache | Coût d’inactivité élevé ; factures prévisibles | Libération des trains, signature des hôtes, conformité | Cela ressemble à des CapEx lorsqu'ils sont sous-utilisés |
| Rotation partagée | Multiplex temporel ; a besoin de verrous de siège | Coût souvent le plus bas par build réussi/mois | PR quotidiens ; par défaut pour les petites équipes | voisins bruyants |
| Éclater | Préemptif ; bail court | Le retard de pointe a été échangé contre un coût marginal | Lots de fuseaux horaires, semaines de sortie | Factures en fuite sans plafond |
Conclusion : chaque classe de travail doit répondre à l'interruptibilité et aux semaines de localité de cache nécessaires. Sinon, n’entrez pas de rotation partagée.
La troisième section aligne les SLO de file d'attente avec la matrice des symptômes afin que l'inadéquation des étiquettes ne soit pas confondue avec une pénurie.
Ensemble de métriques minimum (13 semaines glissantes) : Attendez SLO (mettre en file d'attente → attribuer p50/p95/p99), Terminer le SLO (temps de mur de travail standard), SLO d'isolement (pannes de pool partagé des voisins).
| Symptôme | Processeur d'exécution | Cause probable | Première action |
|---|---|---|---|
| p95 attente > 15 min soutenue | >78% | Déficit réel de capacité | Ajouter un pool dédié ou partagé |
| Attente élevée, pics uniquement | <40% | Incompatibilité d'étiquette | Tâche d'audit → affinité du coureur |
| La file d'attente oscille toutes les heures | 55 à 70 % | Lots de fuseaux horaires | Travaux en différé ou pré-réservation en rafale |
| Alertes de latence du disque | n'importe quel | Désabonnement des données dérivées | Génération de clé de cache |
Après avoir aligné serrures de siège, vous pouvez diviser l'attente en vraie file d'attente contre manque de serrures.
Gelez le dictionnaire à trois pools : documenter le bail, la facturation et l'interruptibilité.
Exportez une référence de 13 semaines : segmenter p95 par workflow.
Relier les étiquettes des canaux : diviser le Xcode lourd des peluches légères.
Préemption en écriture en rafale : plafond de facture plus liste d’autorisation d’emplois interruptions.
Maillage privé et artefacts : voir topologie de maillage privé.
Préemption de révision : choisissez Dédié ou continuez en rafale.
wait_p95_business_hours_minutes complete_p95_release_train_minutes shared_pool_neighbor_fail_rate burst_preempt_count / burst_successful_builds
| Taille × volatilité | Pool par défaut | Rôle d'éclatement | Signal de mise à niveau |
|---|---|---|---|
| Petite équipe · faible volatilité | Partagé | Facultatif | Violation p95 de 13 semaines |
| Petite équipe · forte volatilité | Partagé + Rafale | Débordement de la semaine de sortie | Taux de préemption >20 % |
| Plateforme · multirégion | Dédié + Partagé | Travaux interrompus uniquement | Violation du SLO d'isolement |
Une fois que les pools et les SLO vivent dans des actifs de pension, ordinateurs portables faisant également office de machines CI ou de machines partagées verbales survivent rarement aux audits. Pour les équipes qui ont besoin d'iOS CI et d'isolation des sièges sur Mac Mini cloud de qualité contractuelle capacité, La location cloud VpsMesh Mac Mini est généralement la meilleure solution. Voir le page de tarification, centre d'aide, et page de commande.
La plupart des équipes de 5 à 15 personnes commencent en mode partagé avec des capuchons de siège et un verrouillage TTL ; passer à Dédié pour les trains de version. Voir le article sur le verrouillage du siège.
Pas si les plafonds de préemption et les règles de facturation figurent dans le ticket de modification ; l'éclatement n'absorbe que le trop-plein interruptible.
Lorsque p95 dépasse le seuil pendant 13 semaines et que le processeur reste au-dessus d'environ 78 %, ou que le SLO d'isolation est interrompu, ajoutez des nœuds dédiés. Voir le page de tarification.