Omicrono, la tecnología de El Español

Omicrono

Cómo Google tiró sus propios servidores y dejó sin servicio a millones por error

Cómo Google tiró sus propios servidores y dejó sin servicio a millones por error

Ya conocemos algunos detalles de por qué Google se cayó, y ha resultado ser por un error algo tonto con consecuencias desastrosas.

Las consecuencias de la caída de Google Cloud el pasado domingo aún se notan; aunque Google tuvo suerte de que los problemas se produjeron en fin de semana. Pese a eso, la caída afectó a millones de usuarios de todo el mundo, empezando por Europa occidental y llegando al continente americano. Una gran cantidad de servicios se vieron afectados, incluso algunos de terceros que no tienen nada que ver con Google pero usan su nube.

Youtube, Gmail, Analytics, y muchos otros servicios de Google dejaron de responder; pero también aplicaciones como Discord o Snapchat, que se basan en la potencia de la nube para ofrecer sus servicios. Este fue uno de esos momentos que abren los ojos a mucha gente; es cuando nos damos cuenta de cuántas apps que usamos dependen de un sólo servicio.

Por qué Google se cayó

Claro, que no tendría que haber sido así. Precisamente una de las ventajas de la nube es que no depende de un único servidor, como en servicios tradicionales; si algo va mal, sólo hay que hacer la nube más grande o más pequeña, o conectar con una nube diferente. Al menos, esa es la teoría, pero Google ha demostrado que, cuando las cosas salen mal, salen mal de verdad.

Después de una investigación interna, Google ha explicado lo que ocurrió para que Google Cloud se cayese: fue todo culpa de un cambio en la configuración de algunos servidores. Originalmente, el cambio se iba a aplicar a una pequeña cantidad de servidores de una región concreta; por lo que si algo salía mal, sólo afectaría a una cantidad mínima de usuarios y se podría arreglar fácilmente.

Por qué Google se cayó

Sin embargo, por error el cambio se aplicó a una gran cantidad de servidores en diferentes regiones; este cambio provocó que estos servidores usasen sólo algo más de la mitad de la capacidad de la red disponible. Es decir, que estaban funcionando “a medio gas”, sin aprovechar el hardware disponible. De repente, la red tenía una capacidad mucho menor de lo habitual, pero el tráfico seguía siendo igual de grande.

La red inmediatamente se congestionó, y los sistemas de Google reaccionaron como sólo sabían: analizando los paquetes que llegaban a la red y descartando los que consideraba más grandes y menos sensibles a la latencia; el objetivo era asegurarse de que los paquetes más importantes y a los que la latencia afecta más tuviesen prioridad, pero con una red la mitad de grande eso no sirvió de mucho. Es entonces cuando los usuarios empezaron a notar que sus apps no funcionaban o cargaban a medias.

El propio error evitó que los ingenieros pudiesen hacer nada

Google no ha aclarado cómo se produjo el error, pero sí que su equipo de ingenieros se dio cuenta de manera inmediata, en apenas segundos, de lo que estaba pasando. Pero entonces, ¿cómo tardaron más de cinco horas, una tarde, en solucionarlo? El problema no fue otro que la propia congestión de la red, que también hacía que los ingenieros tuviesen problemas para conectarse a los servidores y cambiar su configuración.

Las consecuencias se dejaron notar en los servicios. Youtube sufrió una caída del 10% de visitas durante este periodo, el almacenamiento de Google Cloud cayó un 30% y un 1% de los usuarios de Gmail no pudieron acceder a sus correos. No parece mucho, pero hay que tener en cuenta que ese porcentaje representa a millones de usuarios.

Google se ha comprometido a estudiar el caso y a implementar mejoras para evitarlo. Pero el daño, especialmente a la imagen de la nube, ya está hecho.