Capítulo 9. Resiliencia

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Un sistema distribuido es aquel en el que el fallo de un ordenador del que ni siquiera sabías puede inutilizar tu propio ordenador.1

Leslie Lamport, Tablón de anuncios DEC SRC (mayo de 1987)

Una noche de septiembre, poco después de las dos de la madrugada, una parte de la red interna de Amazon dejó de funcionar silenciosamente.2 Este suceso fue breve y no especialmente interesante, salvo porque afectó a un número considerable de servidores que soportaban el servicio DynamoDB.

La mayoría de los días, esto no sería un gran problema. Los servidores afectados simplemente intentarían volver a conectarse al clúster recuperando sus datos de afiliación de un servicio de metadatos dedicado. Si eso fallara, se desconectarían temporalmente y volverían a intentarlo.

Pero esta vez, cuando se restableció la red, un pequeño ejército de servidores de almacenamiento solicitó simultáneamente sus datos de pertenencia al servicio de metadatos, saturándolo de tal modo que las solicitudes -incluso las de los servidores no afectados anteriormente- empezaron a agotarse. Los servidores de almacenamiento respondieron obedientemente a los tiempos de espera desconectándose y volviendo a intentarlo (otra vez), lo que sobrecargó aún más el servicio de metadatos, provocando la desconexión de más servidores, y así sucesivamente. En cuestión de minutos, la interrupción ...

Get Nube Nativa Go now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.