Este contenido está desactualizado. Esta versión de Well-Architected Framework se encuentra ahora en: https://docs.aws.amazon.com/es_es/wellarchitected/2022-03-31/framework/reliability.html

REL 12: ¿Cómo prueba la fiabilidad?

Después de haber diseñado su carga de trabajo para que sea resistente a las presiones de la producción, las pruebas son la única forma de garantizar que funcionará como se diseñó y proporcionará la resistencia que espera.

Recursos

Well-Architected lab: Level 300: Testing for Resiliency of EC2 RDS and S3
Injecting Chaos to Amazon EC2 using AWS Systems Manager
Resilience Engineering: Learning to Embrace Failure
AWS re:Invent 2019: Improving resiliency with chaos engineering (DOP309-R1)
Continuous Delivery and Continuous Integration
Using Canaries (Amazon CloudWatch Synthetics)
Use CodePipeline with AWS CodeBuild to test code and run builds
Automate your operational playbooks with AWS Systems Manager
Principles of Chaos Engineering
Apache JMeter
Casey Rosenthal, Lorin Hochstein, Aaron Blohowiak, Nora Jones, Ali Basiri. “Chaos Engineering” (August 2017)
AWS Marketplace: products that can be used for continuous integration
APN Partner: partners that can help with implementation of a continuous integration pipeline

Prácticas recomendadas:

Plan de mejora

Utilice manuales de estrategias para investigar los errores

  • Utilice los manuales de estrategias para identificar problemas: Los manuales de estrategias consisten en procesos documentados para investigar problemas. Permita respuestas rápidas y constantes para situaciones de errores a través de la documentación de los procesos en los manuales de estrategias. Los manuales de estrategias deben contener la información y guía necesaria para que una persona capacitada correctamente reúna información aplicable, identifique las posibles fuentes de error, aisle las fallas y determine los factores contribuyentes (p. ej., realizar análisis posteriores a los incidentes).
  • Realice análisis posteriores a los incidentes

  • Establezca un estándar para su análisis posterior a los incidentes: Un buen análisis posterior a los incidentes brinda oportunidades para proponer soluciones comunes para problemas con patrones de arquitectura que se utilizan en otros lugares de sus sistemas.
  • Utilice un proceso para determinar los factores contribuyentes: Implemente un proceso para identificar y documentar los factores contribuyentes de un evento para poder desarrollar estrategias de mitigación. De esta forma puede limitar o evitar la recurrencia y puede desarrollar procedimientos para ofrecer respuestas efectivas y rápidas. Comunique los factores contribuyentes según corresponda, adaptados a las audiencias de destino.
    What is log analytics?
  • Pruebe los requisitos funcionales

  • Pruebe los requisitos funcionales: Se incluyen pruebas de unidades y pruebas de integración que validan la funcionalidad requerida.
    Use CodePipeline with AWS CodeBuild to test code and run builds
    AWS CodePipeline Adds Support for Unit and Custom Integration Testing with AWS CodeBuild
    Continuous Delivery and Continuous Integration
    Using Canaries (Amazon CloudWatch Synthetics)
    Software test automation
  • Pruebe los requisitos de escalado y de rendimiento

  • Pruebe los requisitos de escalado y de rendimiento: Realice las pruebas de carga para validar que la carga de trabajo cumple con los requisitos de escalado y de rendimiento.
    Distributed Load Testing on AWS: simulate thousands of connected users
    Apache JMeter
  • Pruebe la resistencia a través de la ingeniería del caos

  • Pruebe la resistencia a través de la ingeniería del caos: Ejecute pruebas que inyecten errores de forma regular en los entornos de preproducción y producción. Elabore una hipótesis sobre cómo reaccionará su carga de trabajo frente al error. A continuación, compare su hipótesis con los resultados de la prueba y repita el proceso si los resultados no coinciden. Asegúrese de que las pruebas de producción no afecten a los usuarios.
    Principles of Chaos Engineering
    Well-Architected lab: Level 300: Testing for Resiliency of EC2 RDS and S3
    Injecting Chaos to Amazon EC2 using AWS Systems Manager
    AWS re:Invent 2019: Improving resiliency with chaos engineering (DOP309-R1)
  • Lleve a cabo días de prueba de forma regular

  • Programe días de prueba para ejercitar regularmente sus manuales de procedimientos y de estrategias.: Los días de prueba deberían involucrar a todos los que estarían involucrados en una interrupción de la producción: propietario del negocio, personal de desarrollo, personal operativo y equipos de respuesta a incidentes.