Estabilidad estática - Límites de aislamiento de errores de AWS

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Estabilidad estática

Una de las características de resiliencia más importantes de los AWS servicios es lo que se AWS denomina estabilidad estática. Lo que este término significa es que los sistemas funcionan en un estado estático y siguen funcionando con normalidad sin necesidad de realizar cambios durante el fallo o la falta de disponibilidad de las dependencias. Una forma de hacerlo es evitar las dependencias circulares en nuestros servicios que podrían impedir que uno de esos servicios se recupere correctamente. Otra forma de hacerlo es manteniendo el estado actual. Consideramos el hecho de que los planos de control tienen estadísticamente más probabilidades de fallar que los planos de datos. Si bien el plano de datos suele depender de los datos que llegan desde el plano de control, el plano de datos mantiene su estado actual y sigue funcionando incluso cuando el plano de control está dañado. El acceso a los recursos del plano de datos, una vez aprovisionado, no depende del plano de control y, por lo tanto, no se ve afectado por ninguna alteración del plano de control. En otras palabras, incluso si la capacidad de crear, modificar o eliminar recursos se ve afectada, los recursos existentes permanecen disponibles. Esto hace que AWS los planos de datos se mantengan estáticamente estables ante una alteración en el plano de control. Puede implementar diferentes patrones para mantener una estabilidad estática frente a diferentes tipos de fallas de dependencia.

Puede encontrar un ejemplo de estabilidad estática en Amazon EC2. Una vez que se ha lanzado una instancia de EC2, está tan disponible como el servidor físico de un centro de datos. No depende de ninguna API del plano de control para seguir funcionando o volver a funcionar tras un reinicio. La misma propiedad se aplica a otros AWS recursos, como las VPC, los buckets y objetos de Amazon S3 y los volúmenes de Amazon EBS.

La estabilidad estática es un concepto que está profundamente arraigado en la forma en que AWS diseña sus servicios, pero también es un patrón que pueden utilizar los clientes. De hecho, la mayoría de las recomendaciones sobre mejores prácticas para utilizar los diferentes tipos de AWS servicios de forma resiliente consisten en implementar la estabilidad estática en los entornos de producción. Los mecanismos de recuperación y mitigación más confiables son los que requieren menos cambios para lograr la recuperación. En lugar de confiar en el plano de control de EC2 para lanzar nuevas instancias de EC2 para recuperarse de una zona de disponibilidad fallida, disponer de esa capacidad adicional previamente aprovisionada ayuda a lograr la estabilidad estática. Por lo tanto, eliminar las dependencias de los planos de control (las API que implementan los cambios en los recursos) de su ruta de recuperación ayuda a generar cargas de trabajo más resilientes. Para obtener más información sobre la estabilidad estática, los planos de control y los planos de datos, consulte el artículo Static Stability using Availability Zones de Amazon Builders Library.