Aumento dei tempi di attesa Docker gen2
- identified
Alcuni utenti potrebbero vedere aumentati i tempi di attesa per gen2 Docker posti di lavoro a causa di problemi di capacità.
- identified
Stiamo aggiungendo capacità aggiuntive per contribuire a mitigare il problema. Nota: stiamo ancora vedendo ritardi fino a 20 minuti su 2xlarge.
- identified
Tempi di attesa per 2xlarge docker lavori stanno recuperando. Continueremo ad aggiornare come la capacità viene online.
- identified
I tempi di attesa per 2xlarge docker job sono ora sotto 60 secondi. I tempi di attesa per altre dimensioni delle risorse non sono stati influenzati da questo incidente e rimangono sotto 10 secondi.
- monitoring
Abbiamo visto un recupero completo dei tempi di attesa per i lavori di docker.
- resolved
I tempi di attesa per i lavori di gen2 Docker sono stati recuperati e i posti di lavoro sono in esecuzione entro i normali tempi di attesa.
- postmortem
# Dal 15:44 al 20:55 UTC il 21 ottobre, i clienti che eseguono lavori di Gen 2 Docker hanno visto aumentare i tempi di attesa per il loro lavoro per iniziare. I relè erano più lunghi sulla classe di risorse 2xlarge, dove i lavori aspettavano fino a 20 minuti. L'incidente è stato causato dalla disponibilità limitata delle istanze cloud che avevamo configurato per soddisfare la domanda, in particolare per 2xlarge job. In risposta, il nostro team di ingegneria ha configurato ulteriori tipi di istanze, configurato ulteriori cluster Gen 2 Docker. Entro 20:55 UTC, i tempi di attesa erano tornati alla normalità e l'incidente è stato risolto. Dopo che l'incidente è stato risolto, abbiamo ampliato la nostra flotta di Gen 2 Docker in altre regioni cloud, e continuiamo attivamente a stare in piedi ulteriori regioni cloud per prevenire incidenti simili in futuro. La pagina di stato originale si trova qui: [21 ottobre - Aumento dei tempi di attesa Docker gen2](https://status.circleci.com/incidents/5jb50gh55gtj). ## Sfondo Quando CircleCI esegue un lavoro Docker, lo pianifichiamo su uno dei diversi cluster di istanze cloud, e ogni istanza è in grado di eseguire più lavori isolati. Lo studio di un lavoro su un'istanza cloud è un classico [“problema di imballaggio della combinazione”](https://en.wikipedia.org/wiki/Bin packing problem): trovare la capacità disponibile che si adatta alla CPU, alla memoria e allo storage della classe di risorse richiesta. Le classi di risorse più grandi come 2xlarge sono più difficili da adattare rispetto a quelle più piccole, che raggruppano più strettamente. Forniamo istanze cloud utilizzando un elenco classificato dei tipi di istanza. Se il provider cloud non può fornire la nostra prima scelta, rientriamo al seguente tipo nella lista. Manteniamo inoltre una dimensione minima della flotta: un numero minimo di istanze in esecuzione, in modo che non rinunciamo alla capacità quando la domanda è bassa. Al di sopra di quella dimensione minima della flotta, aggiungiamo istanze come aumento della domanda. Quando c'è una capacità insufficiente per eseguire un carico di lavoro, in coda che funzionano fino a quando la capacità non diventa disponibile. # What Happened # \(Tutte le volte UTC\) A partire dalle 15:44 del 21 ottobre, la domanda per il Gen 2 2xgrande classe di risorse è aumentato bruscamente, e non abbiamo fornito capacità aggiuntive abbastanza rapidamente per tenere il passo. Il nostro team di ingegneri ha iniziato a indagare. Entro le 19:25, i tempi di attesa per la classe di risorse Gen 2xlarge avevano raggiunto 20 minuti, e i tempi di attesa per altre classi di risorse erano aumentati pure. Entro le 19:56, il nostro team di ingegneri aveva configurato ulteriori tipi di istanza per la flotta di Gen 2 al fine di ottenere più capacità online, e entro le 19:59, stavamo fornendo quei tipi di istanza. A 20:11, abbiamo aggiunto diversi cluster Gen 2 aggiuntivi, e aumentato la dimensione minima della flotta su quei cluster. Entro le 20:35, il numero di posti di lavoro in coda è tornato a livelli normali, e entro 20:41, 95% di 2xlarge posti di lavoro sono stati a partire entro 4 secondi. Abbiamo risolto l'incidente alle 20:55. Dopo aver risolto questo incidente, abbiamo aggiunto altre regioni cloud per i lavori Docker per rendere più capacità disponibile. ## Prevenzione futura e miglioramento dei processi Abbiamo già adottato le seguenti misure per migliorare i tempi di avvio del lavoro, tra cui la capacità di approvvigionamento da più posti, riservando più capacità per le classi di grandi risorse, e l'attuazione di un più rapido provisioning. **Abbiamo aggiunto altre regioni per i posti di lavoro Docker** Recentemente abbiamo aggiunto altre regioni cloud per i lavori di Machine, e ora abbiamo fatto lo stesso per i lavori di Docker. ** Continueremo attivamente ad aggiungere altre regioni cloud per i lavori Docker e Machine**. **Abbiamo aggiunto ulteriori cluster Gen 2**. Abbiamo configurato diversi cluster Gen 2 aggiuntivi per pianificare i lavori più rapidamente, e per rendere più totale la capacità disponibile. **Abbiamo ampliato il set di tipi di istanze cloud che usiamo e abbiamo aumentato la nostra dimensione minima della flotta.** Abbiamo configurato altri tipi di istanza. Abbiamo anche aumentato la dimensione minima della flotta per Gen 2 per soddisfare la domanda di base corrente. **Abbiamo modificato il nostro programmatore di lavoro per dare priorità alla pianificazione di classi di risorse più grandi.** Abbiamo cambiato il modo in cui pianifichiamo i posti di lavoro per bilanciare i tempi di attesa più abbastanza attraverso le classi di risorse, e per i lavori di bin-pack in modo più efficiente sulle istanze disponibili. ## Conclusione L'esperienza del cliente è la nostra priorità, e ci impegniamo a migliorare continuamente l'affidabilità dei nostri sistemi per soddisfare la fiducia che i nostri clienti ci pongono. Ringraziamo i nostri clienti per la loro pazienza mentre il nostro team ha lavorato per risolvere questo incidente. Si prega di raggiungere il nostro team di supporto con qualsiasi domanda o preoccupazione.
Tradotto automaticamente dall'aggiornamento ufficiale dell'incidente.