Quando la ridondanza non basta: l’outage ferroviario e le dipendenze del Control Plane
Multi-Cloud: Quando la Ridondanza Non Basta
Multi-cloud è spesso presentato come la soluzione definitiva contro i downtime. Distribuisci i workload su AWS, Google Cloud e hardware proprio, e dovresti essere al sicuro se un provider va giù. Sembra un ragionamento solido. Molte aziende ci credono.
Railway, piattaforma per il deploy di applicazioni, seguiva esattamente questa strategia. Le app dei clienti giravano su Google Cloud, AWS e Railway Metal, la loro infrastruttura privata. Avevano pensato a tutto, o almeno così credevano.
Poi, il 19 maggio 2026, il sistema automatizzato di Google Cloud ha sospeso l'account di produzione di Railway senza preavviso. Non per un attacco, né per un guasto hardware. Solo un falso positivo. E in poche ore tutto si è bloccato.
Paradossalmente, i workload erano ancora funzionanti. Ma gli utenti non riuscivano ad accedervi.
Il Ruolo Critico del Control Plane
Il problema non era nei container. Era nel modo in cui il traffico veniva instradato.
Ogni richiesta arrivava prima a dei proxy edge, che dovevano sapere dove si trovava effettivamente l'app. Questa informazione veniva dal control plane, una sorta di database centrale che gestiva il routing. E il control plane di Railway era ospitato solo su Google Cloud.
Quando l'account è stato sospeso, il control plane è diventato irraggiungibile. I proxy hanno continuato a funzionare per circa 35 minuti grazie a una cache locale. Poi, cache esaurita, hanno perso la capacità di instradare le richieste. Tutti le Requests arriv have been sent to a 404, anche se le applicazioni erano ancora in vita su AWS e Railway Metal.
Quando il Failure Cascades
La situazione ha peggiorato ulteriormente.
Il volume di richieste fallite ha attivato il rate limiting di GitHub sui loro endpoint OAuth. Non era un problema di outage di GitHub, just a response to traffic overload. This resulted in users unable to log in or deploy new apps, even after the control plane was restored.
Cosa Imparare da Questo Incident
L'incidente di Railway mostra che non basta distribuire i workloads. È fondamentale distribuire anche il control plane.
Se il routing e la service discovery dipendono da un unico provider, la multi-cloud diventa solo una illusione. Caching e backup locali possono guadagnare qualche tempo, but they are not permanent solutions. Cascading failures can complicate recovery, even after the main issue is fixed.
Railway ha annunciato che ora sta lavorando per distribuire il control plane tra AWS e Railway Metal. Questo è il tipo di lavoro che realmente aumenta la resilienza.
Per chi costruisce infrastrutture, l'incidente è un promemoria: trovare e rimuovere single points of failure è un lavoro continuo.