

# Apéndice: preguntas y prácticas recomendadas
<a name="appendix"></a>

En este apéndice se resumen todas las preguntas y prácticas recomendadas de AWS Well-Architected Framework.

**Topics**
+ [Excelencia operativa](a-operational-excellence.md)
+ [Seguridad](a-security.md)
+ [Fiabilidad](a-reliability.md)
+ [Eficiencia del rendimiento](a-performance-efficiency.md)
+ [Optimización de costes](a-cost-optimization.md)
+ [Sostenibilidad](a-sustainability.md)

# Excelencia operativa
<a name="a-operational-excellence"></a>

El pilar de excelencia operativa incluye la capacidad de apoyar el desarrollo y ejecutar cargas de trabajo de forma efectiva, conocer sus operaciones y mejorar continuamente los procesos y procedimientos de soporte para ofrecer valor empresarial. Encontrará una guía prescriptiva sobre implementación en el [documento técnico Pilar de excelencia operativa](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/welcome.html). 

**Topics**
+ [Organización](a-organization.md)
+ [Prepárese](a-prepare.md)
+ [Operación](a-operate.md)
+ [Evolucionar](a-evolve.md)

# Organización
<a name="a-organization"></a>

**Topics**
+ [OPS 1 ¿Cómo determina cuáles son sus prioridades?](ops-01.md)
+ [OPS 2 ¿Cómo estructura su organización para lograr los resultados empresariales?](ops-02.md)
+ [OPS 3 ¿Cómo ayuda la cultura de su organización a lograr los resultados empresariales?](ops-03.md)

# OPS 1 ¿Cómo determina cuáles son sus prioridades?
<a name="ops-01"></a>

 Todos deben comprender su parte para permitir el éxito empresarial. Tenga objetivos compartidos para establecer prioridades en cuanto a los recursos. Esto maximizará los beneficios de sus esfuerzos. 

**Topics**
+ [OPS01-BP01 Evaluar las necesidades externas del cliente](ops_priorities_ext_cust_needs.md)
+ [OPS01-BP02 Evaluar las necesidades internas del cliente](ops_priorities_int_cust_needs.md)
+ [OPS01-BP03 Evaluar los requisitos de gobernanza](ops_priorities_governance_reqs.md)
+ [OPS01-BP04 Evaluar los requisitos de cumplimiento](ops_priorities_compliance_reqs.md)
+ [OPS01-BP05 Evaluar el panorama de amenazas](ops_priorities_eval_threat_landscape.md)
+ [OPS01-BP06 Evaluar compensaciones](ops_priorities_eval_tradeoffs.md)
+ [OPS01-BP07 Gestionar beneficios y riesgos](ops_priorities_manage_risk_benefit.md)

# OPS01-BP01 Evaluar las necesidades externas del cliente
<a name="ops_priorities_ext_cust_needs"></a>

 Involucre a las partes interesadas clave, incluidos los equipos de negocios, desarrollo y operaciones, para determinar dónde centrar los esfuerzos en las necesidades externas del cliente. Esto asegurará que comprenda a fondo el respaldo operativo que se requiere para lograr los resultados empresariales deseados. 

 **Antipatrones usuales:** 
+  Ha decidido no ofrecer asistencia a los clientes fuera de las horas laborables centrales, pero no ha revisado los datos de solicitud de asistencia históricos. No sabe si esto afectará a sus clientes. 
+  Está desarrollando una función nueva pero no ha involucrado a sus clientes para saber si les interesa, de qué forma les interesa y sin experiencia para validar la necesidad y la forma de la entrega. 

 **Beneficios de establecer esta práctica recomendada:** Es mucho más probable que los clientes cuyas necesidades están satisfechas sigan siendo clientes. La evaluación y la comprensión de las necesidades externas de los clientes le permitirán priorizar sus esfuerzos para aportar valor a la empresa. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Comprender los objetivos empresariales: el éxito de un negocio se debe a metas compartidas y a un entendimiento entre las partes interesadas que abarca a los equipos de negocios, desarrollo y operaciones. 
  +  Revise los objetivos comerciales, las necesidades y las prioridades de los clientes externos: involucre a las partes interesadas clave, incluidos los equipos de negocios, desarrollo y operaciones, para analizar los objetivos, las necesidades y las prioridades de los clientes externos. Esto garantiza que comprenda a fondo el soporte operativo que se requiere para lograr los resultados de la empresa y de los clientes. 
  +  Establecer un entendimiento compartido: establezca una comprensión compartida de los roles comerciales de la carga de trabajo, los roles de cada uno de los equipos el manejo de la carga de trabajo y cómo estos apoyan los objetivos comerciales compartidos entre los clientes internos y externos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Conceptos de AWS Well-Architected Framework: bucle de retroalimentación](https://wa.aws.amazon.com/wellarchitected/2020-07-02T19-33-23/wat.concept.feedback-loop.en.html) 

# OPS01-BP02 Evaluar las necesidades internas del cliente
<a name="ops_priorities_int_cust_needs"></a>

 Al determinar dónde centrar los esfuerzos en las necesidades internas del cliente, involucre a las partes interesadas clave, incluidos los equipos de negocios, desarrollo y operaciones. Esto asegurará que comprenda exhaustivamente el soporte operacional que se requiere para lograr resultados comerciales. 

 Utilice sus prioridades establecidas para centrar sus esfuerzos de mejora en las que tendrán el mayor impacto (por ejemplo, el desarrollo de las habilidades del equipo, la mejora del rendimiento de la carga de trabajo, la reducción de los costes, la automatización de los runbooks o la mejora de la monitorización). Actualice sus prioridades a medida que cambien las necesidades. 

 **Antipatrones usuales:** 
+  Ha decidido cambiar las asignaciones de direcciones IP de sus equipos de productos, sin consultarlos, para facilitar la administración de su red. No sabe el impacto que tendrá en sus equipos de productos. 
+  Está implementando una nueva herramienta de desarrollo, pero no ha involucrado a sus clientes internos para averiguar si es necesaria o si es compatible con sus prácticas actuales. 
+  Está implementando un nuevo sistema de supervisión, pero no se ha puesto en contacto con sus clientes internos para averiguar si tienen necesidades de supervisión o de elaboración de informes que deban tenerse en cuenta. 

 **Beneficios de establecer esta práctica recomendada:** La evaluación y la comprensión de las necesidades de los clientes internos le permitirán priorizar sus esfuerzos para aportar valor a la empresa. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Comprender los objetivos empresariales: el éxito de un negocio se debe a metas compartidas y a un entendimiento entre las partes interesadas que abarca a los equipos de negocios, desarrollo y operaciones. 
  +  Revise los objetivos comerciales, las necesidades y las prioridades de los clientes internos: involucre a las partes interesadas clave, incluidos los equipos de negocios, desarrollo y operaciones, para analizar los objetivos, las necesidades y las prioridades de los clientes internos. Esto garantiza que comprenda a fondo el soporte operativo que se requiere para lograr los resultados de la empresa y de los clientes. 
  +  Establecer un entendimiento compartido: establezca una comprensión compartida de los roles comerciales de la carga de trabajo, los roles de cada uno de los equipos el manejo de la carga de trabajo y cómo estos apoyan los objetivos comerciales compartidos entre los clientes internos y externos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Conceptos de AWS Well-Architected Framework: bucle de retroalimentación](https://wa.aws.amazon.com/wellarchitected/2020-07-02T19-33-23/wat.concept.feedback-loop.en.html) 

# OPS01-BP03 Evaluar los requisitos de gobernanza
<a name="ops_priorities_governance_reqs"></a>

 La gobernanza es el conjunto de políticas, normas o marcos que utiliza una empresa para conseguir sus objetivos empresariales. Los requisitos de gobernanza se generan en su organización. Pueden afectar a los tipos de tecnologías que elija o influir en la forma de utilizar su carga de trabajo. Incorpore los requisitos de gobernanza de la organización a su carga de trabajo. La conformidad es la capacidad de demostrar que ha implementado los requisitos de gobernanza. 

 **Resultado deseado:** 
+  Los requisitos de gobernanza se incorporan al diseño arquitectónico y al funcionamiento de su carga de trabajo. 
+  Puede aportar pruebas de que ha seguido los requisitos de gobernanza. 
+  Los requisitos de gobernanza se revisan y actualizan periódicamente. 

 **Patrones comunes de uso no recomendados:** 
+ Su organización exige que la cuenta raíz disponga de autenticación multifactor. No ha implementado este requisito y la cuenta raíz está comprometida.
+ Durante el diseño de la carga de trabajo, elige un tipo de instancia que no ha aprobado el departamento de TI. No puede lanzar la carga de trabajo y debe llevar a cabo un rediseño.
+ Debe disponer de un plan de recuperación de desastres. No ha creado uno y la carga de trabajo sufre una interrupción prolongada.
+  Su equipo quiere utilizar nuevas instancias pero sus requisitos de gobernanza no se han actualizado para permitirlo. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Seguir los requisitos de gobernanza alinea su carga de trabajo con las políticas de la organización. 
+  Los requisitos de gobernanza reflejan los estándares del sector y las prácticas recomendadas para su organización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Colabore con las partes interesadas y las organizaciones de gobernanza para identificar los requisitos de gobernanza. Incluya los requisitos de gobernanza en su carga de trabajo. Sea capaz de demostrar que ha seguido los requisitos de gobernanza.

 **Ejemplo de cliente** 

 En AnyCompany Retail, el equipo de operaciones en la nube colabora con las partes interesadas de toda la organización para desarrollar los requisitos de gobernanza. Por ejemplo, prohíben el acceso SSH a las instancias de Amazon EC2. Si los equipos necesitan acceso al sistema, deberán utilizar AWS Systems Manager Session Manager. El equipo de operaciones en la nube actualiza periódicamente los requisitos de gobernanza a medida que hay disponibles nuevos servicios. 

 **Pasos para la implementación** 

1.  Identifique a las partes interesadas para su carga de trabajo, incluidos los equipos centralizados. 

1.  Colabore con las partes interesadas para identificar los requisitos de gobernanza. 

1.  Una vez generada la lista, priorice los elementos de mejora y comience a implementarlos en su carga de trabajo. 

   1.  Utilice servicios como [AWS Config](https://aws.amazon.com/blogs/industries/best-practices-for-aws-organizations-service-control-policies-in-a-multi-account-environment/) para crear gobernanza como código y validar que se siguen los requisitos de gobernanza. 

   1.  Si utiliza [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html), puede aprovechar las políticas de control de servicios para implementar los requisitos de gobernanza. 

1.  Proporcione documentación que valide la implementación. 

 **Nivel de esfuerzo para el plan de implementación:** medio. La implementación de los requisitos de gobernanza que faltan puede dar lugar a un reajuste de su carga de trabajo. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS01-BP04 Evaluar los requisitos de cumplimiento](ops_priorities_compliance_reqs.md): el cumplimiento es como la gobernanza pero viene de fuera de una organización. 

 **Documentos relacionados:** 
+ [AWS Management and Governance Cloud Environment Guide ](https://docs.aws.amazon.com/wellarchitected/latest/management-and-governance-guide/management-and-governance-cloud-environment-guide.html) (Guía del entorno de la nube de la administración y la gobernanza de AWS)
+ [Best Practices for AWS Organizations Service Control Policies in a Multi-Account Environment](https://aws.amazon.com/blogs/industries/best-practices-for-aws-organizations-service-control-policies-in-a-multi-account-environment/) (Prácticas recomendadas para las políticas de control de servicios de AWS Organizations en un entorno de varias cuentas)
+ [ Governance in the Nube de AWS: The Right Balance Between Agility and Safety](https://aws.amazon.com/blogs/apn/governance-in-the-aws-cloud-the-right-balance-between-agility-and-safety/) (Gobernanza en Nube de AWS: el equilibrio adecuado entre agilidad y seguridad)
+ [ What is Governance, Risk, And Compliance (GRC)? ](https://aws.amazon.com/what-is/grc/)(¿Qué es la gobernanza, el riesgo y el cumplimiento [GRC]?)

 **Vídeos relacionados: ** 
+ [AWS Management and Governance: Configuration, Compliance, and Audit - AWS Online Tech Talks ](https://www.youtube.com/watch?v=79ud1ZAaoj0)(Administración y gobernanza de AWS: configuración, cumplimiento y auditoría - AWS Online Tech Talks)
+ [AWS re:Inforce 2019: Governance for the Cloud Age (DEM12-R1) ](https://www.youtube.com/watch?v=y3WmHnavuN8)(AWS re:Inforce 2019: Gobernanza para la era de la nube [DEM12-R1])
+ [AWS re:Invent 2020: Achieve compliance as code using AWS Config](https://www.youtube.com/watch?v=m8vTwvbzOfw)(AWS re:Invent 2020: Conseguir el cumplimiento como código mediante AWS Config)
+ [AWS re:Invent 2020: Agile governance on AWS GovCloud (US)](https://www.youtube.com/watch?v=hv6B17eriHQ)(AWS re:Invent 2020: Gobernanza ágil en AWS GovCloud (US))

 **Ejemplos relacionados:** 
+ [AWS Config Conformance Pack Samples ](https://docs.aws.amazon.com/config/latest/developerguide/conformancepack-sample-templates.html)(Muestras de paquetes de conformidad de AWS Config)

 **Servicios relacionados:** 
+ [AWS Config](https://aws.amazon.com/config/)
+ [AWS Organizations: políticas de control de servicios ](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)

# OPS01-BP04 Evaluar los requisitos de cumplimiento
<a name="ops_priorities_compliance_reqs"></a>

Los requisitos de cumplimiento normativo, sectorial e interno son un motor importante para definir las prioridades de su organización. Es posible que su marco de cumplimiento le impida utilizar determinadas tecnologías o ubicaciones geográficas. Aplique la diligencia debida si no se identifican marcos de cumplimiento externos. Genere auditorías o informes que validen el cumplimiento.

 Si indica que su producto se ajusta a estándares de conformidad específicos, debe tener un proceso interno que garantice el cumplimiento continuo. Algunos ejemplos de estándares de cumplimiento son PCI DSS, FedRAMP e HIPAA. Las estándares de conformidad aplicables se determinan en función de diversos factores, como los tipos de datos que la solución almacena o transmite, o las regiones geográficas compatibles con la solución. 

 **Resultado deseado:** 
+  Los requisitos de cumplimiento normativo, sectorial e interno se incorporan a la selección de arquitectura. 
+  Puede validar el cumplimiento y generar informes de auditoría. 

 **Patrones comunes de uso no recomendados:** 
+ Algunas partes de su carga de trabajo entran dentro del marco del estándar de seguridad de datos de la industria de tarjetas de pago (PCI DSS), pero su carga de trabajo almacena los datos de las tarjetas de crédito sin cifrar.
+ Sus desarrolladores y arquitectos de software desconocen el marco de cumplimiento al que debe adherirse su organización.
+  La auditoría anual de sistemas y organizaciones de control (SOC2) de tipo II tendrá lugar en breve y no puede verificar que los controles están aplicados. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Evaluar y comprender los requisitos de cumplimiento se aplican a su carga de trabajo determinarán cómo priorizar sus esfuerzos para ofrecer valor empresarial. 
+  Elige las ubicaciones y las tecnologías adecuadas que sean congruentes con su marco de cumplimiento. 
+  Diseñar su carga de trabajo para que pueda auditar le permite demostrar que se atiene a su marco de cumplimiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La implementación de esta práctica recomendada significa que se incorporan los requisitos de cumplimiento a su proceso de diseño de la arquitectura. Los miembros de su equipo conocen el marco de cumplimiento necesario. Valida el cumplimiento de acuerdo con el marco. 

 **Ejemplo de cliente** 

 AnyCompany Retail almacena la información de las tarjetas de crédito de los clientes. Los desarrolladores del equipo de almacenamiento de tarjetas saben que deben cumplir el marco PCI-DSS. Han tomado medidas para verificar que la información de las tarjetas de crédito se almacena y se accede a ella de forma segura de acuerdo con el marco PCI-DSS. Cada año colaboran con su equipo de seguridad para validar el cumplimiento. 

 **Pasos para la implementación** 

1.  Colabore con sus equipos de seguridad y gobernanza para determinar qué marcos de cumplimiento sectorial, normativo o interno debe cumplir su carga de trabajo. Incorpore los marcos de cumplimiento a su carga de trabajo. 

   1.  Valide el cumplimiento continuo de los recursos de AWS con servicios como [AWS Compute Optimizer](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) y [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html). 

1.  Informe a los miembros de su equipo sobre los requisitos de cumplimiento para que puedan utilizar y hacer evolucionar la carga de trabajo de acuerdo con ellos. Los requisitos de cumplimiento deben incluirse en las opciones de arquitectura y tecnología. 

1.  En función del marco de cumplimiento, puede que deba generar un informe de auditoría o de cumplimiento. Colabore con su organización para automatizar este proceso en la medida de lo posible. 

   1.  Use servicios como [AWS Audit Manager](https://docs.aws.amazon.com/audit-manager/latest/userguide/what-is.html) para validar el cumplimiento y generar informes de auditoría. 

   1.  Puede descargar documentos de seguridad y cumplimiento de AWS con [AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/what-is-aws-artifact.html). 

 **Nivel de esfuerzo para el plan de implementación:** medio. La implementación de marcos de cumplimiento puede suponer un desafío. La generación de informes de auditoría o documentos de cumplimiento añade complejidad adicional. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC01-BP03 Identificar y validar objetivos de control](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_securely_operate_control_objectives.html): los objetivos de control de seguridad son una parte importante del cumplimiento general. 
+  [SEC01-BP06 Automatizar la comprobación y validación de controles de seguridad en canalizaciones](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_securely_operate_test_validate_pipeline.html): como parte de sus canalizaciones, valide los controles de seguridad. También puede generar documentación de cumplimiento para los nuevos cambios. 
+  [SEC07-BP02 Definir controles de protección de datos](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_data_classification_define_protection.html): muchos marcos de cumplimiento se basan en políticas de gestión y almacenamiento de datos. 
+  [SEC10-BP03: Preparar capacidades forenses](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_incident_response_prepare_forensic.html): a veces, las capacidades forenses pueden utilizarse para auditar el cumplimiento. 

 **Documentos relacionados:** 
+ [ Centro de cumplimiento de AWS](https://aws.amazon.com/financial-services/security-compliance/compliance-center/)
+ [ Recursos de cumplimiento de AWS](https://aws.amazon.com/compliance/resources/)
+ [ Documento técnico de riesgo y conformidad de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-risk-and-compliance/welcome.html)
+ [Modelo de responsabilidad compartida de AWS](https://aws.amazon.com/compliance/shared-responsibility-model/)
+ [ Servicios de AWS en el ámbito de los programas de cumplimiento ](https://aws.amazon.com/compliance/services-in-scope/)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2020: Achieve compliance as code using AWS Compute Optimizer](https://www.youtube.com/watch?v=m8vTwvbzOfw)(AWS re:Invent 2020: Conseguir el cumplimiento como código mediante AWS Compute Optimizer)
+ [AWS re:Invent 2021 - Cloud compliance, assurance, and auditing ](https://www.youtube.com/watch?v=pdrYGVgb08Y) (AWS re:Invent 2021: Cumplimiento, garantía y auditoría de la nube)
+ [AWS Summit ATL 2022 - Implementing compliance, assurance, and auditing on AWS (COP202) ](https://www.youtube.com/watch?v=i7XrWimhqew) (AWS Summit ATL 2022: Implementación del cumplimiento, la garantía y la auditoría en AWS [COP202])

 **Ejemplos relacionados:** 
+ [ PCI DSS and AWS Foundational Security Best Practices on AWS](https://aws.amazon.com/solutions/partners/compliance-pci-fsbp-remediation/)(PCI DSS y prácticas recomendadas de seguridad básicas de AWS en AWS)

 **Servicios relacionados:** 
+ [AWS Artifact](https://docs.aws.amazon.com/artifact/latest/ug/what-is-aws-artifact.html)
+ [AWS Audit Manager](https://docs.aws.amazon.com/audit-manager/latest/userguide/what-is.html)
+ [AWS Compute Optimizer](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)
+ [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)

# OPS01-BP05 Evaluar el panorama de amenazas
<a name="ops_priorities_eval_threat_landscape"></a>

 Evalúe las amenazas de la empresa (por ejemplo, competencia, riesgos y responsabilidades comerciales, riesgos operativos y amenazas a la seguridad de la información) y mantenga la información actual en un registro de riesgos. Incluya el impacto de los riesgos a la hora de determinar dónde centrar los esfuerzos. 

 El [Well-Architected Framework](https://aws.amazon.com/architecture/well-architected/) hace hincapié en aprender, medir y mejorar. Proporciona un enfoque coherente para evaluar las arquitecturas e implementar diseños que se escalarán con el tiempo. AWS proporciona [AWS Well-Architected Tool](https://aws.amazon.com/well-architected-tool/) para ayudarle a revisar su enfoque antes del desarrollo, el estado de sus cargas de trabajo antes de la producción y el estado de sus cargas de trabajo durante la producción. Puede compararlos con las prácticas recomendadas de arquitectura de AWS más recientes, supervisar el estado general de sus cargas de trabajo y obtener información sobre posibles riesgos. 

 Los clientes de AWS pueden optar a una revisión guiada de sus cargas de trabajo de misión crítica para [medir sus arquitecturas](https://aws.amazon.com/premiumsupport/programs/) frente a las prácticas recomendadas de AWS Los clientes de Enterprise Support son elegibles para una [revisión de operaciones en la nube](https://aws.amazon.com/premiumsupport/programs/)diseñada para ayudarles a identificar las lagunas en su enfoque para operar en la nube. 

 La participación de todos los equipos en estas revisiones ayuda a establecer un entendimiento común de sus cargas de trabajo y de cómo los roles del equipo contribuyen al éxito. Las necesidades identificadas a través de la revisión pueden ayudar a dar forma a sus prioridades. 

 [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/) es una herramienta que proporciona acceso a un conjunto básico de comprobaciones que recomiendan optimizaciones que pueden ayudar a definir sus sus prioridades. [Los clientes de Business y Enterprise Support ](https://aws.amazon.com/premiumsupport/plans/) reciben acceso a comprobaciones adicionales centradas en la seguridad, la fiabilidad, el rendimiento y la optimización de los costos que pueden ayudar a configurar sus prioridades. 

 **Antipatrones usuales:** 
+  En su producto, está utilizando una versión antigua de una biblioteca de software. No está al tanto de las actualizaciones de seguridad de la biblioteca por problemas que pueden tener un impacto no deseado en su carga de trabajo. 
+  Su competidor acaba de lanzar una versión de su producto que resuelve muchas de las quejas de sus clientes sobre su producto. No ha priorizado la resolución de ninguno de estos problemas conocidos. 
+  Los reguladores han estado persiguiendo a empresas como la suya que no cumplen con los requisitos legales de conformidad de la normativa. No ha priorizado la conformidad de ninguno de sus requisitos pendientes. 

 **Beneficios de establecer esta práctica recomendada:** La identificación y la comprensión de las amenazas para su organización y su carga de trabajo le permiten determinar qué amenazas debe abordar, su prioridad y los recursos necesarios para hacerlo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Evaluar el panorama de amenazas: evalúe las amenazas a la empresa (por ejemplo, competencia, riesgos y responsabilidades comerciales, riesgos operativos y amenazas a la seguridad de la información), de modo que pueda incluir su impacto al determinar dónde centrar los esfuerzos operativos. 
  +  [Últimos boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins/) 
  +  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
  +  Mantener un modelo de amenazas: establezca y mantenga un modelo de amenazas que identifique las amenazas potenciales, las mitigaciones planificadas y en curso, y su prioridad. Revise la probabilidad de que las amenazas se manifiesten en forma de incidentes, el coste de recuperación de dichos incidentes y el daño esperado causado, así como el coste de prevención de los incidentes. Revise las prioridades a medida que cambie el contenido del modelo de amenazas. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Conformidad de Nube de AWS](https://aws.amazon.com/compliance/) 
+  [Últimos boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 

# OPS01-BP06 Evaluar compensaciones
<a name="ops_priorities_eval_tradeoffs"></a>

 Evalúe el impacto de las compensaciones entre los intereses de métodos alternativos en competencia para ayudar a tomar decisiones fundamentadas a la hora de determinar dónde centrar los esfuerzos o elegir una vía de acción. Por ejemplo, la aceleración de la velocidad de comercialización de las nuevas funciones puede primar sobre la optimización de los costes, o se puede elegir una base de datos relacional para los datos no relacionales para simplificar el esfuerzo de migración de un sistema en lugar de migrar a una base de datos optimizada para su tipo de datos y actualizar su aplicación. 

 AWS puede ayudarle a instruir a sus equipos sobre AWS y los servicios que ofrece para aumentar la comprensión que tengan sobre cómo las elecciones que hagan pueden tener un impacto en la carga de trabajo. Debe utilizar los recursos proporcionados por [AWS Support](https://aws.amazon.com/premiumsupport/programs/) ([Centro de conocimientos de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/), [Foros de debate de AWS](https://forums.aws.amazon.com/index.jspa) y [Centro de AWS Support](https://console.aws.amazon.com/support/home/)) y [Documentación de AWS](https://docs.aws.amazon.com/) para instruir a sus equipos. Póngase en contacto con AWS Support a través del Centro de AWS Support para que le ayude con sus preguntas sobre AWS. 

 AWS también comparte los patrones y prácticas recomendadas que hemos aprendido a través del funcionamiento de AWS en [Amazon Builders' Library](https://aws.amazon.com/builders-library/). Hay una gran variedad de información útil disponible a través del [Blog de AWS](https://aws.amazon.com/blogs/) y [del podcast oficial de AWS](https://aws.amazon.com/podcasts/aws-podcast/). 

 **Patrones de uso no recomendados comunes:** 
+  Está utilizando una base de datos relacional para gestionar series temporales y datos no relacionales. Hay opciones de bases de datos que están optimizadas para admitir los tipos de datos que utilice, pero no es consciente de los beneficios porque no ha evaluado las compensaciones entre las soluciones. 
+  Sus inversores le piden que demuestre el cumplimiento de las normas de seguridad de datos del sector de las tarjetas de pago (PCI DSS). No considera las ventajas y desventajas de satisfacer su solicitud y continuar con sus esfuerzos actuales de desarrollo. En lugar de eso, sigue adelante con sus esfuerzos de desarrollo sin demostrar la conformidad. Sus inversores dejan de apoyar a su empresa por la preocupación sobre la seguridad de la plataforma y las inversiones realizadas. 

 **Beneficios de establecer esta práctica recomendada:** comprender las implicaciones y consecuencias de sus elecciones le permite priorizar sus opciones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Evaluar compensaciones: evalúe el impacto de las compensaciones entre los intereses en competencia para ayudar a tomar decisiones fundamentadas a la hora de determinar dónde centrar los esfuerzos. Por ejemplo, la aceleración de la velocidad de comercialización de nuevas características podría enfatizarse en la optimización de costes. 
+  AWS puede ayudarle a instruir a sus equipos sobre AWS y los servicios que ofrece para aumentar la comprensión que tengan sobre cómo las elecciones que hagan pueden tener un impacto en la carga de trabajo. Debe utilizar los recursos proporcionados por AWS Support (Centro de conocimiento de AWS, Foros de debate de AWS, y Centro de AWS Support) y Documentación de AWS para instruir a sus equipos. Póngase en contacto con AWS Support a través del Centro de AWS Support para que le ayude con sus preguntas sobre AWS. 
+  AWS también comparte los patrones y prácticas recomendadas que hemos aprendido a través del funcionamiento de AWS en la Amazon Builders' Library Hay una gran variedad de información útil disponible a través del Blog de AWS y el Podcast oficial de AWS 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de AWS](https://aws.amazon.com/blogs/) 
+  [Conformidad de Nube de AWS](https://aws.amazon.com/compliance/) 
+  [Foros de debate de AWS](https://forums.aws.amazon.com/index.jspa) 
+  [Documentación de AWS](https://docs.aws.amazon.com/) 
+  [Centro de conocimientos de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 
+  [AWS Support](https://aws.amazon.com/premiumsupport/) 
+  [Centro de AWS Support](https://console.aws.amazon.com/support/home/) 
+  [Amazon Builders' Library](https://aws.amazon.com/builders-library/) 
+  [Podcast oficial de AWS](https://aws.amazon.com/podcasts/aws-podcast/) 

# OPS01-BP07 Gestionar beneficios y riesgos
<a name="ops_priorities_manage_risk_benefit"></a>

 Gestione beneficios y riesgos para tomar decisiones fundamentadas a la hora de determinar dónde centrar los esfuerzos. Por ejemplo, puede resultar beneficioso implementar una carga de trabajo con problemas sin resolver para que las nuevas características importantes estén disponibles para los clientes. Puede ser posible mitigar los riesgos asociados, o puede ser inaceptable permitir que un riesgo persista, en cuyo caso se tomarán medidas para eliminar el riesgo. 

 Es posible que, en algún momento, quiera hacer énfasis en un pequeño subconjunto de sus prioridades. Utilice un enfoque equilibrado a largo plazo para asegurar el desarrollo de las capacidades necesarias y la gestión de riesgos. Actualice sus prioridades a medida que cambien las necesidades. 

 **Antipatrones usuales:** 
+  Ha decidido incluir una biblioteca que hace todo lo que necesita y que uno de sus desarrolladores encontró en Internet. No ha evaluado los riesgos de adoptar esta biblioteca de una fuente desconocida y no sabe si contiene vulnerabilidades o código malicioso. 
+  Ha decidido desarrollar y desplegar una nueva función en lugar de solucionar un problema existente. No ha evaluado los riesgos de dejar el problema hasta que se despliegue la función y no sabe cuál será el impacto en sus clientes. 
+  Ha decidido no desplegar una función solicitada con frecuencia por los clientes debido a preocupaciones no especificadas de su equipo de conformidad. 

 **Beneficios de establecer esta práctica recomendada:** Identificar los beneficios disponibles de sus opciones y ser consciente de los riesgos para su organización le permite tomar decisiones fundamentadas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Gestionar beneficios y riesgos: equilibre los beneficios de las decisiones con los riesgos involucrados. 
  +  Identificar beneficios: identifique los beneficios en función de los objetivos, las necesidades y las prioridades comerciales. Los ejemplos incluyen tiempo de comercialización, seguridad, fiabilidad, rendimiento y costo. 
  +  Identificar riesgos: identifique los riesgos en función de los objetivos, las necesidades y las prioridades de la empresa. Los ejemplos incluyen tiempo de comercialización, seguridad, fiabilidad, rendimiento y costo. 
  +  Evaluar los beneficios frente a los riesgos y tomar decisiones fundamentadas: determine el impacto de los beneficios y los riesgos en función de los objetivos, las necesidades y las prioridades de sus partes interesadas clave, incluidos los negocios, el desarrollo y las operaciones. Evalúe el valor del beneficio frente a la probabilidad de que el riesgo se materialice y el costo de su impacto. Por ejemplo, enfatizar en el tiempo de comercialización más que en la fiabilidad puede suponer una ventaja competitiva. Sin embargo, puede dar lugar a una reducción del tiempo de actividad si hay problemas de fiabilidad. 

# OPS 2 ¿Cómo estructura su organización para lograr los resultados empresariales?
<a name="ops-02"></a>

 Sus equipos deben comprender su papel en la consecución de los resultados empresariales. Los equipos deben comprender el rol que tienen en el éxito de otros equipos, conocer el rol de los demás equipos en su propio éxito y tener objetivos en común. Comprender la responsabilidad, la propiedad, cómo se toman las decisiones y quién tiene autoridad para tomarlas ayudará a centrar los esfuerzos y a maximizar los beneficios de sus equipos. 

**Topics**
+ [OPS02-BP01 Los recursos han identificado a los propietarios](ops_ops_model_def_resource_owners.md)
+ [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md)
+ [OPS02-BP03 Las actividades operativas han identificado a los propietarios responsables de su rendimiento](ops_ops_model_def_activity_owners.md)
+ [OPS02-BP04 Los miembros del equipo saben de qué son responsables](ops_ops_model_know_my_job.md)
+ [OPS02-BP05 Existen mecanismos para identificar la responsabilidad y la propiedad](ops_ops_model_find_owner.md)
+ [OPS02-BP06 Existen mecanismos para solicitar adiciones, cambios y excepciones](ops_ops_model_req_add_chg_exception.md)
+ [OPS02-BP07 Las responsabilidades entre los equipos están predefinidas o negociadas](ops_ops_model_def_neg_team_agreements.md)

# OPS02-BP01 Los recursos han identificado a los propietarios
<a name="ops_ops_model_def_resource_owners"></a>

Los recursos para su carga de trabajo deben tener propietarios identificados para el control de cambios, la resolución de problemas y otras funciones. Se asignan propietarios para las cargas de trabajo, las cuentas, la infraestructura, las plataformas y las aplicaciones. La propiedad se registra mediante herramientas como un registro central o metadatos adjuntos a los recursos. El valor empresarial de los componentes determina los procesos y los procedimientos que se les aplican.

 **Resultado deseado:** 
+  Los recursos tienen propietarios identificados mediante metadatos o un registro central. 
+  Los miembros del equipo pueden identificar a quién pertenecen los recursos. 
+  Las cuentas tienen un único propietario siempre que sea posible. 

 **Patrones comunes de uso no recomendados:** 
+  Los contactos alternativos para sus Cuentas de AWS no están asignados. 
+  Los recursos carecen de etiquetas que identifiquen a qué equipos pertenecen. 
+  Tiene una cola ITSM sin una asignación de correo electrónico. 
+  Dos equipos tienen la propiedad solapada de un elemento fundamental de la infraestructura. 

 **Beneficios de establecer esta práctica recomendada:** 
+  El control de cambios de los recursos resulta sencillo con una propiedad asignada. 
+  Puede implicar a los propietarios adecuados a la hora de solucionar problemas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Defina qué significa la propiedad para los casos de uso de los recursos en su entorno. La propiedad puede indicar quién supervisa los cambios en el recurso, quién lo respalda durante la resolución de problemas o quién es responsable desde el punto de vista financiero. Especifique y registre los propietarios de los recursos, incluido el nombre, la información de contacto, la organización y el equipo. 

 **Ejemplo de cliente** 

 AnyCompany Retail define la propiedad como el equipo o la persona que se encarga de los cambios y de la asistencia a los recursos. Usa AWS Organizations para administrar sus Cuentas de AWS. Los contactos alternativos de la cuenta se configuran mediante bandejas de entrada de grupo. Cada cola de ITSM se asigna a un alias de correo electrónico. Las etiquetas identifican a quién pertenecen los recursos de AWS. Para otras plataformas e infraestructuras, tiene una página wiki que identifica la propiedad y la información de contacto. 

 **Pasos para la implementación** 

1.  Empiece con la definición de la propiedad de su organización. La propiedad puede implicar quién es el propietario del riesgo del recurso, quién es el propietario de los cambios en el recurso o quién presta asistencia al recurso cuando se solucionan problemas. La propiedad también podría implicar la propiedad financiera o administrativa del recurso. 

1.  Use [AWS Organizations](https://aws.amazon.com/organizations/) para administrar cuentas. Puede administrar los contactos alternativos de sus cuentas de forma centralizada. 

   1.  Si utiliza las direcciones de correo electrónico y los números de teléfono de la empresa como información de contacto, será posible comunicarse aunque la persona a la que pertenezca dicha dirección o teléfono haya abandonado la organización. Por ejemplo, cree listas de correo electrónico diferentes para la facturación, las operaciones y la seguridad, y configure estos contactos como Facturación, Seguridad y Operaciones en cada Cuenta de AWS activa. Las notificaciones de AWS llegarán a diversas personas y se responderán incluso si alguien está de vacaciones, cambia de rol o deja la empresa. 

   1.  Si una cuenta no está administrada por [AWS Organizations](https://aws.amazon.com/organizations/), los contactos alternativos de la cuenta permitirán que AWS pueda ponerse en contacto con las personas adecuadas en caso necesario. Configure los contactos alternativos de la cuenta para que apunten a un grupo en lugar de a una persona. 

1.  Utilice etiquetas para identificar a los propietarios de los recursos de AWS. Puede especificar tanto los propietarios como su información de contacto en etiquetas independientes. 

   1.  Puede utilizar reglas de [AWS Config](https://aws.amazon.com/config/) para imponer que los recursos tengan las etiquetas de propiedad obligatorias. 

   1.  Si desea una orientación detallada acerca de cómo crear una estrategia de etiquetado para su organización, consulte el documento técnico [AWS Tagging Best Practices](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html) (Prácticas recomendadas de etiquetado de AWS). 

1.  Para otros recursos, plataformas e infraestructuras, cree documentación que identifique la propiedad. Todos los miembros del equipo deben poder acceder a ella. 

 **Nivel de esfuerzo para el plan de implementación:** bajo. Utilice la información de contacto de la cuenta y las etiquetas para asignar la propiedad de los recursos de AWS. Para otros recursos puede utilizar algo tan simple como una tabla en un wiki para registrar la propiedad y la información de contacto o una herramienta ITSM para asignar la propiedad. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md): los procesos y los procedimientos para respaldar los recursos dependen de la propiedad de los mismos. 
+  [OPS02-BP04 Los miembros del equipo saben de qué son responsables](ops_ops_model_know_my_job.md): los miembros del equipo deben saber de qué recursos son propietarios. 
+  [OPS02-BP05 Existen mecanismos para identificar la responsabilidad y la propiedad](ops_ops_model_find_owner.md): la propiedad se debe poder descubrir mediante mecanismos como las etiquetas o los contactos de la cuenta. 

 **Documentos relacionados:** 
+ [ Administración de cuentas de AWS: actualización de la información de contacto ](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact.html#manage-acct-update-contact-alternate-edit.html)
+ [ Reglas de AWS Config: etiquetas obligatorias ](https://docs.aws.amazon.com/config/latest/developerguide/required-tags.html)
+ [AWS Organizations: actualización de contactos alternativos en su organización ](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_update_contacts.html)
+  [Documento técnico AWS Tagging Best Practices (Prácticas recomendadas de etiquetado de AWS)](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html) 

 **Ejemplos relacionados:** 
+ [ Reglas de AWS Config: Amazon EC2 con etiquetas obligatorias y valores válidos ](https://github.com/awslabs/aws-config-rules/blob/master/python/ec2_require_tags_with_valid_values.py)

 **Servicios relacionados:** 
+  [AWS Config](https://aws.amazon.com/config/) 
+  [AWS Organizations](https://aws.amazon.com/organizations/) 

# OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios
<a name="ops_ops_model_def_proc_owners"></a>

 Comprenda quién tiene la propiedad de la definición de los procesos y procedimientos individuales, por qué se utilizan esos procesos y procedimientos específicos, y por qué existe esa propiedad. Comprender las razones por las que se utilizan procesos y procedimientos específicos permite identificar las oportunidades de mejora. 

 **Beneficios de establecer esta práctica recomendada:** comprender la propiedad identifica quién puede aprobar las mejoras, aplicarlas o ambas cosas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Los procesos y procedimientos tienen propietarios identificados responsables de su definición: registre los procesos y procedimientos utilizados en su entorno y la persona o equipo responsable de la definición de estos. 
  +  Identificar los procesos y procedimientos: identifique las actividades operativas realizadas en apoyo de sus cargas de trabajo. Documente estas actividades en un lugar accesible. 
  +  Definir a quién corresponde la definición de un proceso o procedimiento: identifique de forma exclusiva a la persona o equipo responsable de la especificación de una actividad. Son responsables de garantizar que un miembro del equipo con la debida capacitación y con los permisos, el acceso y las herramientas correctas pueda realizarlo con éxito. Si hay problemas con la realización de la actividad, los miembros del equipo que la llevan a cabo son responsables de proporcionar la información detallada necesaria para mejorar la actividad. 
  +  Capture la propiedad en los metadatos del artefacto de actividad: los procedimientos automatizados en servicios como AWS Systems Manager, a través de documentos, y AWS Lambda, como funciones, admiten la captura de información de metadatos como etiquetas. Capture la propiedad de los recursos mediante etiquetas o grupos de recursos, especificando la propiedad y la información de contacto. Utilice AWS Organizations para crear políticas de etiquetas y asegurar que se captura la información de contacto y de propiedad. 

# OPS02-BP03 Las actividades operativas han identificado a los propietarios responsables de su rendimiento
<a name="ops_ops_model_def_activity_owners"></a>

 Comprenda quién tiene la responsabilidad de realizar actividades específicas en las cargas de trabajo definidas y por qué existe esa responsabilidad. Comprender quién tiene la responsabilidad de realizar las actividades sirve para saber quién llevará a cabo la actividad, validará el resultado y proporcionará información al propietario de la actividad. 

 **Beneficios de establecer esta práctica recomendada:** Comprender quién es el responsable de realizar una actividad permite saber a quién hay que notificar cuando se necesita una acción y quién realizará la acción, validará el resultado y proporcionará información al propietario de la actividad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Las actividades operativas tienen propietarios identificados como responsables de su realización: capture la responsabilidad de realizar los procesos y procedimientos utilizados en su entorno 
  +  Identificar los procesos y procedimientos: identifique las actividades operativas realizadas en apoyo de sus cargas de trabajo. Documente estas actividades en un lugar accesible. 
  +  Defina quién es el responsable de realizar cada actividad: identifique al equipo responsable de una actividad. Asegúrese de que disponen de los detalles de la actividad, así como de las habilidades necesarias y de los permisos, accesos y herramientas correctos para realizar la actividad. Deben entender la condición en la que se va a realizar (por ejemplo, en un evento o en una programación). Haga que esta información sea detectable para que los miembros de su organización puedan identificar con quién necesitan ponerse en contacto, ya sea un equipo o una persona, para necesidades específicas. 

# OPS02-BP04 Los miembros del equipo saben de qué son responsables
<a name="ops_ops_model_know_my_job"></a>

 Comprender las responsabilidades de su rol y cómo contribuye a los resultados de la empresa sirve para priorizar sus tareas y saber por qué su rol es importante. Esto permite a los miembros del equipo reconocer las necesidades y responder adecuadamente. 

 **Beneficios de establecer esta práctica recomendada:** comprender las responsabilidades sirve a la hora de tomar decisiones, emprender acciones y entregar las actividades a sus propietarios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Asegurarse de que los miembros del equipo conocen sus roles y responsabilidades: identifique los roles y responsabilidades de los miembros del equipo y asegúrese de que comprenden las expectativas de su rol. Haga que esta información sea detectable para que los miembros de su organización puedan identificar con quién necesitan ponerse en contacto, ya sea un equipo o una persona, para necesidades específicas. 

# OPS02-BP05 Existen mecanismos para identificar la responsabilidad y la propiedad
<a name="ops_ops_model_find_owner"></a>

 Cuando no se identifica a ninguna persona o equipo, existen vías de derivación definidas para llegar a alguien con autoridad para asignar la propiedad o planificar que se aborde esa necesidad. 

 **Beneficios de establecer esta práctica recomendada:** Comprender quién tiene la responsabilidad o la propiedad le permite dirigirse al equipo o al miembro del equipo adecuado para hacer una solicitud o una transición de una tarea. Tener una persona identificada que tenga la autoridad para asignar la responsabilidad, la propiedad o el plan para abordar las necesidades reduce el riesgo de inacción y de que las necesidades no se resuelvan. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Existen mecanismos para identificar la responsabilidad y la propiedad: proporcione mecanismos accesibles para que los miembros de su organización descubran e identifiquen la propiedad y la responsabilidad. Estos mecanismos les permitirán identificar a quién dirigirse, ya sea un equipo o una persona, para necesidades específicas. 

# OPS02-BP06 Existen mecanismos para solicitar adiciones, cambios y excepciones
<a name="ops_ops_model_req_add_chg_exception"></a>

Puede realizar solicitudes a los propietarios de los procesos, procedimientos y recursos. Las solicitudes incluyen adiciones, cambios y excepciones. Estas solicitudes pasan por un proceso de administración de cambios. Tome decisiones fundamentadas para aprobar las solicitudes cuando sean viables y se determine que son adecuadas tras una evaluación de los beneficios y los riesgos. 

 **Resultado deseado:** 
+  Puede realizar solicitudes para cambiar procesos, procedimientos y recursos en función de la propiedad asignada. 
+  Los cambios se realizan de forma deliberada, valorando las ventajas y los riesgos. 

 **Patrones comunes de uso no recomendados:** 
+  Debe actualizar la forma de desplegar su aplicación, pero no hay forma de solicitar un cambio en el proceso de despliegue al equipo de operaciones. 
+  El plan de recuperación de desastres debe actualizarse, pero no hay ningún propietario identificado al que solicitar cambios. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Los procesos, los procedimientos y los recursos pueden evolucionar a medida que cambian los requisitos. 
+  Los propietarios pueden tomar decisiones informadas sobre el momento de realizar cambios. 
+  Los cambios se realizan de forma deliberada. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Para implementar esta práctica recomendada, debe poder solicitar cambios en los procesos, los procedimientos y los recursos. El proceso de administración de los cambios puede ser ligero. Documente el proceso de administración de cambios. 

 **Ejemplo de cliente** 

 AnyCompany Retail utiliza una matriz de asignación de responsabilidades (RACI) para identificar a quién corresponden los cambios en los procesos, los procedimientos y los recursos. Disponen de un proceso de administración de cambios documentado, ligero y fácil de seguir. Con la matriz RACI y el proceso, cualquiera puede enviar solicitudes de cambio. 

 **Pasos para la implementación** 

1.  Identifique los procesos, los procedimientos y los recursos de su carga de trabajo y los responsables de cada uno de ellos. Documéntelos en su sistema de administración de conocimientos. 

   1.  Si no ha implementado [OPS02-BP01 Los recursos han identificado a los propietarios](ops_ops_model_def_resource_owners.md), [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md) o [OPS02-BP03 Las actividades operativas han identificado a los propietarios responsables de su rendimiento](ops_ops_model_def_activity_owners.md), empiece con ellos en primer lugar. 

1.  Colabore con las partes interesadas de su organización para desarrollar un proceso de administración de cambios. El proceso debe abarcar las incorporaciones, los cambios y las excepciones de recursos, procesos y procedimientos. 

   1.  Puede utilizar el [Administrador de cambios de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/change-manager.html) como plataforma de administración de cambios para los recursos de carga de trabajo. 

1.  Documente el proceso de administración de cambios en su sistema de administración de conocimientos. 

 **Nivel de esfuerzo para el plan de implementación:** medio. El desarrollo de un proceso de administración de cambios requiere la coordinación con las múltiples partes interesadas de toda la organización. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS02-BP01 Los recursos han identificado a los propietarios](ops_ops_model_def_resource_owners.md): es necesario identificar a los propietarios de los recursos antes de crear un proceso de administración de cambios. 
+  [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md): es necesario identificar a los propietarios de los procesos antes de crear un proceso de administración de cambios. 
+  [OPS02-BP03 Las actividades operativas han identificado a los propietarios responsables de su rendimiento](ops_ops_model_def_activity_owners.md): es necesario identificar a los propietarios de las actividades de operaciones antes de crear un proceso de administración de cambios. 

 **Documentos relacionados:** 
+ [ Recomendaciones de AWS - Guía de estrategias básicas de migraciones grandes de AWS: creación de matrices RACI ](https://docs.aws.amazon.com/prescriptive-guidance/latest/large-migration-foundation-playbook/team-org.html#raci)
+ [Documento técnico Administración de cambios en la nube](https://docs.aws.amazon.com/whitepapers/latest/change-management-in-the-cloud/change-management-in-the-cloud.html)

 **Servicios relacionados:** 
+ [Administrador de cambios de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/change-manager.html)

# OPS02-BP07 Las responsabilidades entre los equipos están predefinidas o negociadas
<a name="ops_ops_model_def_neg_team_agreements"></a>

Posibilite que se definan o negocien acuerdos entre equipos que describan cómo trabajan y se apoyan mutuamente (por ejemplo, tiempos de respuesta, objetivos de nivel de servicio o acuerdos de nivel de servicio). Los canales de comunicación entre equipos están documentados. Comprender el impacto del trabajo de los equipos en los resultados de la empresa y los resultados de otros equipos y organizaciones fundamenta la priorización de sus tareas y contribuye a que respondan adecuadamente. 

 Cuando la responsabilidad y la propiedad no están definidas o se desconocen, se corre el riesgo de que no se aborden las actividades necesarias a tiempo y de que se hagan esfuerzos repetidos y potencialmente conflictivos para satisfacer esas necesidades. 

 **Resultado deseado:** 
+  Se acuerdan y documentan los acuerdos de trabajo o asistencia entre equipos. 
+  Los equipos que se prestan asistencia o colaboran entre sí tienen definidos los canales de comunicación y las expectativas de respuesta. 

 **Patrones comunes de uso no recomendados:** 
+  Se produce un problema en producción y dos equipos distintos empiezan a solucionar los problemas independientemente el uno del otro. Sus esfuerzos aislados prolongan la interrupción. 
+  El equipo de operaciones necesita ayuda del equipo de desarrollo pero no hay un tiempo de respuesta acordado. La solicitud está atascada en la lista de tareas pendientes. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Los equipos saben cómo interactuar y prestarse asistencia mutua. 
+  Se conocen las expectativas de capacidad de respuesta. 
+  Los canales de comunicación están claramente definidos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La implementación de esta práctica recomendada significa que no existe ninguna ambigüedad sobre cómo colaboran los equipos. Los acuerdos formales codifican la forma en que los equipos trabajan juntos o se prestan asistencia mutua. Los canales de comunicación entre equipos están documentados. 

 **Ejemplo de cliente** 

 El equipo de SRE de AnyCompany Retail tiene un acuerdo de nivel de servicio con su equipo de desarrollo. Cada vez que el equipo de desarrollo realiza una solicitud en su sistema de tickets, puede esperar una respuesta en quince minutos. Si se produce una interrupción en el sitio, el equipo de SRE toma la iniciativa en la investigación con la ayuda del equipo de desarrollo. 

 **Pasos para la implementación** 

1.  En colaboración con las partes interesadas de toda su organización, desarrolle acuerdos entre los equipos basados en procesos y procedimientos. 

   1.  Si dos equipos comparten un proceso o un procedimiento, elabore un runbook sobre cómo colaborarán. 

   1.  Si existen dependencias entre los equipos, acuerde un SLA de respuesta para las solicitudes. 

1.  Documente las responsabilidades en su sistema de administración de conocimientos. 

 **Nivel de esfuerzo para el plan de implementación:** medio. Si no existen acuerdos entre los equipos, puede resultar difícil llegar a un acuerdo con las partes interesadas de toda la organización. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md): es necesario identificar la propiedad del proceso antes de establecer acuerdos entre los equipos. 
+  [OPS02-BP03 Las actividades operativas han identificado a los propietarios responsables de su rendimiento](ops_ops_model_def_activity_owners.md): es necesario identificar la propiedad de las actividades de operaciones antes de establecer acuerdos entre los equipos. 

 **Documentos relacionados:** 
+ [AWS Executive Insights: potenciar la innovación con el equipo de dos pizzas ](https://aws.amazon.com/executive-insights/content/amazon-two-pizza-team/)
+ [ Introducción a DevOps en AWS: equipos de dos pizzas ](https://docs.aws.amazon.com/whitepapers/latest/introduction-devops-aws/two-pizza-teams.html)

# OPS 3 ¿Cómo ayuda la cultura de su organización a lograr los resultados empresariales?
<a name="ops-03"></a>

 Preste ayuda a los miembros de su equipo para que puedan ser más eficaces a la hora de actuar y respaldar el resultado empresarial. 

**Topics**
+ [OPS03-BP01 Respaldo del área ejecutiva](ops_org_culture_executive_sponsor.md)
+ [OPS03-BP02 Los miembros del equipo están capacitados para actuar cuando los resultados están en riesgo](ops_org_culture_team_emp_take_action.md)
+ [OPS03-BP03 Se fomenta el traslado a una instancia superior](ops_org_culture_team_enc_escalation.md)
+ [OPS03-BP04 Las comunicaciones son oportunas, claras y procesables](ops_org_culture_effective_comms.md)
+ [OPS03-BP05 Se fomenta la experimentación](ops_org_culture_team_enc_experiment.md)
+ [OPS03-BP06 Los miembros del equipo están capacitados y se les anima a mantener y aumentar sus habilidades](ops_org_culture_team_enc_learn.md)
+ [OPS03-BP07 Dotar a los equipos de los recursos adecuados](ops_org_culture_team_res_appro.md)
+ [OPS03-BP08 Se fomenta y se busca la diversidad de opiniones en los equipos y entre ellos](ops_org_culture_diverse_inc_access.md)

# OPS03-BP01 Respaldo del área ejecutiva
<a name="ops_org_culture_executive_sponsor"></a>

 Los directivos establecen de forma clara las expectativas de la organización y evalúan el éxito. Los directivos son los patrocinadores, defensores e impulsores de la adopción de las prácticas recomendadas y de la evolución de la organización 

 **Beneficios de establecer esta práctica recomendada:** directivos comprometidos, expectativas comunicadas con claridad y objetivos compartidos garantizan que los miembros del equipo sepan lo que se espera de ellos. La evaluación del éxito permite identificar los obstáculos que lo impiden para que se puedan abordar mediante la intervención del promotor del respaldo o de sus delegados. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Respaldo del área ejecutiva: los directivos establecen de forma clara las expectativas de la organización y evalúan el éxito. Los directivos son los patrocinadores, defensores e impulsores de la adopción de las prácticas recomendadas y de la evolución de la organización 
  +  Establezca las expectativas: defina y publique los objetivos de su organización, incluida la forma en que se medirán. 
  +  Haga un seguimiento de la consecución de los objetivos: mida la consecución incremental de los objetivos con regularidad y comparta los resultados para poder adoptar las medidas adecuadas si los resultados están en peligro. 
  +  Proporcione los recursos necesarios para alcanzar sus objetivos: revise periódicamente si los recursos siguen siendo adecuados o si son necesarios recursos adicionales en función de nueva información, cambios en los objetivos, responsabilidades o el entorno empresarial. 
  +  Apoye a sus equipos: manténgase en contacto con sus equipos para entender cómo lo están haciendo y si hay factores externos que les afecten. Cuando sus equipos se vean afectados por factores externos, vuelva a evaluar los objetivos y ajústelos según convenga. Identifique los obstáculos que impiden el progreso de su equipo. Actúe en nombre de sus equipos para resolver los obstáculos y eliminar las cargas innecesarias. 
  +  Sea un impulsor de la adopción de las prácticas recomendadas: confirme las prácticas recomendadas que han proporcionado beneficios cuantificables y exprese su reconocimiento a los creadores y a los que las han adoptado. Fomente una mayor adopción para magnificar los beneficios conseguidos. 
  +  Sea impulsor de la evolución de sus equipos: cree una cultura de mejora continua. Fomente el crecimiento y el desarrollo tanto personal como de la organización. Proporcione objetivos a largo plazo a los que aspirar y que requieran una consecución incremental a lo largo del tiempo. Ajuste esta visión para que se adapte a sus necesidades, a los objetivos empresariales y al entorno empresarial a medida que vayan cambiando. 

# OPS03-BP02 Los miembros del equipo están capacitados para actuar cuando los resultados están en riesgo
<a name="ops_org_culture_team_emp_take_action"></a>

 El propietario de la carga de trabajo ha definido la orientación y el alcance facultando a los miembros del equipo a responder cuando los resultados están en riesgo. Los mecanismos de derivación se utilizan para obtener indicaciones cuando los eventos están fuera del ámbito definido. 

 **Beneficios de establecer esta práctica recomendada:** al hacer pruebas y validar los cambios con antelación, podrá abordar los problemas con mínimos costes y limitar el impacto en sus clientes. Cuando se hacen pruebas antes del despliegue, se minimizan los errores. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Los miembros del equipo están capacitados para actuar cuando los resultados están en riesgo: proporcione a los miembros de su equipo los permisos, las herramientas y la oportunidad de practicar las habilidades necesarias para responder con eficacia. 
  +  Proporcionar a los miembros de su equipo la oportunidad de practicar las habilidades necesarias para responder: ofrezca entornos alternativos seguros en los que se puedan probar y entrenar los procesos y procedimientos de forma segura. Realice jornadas de juego para que los miembros del equipo adquieran experiencia en la respuesta a incidentes del mundo real en entornos simulados y seguros. 
  +  Definir y reconocer la autoridad de los miembros del equipo para actuar: defina específicamente la autoridad de los miembros del equipo para actuar asignando permisos y acceso a las cargas de trabajo y los componentes que soportan. Reconozca que están facultados para actuar cuando los resultados están en riesgo. 

# OPS03-BP03 Se fomenta el traslado a una instancia superior
<a name="ops_org_culture_team_enc_escalation"></a>

 Los miembros del equipo disponen de mecanismos y se les anima a trasladar sus preocupaciones a los responsables de la toma de decisiones y a las partes interesadas si creen que los resultados están en peligro. El traslado a una instancia superior debe realizarse de forma temprana y frecuente para poder identificar los riesgos y evitar que provoquen incidentes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Fomente el traslado a una instancia superior de forma temprana y frecuente: reconozca en el nivel de organización que dicho traslado temprano y frecuente es la práctica recomendada. Reconozca y acepte en el nivel de organización que los traslados pueden ser infundados y que es mejor tener la oportunidad de prevenir un incidente que perder esa oportunidad por no haber hecho el traslado. 
  +  Disponga de un mecanismo de traslado a un nivel superior: disponga de procedimientos documentados que definan cuándo y cómo debe producirse el traslado. Documente la serie de personas con autoridad en orden ascendente para tomar medidas o aprobar acciones y su información de contacto. El traslado debe continuar hasta que el miembro del equipo esté satisfecho de haber trasladado el riesgo a una persona capaz de abordarlo o haya contactado con la persona a la que pertenece el riesgo y la responsabilidad del funcionamiento de la carga de trabajo. Es esa persona la que en última instancia es propietaria de todas las decisiones con respecto a su carga de trabajo. Los traslados deben incluir la naturaleza del riesgo, la criticidad de la carga de trabajo, quién se ve afectado, cuál es el impacto y la urgencia, es decir, cuándo se espera el impacto. 
  +  Proteja a los empleados que hacen el traslado a un nivel superior: disponga de una política que proteja a los miembros del equipo de las represalias si realizan el traslado con respecto a un responsable de la toma de decisiones o a una parte interesada que no dé respuesta. Disponga de mecanismos para identificar si esto ocurre y responder de forma adecuada. 

# OPS03-BP04 Las comunicaciones son oportunas, claras y procesables
<a name="ops_org_culture_effective_comms"></a>

 Existen y se utilizan mecanismos para avisar a tiempo a los miembros del equipo de los riesgos conocidos y de los eventos planificados. Se proporcionan el contexto, los detalles y el tiempo necesarios (cuando sea posible) para respaldar la determinación de si la acción es necesaria, qué acción se requiere y para tomar medidas de manera oportuna. Por ejemplo, avisar de las vulnerabilidades de software para que se puedan acelerar las revisiones o avisar de las promociones de ventas previstas para que se pueda implementar una congelación de cambios a fin de evitar el riesgo de interrupción del servicio. Los eventos planificados pueden registrarse en un calendario de cambios o de mantenimiento para que los miembros del equipo conozcan las actividades pendientes. 

 **Resultado deseado:** 
+  Las comunicaciones proporcionan contexto, detalles y expectativas de tiempo. 
+  Los miembros del equipo entienden claramente cuándo y cómo actuar en respuesta a las comunicaciones. 
+  Aproveche los calendarios de cambios para avisar de los cambios previstos. 

 **Patrones comunes de uso no recomendados:** 
+  Varias veces por semana se produce una alerta que es un falso positivo. Silencia la notificación cada vez que se produce. 
+  Se le pide que realice un cambio en sus grupos de seguridad pero no se le da una expectativa de cuándo debería producirse. 
+  Recibe notificaciones constantes en el chat cuando los sistemas se escalan verticalmente pero no es necesaria ninguna acción. Evita el canal de chat y se pierde una notificación importante. 
+  Se realiza un cambio en la producción sin informar al equipo de operaciones. El cambio desencadena una alerta y se activa el equipo de guardia. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Su organización evita la fatiga por exceso de alertas. 
+  Los miembros del equipo pueden actuar con el contexto y las expectativas necesarias. 
+  Los cambios pueden realizarse durante los periodos de cambio, lo que reduce el riesgo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Para implementar esta práctica recomendada, debe colaborar con las partes interesadas de toda su organización para acordar unos estándares de comunicación. Dé a conocer esos estándares a su organización. Identifique y elimine las alertas que sean falsos positivos o que estén siempre activadas. Utilice calendarios de cambios para que los miembros del equipo sepan cuándo se pueden emprender acciones y qué actividades están pendientes. Verifique que las comunicaciones conlleven acciones claras con el contexto necesario. 

 **Ejemplo de cliente** 

 AnyCompany Retail utiliza el chat como principal medio de comunicación. Las alertas y otras informaciones se incluyen en canales específicos. Cuando alguien debe actuar, el resultado deseado se expone claramente y, en muchos casos, se le proporciona un runbook o una guía de estrategias para que lo utilice. Usa un calendario para programar los cambios importantes en los sistemas de producción. 

 **Pasos para la implementación** 

1.  Analice las alertas para detectar falsos positivos o alertas que se desencadenan continuamente. Elimínelas o modifíquelas para que se desencadenen cuando sea necesaria la intervención manual. Si se desencadena una alerta, proporcione un runbook o una guía de estrategias. 

   1.  Puede usar [Documentos de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html) para crear guías de estrategias y runbooks para las alertas. 

1.  Existen mecanismos para notificar los riesgos o los acontecimientos previstos de forma clara y procesable, con suficiente antelación para permitir las respuestas adecuadas. Utilice listas de correo electrónico o canales de chat para enviar notificaciones antes de los eventos previstos. 

   1.  [Amazon Q Developer in chat applications](https://docs.aws.amazon.com/chatbot/latest/adminguide/what-is.html) puede utilizarse para enviar alertas y responder a eventos desde la plataforma de mensajería de su organización. 

1.  Proporcionar una fuente de información accesible en la que se puedan consultar los actos programados. Proporcione notificaciones de eventos planificados desde el mismo sistema. 

   1.  El [calendario de cambios de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar.html) se puede utilizar para crear períodos en los que se pueden producir cambios. De este modo, se avisa a los miembros del equipo de que pueden realizar cambios con seguridad. 

1.  Supervise las notificaciones de vulnerabilidad y la información sobre revisiones para comprender las vulnerabilidades existentes y los riesgos potenciales asociados a los componentes de su carga de trabajo. Notifique a los miembros del equipo para que puedan actuar. 

   1.  Puede suscribirse a los [boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins/) para recibir notificaciones sobre vulnerabilidades en AWS. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS07-BP03 Uso de runbooks para realizar los procedimientos](ops_ready_to_support_use_runbooks.md): proporcione un runbook cuando se conozca el resultado para que las comunicaciones sean procesables. 
+  [OPS07-BP04 Usar guías de estrategias para investigar problemas](ops_ready_to_support_use_playbooks.md): en el caso de que se desconozca el resultado, las guías de estrategias pueden convertir las comunicaciones en procesables. 

 **Documentos relacionados:** 
+ [ Boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins)
+ [ OpenCVE ](https://www.opencve.io/welcome)

 **Ejemplos relacionados:** 
+ [Laboratorios de Well-Architected: administración de inventario y parches (nivel 100) ](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_inventory_patch_management/)

 **Servicios relacionados:** 
+ [Amazon Q Developer in chat applications](https://docs.aws.amazon.com/chatbot/latest/adminguide/what-is.html)
+ [Calendario de cambios de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar.html)
+ [Documentos de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html)

# OPS03-BP05 Se fomenta la experimentación
<a name="ops_org_culture_team_enc_experiment"></a>

La experimentación es un catalizador para convertir nuevas ideas en productos y características. Acelera el aprendizaje y mantiene a los miembros del equipo interesados y comprometidos. Se anima a los miembros del equipo a experimentar con frecuencia para impulsar la innovación. Incluso cuando se produce un resultado no deseado, tiene valor saber lo que no hay que hacer. No se castiga a los miembros del equipo por experimentos realizados correctamente con resultados no deseados. 

 **Resultado deseado:** 
+  Su organización fomenta la experimentación para impulsar la innovación. 
+  Los experimentos se utilizan como una oportunidad de aprender. 

 **Patrones comunes de uso no recomendados:** 
+  Desea realizar una prueba A/B pero no existe ningún mecanismo para llevar a cabo el experimento. Despliega un cambio en la interfaz de usuario sin poder probarlo. El resultado es una experiencia negativa para el cliente. 
+  Su empresa solo tiene un entorno de prueba y producción. No existe un entorno aislado para experimentar con nuevas características o productos, por lo que deberá experimentar en el entorno de producción. 

 **Beneficios de establecer esta práctica recomendada:** 
+  La experimentación impulsa la innovación. 
+  Puede reaccionar más rápidamente a los comentarios de los usuarios mediante la experimentación. 
+  Su organización desarrolla una cultura de aprendizaje. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los experimentos se deben realizar de forma segura. Utilice múltiples entornos para experimentar sin poner en peligro los recursos de producción. Utilice las pruebas A/B y las marcas de características para probar experimentos. Proporcione a los miembros del equipo la posibilidad de realizar experimentos en un entorno aislado. 

 **Ejemplo de cliente** 

 AnyCompany Retail fomenta la experimentación. Los miembros del equipo pueden utilizar el 20 % de su semana laboral para experimentar o aprender nuevas tecnologías. Disponen de un entorno aislado en el que pueden innovar. Las pruebas A/B se utilizan para las nuevas características con el fin de validarlas con comentarios de usuarios reales. 

 **Pasos para la implementación** 

1.  Colabore con los directivos de su organización para respaldar la experimentación. Se debe animar a los miembros del equipo a realizar los experimentos de forma segura. 

1.  Proporcione a los miembros del equipo un entorno en el que puedan experimentar con seguridad. Deben tener acceso a un entorno similar al de producción. 

   1.  Puede utilizar una Cuenta de AWS independiente para crear un entorno aislado de experimentación. Puede utilizar [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) para aprovisionar estas cuentas. 

1.  Utilice marcas de características y pruebas A/B para experimentar con seguridad y recopilar los comentarios de los usuarios. 

   1.  [AWS AppConfig Feature Flags](https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html) ofrece la posibilidad de crear marcas de características. 

   1.  [Amazon CloudWatch Evidently](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently.html) se puede usar para ejecutar pruebas A/B en un despliegue limitado. 

   1.  Puede utilizar las [versiones de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html) para desplegar una nueva versión de una función para pruebas beta. 

 **Nivel de esfuerzo para el plan de implementación:** alto. Proporcionar a los miembros del equipo un entorno en el que experimentar y una forma segura de llevar a cabo los experimentos puede requerir una inversión significativa. También es posible que deba modificar el código de la aplicación para utilizar las marcas de características o admitir pruebas A/B. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS11-BP02 Realizar un análisis después del incidente](ops_evolve_ops_perform_rca_process.md): aprender de los incidentes es un motor importante para la innovación junto con la experimentación. 
+  [OPS11-BP03 Implementar bucles de retroalimentación](ops_evolve_ops_feedback_loops.md): los bucles de comentarios son una parte importante de la experimentación. 

 **Documentos relacionados:** 
+ [ An Inside Look at the Amazon Culture: Experimentation, Failure, and Customer Obsession ](https://aws.amazon.com/blogs/industries/an-inside-look-at-the-amazon-culture-experimentation-failure-and-customer-obsession/)(Una mirada al interior de la cultura de Amazon: experimentación, error y obsesión por el cliente)
+ [ Best practices for creating and managing sandbox accounts in AWS](https://aws.amazon.com/blogs/mt/best-practices-creating-managing-sandbox-accounts-aws/)(Prácticas recomendadas para crear y administrar cuentas de entorno aislado en AWS)
+ [ Create a Culture of Experimentation Enabled by the Cloud ](https://aws.amazon.com/blogs/enterprise-strategy/create-a-culture-of-experimentation-enabled-by-the-cloud/)(Crear una cultura de experimentación facilitada por la nube)
+ [ Enabling experimentation and innovation in the cloud at SulAmérica Seguros ](https://aws.amazon.com/blogs/mt/enabling-experimentation-and-innovation-in-the-cloud-at-sulamerica-seguros/)(Facilitar la experimentación y la innovación en la nube en SulAmérica Seguros)
+ [ Experiment More, Fail Less ](https://aws.amazon.com/blogs/enterprise-strategy/experiment-more-fail-less/)(Experimentar más, fracasar menos)
+ [Organización de su entorno de AWS mediante varias cuentas: unidad organizativa de entorno aislado](https://docs.aws.amazon.com/whitepapers/latest/organizing-your-aws-environment/sandbox-ou.html)
+ [ Using AWS AppConfig Feature Flags ](https://aws.amazon.com/blogs/mt/using-aws-appconfig-feature-flags/)(Uso de AWS AppConfig Feature Flags)

 **Vídeos relacionados: ** 
+ [AWS On Air ft. Amazon CloudWatch Evidently \$1 AWS Events ](https://www.youtube.com/watch?v=ydX7lRNKAOo) (AWS On Air, presentación de Amazon CloudWatch Evidently \$1 Eventos de AWS)
+ [AWS On Air San Fran Summit 2022 ft. AWS AppConfig Feature Flags integration with Jira ](https://www.youtube.com/watch?v=miAkZPtjqHg)
+ [AWS re:Invent 2022 - A deployment is not a release: Control your launches w/feature flags (BOA305-R)](https://www.youtube.com/watch?v=uouw9QxVrE8) (AWS re:Invent 2022 - Un despliegue no es un lanzamiento: controle sus lanzamientos con marcas de características [BOA305-R])
+ [ Programmatically Create an Cuenta de AWS with AWS Control Tower](https://www.youtube.com/watch?v=LxxQTPdSFgw)(Crear mediante programación una Cuenta de AWS con AWS Control Tower)
+ [ Set Up a Multi-Account AWS Environment that Uses Best Practices for AWS Organizations](https://www.youtube.com/watch?v=uOrq8ZUuaAQ) (Configurar un entorno de AWS de varias cuentas que utilice las prácticas recomendadas para AWS Organizations)

 **Ejemplos relacionados:** 
+ [ Entorno aislado de innovación de AWS](https://aws.amazon.com/solutions/implementations/aws-innovation-sandbox/)
+ [ Fundamentos de la personalización integral para el comercio electrónico ](https://catalog.workshops.aws/personalize-101-ecommerce/en-US/labs/ab-testing)

 **Servicios relacionados:** 
+  [Amazon CloudWatch Evidently](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently.html) 
+  [AWS AppConfig](https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html) 
+  [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) 

# OPS03-BP06 Los miembros del equipo están capacitados y se les anima a mantener y aumentar sus habilidades
<a name="ops_org_culture_team_enc_learn"></a>

 Los equipos deben aumentar el conjunto de habilidades para adoptar nuevas tecnologías, y para apoyar los cambios en la demanda y las responsabilidades en apoyo de sus cargas de trabajo. El aumento de las competencias en las nuevas tecnologías suele ser una fuente de satisfacción para los miembros del equipo y apoya la innovación. Apoye a los miembros de su equipo para que obtengan y mantengan certificaciones del sector que validen y reconozcan sus crecientes habilidades. Realice una formación interdisciplinar para promover la transferencia de conocimientos y reducir el riesgo de que se produzca un impacto significativo cuando pierda a miembros del equipo cualificados y experimentados con conocimiento institucional. Proporcione un tiempo estructurado dedicado al aprendizaje. 

 AWS proporciona recursos, que incluyen el [Centro de recursos introductorios de AWS](https://aws.amazon.com/getting-started/), [Blogs de AWS](https://aws.amazon.com/blogs/), [Charla técnica en línea de AWS](https://aws.amazon.com/getting-started/), [Eventos y seminarios web de AWS](https://aws.amazon.com/events/)y [Laboratorios de Well-Architected de AWS](https://wellarchitectedlabs.com/), que proporcionan orientación, ejemplos y explicaciones detalladas para formar a sus equipos. 

 AWS también comparte los patrones y prácticas recomendadas que hemos aprendido a través del funcionamiento de AWS en [la Amazon Builders' Library](https://aws.amazon.com/builders-library/) y una gran variedad de material formativo útil a través del [Blog de AWS](https://aws.amazon.com/blogs/) y [Podcast oficial de AWS](https://aws.amazon.com/podcasts/aws-podcast/). 

 Debe aprovechar los recursos formativos que ofrece AWS como los laboratorios de Well-Architected, [AWS Support](https://aws.amazon.com/premiumsupport/programs/) ([Centro de conocimientos de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/), [Foros de discusión de AWS](https://forums.aws.amazon.com/index.jspa) y [Centro de AWS Support](https://console.aws.amazon.com/support/home/)) y [Documentación de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) para instruir a sus equipos Póngase en contacto con AWS Support a través del Centro de AWS Support para que le ayude con sus preguntas sobre AWS. 

 [Formación de AWS and Certification](https://aws.amazon.com/training/) ofrece una formación gratuita a través de cursos digitales autodidactas sobre los fundamentos de AWS. También puede inscribirse en una capacitación adicional dirigida por un instructor para apoyar el desarrollo de las habilidades de AWS de sus equipos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  A los miembros del equipo se les permite y se les anima a mantener y aumentar sus habilidades: Para adoptar nuevas tecnologías, apoyar la innovación y respaldar los cambios en la demanda y las responsabilidades en apoyo de sus cargas de trabajo es necesaria la formación continua. 
  +  Proporcionar recursos para la formación: proporcione tiempo estructurado dedicado, acceso a materiales de formación, recursos de laboratorio, y apoye la participación en conferencias y organizaciones profesionales que proporcionen oportunidades para aprender, tanto a los educadores como a los compañeros. Proporcione a los miembros del equipo sin experiencia acceso a los miembros del equipo experimentados como mentores o permitirles seguir su trabajo y acceder a sus métodos y habilidades. Fomente el aprendizaje de contenidos no relacionados directamente con el trabajo para tener una perspectiva más amplia. 
  +  Formación de equipos y compromiso entre equipos: planifique las necesidades de formación continua de los miembros de su equipo. Proporcione oportunidades para que los miembros del equipo se unan a otros equipos (temporal o permanentemente) para compartir habilidades y prácticas recomendadas que beneficien a toda la organización 
  +  Apoyar la obtención y el mantenimiento de las certificaciones del sector: apoye a los miembros de su equipo para que adquieran y mantengan certificaciones del sector que validen lo que han aprendido y reconozca sus logros. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de recursos introductorios de AWS](https://aws.amazon.com/getting-started/) 
+  [Blogs de AWS](https://aws.amazon.com/blogs/) 
+  [Conformidad de Nube de AWS](https://aws.amazon.com/compliance/) 
+  [Foros de discusión de AWS](https://forums.aws.amazon.com/index.jspa) 
+  [Documentación de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) 
+  [Charla técnica en línea de AWS](https://aws.amazon.com/getting-started/) 
+  [Eventos y seminarios web de AWS](https://aws.amazon.com/events/) 
+  [Centro de conocimientos de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 
+  [AWS Support](https://aws.amazon.com/premiumsupport/programs/) 
+  [Formación de AWS and Certification](https://aws.amazon.com/training/) 
+  [Laboratorios de Well-Architected de AWS](https://wellarchitectedlabs.com/), 
+  [la Amazon Builders' Library](https://aws.amazon.com/builders-library/) 
+  [Podcast oficial de AWS](https://aws.amazon.com/podcasts/aws-podcast/). 

# OPS03-BP07 Dotar a los equipos de los recursos adecuados
<a name="ops_org_culture_team_res_appro"></a>

 Mantenga la capacidad de los miembros del equipo y proporcione herramientas y recursos para apoyar sus necesidades de carga de trabajo. La sobrecarga de tareas de los miembros del equipo aumenta el riesgo de incidentes derivados de errores humanos. Las inversiones en herramientas y recursos (por ejemplo, aumentar las actividades frecuentes) pueden aumentar la eficacia de su equipo, lo que les permite admitir actividades adicionales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Dotar a los equipos de los recursos necesarios: asegúrese de conocer el éxito de sus equipos y los factores que contribuyen a su éxito o al fracaso. Actúe para proveer a los equipos de los recursos adecuados. 
  +  Comprender el rendimiento de los equipos: mida la consecución de resultados operativos y el desarrollo de recursos por parte de sus equipos. Siga los cambios en la producción y la tasa de error a lo largo del tiempo. Implíquese con los equipos para entender los retos relacionados con el trabajo que les afectan (por ejemplo, el aumento de las responsabilidades, los cambios en la tecnología, la pérdida de personal o el aumento de los clientes a los que se presta asistencia). 
  +  Comprender el impacto en el rendimiento del equipo: manténgase en contacto con sus equipos para entender cómo lo están haciendo y si hay factores externos que les afecten. Cuando sus equipos se vean afectados por factores externos, vuelva a evaluar los objetivos y ajústelos según convenga. Identifique los obstáculos que impiden el progreso de su equipo. Actúe en nombre de sus equipos para ayudar a resolver los obstáculos y eliminar las cargas innecesarias. 
  +  Proporcionar los recursos necesarios para que los equipos tengan éxito: revise periódicamente si los recursos siguen siendo adecuados o si se necesitan recursos adicionales, y haga los ajustes oportunos para apoyar a los equipos. 

# OPS03-BP08 Se fomenta y se busca la diversidad de opiniones en los equipos y entre ellos
<a name="ops_org_culture_diverse_inc_access"></a>

 Aproveche la diversidad en toda la organización para buscar múltiples perspectivas únicas. Utilice esta perspectiva para aumentar la innovación, cuestionar sus suposiciones y reducir el riesgo de caer en sesgos de confirmación. Fomente la inclusión, la diversidad y la accesibilidad en sus equipos para obtener perspectivas beneficiosas. 

 La cultura organizativa tiene un impacto directo en la satisfacción laboral y la retención de los miembros del equipo. Potencie el compromiso y las capacidades de los miembros de su equipo para lograr el éxito de su negocio. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Buscar opiniones y perspectivas diversas: fomente las contribuciones de todos. Dé voz a los grupos infrarrepresentados. Rote los roles y las responsabilidades en las reuniones. 
  +  Ampliar los roles y las responsabilidades: ofrezca a los miembros del equipo la oportunidad de asumir funciones que de otro modo no podrían desempeñar. Ganarán experiencia y perspectiva gracias al rol, y a las interacciones con nuevos miembros del equipo con los que, de otro modo, no podrían interactuar. Aportarán su experiencia y perspectiva al nuevo rol y a los miembros del equipo con los que interactúen. A medida que aumenta la perspectiva, pueden surgir nuevas oportunidades de negocio o identificarse nuevas oportunidades de mejora. Haga que los miembros de un equipo se turnen en tareas comunes que suelen realizar otros para comprender las exigencias y el impacto de su realización. 
  +  Proporcionar un entorno seguro y acogedor: disponga de una política y unos controles que protejan la seguridad mental y física de los miembros del equipo dentro de su organización. Los miembros del equipo deben poder interactuar sin miedo a las represalias. Cuando los miembros del equipo se sienten seguros y acogidos, es más probable que se comprometan y sean productivos. Cuanto más diversa sea su organización, mejor comprenderá a las personas a las que apoya, incluidos sus clientes. Cuando los miembros de su equipo están cómodos, se sienten libres para hablar y confían en que se les escuchará, es más probable que compartan ideas valiosas (por ejemplo, oportunidades de marketing, necesidades de accesibilidad, segmentos de mercado no atendidos, riesgos no reconocidos en su entorno). 
  +  Permitir que los miembros del equipo participen plenamente: proporcione los recursos necesarios para que sus empleados participen plenamente en todas las actividades relacionadas con el trabajo. Los miembros del equipo que se enfrentan a retos diarios han desarrollado habilidades para trabajar en torno a ellos. Estas habilidades desarrolladas de forma única pueden proporcionar un beneficio significativo a su organización. Apoyar a los miembros del equipo con las adaptaciones necesarias aumentará los beneficios que puede recibir de sus contribuciones. 

# Prepárese
<a name="a-prepare"></a>

**Topics**
+ [OPS 4 ¿Cómo diseña la carga de trabajo para poder comprender su estado?](ops-04.md)
+ [OPS 5 ¿Cómo reduce los defectos, facilita la reparación y mejora el flujo en la producción?](ops-05.md)
+ [OPS 6 ¿Cómo mitiga los riesgos de despliegue?](ops-06.md)
+ [OPS 7 ¿Cómo sabe que está listo para soportar una carga de trabajo?](ops-07.md)

# OPS 4 ¿Cómo diseña la carga de trabajo para poder comprender su estado?
<a name="ops-04"></a>

 Diseñe la carga de trabajo para que proporcione la información necesaria en todos los componentes (por ejemplo, métricas, registros y rastreos) para que pueda comprender el estado interno. Esto le permite proporcionar respuestas efectivas cuando sea apropiado. 

**Topics**
+ [OPS04-BP01 Implementar telemetría de aplicaciones](ops_telemetry_application_telemetry.md)
+ [OPS04-BP02 Implementar y configurar telemetría de cargas de trabajo](ops_telemetry_workload_telemetry.md)
+ [OPS04-BP03 Implementar telemetría de actividades de usuario](ops_telemetry_customer_telemetry.md)
+ [OPS04-BP04 Implementar telemetría de dependencias](ops_telemetry_dependency_telemetry.md)
+ [OPS04-BP05 Implementar trazabilidad de transacciones](ops_telemetry_dist_trace.md)

# OPS04-BP01 Implementar telemetría de aplicaciones
<a name="ops_telemetry_application_telemetry"></a>

 La telemetría de aplicaciones es la base de la observabilidad de su carga de trabajo. Su aplicación debe emitir telemetría que proporcione información sobre el estado de la aplicación y la consecución de resultados empresariales. Desde la resolución de problemas hasta la medición del impacto de una nueva característica, la telemetría de aplicaciones informa sobre la forma de crear, operar y hacer evolucionar su carga de trabajo. 

 La telemetría de aplicaciones consiste en métricas y registros. Las métricas son información de diagnóstico, como el pulso o la temperatura. Las métricas se utilizan colectivamente para describir el estado de su aplicación. La recopilación de métricas a lo largo del tiempo puede servir para desarrollar líneas de base y detectar anomalías. Los registros son mensajes que la aplicación envía sobre su estado interno o los eventos que se producen. Los códigos de error, los identificadores de transacción y las acciones del usuario son ejemplos de eventos que se registran. 

 **Resultado deseado:** 
+  Su aplicación emite métricas y registros que proporcionan información sobre su estado y la consecución de resultados empresariales. 
+  Las métricas y los registros se almacenan de forma centralizada para todas las aplicaciones de la carga de trabajo. 

 **Antipatrones usuales:** 
+  Su aplicación no emite telemetría. Se ve obligado a confiar en que sus clientes le digan cuando algo va mal. 
+  Un cliente ha informado de que su aplicación no responde. No tiene telemetría y no puede confirmar que el problema existe o caracterizarlo sin usar la aplicación por sí mismo para entender la experiencia actual del usuario. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Podrá conocer el estado de su aplicación, la experiencia del usuario y la consecución de los resultados empresariales. 
+  Puede reaccionar rápidamente a los cambios en el estado de su aplicación. 
+  Puede desarrollar tendencias de estado de la aplicación. 
+  Puede tomar decisiones fundamentadas sobre la mejora de su aplicación. 
+  Puede detectar y resolver los problemas de la aplicación más rápidamente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La implementación de la telemetría de aplicaciones consta de tres pasos: identificar una ubicación para almacenar la telemetría, identificar la telemetría que describe el estado de la aplicación e instrumentar la aplicación para que emita telemetría. 

 **Ejemplo de cliente** 

AnyCompany Retail tiene una arquitectura basada en microservicios. Como parte de su proceso de diseño arquitectónico, identificó la telemetría de aplicaciones que le ayudaría a comprender el estado de cada microservicio. Por ejemplo, el servicio de carro de usuario emite telemetría sobre eventos como añadir al carro, abandonar el carro y el tiempo que se tarda en añadir un artículo al carro. Todos los microservicios registran los errores, las advertencias y la información sobre las transacciones. La telemetría se envía a Amazon CloudWatch para su almacenamiento y análisis. 

 **Pasos para la implementación** 

1.  Identificar una ubicación central para el almacenamiento de telemetría para las aplicaciones de su carga de trabajo. La ubicación debe admitir tanto la recopilación de telemetría como la capacidad de análisis. La detección de anomalías y la información automatizada son características recomendables. 

   1.  [Amazon CloudWatch](https://aws.amazon.com/cloudwatch) ofrece funciones de recopilación de telemetría, paneles, análisis y generación de eventos. 

1.  Para identificar qué telemetría necesita, empiece por responder a esta pregunta: ¿cuál es el estado de mi aplicación? Su aplicación debe emitir registros y métricas que respondan colectivamente a esta pregunta. Si no puede responder a las preguntas con la telemetría de aplicaciones existente, colabore con las partes interesadas de la empresa e ingeniería para crear una lista de requisitos de telemetría. 

   1.  Puede solicitar el asesoramiento técnico de su equipo de Cuenta de AWS para identificar y desarrollar una nueva telemetría de aplicaciones. 

1.  Una vez identificada la telemetría de aplicaciones adicional, colabore con las partes interesadas de ingeniería para instrumentar su aplicación. 

   1.  [AWS Distro for Open Telemetry](https://aws-otel.github.io/) proporciona API, bibliotecas y agentes que recopilan la telemetría de aplicaciones. [En este ejemplo se muestra cómo instrumentar una aplicación JavaScript con métricas personalizadas](https://aws-otel.github.io/docs/getting-started/js-sdk/metric-manual-instr). 

   1.  Si desea conocer los servicios de observabilidad que AWS ofrece, realice el taller [One Observability Workshop](https://catalog.workshops.aws/observability/en-US) o solicite asistencia a su equipo de Cuenta de AWS. 

   1.  Para profundizar en la telemetría de aplicaciones, lea el artículo [Instrumenting distributed systems for operational visibility](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) (Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones) en Amazon Builder’s Library, donde se explica cómo Amazon instrumenta las aplicaciones y puede servir de guía para desarrollar sus propias directrices de instrumentación. 

 **Nivel de esfuerzo para el plan de implementación:** alto. Instrumentar su aplicación y centralizar el almacenamiento de telemetría puede requerir una inversión significativa. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 

[OPS04-BP02 Implementar y configurar telemetría de cargas de trabajo](ops_telemetry_workload_telemetry.md) – La telemetría de aplicaciones es un componente de la telemetría de la carga de trabajo. Para entender el estado de la carga de trabajo global es necesario entender el estado de las aplicaciones individuales que componen la carga de trabajo. 

[OPS04-BP03 Implementar telemetría de actividades de usuario](ops_telemetry_customer_telemetry.md) – La telemetría de la actividad del usuario suele ser un subconjunto de la telemetría de aplicaciones. La actividad de los usuarios, como los eventos de añadir al carrito, los flujos de clics o las transacciones completadas, proporcionan información sobre la experiencia del usuario. 

[OPS04-BP04 Implementar telemetría de dependencias](ops_telemetry_dependency_telemetry.md) – Las comprobaciones de dependencia están relacionadas con la telemetría de aplicaciones y pueden instrumentarse en su aplicación. Si su aplicación está sujeta a dependencias externas como DNS o una base de datos, su aplicación puede emitir métricas y registros sobre la accesibilidad, los tiempos de espera y otros eventos. 

[OPS04-BP05 Implementar trazabilidad de transacciones](ops_telemetry_dist_trace.md) – El seguimiento de las transacciones en una carga de trabajo requiere que cada aplicación emita información sobre cómo procesa los eventos compartidos. La forma en que las aplicaciones individuales gestionan estos eventos se emite a través de su telemetría de aplicaciones. 

[OPS08-BP02 Definir las métricas de las cargas de trabajo](ops_workload_health_design_workload_metrics.md) – Las métricas de la carga de trabajo son los indicadores clave del estado de la carga de trabajo. Las métricas clave de la aplicación forman parte de las métricas de la carga de trabajo. 

 **Documentos relacionados:** 
+  [AWS Builders Library: Instrumenting Distributed Systems for Operational Visibility](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) (AWS Builders Library: instrumentación de los sistemas distribuidos para la visibilidad de las operaciones) 
+  [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) 
+  [Documento técnico de excelencia operativa de AWS Well-Architected: diseñar telemetría](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/design-telemetry.html) 
+  [Creación de métricas a partir de eventos de registro mediante filtros](https://docs.aws.amazon.com/Amazon/latest/logs/MonitoringLogData.html) 
+  [Implementación del registro y la supervisión con Amazon CloudWatch](https://docs.aws.amazon.com/prescriptive-guidance/latest/implementing-logging-monitoring-cloudwatch/welcome.html) 
+  [Monitoring application health and performance with AWS Distro for OpenTelemetry](https://aws.amazon.com/blogs/opensource/monitoring-application-health-and-performance-with-aws-distro-for-opentelemetry/) (Supervisión del estado y el rendimiento de las aplicaciones con AWS Distro for OpenTelemetry) 
+  [New – How to better monitor your custom application metrics using Amazon CloudWatch Agent](https://aws.amazon.com/blogs/devops/new-how-to-better-monitor-your-custom-application-metrics-using-amazon-cloudwatch-agent/) (Nuevo - Cómo supervisar mejor las métricas de su aplicación personalizada utilizando el agente de Amazon CloudWatch 
+  [Observability at AWS](https://aws.amazon.com/products/management-and-governance/use-cases/monitoring-and-observability/) (Observabilidad en AWS) 
+  [Scenario – Publish metrics to CloudWatch](https://docs.aws.amazon.com/Amazon/latest/monitoring/PublishMetrics.html) (Escenario: publicar métricas en CloudWatch) 
+  [Start Building – How to Monitor your Applications Effectively](https://aws.amazon.com/startups/start-building/how-to-monitor-applications/) (Empezar a crear: cómo supervisar aplicaciones eficazmente)5 
+  [Using CloudWatch with an AWS SDK](https://docs.aws.amazon.com/Amazon/latest/monitoring/sdk-general-information-section.html) (Uso de CloudWatch con un SDK de AWS) 

 **Vídeos relacionados: ** 
+  [AWS re:Invent 2021 - Observability the open-source way](https://www.youtube.com/watch?v=vAnIhIwE5hY) (Observabilidad con código abierto) 
+  [Collect Metrics and Logs from Amazon EC2 instances with the CloudWatch Agent](https://www.youtube.com/watch?v=vAnIhIwE5hY) (Recopilar métricas y registros de instancias de Amazon EC2 con el agente de CloudWatch) 
+  [How to Easily Setup Application Monitoring for Your AWS Workloads - AWS Online Tech Talks](https://www.youtube.com/watch?v=LKCth30RqnA) (Cómo configurar fácilmente la supervisión de aplicaciones para sus cargas de trabajo de AWS: charlas técnicas en línea de AWS) 
+  [Mastering Observability of Your Serverless Applications - AWS Online Tech Talks](https://www.youtube.com/watch?v=CtsiXhiAUq8) (Dominar la observabilidad de sus aplicaciones sin servidor: charlas técnicas en línea de AWS) 
+  [Open Source Observability with AWS - AWS Virtual Workshop](https://www.youtube.com/watch?v=vAnIhIwE5hY) (Observabilidad de código abierto con AWS: taller virtual de AWS) 

 **Ejemplos relacionados:** 
+  [Ejemplo de recursos de registro y supervisión de AWS](https://github.com/aws-samples/logging-monitoring-apg-guide-examples) 
+  [Solución de AWS: marco de supervisión de Amazon CloudWatch](https://aws.amazon.com/solutions/implementations/amazon-cloudwatch-monitoring-framework/?did=sl_card&trk=sl_card) 
+  [Solución de AWS: registro centralizado](https://aws.amazon.com/solutions/implementations/centralized-logging/) 
+  [Taller sobre observabilidad](https://catalog.workshops.aws/observability/en-US) 

 **Servicios relacionados:** 
+ [ Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)

# OPS04-BP02 Implementar y configurar telemetría de cargas de trabajo
<a name="ops_telemetry_workload_telemetry"></a>

 Diseñe y configure la carga de trabajo para que emita información sobre su estado interno y su situación actual, por ejemplo, el volumen de llamadas a la API, los códigos de estado HTTP y los eventos de escalado. Utilice esta información para determinar cuándo se requiere una respuesta. 

 Utilice un servicio como [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) para agregar registros y métricas de los componentes de la carga de trabajo (por ejemplo, los registros de la API de [AWS CloudTrail](https://aws.amazon.com/cloudtrail/), [métricas de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-monitoring.html), [registros de flujo de Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) y [otros servicios](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/aws-services-sending-logs.html)). 

 **Patrones de uso no recomendados comunes:** 
+  Sus clientes se quejan del bajo rendimiento. No hay cambios recientes en su aplicación y por eso sospecha que hay un problema con un componente de la carga de trabajo. No tiene telemetría que analizar para determinar qué componente o componentes son los que están contribuyendo al bajo rendimiento. 
+  Su aplicación no está disponible. Le falta la telemetría para determinar si es un problema de red. 

 **Beneficios de establecer esta práctica recomendada:** entender lo que ocurre dentro de su carga de trabajo le permite responder en caso necesario. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implementar la telemetría de registros y métricas: agregue instrumentación a su carga de trabajo para emitir información sobre su estado interno, situación y el logro de resultados comerciales. Utilice esta información para determinar cuándo se requiere una respuesta. 
  +  [Obtener una mejor observación de sus máquinas virtuales con Amazon CloudWatch: charlas técnicas en línea de AWS](https://youtu.be/1Ck_me4azMw) 
  +  [Cómo funciona Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_architecture.html) 
  +  [¿Qué es Amazon CloudWatch?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
  +  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 
  +  [¿Qué es Amazon CloudWatch Logs?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) 
    +  Implementar y configurar telemetría de carga de trabajo: diseñe y configure la carga de trabajo para que emita información sobre su estado interno y su situación actual (por ejemplo, el volumen de llamadas a la API, los códigos de estado HTTP y los eventos de escalado). 
      +  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 
      +  [AWS CloudTrail](https://aws.amazon.com/cloudtrail/) 
      +  [¿Qué es AWS CloudTrail?](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 
      +  [Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS CloudTrail](https://aws.amazon.com/cloudtrail/) 
+  [Documentación de Amazon CloudWatch](https://docs.aws.amazon.com/cloudwatch/index.html) 
+  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 
+  [Cómo funciona Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_architecture.html) 
+  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 
+  [Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 
+  [¿Qué es AWS CloudTrail?](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 
+  [¿Qué es Amazon CloudWatch Logs?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) 
+  [¿Qué es Amazon CloudWatch?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 

 **Vídeos relacionados:** 
+  [Administración del rendimiento de las aplicaciones en AWS](https://www.youtube.com/watch?v=5T4stR-HFas) 
+  [Obtener una mejor observación de sus máquinas virtuales con Amazon CloudWatch](https://youtu.be/1Ck_me4azMw) 
+  [Obtener una mejor observación de sus máquinas virtuales con Amazon CloudWatch: charlas técnicas en línea de AWS](https://youtu.be/1Ck_me4azMw) 

# OPS04-BP03 Implementar telemetría de actividades de usuario
<a name="ops_telemetry_customer_telemetry"></a>

Agregue instrumentación al código de aplicación para emitir información sobre la actividad de los usuarios. Entre los ejemplos actividad de usuario se incluyen secuencias de clics o transacciones iniciadas, abandonadas y completadas. Utilice esta información para comprender cómo se utiliza la aplicación, los patrones de uso y para determinar cuándo se requiere una respuesta. La captura de la actividad real de los usuarios le permite crear una actividad sintética que se puede utilizar para supervisar y probar su carga de trabajo en producción.

 **Resultado deseado:** 
+  Su carga de trabajo emite telemetría sobre la actividad del usuario en todas las aplicaciones. 
+  Aprovecha la actividad sintética de los usuarios para supervisar su aplicación durante las horas de menor actividad. 

 **Patrones comunes de uso no recomendados:** 
+ Sus desarrolladores han desplegado una nueva característica sin telemetría de usuario. No puede saber si sus clientes la utilizan sin preguntarles. 
+ Tras un despliegue en su aplicación frontend, observa un aumento del uso. Al carecer de telemetría de la actividad de los usuarios, es difícil identificar el problema exacto.
+  Se produce un problema en su aplicación durante las horas de menor actividad. No se da cuenta del problema hasta por la mañana, cuando sus usuarios se conectan en línea, porque no ha configurado la actividad de usuario sintética. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Conoce los patrones comunes de los usuarios o los comportamientos inesperados para optimizar la funcionalidad de la aplicación y adaptarla a sus objetivos empresariales. 
+  Supervisa la aplicación desde la perspectiva de sus usuarios para detectar problemas en la experiencia del usuario, como enlaces interrumpidos o respuestas lentas al hacer clic. 
+  Identifica la causa raíz de los problemas mediante el seguimiento de los pasos que ha dado el usuario afectado. 
+  La actividad de usuario sintética puede proporcionar señales de alerta temprana del deterioro del rendimiento durante las horas de menor actividad, lo que le permite adoptar medidas correctivas antes de que los usuarios reales se vean afectados. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Diseñe el código de aplicación para emitir información sobre la actividad de los usuarios. Utilice esta información para comprender cómo se utiliza la aplicación, los patrones de uso y para determinar cuándo se requiere una respuesta. Utilice la actividad de usuario sintética para proporcionar información sobre el rendimiento de las aplicaciones durante las horas de menor actividad. 

 **Ejemplo de cliente** 

 AnyCompany Retail implementa la telemetría de la actividad del usuario en varias capas de su aplicación. La telemetría del frontend realiza un seguimiento de los eventos de puntero y movimiento, mientras que los microservicios del backend emiten telemetría de seguimiento de eventos como añadir un artículo al carrito del usuario y pagar. Juntos proporcionan observabilidad a la experiencia del usuario. AnyCompany Retail también utiliza la telemetría de usuario sintética para detectar problemas cuando hay menos usuarios en la carga de trabajo. 

 **Pasos para la implementación** 

1.  Añada instrumentación a su aplicación para que emita telemetría (métricas, eventos, registros y trazas) sobre la actividad de los usuarios. Tras incorporar instrumentación, los componentes de frontend emiten telemetría automáticamente a medida que el usuario interactúa con la interfaz. Las aplicaciones backend emiten telemetría sobre los eventos y las transacciones de los usuarios. 

   1.  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) puede proporcionar información sobre la experiencia del usuario final de las aplicaciones frontend. 

   1.  Puede usar [AWS Distro for Open Telemetry](https://aws-otel.github.io/) para añadir instrumentación y capturar la telemetría de sus aplicaciones. 

   1.  [Amazon Pinpoint](https://docs.aws.amazon.com/pinpoint/latest/developerguide/welcome.html) puede analizar el comportamiento de los usuarios a través de campañas y proporcionar información sobre la interacción de los usuarios. 

   1.  Los clientes con Enterprise Support pueden solicitar un [taller de creación de una estrategia de supervisión](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/) de su administrador técnico de cuentas. Este taller le ayuda a erigir una estrategia de observabilidad para su carga de trabajo. 

1.  Establezca una actividad de usuario sintética para supervisar su aplicación. La actividad de usuario sintética simula las acciones del usuario para validar que su aplicación funciona correctamente. 

   1.  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) puede simular la actividad de los usuarios utilizando valores controlados. 

 **Nivel de esfuerzo para el plan de implementación:** alto. Puede requerir un importante esfuerzo de desarrollo instrumentar completamente la aplicación para recopilar la telemetría de la actividad del usuario. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS04-BP01 Implementar telemetría de aplicaciones](ops_telemetry_application_telemetry.md): la telemetría de aplicación es necesaria para crear una telemetría de la actividad del usuario. 
+  [OPS04-BP02 Implementar y configurar telemetría de cargas de trabajo](ops_telemetry_workload_telemetry.md): parte de la telemetría de la actividad del usuario también puede considerarse telemetría de la carga de trabajo. 

 **Documentos relacionados:** 
+ [Cómo supervisar aplicaciones eficazmente](https://aws.amazon.com/startups/start-building/how-to-monitor-applications/)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2020: Monitoring production services at Amazon](https://www.youtube.com/watch?v=hnPcf_Czbvw) (AWS re:Invent 2020: Supervisión de los servicios de producción en Amazon)
+ [AWS re:Invent 2021 - Optimize applications through end user insights with Amazon CloudWatch RUM](https://www.youtube.com/watch?v=NMaeujY9A9Y) (AWS re:Invent 2021: Optimizar las aplicaciones mediante la información del usuario final con Amazon CloudWatch RUM)
+ [ Testing and Monitoring APIs on AWS - AWS Online Tech Talks ](https://www.youtube.com/watch?v=VQM38CZyjFY)(Pruebas y supervisión de las API en AWS - Charlas técnicas en línea de AWS)

 **Ejemplos relacionados:** 
+ [Cliente web de Amazon CloudWatch RUM](https://github.com/aws-observability/aws-rum-web)
+ [AWS Distro for Open Telemetry ](https://aws-otel.github.io/)
+ [ Implementing Real User Monitoring of Amplify Application using Amazon CloudWatch RUM ](https://aws.amazon.com/blogs/mobile/implementing-real-user-monitoring-of-amplify-application-using-amazon-cloudwatch-rum/)(Implementación de la supervisión de usuario real de una aplicación de Amplify mediante Amazon CloudWatch RUM)
+ [Taller sobre observabilidad](https://catalog.workshops.aws/observability/en-US/intro)

 **Servicios relacionados:** 
+ [ Amazon CloudWatch RUM ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html)
+ [ Amazon CloudWatch Synthetics ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)
+ [ Amazon Pinpoint ](https://docs.aws.amazon.com/pinpoint/latest/developerguide/welcome.html)

# OPS04-BP04 Implementar telemetría de dependencias
<a name="ops_telemetry_dependency_telemetry"></a>

Diseñe y configure la carga de trabajo para emitir información sobre el estado de los recursos de los que depende. Se trata de recursos externos a su carga de trabajo. Entre los ejemplos de dependencias externas se pueden incluir las bases de datos externas, el DNS y la conectividad de la red. Utilice esta información para determinar cuándo se requiere una respuesta y proporcionar un contexto adicional sobre el estado de la carga de trabajo.

 **Resultado deseado:** 
+  Su carga de trabajo emite telemetría sobre el estado de las dependencias externas. 
+  Se le notifica cuando las dependencias no son adecuadas. 

 **Patrones comunes de uso no recomendados:** 
+ Sus usuarios no pueden acceder a su sitio. No puede determinar si el motivo es un problema de DNS, sin realizar manualmente una comprobación para ver si su proveedor de DNS está operativo. 
+ Su aplicación de carro de compra no puede completar las transacciones. No puede determinar si se trata de un problema con su proveedor de procesamiento de tarjetas de crédito sin ponerse en contacto con ellos para verificarlo. 

 **Beneficios de establecer esta práctica recomendada:** 
+  La supervisión de las dependencias externas permite anticiparse a los problemas. 
+  El conocimiento del estado de sus dependencias contribuye a la resolución de problemas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Colabore con las partes interesadas para identificar las dependencias externas de su carga de trabajo. Las dependencias externas pueden incluir bases de datos externas, API o conectividad de red entre su carga de trabajo y los recursos de otros entornos. Desarrolle una estrategia de supervisión para conocer el estado de las dependencias y dar la alarma de forma proactiva si cambia el estado. 

 **Ejemplo de cliente** 

 La carga de trabajo de comercio electrónico de AnyCompany Retail depende de una base de datos que se encuentra en otro entorno. Cada noche, los datos se incorporan a la base de datos para utilizarse en la plataforma de comercio electrónico. La conectividad a la red y la compatibilidad de base de datos pertenecen a otros equipos. El equipo de comercio electrónico configuró varias alarmas de valor controlado para alertarles cuando la conectividad de la red cae, la base de datos no está accesible y cuando el trabajo no se completa. 

 **Pasos para la implementación** 

1.  Identifique las dependencias externas de su carga de trabajo. Implemente la telemetría para hacer un seguimiento del estado o la accesibilidad de las dependencias. 

   1.  Los clientes de AWS pueden utilizar [Panel de AWS Health](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html) para supervisar el estado de los servicios de AWS y recibir notificaciones de eventos de estado. 

   1.  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) se puede utilizar para supervisar API, URL y contenido de sitios web. 

1.  Configure alertas para notificar a su organización cuando el estado de una dependencia sea incorrecto o esté inaccesible. 

   1.  Los clientes con Enterprise Support pueden solicitar un [taller de creación de una estrategia de supervisión](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/) de su administrador técnico de cuentas. Este taller le ayudará a desarrollar una estrategia de observabilidad para su carga de trabajo. 

1.  Identifique los contactos para las dependencias en los casos en los que el estado de la dependencia no sea correcto. Documente cómo contactar con el propietario de la dependencia, los acuerdos de servicio y el proceso de escalamiento. 

 **Nivel de esfuerzo para el plan de implementación:** medio. La implementación de la telemetría de dependencias puede requerir crear soluciones de supervisión personalizadas. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS04-BP01 Implementar telemetría de aplicaciones](ops_telemetry_application_telemetry.md): puede incorporar la supervisión de las dependencias en la telemetría de su aplicación. 

 **Documentos relacionados:** 
+ [ Monitor your private internal endpoints 24x7 using CloudWatch Synthetics ](https://aws.amazon.com/blogs/mt/monitor-your-private-endpoints-using-cloudwatch-synthetics/)(Supervisar los puntos de conexión internos privados ininterrumpidamente con CloudWatch Synthetics)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2018: Monitor All Your Things: Amazon CloudWatch in Action with BBC ](https://www.youtube.com/watch?v=uuBuc6OAcVY)(AWS re:Invent 2018: Supervisar todos los objetos: Amazon CloudWatch en acción con BBC)
+ [AWS re:Invent 2022 - Developing an observability strategy](https://www.youtube.com/watch?v=Ub3ATriFapQ) (AWS re:Invent 2022: Desarrollo de una estrategia de observabilidad)
+ [AWS re:Invent 2022 - Observability best practices at Amazon ](https://www.youtube.com/watch?v=zZPzXEBW4P8)(AWS re:Invent 2022: Prácticas recomendadas de observabilidad en Amazon)

 **Ejemplos relacionados:** 
+ [Taller sobre observabilidad](https://catalog.workshops.aws/observability/en-US/intro)
+ [Laboratorios de Well-Architected: supervisión de dependencias](https://www.wellarchitectedlabs.com/operational-excellence/100_labs/100_dependency_monitoring/)

 **Servicios relacionados:** 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+ [AWS Health](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html)

# OPS04-BP05 Implementar trazabilidad de transacciones
<a name="ops_telemetry_dist_trace"></a>

Implemente el código de su aplicación y configure los componentes de su carga de trabajo para que emitan eventos, los cuales se activan como resultado de operaciones lógicas únicas y se consolidan a través de varios límites de la carga de trabajo. Genere mapas para ver cómo fluyen los rastreos a través de sus servicios y carga de trabajo. Obtenga información sobre las relaciones entre los componentes e identifique y analice los problemas. Utilice la información recopilada para determinar cuándo se requiere una respuesta y para identificar los factores que contribuyen al problema. 

 **Resultado deseado:** 
+  Recopilar rastreos de transacciones en toda la carga de trabajo para conocer mejor la relación entre los componentes. 
+  Generar mapas para comprender mejor cómo fluyen las transacciones y los eventos en su carga de trabajo. 

 **Antipatrones usuales:** 
+  Ha implementado una arquitectura de microservicios sin servidor que abarca múltiples cuentas. Sus clientes tienen problemas de rendimiento intermitentes. No puede descubrir qué función o componente es responsable porque carece de trazabilidad de las transacciones. 
+ Hay un cuello de botella en el rendimiento de su carga de trabajo. Debido a la falta de trazabilidad de las transacciones, no puede ver la relación entre los componentes de la aplicación e identificar el cuello de botella.
+  El identificador utilizado para los rastreos no es único a escala global, lo que provoca una colisión de rastreos al analizar el comportamiento de la carga de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Comprender el flujo de transacciones a través de su carga de trabajo proporciona información sobre el comportamiento esperado de las transacciones de la carga de trabajo. 
+  Podrá ver las variaciones del comportamiento esperado en la carga de trabajo y responder si es necesario. 
+  Podrá localizar las transacciones por su identificador único generado, independientemente de dónde se hayan generado. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Diseñe su aplicación y su carga de trabajo para emitir información sobre el flujo de transacciones a través de los componentes del sistema. Los datos que deben incluirse en las transacciones son un identificador de transacción único a escala global, la etapa de la transacción, el componente activo y el tiempo para completar la actividad. Utilice esta información para determinar lo que está en curso, lo que está completo y cuáles son los resultados de las actividades completadas. 

 **Ejemplo de cliente** 

 En AnyCompany Retail, todas las transacciones tienen un UUID único generado a escala global. Este UUID se pasa entre microservicios durante las transacciones. El UUID se utiliza para crear rastreos de las transacciones a medida que los usuarios interactúan con la carga de trabajo. Con los rastreos, se genera un mapa de la topología de la carga de trabajo que se utiliza para solucionar los problemas de la carga de trabajo y mejorar el rendimiento. 

 **Pasos para la implementación** 

1.  Instrumente las aplicaciones de su carga de trabajo para que emitan rastreos de transacciones. Para hacerlo, puede generar un identificador único para cada transacción y pasar el identificador entre aplicaciones. 

   1.  Puede utilizar la autoinstrumentación en [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) para implementar rastreos en sus aplicaciones existentes sin modificar el código de la aplicación. 

1.  Genere mapas de la topología de la aplicación. Utilice estos mapas para mejorar el rendimiento, obtener información y ayudar en la resolución de problemas. 

   1.  [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) puede generar mapas de las aplicaciones de su carga de trabajo. 

 **Nivel de esfuerzo para el plan de implementación:** medio. La implementación de rastreos de transacciones podría requerir un esfuerzo de desarrollo moderado. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS04-BP01 Implementar telemetría de aplicaciones](ops_telemetry_application_telemetry.md) - La telemetría de las aplicaciones abarca la trazabilidad y la gestión de las transacciones, y debe implementarse en primer lugar. 

 **Documentos relacionados:** 
+ [ Discover application issues and get notifications with AWS X-Ray Insights](https://aws.amazon.com/blogs/mt/discover-application-issues-get-notifications-aws-x-ray-insights/) (Descubrir problemas de la aplicación y obtener notificaciones con AWS X-Ray Insights) 
+ [ How Wealthfront utilizes AWS X-Ray to analyze and debug distributed applications](https://aws.amazon.com/blogs/mt/wealthfront-utilizes-aws-x-ray-analyze-debug-distributed-applications/) (Cómo Wealthfront utiliza AWS X-Ray para analizar y depurar aplicaciones distribuidas)
+ [ New for AWS Distro for OpenTelemetry – Tracing Support is Now Generally Available](https://aws.amazon.com/blogs/aws/new-for-aws-distro-for-opentelemetry-tracing-support-is-now-generally-available/) (Novedades de AWS Distro for OpenTelemetry: ya está disponible la función de rastreo)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2018: Deep Dive into AWS X-Ray: Monitor Modern Applications (DEV324)](https://www.youtube.com/watch?v=5MQkX57eTh8) (AWS re:Invent 2018: Profundización en AWS X-Ray: monitorización de aplicaciones modernas)
+ [AWS re:Invent 2022 - Building observable applications with OpenTelemetry (BOA310)](https://www.youtube.com/watch?v=efk8XFJrW2c) (AWS re:Invent 2022: Creación de aplicaciones observables con OpenTelemetry)
+ [AWS re:Invent 2022 - Observability the open-source way (COP301-R)](https://www.youtube.com/watch?v=2IJPpdp9xU0) (AWS re:Invent 2022: Observabilidad con código abierto)
+ [ Capturing Trace Data with the AWS Distro for OpenTelemetry](https://www.youtube.com/watch?v=837NtV0McOA) (Capturar datos de rastreo con AWS Distro for OpenTelemetry)
+ [ Optimize Application Performance with AWS X-Ray](https://www.youtube.com/watch?v=5lIdNrrO_o8) (Optimización del rendimiento de la aplicación con AWS X-Ray)

 **Ejemplos relacionados:** 
+ [AWS X-Ray Multi API Gateway Tracing Example](https://github.com/aws-samples/aws-xray-multi-api-gateway-tracing-example) (Ejemplo de rastreo de varias puertas de enlace API para AWS X-Ray)

 **Servicios relacionados:** 
+  [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) 
+  [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

# OPS 5 ¿Cómo reduce los defectos, facilita la reparación y mejora el flujo en la producción?
<a name="ops-05"></a>

 Adopte enfoques que mejoren el flujo de cambios en la producción, que permitan la refactorización, la retroalimentación rápida sobre la calidad y la corrección de errores. Estos aceleran los cambios beneficiosos que se introducen en la producción, limitan los problemas implementados, y permiten una rápida identificación y solución de los problemas introducidos a través de las actividades de implementación. 

**Topics**
+ [OPS05-BP01 Usar control de versiones](ops_dev_integ_version_control.md)
+ [OPS05-BP02 Probar y validar los cambios](ops_dev_integ_test_val_chg.md)
+ [OPS05-BP03 Utilizar sistemas de administración de la configuración](ops_dev_integ_conf_mgmt_sys.md)
+ [OPS05-BP04 Utilizar sistemas de administración del desarrollo y el despliegue](ops_dev_integ_build_mgmt_sys.md)
+ [OPS05-BP05 Realizar la administración de parches](ops_dev_integ_patch_mgmt.md)
+ [OPS05-BP06 Compartir estándares de diseño](ops_dev_integ_share_design_stds.md)
+ [OPS05-BP07 Adoptar prácticas para mejorar la calidad del código](ops_dev_integ_code_quality.md)
+ [OPS05-BP08 Usar varios entornos](ops_dev_integ_multi_env.md)
+ [OPS05-BP09 Realizar cambios frecuentes, pequeños y reversibles](ops_dev_integ_freq_sm_rev_chg.md)
+ [OPS05-BP10 Automatizar completamente la integración y el despliegue](ops_dev_integ_auto_integ_deploy.md)

# OPS05-BP01 Usar control de versiones
<a name="ops_dev_integ_version_control"></a>

 Use el control de versiones para posibilitar el seguimiento de cambios y versiones. 

 Muchos servicios de AWS ofrecen funcionalidades de control de versiones. Utilice un sistema de control de revisiones o de orígenes como [AWS CodeCommit](https://aws.amazon.com/codecommit/) para administrar el código y otros artefactos, como las plantillas de [AWS CloudFormation](https://aws.amazon.com/cloudformation/) controladas por versiones de la infraestructura. 

 **Patrones de uso no recomendados comunes:** 
+  Ha estado desarrollando y almacenando el código en su estación de trabajo. Ha tenido un error de almacenamiento irrecuperable en la estación de trabajo y el código se ha perdido. 
+  Después de sobrescribir el código existente con sus cambios, reinicia la aplicación y ya no está operativa. No puede revertir el cambio. 
+  Tiene un bloqueo de escritura en un archivo de informe que otra persona necesita editar. Se pone en contacto con usted para pedirle que deje de trabajar en él para poder completar sus tareas. 
+  Su equipo de investigación ha estado trabajando en un análisis detallado que modelará su trabajo futuro. Alguien ha guardado accidentalmente su lista de la compra sobre el informe final. No puede revertir el cambio y tendrá que volver a crear el informe. 

 **Beneficios de establecer esta práctica recomendada:** Mediante el uso de las capacidades de control de versiones puede revertir fácilmente a los estados buenos conocidos, a las versiones anteriores, y limitar el riesgo de que se pierdan los activos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use el control de versiones: mantenga los activos en repositorios con control de versiones. Esto permite hacer un seguimiento de los cambios, implementar versiones nuevas, detectar cambios en las versiones existentes y volver a versiones anteriores (por ejemplo, revertir a un estado conocido correcto en caso de error). Integre en sus procedimientos las capacidades de control de versiones de sus sistemas de administración de la configuración. 
  +  [Introducción a AWS CodeCommit](https://youtu.be/46PRLMW8otg) 
  +  [¿Qué es AWS CodeCommit?](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es AWS CodeCommit?](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) 

 **Vídeos relacionados:** 
+  [Introducción a AWS CodeCommit](https://youtu.be/46PRLMW8otg) 

# OPS05-BP02 Probar y validar los cambios
<a name="ops_dev_integ_test_val_chg"></a>

 Cada cambio desplegado se debe probar para evitar errores en producción. Esta práctica recomendada se centra en probar los cambios desde el control de versiones hasta la creación de artefactos. Además de los cambios en el código de la aplicación, las pruebas deben incluir la infraestructura, la configuración, los controles de seguridad y los procedimientos operativos. Las pruebas adoptan muchas formas, desde las pruebas unitarias hasta el análisis de componentes de software (SCA). Mover las pruebas más a la izquierda en el proceso de integración y entrega del software se traduce en una mayor certeza de la calidad de los artefactos. 

 Su organización debe desarrollar estándares de prueba para todos los artefactos de software. Las pruebas automatizadas reducen el trabajo y evitan los errores de las pruebas manuales. En algunos casos puede ser necesario realizar pruebas manuales. Los desarrolladores deben tener acceso a los resultados de las pruebas automatizadas para crear bucles de comentarios que mejoren la calidad del software. 

 **Resultado deseado:** 
+  Todos los cambios en el software se prueban antes de su entrega. 
+  Los desarrolladores tienen acceso a los resultados de las pruebas. 
+  Su organización tiene un estándar de pruebas que se aplica a todos los cambios de software. 

 **Antipatrones usuales** 
+ Despliega un nuevo cambio de software sin realizar ninguna prueba. No funciona en producción, lo que provoca una interrupción del servicio.
+ Los nuevos grupos de seguridad se despliegan con CloudFormation sin haberse probado en un entorno de preproducción. Los grupos de seguridad hacen que la aplicación sea inaccesible para los clientes.
+ Se modifica un método, pero no hay pruebas unitarias. El software no funciona cuando se despliega en producción.

 **Beneficios de establecer esta práctica recomendada:** 
+  Se reduce la tasa de errores en los despliegues de software. 
+  Se mejora la calidad del software. 
+  Los desarrolladores son más conscientes de la viabilidad de su código. 
+  Las políticas de seguridad se pueden desplegar con confianza para respaldar el cumplimiento de la organización. 
+  Los cambios en la infraestructura, como las actualizaciones automáticas de las políticas de escalamiento, se prueban con antelación para satisfacer las necesidades de tráfico. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Las pruebas se realizan en todos los cambios, desde el código de la aplicación hasta la infraestructura, como parte de su práctica de integración continua. Los resultados de las pruebas se publican para que los desarrolladores tengan comentarios rápidos. Su organización tiene un estándar de pruebas que deben superar todos los cambios. 

 **Ejemplo de cliente** 

 Como parte de su canalización de integración continua, AnyCompany Retail realiza varios tipos de pruebas en todos los artefactos de software. Practica el desarrollo basado en pruebas, por lo que todo el software tiene pruebas unitarias. Una vez creado el artefacto, ejecuta pruebas integrales. Una vez completada esta primera ronda de pruebas, ejecuta un examen estático de la seguridad de la aplicación, que busca vulnerabilidades conocidas. Los desarrolladores reciben mensajes a medida que se supera cada puerta de prueba. Una vez completadas todas las pruebas, el artefacto de software se almacena en un repositorio de artefactos. 

 **Pasos para la implementación** 

1.  Colabore con las partes interesadas de su organización en el desarrollo de un estándar de pruebas para los artefactos de software. ¿Qué pruebas estándar deben superar todos los artefactos? ¿Hay requisitos de cumplimiento o gobernanza que deban incluirse en la cobertura de las pruebas? ¿Necesita realizar pruebas de calidad del código? Cuando finalicen las pruebas, ¿quién tiene que saberlo? 

   1.  En [AWS Deployment Pipeline Reference Architecture](https://pipelines.devops.aws.dev/) (Arquitectura de referencia de la canalización de despliegue de AWS) se incluye una lista autorizada de tipos de pruebas que pueden realizarse en artefactos de software como parte de una canalización de integración. 

1.  Instrumente su aplicación con las pruebas necesarias en función de su estándar de pruebas de software. Cada conjunto de pruebas debería completarse en menos de diez minutos. Las pruebas deben ejecutarse como parte de una canalización de integración. 

   1.  [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) puede probar el código de su aplicación en busca de defectos. 

   1.  Puede usar [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) para realizar pruebas en artefactos de software. 

   1.  [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) puede orquestar sus pruebas de software en una canalización. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS05-BP01 Usar control de versiones](ops_dev_integ_version_control.md) - Todos los artefactos de software deben estar respaldados por un repositorio controlado por versiones. 
+  [OPS05-BP06 Compartir estándares de diseño](ops_dev_integ_share_design_stds.md) - Los estándares de comprobación de software de su organización informan a sus estándares de diseño. 
+  [OPS05-BP10 Automatizar completamente la integración y el despliegue](ops_dev_integ_auto_integ_deploy.md) - Las pruebas de software deben ejecutarse automáticamente como parte de su canalización más amplia de integración y despliegue. 

 **Documentos relacionados:** 
+ [ Adopt a test-driven development approach ](https://docs.aws.amazon.com/prescriptive-guidance/latest/best-practices-cdk-typescript-iac/development-best-practices.html)(Adoptar un enfoque de desarrollo basado en pruebas )
+ [ Automated CloudFormation Testing Pipeline with TaskCat and CodePipeline ](https://aws.amazon.com/blogs/devops/automated-cloudformation-testing-pipeline-with-taskcat-and-codepipeline/)(Canalización automatizada de pruebas de CloudFormation con TaskCat y CodePipeline)
+ [ Building end-to-end AWS DevSecOps CI/CD pipeline with open source SCA, SAST, and DAST tools ](https://aws.amazon.com/blogs/devops/building-end-to-end-aws-devsecops-ci-cd-pipeline-with-open-source-sca-sast-and-dast-tools/)(Creación de canalizaciones de CI/CD de AWS DevSecOps de extremo a extremo con herramientas SCA, SAST y DAST de código abierto)
+ [ Getting started with testing serverless applications ](https://aws.amazon.com/blogs/compute/getting-started-with-testing-serverless-applications/)(Introducción a las pruebas de aplicaciones sin servidor)
+ [ My CI/CD pipeline is my release captain ](https://aws.amazon.com/builders-library/cicd-pipeline/)(Mi canalización CI/CD es mi capitán de lanzamiento)
+ Documento técnico [ Practicing Continuous Integration and Continuous Delivery on AWS](https://docs.aws.amazon.com/whitepapers/latest/practicing-continuous-integration-continuous-delivery/welcome.html)(Practicar la integración continua y la entrega continua en AWS)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2020: Testable infrastructure: Integration testing on AWS](https://www.youtube.com/watch?v=KJC380Juo2w)(Infraestructura comprobable: pruebas de integración en AWS)
+ [AWS Summit ANZ 2021 - Driving a test-first strategy with CDK and test driven development ](https://www.youtube.com/watch?v=1R7G_wcyd3s)(Impulso de una estrategia basada en las pruebas con CDK y desarrollo impulsado por pruebas)
+ [ Testing Your Infrastructure as Code with AWS CDK ](https://www.youtube.com/watch?v=fWtuwGSoSOU)(Prueba de la infraestructura como código con AWS CDK)

 **Recursos relacionados:** 
+ [AWS Deployment Pipelines Reference Architecture: Application ](https://pipelines.devops.aws.dev/application-pipeline/index.html)(Arquitectura de referencia de las canalizaciones de despliegue de AWS: aplicación)
+ [AWS Kubernetes DevSecOps Pipeline ](https://github.com/aws-samples/devsecops-cicd-containers)(Canalización de DevSecOps de AWS Kubernetes)
+ [ Policy as Code Workshop – Test Driven Development ](https://catalog.us-east-1.prod.workshops.aws/workshops/9da471a0-266a-4d36-8596-e5934aeedd1f/en-US/pac-tools/cfn-guard/tdd)(Taller de política como código: desarrollo basado en pruebas)
+ [ Run unit tests for a Node.js application from GitHub by using AWS CodeBuild](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/run-unit-tests-for-a-node-js-application-from-github-by-using-aws-codebuild.html)(Ejecutar pruebas de unidad para una aplicación Node.js desde GitHub mediante AWS CodeBuild)
+ [ Use Serverspec for test-driven development of infrastructure code ](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/use-serverspec-for-test-driven-development-of-infrastructure-code.html)(Usar Serverspec para el desarrollo basado en pruebas del código de la infraestructura)

 **Servicios relacionados:** 
+  [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) 
+  [AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
+  [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) 

# OPS05-BP03 Utilizar sistemas de administración de la configuración
<a name="ops_dev_integ_conf_mgmt_sys"></a>

 Utilice sistemas de administración de la configuración para efectuar modificaciones en la configuración y realizar un seguimiento de ellas. Estos sistemas reducen tanto los errores causados por los procesos manuales como el nivel de esfuerzo requerido para implementar los cambios. 

 La administración de la configuración estática establece valores al inicializar un recurso que se espera que permanezcan constantes durante toda la vida del recurso. Algunos ejemplos son el establecimiento de la configuración de un servidor web o de aplicaciones en una instancia o la definición de la configuración de un servicio de AWS en la [Consola de administración de AWS](https://docs.aws.amazon.com/awsconsolehelpdocs/index.html) a través de la [AWS CLI](https://aws.amazon.com/cli/). 

 La administración de la configuración dinámica establece valores en la inicialización que pueden cambiar o se espera que cambien durante la vida de un recurso. Por ejemplo, podría establecer un conmutador de características para habilitar la funcionalidad en su código a través de un cambio de configuración o cambiar el nivel de detalle del registro durante un incidente para capturar más datos y, después, volver a cambiar tras el incidente, con lo que se eliminan los registros ahora innecesarios y su gasto asociado. 

 Si tiene configuraciones dinámicas en sus aplicaciones que se ejecutan en instancias, contenedores, funciones sin servidor o dispositivos, puede utilizar [AWS AppConfig](https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html) para administrarlas y desplegarlas en sus entornos. 

 En AWS, puede usar [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) para supervisar continuamente las configuraciones de sus recursos de AWS [en las cuentas y las regiones](https://docs.aws.amazon.com/config/latest/developerguide/aggregate-data.html). Le permite hacer un seguimiento de su historial de configuración, comprender cómo un cambio de configuración afectaría a otros recursos y auditarlos con respecto a las configuraciones esperadas o deseadas mediante [Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) y [Paquetes de conformidad de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/conformance-packs.html). 

 En AWS, puede crear canalizaciones de integración continua/despliegue continuo (CI/CD) con servicios como [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) (por ejemplo, AWS CodeCommit, [AWS CodeBuild](https://aws.amazon.com/codebuild/), [AWS CodePipeline](https://aws.amazon.com/codepipeline/), [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)y [AWS CodeStar](https://aws.amazon.com/codestar/)). 

 Disponga de un calendario de cambios y haga un seguimiento cuando se planifiquen actividades o eventos empresariales u operativos importantes que puedan verse afectados por la implementación del cambio. Ajustar las actividades para administrar el riesgo en torno a esos planes. [AWS Systems Manager Change Calendar](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar.html) proporciona un mecanismo para documentar bloques de tiempo como abiertos o cerrados a cambios y el motivo. También puede [compartir esa información](https://docs.aws.amazon.com/systems-manager/latest/userguide/change-calendar-share.html) con otras Cuentas de AWS. Los scripts de AWS Systems Manager Automation se pueden configurar para que se adhieran al estado del calendario de cambios. 

 [AWS Systems Manager Maintenance Windows](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html) se puede utilizar para programar el rendimiento de los scripts de AWS SSM Run Command o Automation, las invocaciones de AWS Lambda o las actividades de AWS Step Functions en momentos específicos. Marque estas actividades en su calendario de cambios para poder incluirlas en la evaluación. 

 **Patrones de uso no recomendados comunes:** 
+  Actualiza manualmente la configuración del servidor web en toda su flota y varios servidores dejan de responder debido a errores de actualización. 
+  Actualiza manualmente su flota de servidores de aplicaciones en el transcurso de muchas horas. La incoherencia en la configuración durante el cambio provoca comportamientos inesperados. 
+  Alguien ha actualizado sus grupos de seguridad y ya no se puede acceder a sus servidores web. Sin saber lo que se ha cambiado, se pierde mucho tiempo investigando el problema, lo que prolonga el tiempo de recuperación. 

 **Beneficios de establecer esta práctica recomendada:** La adopción de sistemas de administración de la configuración reduce el nivel de esfuerzo para realizar cambios y hacer un seguimiento de ellos, así como la frecuencia de los errores provocados por los procedimientos manuales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Utilice sistemas de administración de la configuración: úselos para reducir tanto los errores causados por los procesos manuales como el nivel de esfuerzo. 
  +  [Administración de la configuración de la infraestructura](https://aws.amazon.com/answers/configuration-management/aws-infrastructure-configuration-management/) 
  +  [AWS Config](https://aws.amazon.com/config/) 
  +  [¿Qué es AWS Config?](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) 
  +  [Introducción a AWS CloudFormation](https://youtu.be/Omppm_YUG2g) 
  +  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
  +  [AWS OpsWorks](https://aws.amazon.com/opsworks/) 
  +  [¿Qué es AWS OpsWorks?](https://docs.aws.amazon.com/opsworks/latest/userguide/welcome.html) 
  +  [Introducción a AWS Elastic Beanstalk](https://youtu.be/SrwxAScdyT0) 
  +  [¿Qué es AWS Elastic Beanstalk?](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/Welcome.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS AppConfig](https://docs.aws.amazon.com/appconfig/latest/userguide/what-is-appconfig.html) 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 
+  [AWS OpsWorks](https://aws.amazon.com/opsworks/) 
+  [AWS Systems Manager Change Calendar](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-change-calendar.html) 
+  [AWS Systems Manager Maintenance Windows](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html) 
+  [Administración de la configuración de la infraestructura](https://aws.amazon.com/answers/configuration-management/aws-infrastructure-configuration-management/) 
+  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
+  [¿Qué es AWS Config?](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) 
+  [¿Qué es AWS Elastic Beanstalk?](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/Welcome.html) 
+  [¿Qué es AWS OpsWorks?](https://docs.aws.amazon.com/opsworks/latest/userguide/welcome.html) 

 **Vídeos relacionados:** 
+  [Introducción a AWS CloudFormation](https://youtu.be/Omppm_YUG2g) 
+  [Introducción a AWS Elastic Beanstalk](https://youtu.be/SrwxAScdyT0) 

# OPS05-BP04 Utilizar sistemas de administración del desarrollo y el despliegue
<a name="ops_dev_integ_build_mgmt_sys"></a>

 Utilice sistemas de administración del desarrollo y la implementación. Estos sistemas reducen tanto los errores causados por los procesos manuales como el nivel de esfuerzo requerido para implementar los cambios. 

 En AWS, puede crear canalizaciones de integración y entrega continuas (CI/CD) utilizando servicios como las [herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) (por ejemplo, AWS CodeCommit, [AWS CodeBuild](https://aws.amazon.com/codebuild/), [AWS CodePipeline](https://aws.amazon.com/codepipeline/), [AWS CodeDeploy](https://aws.amazon.com/codedeploy/) y [AWS CodeStar](https://aws.amazon.com/codestar/)). 

 **Patrones de uso no recomendados comunes:** 
+  Después de compilar su código en el sistema de desarrollo, copia el ejecutable en los sistemas de producción y no se inicia. Los archivos de registro locales indican que ha fallado debido a la falta de dependencias. 
+  Crea con éxito su aplicación con nuevas funcionalidades en su entorno de desarrollo y proporciona el código a Control de calidad. No pasa el control de calidad porque le faltan activos estáticos. 
+  El viernes, después de mucho esfuerzo, creó con éxito su aplicación manualmente en su entorno de desarrollo incluyendo sus funcionalidades recién codificadas. El lunes, no puede repetir los pasos que le permitieron crear con éxito su aplicación. 
+  Realiza las pruebas que ha creado para su nueva versión. A continuación, dedica la siguiente semana a configurar un entorno de pruebas y a realizar todas las pruebas de integración existentes, seguidas de las pruebas de rendimiento. El nuevo código tiene un impacto inaceptable en el rendimiento y debe desarrollarse y probarse de nuevo. 

 **Beneficios de establecer esta práctica recomendada:** al proporcionar mecanismos para gestionar las actividades de desarrollo y despliegue, se reduce el nivel de esfuerzo para realizar tareas repetitivas, se libera a los miembros del equipo para que se centren en sus tareas creativas de alto valor y se limita la introducción de errores de procedimientos manuales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Usar sistemas de administración del desarrollo y el despliegue: utilice sistemas de administración del desarrollo y el despliegue para hacer el seguimiento de los cambios e implementarlos, y reducir tanto los errores causados por los procesos manuales como el nivel de esfuerzo. Automatice completamente el proceso de integración e implementación, desde el registro del código hasta la construcción, prueba, despliegue y validación. Esto acorta el plazo de entrega, permite una mayor frecuencia de cambio y reduce el nivel de esfuerzo. 
  +  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
  +  [Prácticas recomendadas de integración continua para el desarrollo de software](https://www.youtube.com/watch?v=GEPJ7Lo346A) 
  +  [Slalom: entrega e integración continuas para aplicaciones sin servidor en AWS](https://www.youtube.com/watch?v=tEpx5VaW4WE) 
  +  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 
  +  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 
+  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
+  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 

 **Vídeos relacionados:** 
+  [Prácticas recomendadas de integración continua para el desarrollo de software](https://www.youtube.com/watch?v=GEPJ7Lo346A) 
+  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 
+  [Slalom: entrega e integración continuas para aplicaciones sin servidor en AWS](https://www.youtube.com/watch?v=tEpx5VaW4WE) 

# OPS05-BP05 Realizar la administración de parches
<a name="ops_dev_integ_patch_mgmt"></a>

 Administre parches para ampliar las características, resolver problemas y mantener la conformidad con la gobernanza. Automatice la administración de parches para reducir tanto los errores causados por los procesos manuales como el nivel de esfuerzo requerido para aplicarlos. 

 La administración de parches y vulnerabilidades forma parte de sus actividades de administración de beneficios y riesgos. Es preferible tener infraestructuras inmutables y desplegar las cargas de trabajo en estados en buenas condiciones conocidos y verificados. Cuando esto no es viable, la opción que queda es el parcheado in situ. 

 Actualizar imágenes de máquinas, imágenes de contenedores o tiempos de ejecución personalizados de Lambda [y bibliotecas adicionales](https://docs.aws.amazon.com/lambda/latest/dg/security-configuration.html) para eliminar las vulnerabilidades forma parte de la administración de parches. Debe gestionar las actualizaciones de [Imágenes de máquina de Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) (AMI) para imágenes de Linux o Windows Server con [EC2 Image Builder](https://aws.amazon.com/image-builder/). Puede usar [Amazon Elastic Container Registry](https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html) con su actual canalización para [administrar imágenes de Amazon ECS](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_on_ECS.html) y [administrar imágenes de Amazon EKS](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_on_EKS.html). AWS Lambda incluye [funciones](https://docs.aws.amazon.com/lambda/latest/dg/configuration-versions.html) de administración de versiones. 

 La aplicación de parches no debe realizarse en los sistemas de producción sin antes realizar pruebas en un entorno seguro. Los parches solo deben aplicarse si sirven para mejorar los resultados operativos o empresariales. En AWS, puede usar el [Administrador de parches de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) para automatizar el proceso de aplicación de parches en los sistemas administrados y programar la actividad con [AWS Systems Manager Maintenance Windows](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html). 

 **Patrones de uso no recomendados comunes:** 
+  Se le encomienda la aplicación de todos los nuevos parches de seguridad en un plazo de dos horas, lo que da lugar a múltiples interrupciones debido a la incompatibilidad de las aplicaciones con los parches. 
+  Una biblioteca sin parches tiene consecuencias no deseadas, ya que partes desconocidas utilizan las vulnerabilidades de la misma para acceder a su carga de trabajo. 
+  Los entornos de desarrollo se parchean automáticamente sin avisar a los desarrolladores. Recibe múltiples quejas de los desarrolladores porque su entorno deja de funcionar como se esperaba. 
+  No se ha parcheado el software comercial disponible en el mercado en una instancia persistente. Cuando tiene un problema con el software y se pones en contacto con el proveedor, le notifican que la versión no es compatible y que tendrá que aplicar un parche a un nivel específico para recibir asistencia. 
+  Un parche publicado recientemente para el software de cifrado que utilizó tiene importantes mejoras de rendimiento. Su sistema no parcheado tiene problemas de rendimiento que permanecen como resultado de no aplicar los parches. 

 **Beneficios de establecer esta práctica recomendada:** Al establecer un proceso de administración de parches, que incluya sus criterios de aplicación de parches y la metodología de distribución en sus entornos, podrá aprovechar sus ventajas y controlar su impacto. Esto permitirá la adopción de las características y capacidades deseadas, la eliminación de problemas y el cumplimiento sostenido de la gobernanza. Implante sistemas de administración de parches y automatización para reducir el nivel de esfuerzo en la implantación de parches y limitar los errores causados por los procesos manuales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Administración de parches: aplique parches a los sistemas para solucionar problemas, para obtener las características o capacidades deseadas y para mantener la conformidad con la política de gobernanza y los requisitos de soporte de los proveedores. En sistemas inmutables, implemente con el conjunto de parches adecuados para lograr el resultado deseado. Automatice el mecanismo de administración de parches para reducir tanto el tiempo que tarda en aplicarlos y los errores causados por los procesos manuales, como el nivel de esfuerzo requerido para aplicar los parches. 
  +  [Administrador de parches de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 
+  [Administrador de parches de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 

 **Vídeos relacionados:** 
+  [Entrega e integración continuas para aplicaciones sin servidor en AWS](https://www.youtube.com/watch?v=tEpx5VaW4WE) 
+  [Diseñar con las operaciones en mente](https://youtu.be/uh19jfW7hw4) 

   **Ejemplos relacionados:** 
+  [Laboratorios de Well-Architected: Administración de inventario y parches](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_inventory_patch_management/) 

# OPS05-BP06 Compartir estándares de diseño
<a name="ops_dev_integ_share_design_stds"></a>

Comparta las prácticas recomendadas entre los equipos para aumentar la conciencia y maximizar los beneficios del trabajo de desarrollo. Documéntelas y manténgalas actualizadas a medida que evoluciona su arquitectura. Si se aplican los estándares compartidos en su organización, es fundamental que existan mecanismos para solicitar adiciones, cambios y excepciones a los estándares. Sin esta opción, los estándares se convierten en un obstáculo para la innovación. 

 **Resultado deseado:** 
+  Los estándares de diseño se comparten entre los equipos de sus organizaciones. 
+  Se documentan y actualizan a medida que evolucionan las prácticas recomendadas. 

 **Antipatrones usuales:** 
+ Dos equipos de desarrollo distintos han creado, cada uno, un servicio de autenticación de usuarios. Sus usuarios tienen que mantener un conjunto de credenciales diferente para cada parte del sistema a la que quieran acceder. 
+ Cada equipo administra su propia infraestructura. Un nuevo requisito de conformidad obliga a cambiar la infraestructura y cada equipo lo aplica de forma distinta.

 **Beneficios de establecer esta práctica recomendada:** 
+  El uso de estándares compartidos favorece la adopción de las prácticas recomendadas y maximiza las ventajas de los esfuerzos de desarrollo. 
+  La documentación y actualización de los estándares de diseño mantiene a su organización al día de las prácticas recomendadas y de los requisitos de seguridad y conformidad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Comparta entre los equipos las prácticas recomendadas, los estándares de diseño, las listas de verificación, los procedimientos operativos, las orientaciones y los requisitos de gobernanza. Disponga de procedimientos para solicitar cambios, adiciones y excepciones a los estándares de diseño para apoyar la mejora y la innovación. Asegúrese de que los equipos estén al tanto del contenido publicado. Disponga de un mecanismo para mantener al día los estándares de diseño a medida que surgen nuevas prácticas recomendadas. 

 **Ejemplo de cliente** 

 AnyCompany Retail cuenta con un equipo de arquitectura interfuncional que crea patrones de arquitectura de software. Este equipo construye la arquitectura con la conformidad y la gobernanza integradas. Los equipos que adoptan estos estándares compartidos se benefician de la conformidad y la gobernanza integradas. Pueden construir rápidamente sobre el estándar de diseño. El equipo de arquitectura se reúne trimestralmente para evaluar los patrones de arquitectura y actualizarlos en caso necesario. 

 **Pasos para la implementación** 

1.  Identifique un equipo interfuncional que se encargue de desarrollar y actualizar los estándares de diseño. Este equipo trabajará con las partes interesadas de toda la organización a fin de desarrollar estándares de diseño, procedimientos operativos, listas de verificación, orientaciones y requisitos de gobernanza. Documente los estándares de diseño y compártalos dentro de su organización. 

   1.  [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html) puede utilizarse para crear carteras que representen los estándares de diseño utilizando la infraestructura como código. Puede compartir carteras entre cuentas. 

1.  Disponga de un mecanismo para mantener al día los estándares de diseño a medida que se identifiquen nuevas prácticas recomendadas. 

1.  Si los estándares de diseño se aplican de forma centralizada, cuente con un proceso para solicitar cambios, actualizaciones y exenciones. 

 **Nivel de esfuerzo para el plan de implementación:** medio. El desarrollo de un proceso para crear y compartir estándares de diseño precisa de coordinación y cooperación con las partes interesadas de toda la organización. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS01-BP03 Evaluar los requisitos de gobernanza](ops_priorities_governance_reqs.md) - Los requisitos de gobernanza influyen en los estándares de diseño. 
+  [OPS01-BP04 Evaluar los requisitos de cumplimiento](ops_priorities_compliance_reqs.md) - La conformidad es un elemento vital de la creación de estándares de diseño. 
+  [OPS07-BP02 Garantizar una revisión sistemática de la preparación operativa](ops_ready_to_support_const_orr.md) - Las listas de verificación de preparación operativa son un mecanismo para implementar los estándares de diseño a la hora de diseñar la carga de trabajo. 
+  [OPS11-BP01 Tener un proceso de mejora continua](ops_evolve_ops_process_cont_imp.md) - La actualización de los estándares de diseño forma parte de la mejora continua. 
+  [OPS11-BP04 Realizar la administración de conocimientos](ops_evolve_ops_knowledge_management.md) - Como parte de su práctica de administración del conocimiento, documente y comparta los estándares de diseño. 

 **Documentos relacionados:** 
+ [ Automate AWS Backups with AWS Service Catalog](https://aws.amazon.com/blogs/mt/automate-aws-backups-with-aws-service-catalog/) (Automatizar AWS Backup con AWS Service Catalog)
+ [AWS Service Catalog Account Factory-Enhanced](https://aws.amazon.com/blogs/mt/aws-service-catalog-account-factory-enhanced/) (Cuenta de AWS Service Catalog mejorada de fábrica)
+ [ How Expedia Group built Database as a Service (DBaaS) offering using AWS Service Catalog](https://aws.amazon.com/blogs/mt/how-expedia-group-built-database-as-a-service-dbaas-offering-using-aws-service-catalog/) (Cómo el grupo Expedia creó una oferta de base de datos como servicio (DBaaS) con AWS Service Catalog)
+ [ Maintain visibility over the use of cloud architecture patterns](https://aws.amazon.com/blogs/architecture/maintain-visibility-over-the-use-of-cloud-architecture-patterns/) (Mantener la visibilidad sobre el uso de patrones de arquitectura de la nube)
+ [ Simplify sharing your AWS Service Catalog portfolios in an AWS Organizations setup](https://aws.amazon.com/blogs/mt/simplify-sharing-your-aws-service-catalog-portfolios-in-an-aws-organizations-setup/) (Simplifique el uso compartido de sus carteras AWS Service Catalog en una configuración de AWS Organizations)

 **Vídeos relacionados: ** 
+ [AWS Service Catalog – Getting Started](https://www.youtube.com/watch?v=A9kKy6WhqVA) (Introducción a AWS Service Catalog)
+ [AWS re:Invent 2020: Manage your AWS Service Catalog portfolios like an expert](https://www.youtube.com/watch?v=lVfXkWHAtR8) (AWS re:Invent 2020: Administre sus carteras de AWS Service Catalog como un experto)

 **Ejemplos relacionados:** 
+ [AWS Service Catalog Reference Architecture](https://github.com/aws-samples/aws-service-catalog-reference-architectures) (Arquitectura de referencia deAWS Service Catalog)
+ [AWS Service Catalog Workshop ](https://catalog.us-east-1.prod.workshops.aws/workshops/d40750d7-a330-49be-9945-cde864610de9/en-US) (Taller deAWS Service Catalog)

 **Servicios relacionados:** 
+  [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html) 

# OPS05-BP07 Adoptar prácticas para mejorar la calidad del código
<a name="ops_dev_integ_code_quality"></a>

Adopte prácticas para mejorar la calidad del código y minimizar los defectos. Algunos ejemplos son el desarrollo basado en pruebas, las revisiones de código, la adopción de estándares y la programación en pareja. Incorpore estas prácticas a su proceso de integración y entrega continuas. 

 **Resultado deseado:** 
+  Su organización utiliza las prácticas recomendadas, como las revisiones de código o la programación en pareja, para mejorar la calidad del código. 
+  Los desarrolladores y operadores adoptan las prácticas recomendadas de calidad del código como parte del ciclo de vida de desarrollo del software. 

 **Antipatrones usuales:** 
+ Usted envía código a la rama principal de su aplicación sin una revisión del código. El cambio se despliega automáticamente en producción y provoca una interrupción del servicio.
+  Se desarrolla una nueva aplicación sin pruebas de unidad, integrales o de integración. No hay forma de probar la aplicación antes del despliegue. 
+  Los equipos realizan cambios manuales en producción para corregir defectos. Los cambios no se someten a pruebas ni revisiones de código y no se capturan ni registran en los procesos de integración y entrega continuas. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Al adoptar prácticas para mejorar la calidad del código, puede ayudar a minimizar los problemas introducidos en la producción. 
+  La calidad del código aumenta gracias a las prácticas recomendadas, como la programación en pareja y las revisiones del código. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Adopte prácticas para mejorar la calidad del código y minimizar los defectos antes de la implementación. Utilice prácticas como desarrollo basado en pruebas, revisiones de código y programación en pareja para mejorar la calidad de su proceso. 

 **Ejemplo de cliente** 

 AnyCompany Retail adopta diversas prácticas para mejorar la calidad del código. Ha adoptado el desarrollo basado en pruebas como norma para escribir aplicaciones. Para algunas funciones nuevas, hace que los desarrolladores programen en pareja durante un sprint. Cada solicitud de extracción se somete a una revisión de código por parte de un desarrollador sénior antes de que se integre y despliegue. 

 **Pasos para la implementación** 

1.  Adopte prácticas que fomenten la calidad del código, como el desarrollo basado en pruebas, las revisiones del código y la programación en parejas, en su proceso de integración y entrega continuas. Utilice estas técnicas para mejorar la calidad del software. 

   1.  [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) puede proporcionar recomendaciones de programación para código Java y Python mediante el uso de machine learning. 

   1.  Puede crear entornos de desarrollo compartidos con [AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/welcome.html) donde colabora en el desarrollo del código. 

 **Nivel de esfuerzo para el plan de implementación:** medio. Existen numerosas formas de implementar esta práctica recomendada, pero conseguir que la organización la adopte puede suponer un reto. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS05-BP06 Compartir estándares de diseño](ops_dev_integ_share_design_stds.md) - Puede compartir los estándares de diseño como parte de su práctica de calidad del código. 

 **Documentos relacionados:** 
+ [ Agile Software Guide](https://martinfowler.com/agile.html) (Guía del software Agile)
+ [ My CI/CD pipeline is my release captain (Mi canalización CI/CD es mi capitán de lanzamiento)](https://aws.amazon.com/builders-library/cicd-pipeline/)
+ [ Automate code reviews with Amazon CodeGuru Reviewer ](https://aws.amazon.com/blogs/devops/automate-code-reviews-with-amazon-codeguru-reviewer/)(Revisiones automáticas de código con Amazon CodeGuru Reviewer)
+ [ Adopt a test-driven development approach ](https://docs.aws.amazon.com/prescriptive-guidance/latest/best-practices-cdk-typescript-iac/development-best-practices.html)(Adoptar un enfoque de desarrollo basado en pruebas)
+ [ How DevFactory builds better applications with Amazon CodeGuru](https://aws.amazon.com/blogs/machine-learning/how-devfactory-builds-better-applications-with-amazon-codeguru/) (Cómo DevFactory crea mejores aplicaciones con Amazon CodeGuru)
+ [ On Pair Programming](https://martinfowler.com/articles/on-pair-programming.html) (Programación en pareja)
+ [ RENGA Inc. automates code reviews with Amazon CodeGuru](https://aws.amazon.com/blogs/machine-learning/renga-inc-automates-code-reviews-with-amazon-codeguru/) (RENGA Inc. automatiza las revisiones de código con Amazon CodeGuru)
+ [ The Art of Agile Development: Test-Driven Development](http://www.jamesshore.com/v2/books/aoad1/test_driven_development) (El arte del desarrollo ágil: desarrollo basado en pruebas)
+ [ Why code reviews matter (and actually save time\$1)](https://www.atlassian.com/agile/software-development/code-reviews) (Por qué son importantes las revisiones del código [¡y ahorran tiempo\$1])

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2020: Continuous improvement of code quality with Amazon CodeGuru](https://www.youtube.com/watch?v=iX1i35H1OVw) (AWS re:Invent 2020: Mejora continua de la calidad del código con Amazon CodeGuru)
+ [AWS Summit ANZ 2021 - Driving a test-first strategy with CDK and test driven development ](https://www.youtube.com/watch?v=1R7G_wcyd3s)(Impulso de una estrategia basada en las pruebas con CDK y desarrollo impulsado por pruebas)

 **Servicios relacionados:** 
+ [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html)
+ [ Amazon CodeGuru Profiler ](https://docs.aws.amazon.com/codeguru/latest/profiler-ug/what-is-codeguru-profiler.html)
+  [AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/welcome.html) 

# OPS05-BP08 Usar varios entornos
<a name="ops_dev_integ_multi_env"></a>

 Use diversos entornos para experimentar, desarrollar y poner a prueba su carga de trabajo. Utilice niveles crecientes de controles a medida que los entornos se acercan a la producción para ganar confianza en que su carga de trabajo funcionará según lo previsto cuando se despliegue. 

 **Patrones de uso no recomendados comunes:** 
+  Está realizando el desarrollo en un entorno compartido y otro desarrollador sobrescribe sus cambios de código. 
+  Los controles de seguridad restrictivos de su entorno de desarrollo compartido le impiden experimentar con nuevos servicios y características. 
+  Realiza pruebas de carga en sus sistemas de producción y provoca una interrupción a los usuarios. 
+  Se ha producido un error crítico que ha provocado la pérdida de datos en producción. En el entorno de producción, se intenta recrear las condiciones que condujeron a la pérdida de datos para poder identificar cómo ocurrió y evitar que vuelva a suceder. Para evitar más pérdida de datos durante las pruebas, se ve obligado a hacer que la aplicación no esté disponible para los usuarios. 
+  Utiliza un servicio de inquilino múltiple y no puede atender la solicitud de un cliente para tener un entorno dedicado. 
+  Es posible que no siempre haga pruebas, pero cuando las hace es en producción. 
+  Cree que la simplicidad de un entorno único anula el alcance del impacto de los cambios en el entorno. 

 **Beneficios de establecer esta práctica recomendada:** Al desplegar varios entornos puede atender varios entornos simultáneos de desarrollo, pruebas y producción sin crear conflictos entre los desarrolladores o las comunidades de usuarios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use varios entornos: proporcione a los desarrolladores entornos aislados con controles minimizados para permitir la experimentación. Proporcione entornos de desarrollo individuales para permitir el trabajo en paralelo, que aumenta la agilidad del desarrollo. Implemente controles más rigurosos en los entornos que están cercanos a la producción para que los desarrolladores puedan innovar. Utilice infraestructura como código y sistemas de administración de la configuración para implementar entornos que estén configurados de forma coherente con los controles presentes en la producción y asegurarse de que los sistemas funcionarán como se espera cuando se implementen. Cuando los entornos no estén en uso (por ejemplo, sistemas de desarrollo durante la noche y los fines de semana), apáguelos para evitar los costos asociados a los recursos inactivos. Cuando realice pruebas de carga, implemente entornos semejantes al de producción para obtener resultados válidos. 
  +  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
  +  [¿Cómo detengo e inicio instancias de Amazon EC2 en intervalos regulares con AWS Lambda?](https://aws.amazon.com/premiumsupport/knowledge-center/start-stop-lambda-cloudwatch/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Cómo detengo e inicio instancias de Amazon EC2 en intervalos regulares con AWS Lambda?](https://aws.amazon.com/premiumsupport/knowledge-center/start-stop-lambda-cloudwatch/) 
+  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 

# OPS05-BP09 Realizar cambios frecuentes, pequeños y reversibles
<a name="ops_dev_integ_freq_sm_rev_chg"></a>

 Los cambios frecuentes, pequeños y reversibles tienen menos alcance y menos repercusiones. Esto facilita la resolución de problemas, acelera la reparación y permite revertir los cambios. 

 **Patrones de uso no recomendados comunes:** 
+  Despliega una nueva versión de su aplicación trimestralmente. 
+  Realiza con frecuencia cambios en el esquema de su base de datos. 
+  Realiza actualizaciones manuales in situ, sobrescribiendo las instalaciones y configuraciones existentes. 

 **Beneficios de establecer esta práctica recomendada:** obtiene los beneficios de los esfuerzos de desarrollo más rápidamente desplegando pequeños cambios con frecuencia. Cuando los cambios son pequeños, es mucho más fácil identificar si tienen consecuencias no deseadas. Cuando los cambios son reversibles, hay menos riesgo de aplicar el cambio, ya que la recuperación se simplifica. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Realizar cambios frecuentes, pequeños y reversibles: este tipo de cambios reducen su alcance y su impacto. Esto facilita la resolución de problemas, acelera la reparación y permite revertir los cambios. También aumenta el ritmo con el que entrega valor a la empresa. 

# OPS05-BP10 Automatizar completamente la integración y el despliegue
<a name="ops_dev_integ_auto_integ_deploy"></a>

 Compilación, implementación, y comprobación automáticas de la carga de trabajo Esto reduce tanto los errores causados por los procesos manuales como el esfuerzo requerido para implementar los cambios. 

 Aplicar metadatos utilizando [etiquetas de recursos](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) y [Grupos de recursos de AWS](https://docs.aws.amazon.com/ARG/latest/APIReference/Welcome.html) siguiendo una estrategia [de etiquetado consistente](https://aws.amazon.com/answers/account-management/aws-tagging-strategies/) para permitir la identificación de sus recursos. Etiquete sus recursos para la organización, la contabilidad de costes, los controles de acceso y el objetivo de la ejecución de actividades de operaciones automatizadas. 

 **Patrones de uso no recomendados comunes:** 
+  El viernes, termina de crear el nuevo código para su ramificación de funcionalidades. El lunes, después de ejecutar sus scripts de pruebas de calidad del código y cada uno de sus scripts de pruebas unitarias, comprobará su código para la siguiente versión programada. 
+  Se le asigna la tarea de codificar una solución para un problema crítico que afecta a un gran número de clientes en producción. Después de probar la corrección, se confirma el código y se envía un correo electrónico a la gestión de cambios para solicitar la aprobación de su despliegue en producción. 

 **Beneficios de establecer esta práctica recomendada:** al implementar sistemas automatizados de administración de compilación y despliegue, se reducen los errores causados por los procesos manuales y se reduce el esfuerzo para desplegar los cambios, lo que permite a los miembros de su equipo centrarse en la entrega de valor empresarial. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Usar sistemas de administración de compilación y despliegue: utilice sistemas de administración de compilación y despliegue para reducir tanto los errores causados por los procesos manuales como el nivel de esfuerzo. Automatice completamente el proceso de integración e implementación, desde el registro del código hasta la construcción, prueba, despliegue y validación. Esto acorta el plazo de entrega, permite una mayor frecuencia de cambio y reduce el nivel de esfuerzo. 
  +  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
  +  [Prácticas recomendadas de integración continua para el desarrollo de software](https://www.youtube.com/watch?v=GEPJ7Lo346A) 
  +  [Slalom: entrega e integración continuas para aplicaciones sin servidor en AWS](https://www.youtube.com/watch?v=tEpx5VaW4WE) 
  +  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 
  +  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
+  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 

 **Vídeos relacionados:** 
+  [Prácticas recomendadas de integración continua para el desarrollo de software](https://www.youtube.com/watch?v=GEPJ7Lo346A) 
+  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 
+  [Slalom: entrega e integración continuas para aplicaciones sin servidor en AWS](https://www.youtube.com/watch?v=tEpx5VaW4WE) 

# OPS 6 ¿Cómo mitiga los riesgos de despliegue?
<a name="ops-06"></a>

 Adopte enfoques que proporcionen una respuesta rápida sobre la calidad y permitan una recuperación rápida de los cambios que no tienen los resultados deseados. El uso de estas prácticas ayuda a mitigar el impacto de los problemas generados con la implementación de cambios. 

**Topics**
+ [OPS06-BP01 Planificar para hacer frente a los cambios fallidos](ops_mit_deploy_risks_plan_for_unsucessful_changes.md)
+ [OPS06-BP02 Probar y validar los cambios](ops_mit_deploy_risks_test_val_chg.md)
+ [OPS06-BP03 Usar sistemas de administración de despliegues](ops_mit_deploy_risks_deploy_mgmt_sys.md)
+ [OPS06-BP04 Realizar pruebas con despliegues limitados](ops_mit_deploy_risks_test_limited_deploy.md)
+ [OPS06-BP05 Desplegar usando entornos paralelos](ops_mit_deploy_risks_deploy_to_parallel_env.md)
+ [OPS06-BP06 Implementar cambios frecuentes, pequeños y reversibles](ops_mit_deploy_risks_freq_sm_rev_chg.md)
+ [OPS06-BP07 Automatizar completamente la integración y el despliegue](ops_mit_deploy_risks_auto_integ_deploy.md)
+ [OPS06-BP08 Automatizar las pruebas y la restauración](ops_mit_deploy_risks_auto_testing_and_rollback.md)

# OPS06-BP01 Planificar para hacer frente a los cambios fallidos
<a name="ops_mit_deploy_risks_plan_for_unsucessful_changes"></a>

 Plan para volver a un estado conocido correcto, o solucionar en el entorno de producción si un cambio no tiene el resultado deseado. Esta preparación reduce el tiempo de recuperación mediante respuestas más rápidas. 

 **Patrones de uso no recomendados comunes:** 
+  Ha realizado un despliegue y la aplicación se comporta de forma inestable, pero parece que hay usuarios activos en el sistema. Debe decidir si deshacer el cambio y afectar a los usuarios activos o esperar a deshacer el cambio sabiendo que los usuarios podrían verse afectados de todos modos. 
+  Después de hacer un cambio de rutina, sus nuevos entornos son accesibles, pero una de sus subredes ha quedado inaccesible. Tiene que decidir si revertirlo todo o intentar reparar la subred inaccesible. Mientras toma esa decisión, la subred permanece inaccesible. 

 **Beneficios de establecer esta práctica recomendada:** disponer de un plan reduce el tiempo medio de recuperación (MTTR) de los cambios fallidos, reduciendo el impacto en sus usuarios finales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Planificar para hacer frente a los cambios fallidos: planifique para volver a un estado conocido correcto (es decir, revierta el cambio) o arregle el entorno de producción (es decir, aplique el cambio) si un cambio no tiene el resultado deseado. Cuando identifique cambios fallidos que no pueda revertir, aplique la diligencia debida antes de adoptar el cambio. 

# OPS06-BP02 Probar y validar los cambios
<a name="ops_mit_deploy_risks_test_val_chg"></a>

 Probar los cambios y validar los resultados en todas las etapas del ciclo de vida, con el fin de confirmar las nuevas características y minimizar el riesgo y el impacto de las implementaciones fallidas. 

 En AWS, puede crear entornos paralelos temporales, para reducir el riesgo, el esfuerzo y el costo de la experimentación y las pruebas. Automatice el despliegue de estos entornos con [AWS CloudFormation](https://aws.amazon.com/cloudformation/) para garantizar la coherencia de sus entornos temporales. 

 **Antipatrones usuales:** 
+  Despliega una nueva y genial función en su aplicación. No funciona. No sabe. 
+  Actualiza sus certificados. Instala accidentalmente los certificados en los componentes erróneos. No sabe. 

 **Beneficios de establecer esta práctica recomendada:** Al probar y validar los cambios después de la implantación, podrá identificar los problemas con antelación y tendrá la oportunidad de mitigar el impacto en sus clientes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Probar y validad los cambios: pruebe los cambios y valide los resultados en todas las etapas del ciclo de vida (por ejemplo, desarrollo, comprobación y producción), para confirmar las nuevas características y minimizar el riesgo y el impacto de las implementaciones fallidas. 
  +  [AWS Cloud9](https://aws.amazon.com/cloud9/) 
  +  [¿Qué es AWS Cloud9?](https://docs.aws.amazon.com/cloud9/latest/user-guide/welcome.html) 
  +  [Cómo probar y depurar AWS CodeDeploy localmente antes de enviar su código](https://aws.amazon.com/blogs/devops/how-to-test-and-debug-aws-codedeploy-locally-before-you-ship-your-code/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Cloud9](https://aws.amazon.com/cloud9/) 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 
+  [Cómo probar y depurar AWS CodeDeploy localmente antes de enviar su código](https://aws.amazon.com/blogs/devops/how-to-test-and-debug-aws-codedeploy-locally-before-you-ship-your-code/) 
+  [¿Qué es AWS Cloud9?](https://docs.aws.amazon.com/cloud9/latest/user-guide/welcome.html) 

# OPS06-BP03 Usar sistemas de administración de despliegues
<a name="ops_mit_deploy_risks_deploy_mgmt_sys"></a>

 Use sistemas de administración de implementaciones para realizar un seguimiento e implementar el cambio. Esto reduce tanto los errores causados por los procesos manuales como el esfuerzo requerido para implementar los cambios. 

 En AWS, puede crear canalizaciones de integración continua/despliegue continuo (CI/CD) con servicios como [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) (por ejemplo, AWS CodeCommit, [AWS CodeBuild](https://aws.amazon.com/codebuild/), [AWS CodePipeline](https://aws.amazon.com/codepipeline/), [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)y [AWS CodeStar](https://aws.amazon.com/codestar/)). 

 **Patrones de uso no recomendados comunes:** 
+  Implementa manualmente actualizaciones en los servidores de aplicaciones en toda su flota y varios servidores dejan de responder debido a errores de actualización. 
+  Realiza despliegues manualmente en su flota de servidores de aplicaciones en el transcurso de muchas horas. La incoherencia en las versiones durante el cambio provoca comportamientos inesperados. 

 **Beneficios de establecer esta práctica recomendada:** La adopción de sistemas de administración del despliegue reduce el nivel de esfuerzo para desplegar cambios y hacer un seguimiento de ellos, así como la frecuencia de los errores provocados por los procedimientos manuales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use sistemas de administración de despliegues: úselos para realizar un seguimiento del cambio e implementarlo. Esto reducirá los errores causados por los procesos manuales y disminuirá el nivel de esfuerzo para implementar los cambios. Automatice la integración y la implementación del proceso desde el registro del código hasta la comprobación, la implementación y la validación. Esto reduce el plazo de entrega, permite una mayor frecuencia de cambio y reduce aún más el nivel de esfuerzo. 
  +  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 
  +  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
  +  [¿Qué es AWS Elastic Beanstalk?](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/Welcome.html) 
  +  [¿Qué es Amazon API Gateway?](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Guía del usuario de AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 
+  [Probar una muestra de despliegue azul-verde en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/applications-create-blue-green.html) 
+  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
+  [¿Qué es AWS Elastic Beanstalk?](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/Welcome.html) 
+  [¿Qué es Amazon API Gateway?](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html) 

 **Vídeos relacionados:** 
+  [Profundice en técnicas avanzadas de entrega continua mediante el uso de AWS](https://www.youtube.com/watch?v=Lrrgd0Kemhw) 
+  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 

# OPS06-BP04 Realizar pruebas con despliegues limitados
<a name="ops_mit_deploy_risks_test_limited_deploy"></a>

 Realizar pruebas con implementaciones limitadas junto a los sistemas existentes para confirmar los resultados deseados antes de la implementación a gran escala. Por ejemplo, use la prueba del valor controlado de la implementación o las implementaciones de una caja. 

 **Patrones de uso no recomendados comunes:** 
+  Despliega un cambio sin éxito en toda la producción de una sola vez. No lo sabe. 

 **Beneficios de establecer esta práctica recomendada:** al probar y validar los cambios después de un despliegue limitado, podrá identificar los problemas en una fase temprana con un impacto mínimo en sus clientes, lo que le dará la oportunidad de mitigar aún más el impacto en sus clientes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Realizar pruebas con despliegues limitados: realice pruebas con despliegues limitados junto a los sistemas existentes para confirmar los resultados deseados antes del despliegue a gran escala. Por ejemplo, use la prueba del valor controlado de la implementación o las implementaciones de una caja. 
  +  [Guía del usuario de AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
  +  [Despliegues azul-verde con AWS Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.CNAMESwap.html) 
  +  [Configurar un despliegue de versiones de valores controlados de API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/canary-release.html) 
  +  [Probar una muestra de despliegue azul-verde en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/applications-create-blue-green.html) 
  +  [Trabajar con configuraciones de despliegue en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Guía del usuario de AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
+  [Despliegues azul-verde con AWS Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.CNAMESwap.html) 
+  [Configurar un despliegue de versiones de valores controlados de API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/canary-release.html) 
+  [Probar una muestra de despliegue azul-verde en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/applications-create-blue-green.html) 
+  [Trabajar con configuraciones de despliegue en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations.html) 

# OPS06-BP05 Desplegar usando entornos paralelos
<a name="ops_mit_deploy_risks_deploy_to_parallel_env"></a>

 Implemente los cambios en entornos paralelos y luego pase al nuevo entorno. Mantenga los entornos anteriores hasta que se confirme la implementación correcta. Al hacerlo, se minimiza el tiempo de recuperación al permitir la restauración al entorno anterior. 

 **Patrones de uso no recomendados comunes:** 
+  Realiza un despliegue mutable modificando los sistemas existentes. Tras descubrir que el cambio no ha tenido éxito, se ve obligado a modificar de nuevo los sistemas para restaurar la versión antigua, lo que prolonga el tiempo de recuperación. 
+  Durante una ventana de mantenimiento, se desmantela el antiguo entorno y se empieza a crear el nuevo. Tras muchas horas de procedimiento, se descubren problemas irrecuperables en el despliegue. Aunque no le quedan fuerzas, tiene que encontrar los procedimientos de despliegue anteriores y empezar a reconstruir el antiguo entorno. 

 **Beneficios de establecer esta práctica recomendada:** al utilizar entornos paralelos, puede predesplegar el nuevo entorno y pasar a ellos cuando lo desee. Si el nuevo entorno no tiene éxito, puede recuperarse rápidamente volviendo al entorno original. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Desplegar usando entornos paralelos: implemente los cambios en entornos paralelos y luego pase al nuevo entorno. Mantenga los entornos anteriores hasta que se confirme la implementación correcta. Esto minimiza el tiempo de recuperación al permitir la restauración al entorno anterior. Por ejemplo, utilizar infraestructuras inmutables con implementaciones azul/verde. 
  +  [Trabajar con configuraciones de despliegue en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations.html) 
  +  [Despliegues azul-verde con AWS Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.CNAMESwap.html) 
  +  [Configurar un despliegue de versiones de valores controlados de API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/canary-release.html) 
  +  [Probar una muestra de despliegue azul-verde en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/applications-create-blue-green.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Guía del usuario de AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
+  [Despliegues azul-verde con AWS Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.CNAMESwap.html) 
+  [Configurar un despliegue de versiones de valores controlados de API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/canary-release.html) 
+  [Probar una muestra de despliegue azul-verde en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/applications-create-blue-green.html) 
+  [Trabajar con configuraciones de despliegue en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations.html) 

 **Vídeos relacionados:** 
+  [Profundice en técnicas avanzadas de entrega continua mediante el uso de AWS](https://www.youtube.com/watch?v=Lrrgd0Kemhw) 

# OPS06-BP06 Implementar cambios frecuentes, pequeños y reversibles
<a name="ops_mit_deploy_risks_freq_sm_rev_chg"></a>

 Use cambios frecuentes, pequeños y reversibles para reducir el alcance de un cambio. Lo que se traduce en una solución más fácil de los problemas y una solución más rápida con la opción de revertir un cambio. 

 **Antipatrones usuales:** 
+  Despliega una nueva versión de su aplicación trimestralmente. 
+  Realiza con frecuencia cambios en el esquema de su base de datos. 
+  Realiza actualizaciones manuales in situ, sobrescribiendo las instalaciones y configuraciones existentes. 

 **Beneficios de establecer esta práctica recomendada:** Reconoce los beneficios de los esfuerzos de desarrollo más rápidamente desplegando pequeños cambios con frecuencia. Cuando los cambios son pequeños, es mucho más fácil identificar si tienen consecuencias no deseadas. Cuando los cambios son reversibles, hay menos riesgo de aplicar el cambio, ya que la recuperación se simplifica. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Desplegar cambios frecuentes, pequeños y reversibles: utilice cambios frecuentes, pequeños y reversibles para reducir el alcance de un cambio. Lo que se traduce en una solución más fácil de los problemas y una solución más rápida con la opción de revertir un cambio. 

# OPS06-BP07 Automatizar completamente la integración y el despliegue
<a name="ops_mit_deploy_risks_auto_integ_deploy"></a>

 Compilación, implementación, y comprobación automáticas de la carga de trabajo Esto reduce los errores causados por los procesos manuales y reduce el esfuerzo para implementar los cambios. 

 Aplicar metadatos utilizando [etiquetas de recursos](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) y [Grupos de recursos de AWS](https://docs.aws.amazon.com/ARG/latest/APIReference/Welcome.html) siguiendo una estrategia [de etiquetado consistente](https://aws.amazon.com/answers/account-management/aws-tagging-strategies/) para permitir la identificación de sus recursos. Etiquete sus recursos para la organización, la contabilidad de costes, los controles de acceso y el objetivo de la ejecución de actividades de operaciones automatizadas. 

 **Patrones de uso no recomendados comunes:** 
+  El viernes, termina de crear el nuevo código para su ramificación de funcionalidades. El lunes, después de ejecutar sus scripts de pruebas de calidad del código y cada uno de sus scripts de pruebas unitarias, comprobará su código para la siguiente versión programada. 
+  Se le asigna la tarea de codificar una solución para un problema crítico que afecta a un gran número de clientes en producción. Después de probar la corrección, se confirma el código y se envía un correo electrónico a la gestión de cambios para solicitar la aprobación de su despliegue en producción. 

 **Beneficios de establecer esta práctica recomendada:** al implementar sistemas automatizados de administración de compilación y despliegue, se reducen los errores causados por los procesos manuales y se reduce el esfuerzo para desplegar los cambios, lo que permite a los miembros de su equipo centrarse en la entrega de valor empresarial. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Usar sistemas de administración de compilación y despliegue: utilice sistemas de administración de compilación y despliegue para reducir tanto los errores causados por los procesos manuales como el nivel de esfuerzo. Automatice completamente el proceso de integración e implementación, desde el registro del código hasta la construcción, prueba, despliegue y validación. Esto acorta el plazo de entrega, permite una mayor frecuencia de cambio y reduce el nivel de esfuerzo. 
  +  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
  +  [Prácticas recomendadas de integración continua para el desarrollo de software](https://www.youtube.com/watch?v=GEPJ7Lo346A) 
  +  [Slalom: entrega e integración continuas para aplicaciones sin servidor en AWS](https://www.youtube.com/watch?v=tEpx5VaW4WE) 
  +  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 
  +  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
  +  [Profundice en técnicas avanzadas de entrega continua mediante el uso de AWS](https://www.youtube.com/watch?v=Lrrgd0Kemhw) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Probar un despliegue azul/verde de muestra en AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/applications-create-blue-green.html) 
+  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
+  [¿Qué es AWS CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 

 **Vídeos relacionados:** 
+  [Prácticas recomendadas de integración continua para el desarrollo de software](https://www.youtube.com/watch?v=GEPJ7Lo346A) 
+  [Profundice en técnicas avanzadas de entrega continua mediante el uso de AWS](https://www.youtube.com/watch?v=Lrrgd0Kemhw) 
+  [Introducción a AWS CodeDeploy: despliegue automático de software con Amazon Web Services](https://www.youtube.com/watch?v=Wx-ain8UryM) 
+  [Slalom: entrega e integración continuas para aplicaciones sin servidor en AWS](https://www.youtube.com/watch?v=tEpx5VaW4WE) 

# OPS06-BP08 Automatizar las pruebas y la restauración
<a name="ops_mit_deploy_risks_auto_testing_and_rollback"></a>

 Automatizar las pruebas de los entornos implementados para confirmar los resultados deseados. Automatizar la restauración a un estado conocido correcto anterior cuando no se logren resultados para minimizar el tiempo de recuperación y reducir los errores causados por los procesos manuales. 

 **Patrones de uso no recomendados comunes:** 
+  Despliega los cambios en su carga de trabajo. Una vez que vea que el cambio se ha completado, inicie las pruebas posteriores al despliegue. Después de ver que están completos, se da cuenta de que no se puede utilizar su carga de trabajo y los clientes están desconectados. A continuación, empieza a revertir a la versión anterior. Después de un tiempo prolongado para detectar el problema, el tiempo de recuperación se prolonga por su nuevo despliegue manual. 

 **Beneficios de establecer esta práctica recomendada:** Al probar y validar los cambios tras el despliegue, podrá identificar los problemas inmediatamente. Al revertir automáticamente a la versión anterior, se minimiza el impacto en sus clientes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatice las pruebas y la restauración: automatice las pruebas de los entornos desplegados para confirmar los resultados deseados. Automatizar la restauración a un estado conocido correcto anterior cuando no se logren resultados para minimizar el tiempo de recuperación y reducir los errores causados por los procesos manuales. Por ejemplo, realizar transacciones sintéticas detalladas de usuario después de la implementación, verificar los resultados y revertir en caso de error. 
  +  [Volver a implementar y revertir un despliegue con AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployments-rollback-and-redeploy.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Volver a implementar y revertir un despliegue con AWS CodeDeploy](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployments-rollback-and-redeploy.html) 

# OPS 7 ¿Cómo sabe que está listo para soportar una carga de trabajo?
<a name="ops-07"></a>

 Evalúe la disponibilidad operativa de la carga de trabajo, los procesos y procedimientos, y el personal para comprender los riesgos operativos relacionados con la carga de trabajo. 

**Topics**
+ [OPS07-BP01 Garantizar la capacidad del personal](ops_ready_to_support_personnel_capability.md)
+ [OPS07-BP02 Garantizar una revisión sistemática de la preparación operativa](ops_ready_to_support_const_orr.md)
+ [OPS07-BP03 Uso de runbooks para realizar los procedimientos](ops_ready_to_support_use_runbooks.md)
+ [OPS07-BP04 Usar guías de estrategias para investigar problemas](ops_ready_to_support_use_playbooks.md)
+ [OPS07-BP05 Tomar decisiones fundamentadas para desplegar sistemas y cambios](ops_ready_to_support_informed_deploy_decisions.md)
+ [OPS07-BP06 Habilitar planes de asistencia para cargas de trabajo de producción](ops_ready_to_support_enable_support_plans.md)

# OPS07-BP01 Garantizar la capacidad del personal
<a name="ops_ready_to_support_personnel_capability"></a>

Posea un mecanismo para comprobar que cuenta con la cantidad adecuada de personal formado para atender la carga de trabajo. Deben recibir formación sobre la plataforma y los servicios que componen su carga de trabajo. Ofrézcales los conocimientos necesarios para operar la carga de trabajo. Debe disponer de suficiente personal formado para atender el funcionamiento normal de la carga de trabajo y solucionar las incidencias que se produzcan. Cuente con suficiente personal para que pueda rotar durante las guardias y vacaciones, a fin de evitar el síndrome de burnout. 

 **Resultado deseado:** 
+  Hay suficiente personal formado para atender la carga de trabajo cuando esta se encuentre disponible. 
+  El personal recibe formación sobre el software y los servicios que componen la carga de trabajo. 

 **Antipatrones usuales:** 
+ Se despliega una carga de trabajo sin miembros del equipo formados para operar la plataforma y los servicios en uso. 
+  Se carece de suficiente personal para facilitar las rotaciones de guardia o para que el personal se tome tiempo libre. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Contar con miembros del equipo cualificados permite un apoyo eficaz para su carga de trabajo. 
+  Si hay suficientes miembros en el equipo, es posible atender la carga de trabajo y las rotaciones de guardia, al tiempo que disminuye el riesgo de síndrome de burnout. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Compruebe que haya suficiente personal formado para atender la carga de trabajo. Compruebe que cuenta con suficientes miembros del equipo para cubrir las actividades operativas, incluidas las rotaciones de guardia. 

 **Ejemplo de cliente** 

 AnyCompany Retail se asegura de que los equipos que atienden la carga de trabajo cuentan con la formación y el personal adecuados. Tienen suficientes ingenieros para tolerar una rotación de guardia. El personal recibe formación sobre el software y la plataforma en los que se basa la carga de trabajo y se le anima a obtener certificaciones. Hay personal suficiente para que los empleados puedan tomarse tiempo libre sin dejar de atender la carga de trabajo y la rotación de guardia. 

 **Pasos para la implementación** 

1.  Asigne un número adecuado de personal para operar y atender la carga de trabajo, incluidas las tareas de guardia. 

1.  Forme a su personal sobre el software y las plataformas que componen su carga de trabajo. 

   1.  [AWS Training and Certification](https://aws.amazon.com/training/) tiene una biblioteca de cursos acerca de AWS. Ofrece cursos gratuitos y de pago, en línea y presenciales. 

   1.  [AWSorganiza eventos y seminarios web](https://aws.amazon.com/events/) en los que aprenderá de la mano de expertos de AWS. 

1.  Evalúe periódicamente el tamaño y las competencias del equipo a medida que cambien las condiciones operativas y la carga de trabajo. Ajuste el tamaño y las competencias del equipo para que se ciñan a los requisitos operativos. 

 **Nivel de esfuerzo para el plan de implementación:** alto. La contratación y la formación de un equipo que atienda la carga de trabajo puede suponer un esfuerzo considerable, pero promete importantes ventajas a largo plazo. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS11-BP04 Realizar la administración de conocimientos](ops_evolve_ops_knowledge_management.md) - Los miembros del equipo deben disponer de la información necesaria para operar y atender la carga de trabajo. La administración del conocimiento es la clave para alcanzar este objetivo. 

 **Documentos relacionados:** 
+  [AWS Events and Webinars](https://aws.amazon.com/events/) (Eventos y seminarios web de AWS) 
+  [AWS Training and Certification](https://aws.amazon.com/training/) (Formación y certificación de AWS) 

# OPS07-BP02 Garantizar una revisión sistemática de la preparación operativa
<a name="ops_ready_to_support_const_orr"></a>

Utilice las revisiones de la preparación operativa (ORR) para validar que puede utilizar su carga de trabajo. ORR es un mecanismo desarrollado en Amazon para validar que los equipos puedan utilizar con seguridad sus cargas de trabajo. Una ORR es un proceso de revisión e inspección que utiliza una lista de verificación de requisitos. Una ORR es una experiencia de autoservicio que los equipos utilizan para certificar sus cargas de trabajo. Las ORR incluyen las prácticas recomendadas procedentes de las lecciones aprendidas en nuestros años de creación de software. 

 Una lista de verificación de ORR se compone de recomendaciones de arquitectura, proceso operativo, administración de eventos y calidad de lanzamiento. Nuestro proceso de corrección de errores (CoE) es uno de los principales impulsores de estos elementos. Su análisis posterior al incidente debe impulsar la evolución de su propia ORR. Una ORR no solo consiste en seguir las prácticas recomendadas, sino en evitar que se repitan sucesos ya vistos. Por último, los requisitos de seguridad, gobernanza y conformidad también pueden incluirse en una ORR. 

 Ejecute las ORR antes de que una carga de trabajo se lance a la disponibilidad general y, después, a lo largo del ciclo de vida de desarrollo del software. Ejecutar la ORR antes del lanzamiento aumenta su capacidad para utilizar la carga de trabajo de forma segura. Vuelva a ejecutar periódicamente su ORR en la carga de trabajo para detectar cualquier desviación de las prácticas recomendadas. Puede tener listas de verificación de ORR para el lanzamiento de nuevos servicios y ORR para las revisiones periódicas. Esto le ayuda a mantenerse al día en cuanto a las nuevas prácticas recomendadas que surgen y a incorporar las lecciones aprendidas del análisis posterior al incidente. A medida que madure su uso de la nube, podrá incorporar los requisitos de ORR en su arquitectura de forma predeterminada. 

 **Resultado deseado:**  tiene una lista de verificación de ORR con las prácticas recomendadas para su organización. Las ORR se realizan antes de lanzar las cargas de trabajo. Las ORR se realizan periódicamente a lo largo del ciclo de vida de la carga de trabajo. 

 **Patrones comunes de uso no recomendados:** 
+ Lanza una carga de trabajo sin saber si puede utilizarla. 
+ Los requisitos de gobernanza y seguridad no se incluyen en la certificación de una carga de trabajo para su lanzamiento. 
+ Las cargas de trabajo no se revalúan periódicamente. 
+ Las cargas de trabajo se lanzan sin los procedimientos necesarios. 
+ Observa la repetición de los mismos errores de causa raíz en varias cargas de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Sus cargas de trabajo incluyen las prácticas recomendadas de arquitectura, procesos y administración. 
+  Las lecciones aprendidas se incorporan al proceso de ORR. 
+  Se aplican los procedimientos necesarios cuando se lanzan las cargas de trabajo. 
+  Las ORR se ejecutan a lo largo del ciclo de vida del software de sus cargas de trabajo. 

 **Nivel de riesgo si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Una ORR es dos cosas: un proceso y una lista de verificación. Su organización debe adoptar el proceso de ORR y contar con la asistencia de un patrocinador ejecutivo. Como mínimo, las ORR deben realizarse antes de que una carga de trabajo se lance a la disponibilidad general. Ejecute la ORR durante todo el ciclo de vida del desarrollo del software para mantenerla actualizada con las prácticas recomendadas o los nuevos requisitos. La lista de verificación de ORR debe incluir elementos de configuración, requisitos de seguridad y gobernanza, y las prácticas recomendadas de su organización. Con el tiempo, puede utilizar servicios, como [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html), [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)y [Barreras de protección de AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html)para incorporar las prácticas recomendadas de la ORR en barreras de protección para la detección automática de las prácticas recomendadas. 

 **Ejemplo de cliente** 

 Tras varios incidentes de producción, AnyCompany Retail decidió implementar un proceso de ORR. Elaboró una lista de verificación compuesta de prácticas recomendadas, requisitos de gobernanza y conformidad, y lecciones aprendidas de las interrupciones. Las nuevas cargas de trabajo llevan a cabo las ORR antes de su lanzamiento. Cada carga de trabajo realiza una ORR anual con un subconjunto de prácticas recomendadas para incorporar nuevas prácticas y requisitos que se agregan a la lista de verificación de ORR. Con el tiempo, AnyCompany Retail utilizó [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) para detectar algunas prácticas recomendadas, lo que agilizó el proceso de ORR. 

 **Pasos para la aplicación** 

 Para saber más sobre las ORR, lea el [documento técnico sobre las revisiones de la preparación operativa (ORR)](https://docs.aws.amazon.com/wellarchitected/latest/operational-readiness-reviews/wa-operational-readiness-reviews.html). En él se ofrece información detallada sobre la historia del proceso ORR, cómo crear su propia práctica ORR y cómo desarrollar su lista de verificación de ORR. Los siguientes pasos son una versión abreviada de ese documento. Para conocer en profundidad qué son las ORR y cómo crear las suyas, le recomendamos que lea ese documento técnico. 

1. Reúna a las principales partes interesadas, incluidos los representantes de seguridad, operaciones y desarrollo. 

1. Pida a cada parte interesada que aporte al menos un requisito. Para la primera iteración, intente limitar el número de elementos a treinta o menos. 
   +  [El Apéndice B: Ejemplo de preguntas de ORR](https://docs.aws.amazon.com/wellarchitected/latest/operational-readiness-reviews/appendix-b-example-orr-questions.html) del documento técnico sobre las revisiones de la preparación operativa (ORR) contiene las preguntas de ejemplo que puede usar para empezar. 

1. Recopile sus requisitos en una hoja de cálculo. 
   + Puede usar [enfoques personalizados](https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-custom.html) en [AWS Well-Architected Tool](https://console.aws.amazon.com/wellarchiected/) para desarrollar su ORR y compartirlos entre sus cuentas y su organización de AWS. 

1. Identifique una carga de trabajo para realizar la ORR en ella. Lo ideal es una carga de trabajo previa al lanzamiento o una carga de trabajo interna. 

1. Repase la lista de verificación de ORR y tome nota de los descubrimientos realizados. Los descubrimientos pueden no ser correctos si existe una mitigación. Agregue cualquier descubrimiento que carezca de una mitigación a su lista de tareas pendientes e impleméntelas antes de lanzarlas. 

1. Siga agregando las prácticas recomendadas y los requisitos a su lista de verificación ORR con el tiempo. 

 Los clientes de Soporte con asistencia empresarial pueden solicitar el [taller de revisión de la preparación operativa](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/) a su gerente técnico de cuentas. El taller es una sesión de *trabajo en sentido inverso* interactiva para desarrollar su propia lista de verificación de ORR. 

 **Nivel de esfuerzo para el plan de implementación:** Alto. La adopción de una práctica de ORR en su organización requiere el patrocinio ejecutivo y la aceptación de las partes interesadas. Cree y actualice la lista de verificación con las aportaciones de toda su organización. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [OPS01-BP03 Evaluar los requisitos de gobernanza](ops_priorities_governance_reqs.md) : los requisitos de gobernanza encajan de forma natural en una lista de verificación de ORR. 
+ [OPS01-BP04 Evaluar los requisitos de cumplimiento](ops_priorities_compliance_reqs.md) : los requisitos de conformidad se incluyen a veces en una lista de verificación de ORR. Otras veces son un proceso independiente. 
+ [OPS03-BP07 Dotar a los equipos de los recursos adecuados](ops_org_culture_team_res_appro.md) : la capacidad del equipo es un buen candidato para un requisito de ORR. 
+ [OPS06-BP01 Planificar para hacer frente a los cambios fallidos](ops_mit_deploy_risks_plan_for_unsucessful_changes.md) : antes de lanzar la carga de trabajo, debe establecerse un plan de restauración o de avance. 
+ [OPS07-BP01 Garantizar la capacidad del personal](ops_ready_to_support_personnel_capability.md) : para respaldar una carga de trabajo hay que contar con el personal necesario. 
+ [SEC01-BP03 Identificar y validar objetivos de control](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_securely_operate_control_objectives.html) : los objetivos de control de seguridad son excelentes requisitos de ORR. 
+ [REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](https://docs.aws.amazon.com/wellarchitected/latest/framework/rel_planning_for_recovery_objective_defined_recovery.html) : los planes de recuperación de desastres son un buen requisito de ORR. 
+ [COST02-BP01 Desarrollar políticas basadas en los requisitos de su organización](https://docs.aws.amazon.com/wellarchitected/latest/framework/cost_govern_usage_policies.html) : las políticas de administración de costes son adecuadas para incluirlas en su lista de verificación de ORR. 

 **Documentos relacionados:** 
+  [AWS Control Tower - Guardrails in AWS Control Tower (AWS Control Tower: Barreras de protección en AWS Control Tower)](https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html) 
+  [AWS Well-Architected Tool - Custom Lenses (AWS Well-Architected Tool: enfoques personalizados)](https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-custom.html) 
+  [Plantilla de revisión de la preparación operativa de Adrian Hornsby](https://medium.com/the-cloud-architect/operational-readiness-review-template-e23a4bfd8d79) 
+  [Documento técnico sobre las revisiones de la preparación operativa (ORR)](https://docs.aws.amazon.com/wellarchitected/latest/operational-readiness-reviews/wa-operational-readiness-reviews.html) 

 **Vídeos relacionados:** 
+  [AWS Supports You \$1 Building an Effective Operational Readiness Review (ORR) (AWS Supports You \$1 Elaboración de una revisión de la preparación operativa [ORR])](https://www.youtube.com/watch?v=Keo6zWMQqS8) 

 **Ejemplos relacionados:** 
+  [Sample Operational Readiness Review (ORR) Lens (Enfoque de muestra de revisión de la preparación operativa [ORR])](https://github.com/aws-samples/custom-lens-wa-sample/tree/main/ORR-Lens) 

 **Servicios relacionados:** 
+  [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html) 
+  [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) 
+  [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html) 
+  [AWS Well-Architected Tool](https://docs.aws.amazon.com/wellarchitected/latest/userguide/intro.html) 

# OPS07-BP03 Uso de runbooks para realizar los procedimientos
<a name="ops_ready_to_support_use_runbooks"></a>

 Un *runbook* es un proceso documentado para lograr un resultado específico. Los runbooks consisten en una serie de pasos que alguien sigue para conseguir algo. Los runbooks se han utilizado en operaciones que se remontan a los primeros días de la aviación. En las operaciones en la nube, utilizamos runbooks para reducir el riesgo y lograr los resultados deseados. En su forma más simple, un runbook es una lista de verificación para completar una tarea. 

 Los runbooks son una parte esencial del funcionamiento de su carga de trabajo. Desde la incorporación de un nuevo miembro del equipo hasta el despliegue de una versión importante, los runbooks son los procesos codificados que proporcionan resultados coherentes independientemente de quién los utilice. Los runbooks deben publicarse en una ubicación central y actualizarse a medida que el proceso evolucione, ya que la actualización de los runbooks es un componente clave de un proceso de administración de cambios. También deben incluir directrices sobre la gestión de errores, las herramientas, los permisos, las excepciones y las escalaciones en caso de que se produzca un problema. 

 A medida que su organización madure, comience a automatizar los runbooks. Comience con runbooks que sean cortos y se utilicen con frecuencia. Utilice lenguajes de scripting para automatizar pasos o facilitar su realización. A medida que automatice los primeros runbooks, dedicará tiempo a automatizar runbooks más complejos. Con el tiempo, la mayoría de sus runbooks deberían estar automatizados de alguna manera. 

 **Resultado deseado:** Su equipo dispone de una colección de guías paso a paso para realizar las tareas de la carga de trabajo. Los runbooks contienen el resultado deseado, las herramientas y los permisos necesarios, y las instrucciones para la gestión de errores. Se almacenan en una ubicación central y se actualizan con frecuencia. 

 **Patrones comunes de uso no recomendados:** 
+  Depender de la memoria para completar cada paso de un proceso. 
+  Desplegar manualmente los cambios sin una lista de verificación. 
+  Diferentes miembros del equipo realizan el mismo proceso pero con diferentes pasos o resultados. 
+  Dejar que los runbooks se desincronicen con los cambios del sistema y la automatización. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Reducción de los índices de error en las tareas manuales. 
+  Las operaciones se realizan de forma coherente. 
+  Los nuevos miembros del equipo pueden empezar a realizar tareas antes. 
+  Los runbooks pueden automatizarse para reducir el trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los runbooks pueden adoptar varias formas en función del nivel de madurez de su organización. Como mínimo, deben consistir en un documento de texto paso a paso. El resultado deseado debe indicarse claramente. Documente claramente los permisos o herramientas especiales necesarios. Proporcione directrices detalladas sobre la gestión de errores y las escalaciones en caso de que algo vaya mal. Indique el propietario del runbook y publíquelo en una ubicación central. Una vez que el runbook esté documentado, valídelo haciendo que otra persona de su equipo lo ejecute. A medida que los procedimientos evolucionen, actualice sus runbooks de acuerdo con su proceso de administración de cambios. 

 Sus runbooks deben automatizarse a medida que su organización madura. Con servicios como [las automatizaciones de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html), puede transformar un texto plano en automatizaciones que pueden ejecutarse contra su carga de trabajo. Estas automatizaciones pueden ejecutarse en respuesta a eventos, reduciendo la carga operativa para mantener su carga de trabajo. 

 **Ejemplo de cliente** 

 AnyCompany Retail debe realizar actualizaciones del esquema de la base de datos durante despliegues de software. El equipo de operaciones en la nube trabajó con el equipo de administración de bases de datos para crear un runbook para desplegar manualmente estos cambios. El runbook enumeraba cada paso del proceso en forma de lista de verificación. Incluía una sección sobre la gestión de errores en caso de que algo saliera mal. Publicaron el runbook en su wiki interna junto con sus otros runbooks. El equipo de operaciones en la nube tiene previsto automatizar el runbook en un futuro sprint. 

## Pasos para la aplicación
<a name="implementation-steps"></a>

 Si no tiene un repositorio de documentos, un repositorio de control de versiones es un buen lugar para empezar a crear su biblioteca de runbooks. Puede crear sus runbooks usando Markdown. Hemos proporcionado una plantilla de runbook de ejemplo que puede utilizar para empezar a crear runbooks. 

```
# Runbook Title ## Runbook Info | Runbook ID | Description | Tools Used | Special Permissions | Runbook Author | Last Updated | Escalation POC | |-------|-------|-------|-------|-------|-------|-------| | RUN001 | What is this runbook for? What is the desired outcome? | Tools | Permissions | Your Name | 2022-09-21 | Escalation Name | ## Steps 1. Step one 2. Step two
```

1.  Si no tiene un repositorio de documentación o un wiki, cree un nuevo repositorio de control de versiones en su sistema de control de versiones. 

1.  Identifique un proceso que no tenga un runbook. Un proceso ideal es aquel que se lleva a cabo de forma semirregular, es corto en número de pasos y tiene errores de bajo impacto. 

1.  En su repositorio de documentos, cree un nuevo borrador de documento Markdown utilizando la plantilla. Introduzca `Runbook Title` y los campos necesarios en `Runbook Info`. 

1.  Empezando por el primer paso, rellene la parte `Steps` del runbook. 

1.  Asigne el runbook a un miembro del equipo. Pídales que utilicen el runbook para validar los pasos. Si falta algo o hay que aclararlo, actualice el runbook. 

1.  Publique el runbook en su almacén de documentación interno. Una vez publicado, comuníquelo a su equipo y a otras partes interesadas. 

1.  Con el tiempo, creará una biblioteca de runbooks. A medida que esa biblioteca crezca, comience a trabajar para automatizar los runbooks. 

 **Nivel de esfuerzo para el plan de implementación:** Bajo El estándar mínimo para un runbook es una guía de texto paso a paso. La automatización de runbooks puede aumentar el esfuerzo de implementación. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md): los runbooks deben tener un propietario encargado de su mantenimiento. 
+  [OPS07-BP04 Usar guías de estrategias para investigar problemas](ops_ready_to_support_use_playbooks.md): los runbooks y guías de categorías son semejantes pero tienen una diferencia clave y es que un runbook tiene un resultado deseado. En muchos casos los runbooks se activan una vez que una guía de categorías ha identificado una causa raíz. 
+  [OPS10-BP01 Uso de un proceso para la administración de eventos, incidentes y problemas](ops_event_response_event_incident_problem_process.md): los runbooks forman parte de una buena práctica de gestión de eventos, incidentes y problemas. 
+  [OPS10-BP02 Tener un proceso por alerta](ops_event_response_process_per_alert.md): los runbooks y las guías de categorías deben usarse como respuesta a alertas. Con el tiempo, estas reacciones deberían automatizarse. 
+  [OPS11-BP04 Realizar la administración de conocimientos](ops_evolve_ops_knowledge_management.md): el mantenimiento de los runbooks es una parte fundamental de la administración de conocimientos. 

 **Documentos relacionados:** 
+ [Achieving Operational Excellence using automated playbook and runbook (Lograr la excelencia operativa mediante la guía de estrategias y runbook automatizados)](https://aws.amazon.com/blogs/mt/achieving-operational-excellence-using-automated-playbook-and-runbook/) 
+ [AWS Systems Manager: Working with runbooks (AWS Systems Manager: trabajar con runbooks)](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html) 
+ [Migration playbook for AWS large migrations - Task 4: Improving your migration runbooks (Guía de categorías de migración para grandes migraciones de AWS - Tarea 4: Mejora de los runbooks de la migración)](https://docs.aws.amazon.com/prescriptive-guidance/latest/large-migration-migration-playbook/task-four-migration-runbooks.html) 
+ [Utilice AWS Systems Manager Automation runbooks to resolve operational tasks (Uso de runbooks de automatización de AWS Systems Manager para resolver tareas operativas)](https://aws.amazon.com/blogs/mt/use-aws-systems-manager-automation-runbooks-to-resolve-operational-tasks/) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2019: DIY guide to runbooks, incident reports, and incident response (SEC318-R1) (Guía paso a paso sobre runbooks, informes de incidentes y respuesta a incidentes (SEC318-R1))](https://www.youtube.com/watch?v=E1NaYN_fJUo) 
+  [How to automate IT Operations on AWS \$1 Amazon Web Services (Cómo automatizar las operaciones de TI en AWS \$1 Amazon Web Services)](https://www.youtube.com/watch?v=GuWj_mlyTug) 
+  [Integrate Scripts into AWS Systems Manager (Integrar scripts en AWS Systems Manager)](https://www.youtube.com/watch?v=Seh1RbnF-uE) 

 **Ejemplos relacionados:** 
+  [AWS Systems Manager: Automation walkthroughs (AWS Systems Manager: Tutoriales paso a paso de automatización)](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-walk.html) 
+  [AWS Systems Manager: Restore a root volume from the latest snapshot runbook (AWS Systems Manager: Restaurar un volumen raíz desde el último runbook de instantáneas)](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-document-sample-restore.html)
+  [Building an AWS incident response runbook using Jupyter notebooks and CloudTrail Lake (Crear un runbook de respuesta a incidentes de AWS con cuadernos de Jupyter y CloudTrail Lake)](https://catalog.us-east-1.prod.workshops.aws/workshops/a5801f0c-7bd6-4282-91ae-4dfeb926a035/en-US) 
+  [Gitlab: Runbooks](https://gitlab.com/gitlab-com/runbooks) 
+  [Rubix - A Python library for building runbooks in Jupyter Notebooks (Rubix: Una biblioteca de Python para crear runbooks en cuadernos de Jupyter)](https://github.com/Nurtch/rubix) 
+  [Using Document Builder to create a custom runbook (Uso de Document Builder para crear un runbook personalizado)](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-walk-document-builder.html) 
+  [Well-Architected Labs: automatización de operaciones con guías de estrategias y runbooks](https://wellarchitectedlabs.com/operational-excellence/200_labs/200_automating_operations_with_playbooks_and_runbooks/) 

 **Servicios relacionados:** 
+  [AWS Systems Manager Automation (Automatización de AWS Systems Manager)](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 

# OPS07-BP04 Usar guías de estrategias para investigar problemas
<a name="ops_ready_to_support_use_playbooks"></a>

 Las guías de estrategias son guías paso a paso que se utilizan para investigar un incidente. Cuando se producen incidentes, se usan para investigar, determinar el impacto e identificar la causa raíz. Las guías de estrategias se utilizan en diversas situaciones, desde despliegues erróneos hasta incidentes de seguridad. En numerosos casos, identifican la causa raíz que un runbook sirve para mitigar. Las guías de estrategias son un componente esencial de los planes de respuesta a incidentes de su organización. 

 Una buena guía de estrategias tiene varias características clave. Orienta al usuario, paso a paso, a través del proceso de descubrimiento. Viéndolo desde fuera, ¿qué pasos debería seguir alguien para diagnosticar un incidente? Defina de forma clara en la guía de estrategias si se necesitan herramientas especiales o permisos de alto nivel en ella. El hecho de contar con un plan de comunicación para informar a las partes interesadas sobre el estado de la investigación es un componente clave. En las situaciones en las que no se pueda identificar la causa raíz, la guía de estrategias debe tener un plan de traslado a una instancia superior. Si se identifica la causa raíz, la guía de estrategias debe señalar un runbook que describa cómo resolverla. Las guías de estrategias deben almacenarse de forma centralizada y se debe realizar un mantenimiento periódico de ellas. Si se utilizan para alertas específicas, facilite a su equipo indicaciones sobre cada guía de estrategias en cada alerta. 

 A medida que madure su organización, automatice las guías de estrategias. Empiece con guías de estrategias que cubran incidentes de poco riesgo. Utilice scripting para automatizar los pasos de descubrimiento. Asegúrese de que dispone de runbooks complementarios para mitigar las causas raíz más habituales. 

 **Resultado deseado:** su organización dispone de guías de estrategias para incidentes comunes. Dichas guías de estrategias se almacenan en una ubicación central y están a disposición de los miembros del equipo y se actualizan con frecuencia. Se crean runbooks complementarios para cualquier causa raíz conocida. 

 **Patrones comunes de uso no recomendados:** 
+  No existe una forma estándar de investigar un incidente. 
+  Los miembros del equipo confían en la memoria muscular o en el conocimiento institucional para solucionar un despliegue con errores. 
+  Los nuevos miembros del equipo aprenden a investigar los problemas con el método de ensayo y error. 
+  Las prácticas recomendadas para investigar los problemas no se comparten entre los equipos. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Las guías de estrategias impulsan sus esfuerzos para mitigar los incidentes. 
+  Los distintos miembros del equipo pueden utilizar la misma guía de estrategias para identificar la causa raíz de forma coherente. 
+  Las causas raíz conocidas pueden tener runbooks desarrollados para ellas, lo que acelera el tiempo de recuperación. 
+  Las guías de estrategias permiten a los miembros del equipo empezar a contribuir antes. 
+  Los equipos pueden escalar sus procesos con guías de estrategias repetibles. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La forma de crear y utilizar las guías de estrategias depende de la madurez de su organización. Si es la primera vez que utiliza la nube, cree guías de estrategias en formato de texto en un repositorio de documentos central. A medida que madure su organización, las guías de estrategias pueden semiautomatizarse con lenguajes de scripting como Python. Estos scripts pueden ejecutarse en un cuaderno de Jupyter para acelerar el descubrimiento. Las organizaciones avanzadas cuentan con guías de estrategias completamente automatizadas para los problemas más habituales que se solucionan de forma automática con runbooks. 

 Elabore una lista de incidentes comunes que afectan a la carga de trabajo para empezar a crear las guías de estrategias. Como punto de partida, elija guías para incidentes con poco riesgo y en los que la causa raíz se haya reducido a unos pocos problemas. Una vez que disponga de guías de estrategias para las situaciones más sencillas, continúe con las de mayor riesgo o cuya causa raíz no se conozca bien. 

 Sus guías de estrategias en texto deben automatizarse a medida que su organización madura. Con servicios como [las automatizaciones de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html), el texto sin formato puede transformarse en automatizaciones. Estas automatizaciones pueden ejecutarse en la carga de trabajo para acelerar las investigaciones. Se pueden activar en respuesta a los incidentes, lo que reduce el tiempo medio para descubrir y resolver los incidentes. 

 Los clientes pueden usar [Administrador de incidentes de AWS Systems Manager](https://docs.aws.amazon.com/incident-manager/latest/userguide/what-is-incident-manager.html) para responder a los incidentes. Este servicio proporciona una interfaz única para clasificar los incidentes, informar a las partes interesadas durante el descubrimiento y la mitigación y colaborar durante todo el incidente. Utiliza las automatizaciones de AWS Systems Manager para acelerar la detección y la recuperación. 

 **Ejemplo de cliente** 

 La empresa AnyCompany Retail se ha visto afectada por un incidente de producción. El ingeniero de guardia utilizó una guía de estrategias para investigar el problema. A medida que iba realizando los pasos, informaba a las partes interesadas clave identificadas en la guía de estrategias. El ingeniero identificó la causa raíz como una condición de secuencia (race condition) en un servicio backend. Mediante un runbook, el ingeniero relanzó el servicio, con lo que AnyCompany Retail volvió a estar en línea. 

## Pasos para la aplicación
<a name="implementation-steps"></a>

 Si no tiene un repositorio de documentos, le sugerimos que cree uno de control de versiones para su biblioteca de guías de estrategias. Puede crear las guías de estrategias con Markdown, que es compatible con la mayoría de los sistemas de automatización de este tipo de guías. Si está empezando desde cero, utilice la siguiente plantilla de guía de estrategias de ejemplo. 

```
# Título de la guía de estrategias ## Información de la guía de estrategias | ID de la guía de estrategias | Descripción | Herramientas usadas | Permisos especiales | Autor de la guía de estrategias | Última actualización | Punto de contacto de derivación | Partes interesadas | Plan de comunicación | |-------|-------|-------|-------|-------|-------|-------|-------|-------| | RUN001 | ¿Cuál es la finalidad de esta guía de estrategias? ¿Para qué incidente se usa? | Herramientas | Permisos | Su nombre | 21-09-2022 | Nombre de derivación | Nombre de parte interesada | ¿Cómo se comunicarán las actualizaciones durante la investigación? | ## Pasos 1. Paso uno 2. Paso dos
```

1.  Si no tiene un repositorio de documentos o un wiki, cree un nuevo repositorio de control de versiones para las guías de instrucciones en su sistema de control de versiones. 

1.  Identifique un problema común que requiera una investigación. Este debería ser un escenario en el que la causa raíz se limita a unos pocos problemas y la resolución conlleva poco riesgo. 

1.  Con la plantilla Markdown, rellene la sección `Título de la guía de estrategias` y los campos situados debajo de `Información de la guía de estrategias`. 

1.  Rellene los pasos de solución adicionales. Indique con la mayor claridad posible las acciones que se deben realizar o las áreas que debe investigar. 

1.  Entregue a un miembro del equipo la guía de estrategias y pídale que la revise para validarla. Si falta algo o no está claro, actualice la guía de estrategias. 

1.  Publique la guía de estrategias en el repositorio de documentos e informe al equipo y a las partes interesadas. 

1.  Esta biblioteca de guías de estrategias crecerá a medida que vaya agregando más guías. Una vez que tenga varias guías de estrategias, empiece a automatizarlas con herramientas como AWS Systems Manager Automations para sincronizar la automatización y las guías de estrategias. 

 **Nivel de esfuerzo para el plan de implementación:** bajo. Las guías de estrategias deben ser documentos de texto almacenados en una ubicación central. Las organizaciones más maduras se inclinarán por la automatización de las guías de estrategias. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md): las guías de estrategias deben tener un propietario encargado de su mantenimiento. 
+  [OPS07-BP03 Uso de runbooks para realizar los procedimientos](ops_ready_to_support_use_runbooks.md): los runbooks y las guías de estrategias son similares, pero la diferencia clave es que un runbook tiene un resultado deseado. En muchos casos, los runbooks se usan una vez que una guía de estrategias ha identificado una causa raíz. 
+  [OPS10-BP01 Uso de un proceso para la administración de eventos, incidentes y problemas](ops_event_response_event_incident_problem_process.md): las guías de estrategias forman parte de una buena práctica de administración de eventos, incidentes y problemas. 
+  [OPS10-BP02 Tener un proceso por alerta](ops_event_response_process_per_alert.md): los runbooks y las guías de estrategias deben usarse como respuesta a alertas. Con el tiempo, estas reacciones deberían automatizarse. 
+  [OPS11-BP04 Realizar la administración de conocimientos](ops_evolve_ops_knowledge_management.md): el mantenimiento de las guías de estrategias es una parte fundamental de la administración de conocimientos. 

 **Documentos relacionados:** 
+ [ Achieving Operational Excellence using automated playbook and runbook (Lograr la excelencia operativa mediante la guía de estrategias y runbook automatizados) ](https://aws.amazon.com/blogs/mt/achieving-operational-excellence-using-automated-playbook-and-runbook/)
+  [AWS Systems Manager: Working with runbooks (AWS Systems Manager: trabajar con runbooks)](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html) 
+ [ Use AWS Systems Manager Automation runbooks to resolve operational tasks (Utilizar runbooks de AWS Systems Manager Automation para resolver tareas operativas) ](https://aws.amazon.com/blogs/mt/use-aws-systems-manager-automation-runbooks-to-resolve-operational-tasks/)

 **Vídeos relacionados:** 
+ [AWS re:Invent 2019: DIY guide to runbooks, incident reports, and incident response (SEC318-R1) (Guía paso a paso sobre runbooks, informes de incidentes y respuesta a incidentes [SEC318-R1]) ](https://www.youtube.com/watch?v=E1NaYN_fJUo)
+ [Administrador de incidentes de AWS Systems Manager - AWS Virtual Workshops (Administrador de incidentes de AWS Systems Manager: talleres virtuales de AWS) ](https://www.youtube.com/watch?v=KNOc0DxuBSY)
+ [ Integrate Scripts into AWS Systems Manager (Integrar scripts en AWS Systems Manager) ](https://www.youtube.com/watch?v=Seh1RbnF-uE)

 **Ejemplos relacionados:** 
+ [AWS Customer Playbook Framework (Marco de trabajo de guía de estrategias de cliente de AWS) ](https://github.com/aws-samples/aws-customer-playbook-framework)
+ [AWS Systems Manager: Automation walkthroughs (AWS Systems Manager: tutoriales paso a paso de automatización) ](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-walk.html)
+ [ Building an AWS incident response runbook using Jupyter notebooks and CloudTrail Lake (Crear un runbook de respuesta a incidentes de AWS con cuadernos de Jupyter y CloudTrail Lake) ](https://catalog.workshops.aws/workshops/a5801f0c-7bd6-4282-91ae-4dfeb926a035/en-US)
+ [ Rubix - A Python library for building runbooks in Jupyter Notebooks (Rubix: Una biblioteca de Python para crear runbooks en cuadernos de Jupyter) ](https://github.com/Nurtch/rubix)
+ [ Using Document Builder to create a custom runbook (Uso de Document Builder para crear un runbook personalizado) ](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-walk-document-builder.html)
+ [ Well-Architected Labs: automatización de operaciones con guías de estrategias y runbooks ](https://wellarchitectedlabs.com/operational-excellence/200_labs/200_automating_operations_with_playbooks_and_runbooks/)
+ [ Well-Architected Labs: guía de estrategias de respuesta ante incidentes con Jupyter ](https://www.wellarchitectedlabs.com/security/300_labs/300_incident_response_playbook_with_jupyter-aws_iam/)

 **Servicios relacionados:** 
+ [AWS Systems Manager Automation ](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html)
+ [Administrador de incidentes de AWS Systems Manager](https://docs.aws.amazon.com/incident-manager/latest/userguide/what-is-incident-manager.html)

# OPS07-BP05 Tomar decisiones fundamentadas para desplegar sistemas y cambios
<a name="ops_ready_to_support_informed_deploy_decisions"></a>

Disponga de procesos en caso de cambios fructíferos e infructuosos de su carga de trabajo. Un pre mortem es un ejercicio en el que un equipo simula un error para desarrollar estrategias de mitigación. Realice ensayos de errores pre mortem para anticipar el fracaso y crear procedimientos cuando sea apropiado. Evalúe las ventajas y los riesgos de desplegar cambios en la carga de trabajo. Verifique que todos los cambios cumplan con la gobernanza. 

 **Resultado deseado:** 
+  Tomará decisiones informadas cuando despliegue cambios en la carga de trabajo. 
+  Los cambios cumplirán con la gobernanza. 

 **Antipatrones usuales:** 
+ Despliegue de un cambio en la carga de trabajo sin un proceso para gestionar un despliegue infructuoso.
+ Cambios en el entorno de producción que incumplen los requisitos de gobernanza.
+ Despliegue de una nueva versión de la carga de trabajo sin establecer una línea de referencia para la utilización de recursos.

 **Beneficios de establecer esta práctica recomendada:** 
+  Estará preparado para cambios infructuosos en su carga de trabajo. 
+  Los cambios en la carga de trabajo cumplirán las políticas de gobernanza. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Utilice ejercicios pre mortem para desarrollar procesos en caso de cambios infructuosos. Documente los procesos para los cambios infructuosos. Asegúrese de que todos los cambios se ajusten a la gobernanza. Evalúe las ventajas y los riesgos de desplegar cambios en la carga de trabajo. 

 **Ejemplo de cliente** 

 AnyCompany Retail realiza con regularidad ejercicios pre mortem para validar los procesos en caso de cambios infructuosos. Documenta los procesos en una wiki compartida y la actualiza con frecuencia. Todos los cambios se ajustan a los requisitos de gobernanza. 

 **Pasos para la implementación** 

1.  Tome decisiones informadas cuando despliegue cambios en la carga de trabajo. Establezca y revise los criterios para un despliegue fructífero. Desarrolle escenarios o criterios que desencadenen la reversión de un cambio. Sopese las ventajas del despliegue de cambios frente a los riesgos de un cambio infructuoso. 

1.  Verifique que todos los cambios cumplan las políticas de gobernanza. 

1.  Utilice ejercicios pre mortem para desarrollar planes en caso de cambios infructuosos y documentar las estrategias de mitigación. Lleve a cabo un ejercicio de simulación para modelar un cambio infructuoso y validar los procedimientos de reversión. 

 **Nivel de esfuerzo para el plan de implementación:** moderado. La implementación de una práctica de pre mortem exige la coordinación y el esfuerzo de las partes interesadas de toda la organización. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS01-BP03 Evaluar los requisitos de gobernanza](ops_priorities_governance_reqs.md) - Los requisitos de gobernanza son un factor clave para determinar si se debe desplegar un cambio. 
+  [OPS06-BP01 Planificar para hacer frente a los cambios fallidos](ops_mit_deploy_risks_plan_for_unsucessful_changes.md) - Establezca planes para mitigar un despliegue infructuosos y utilice actividades pre mortem para validarlos. 
+  [OPS06-BP02 Probar y validar los cambios](ops_mit_deploy_risks_test_val_chg.md) - Cada cambio de software debe probarse adecuadamente antes de su despliegue, a fin de reducir los defectos en producción. 
+  [OPS07-BP01 Garantizar la capacidad del personal](ops_ready_to_support_personnel_capability.md) - Disponer de suficiente personal formado para atender la carga de trabajo es esencial para tomar una decisión informada sobre el despliegue de un cambio en el sistema. 

 **Documentos relacionados:** 
+ [Amazon Web Services: Riesgos y conformidad](https://docs.aws.amazon.com/whitepapers/latest/aws-risk-and-compliance/welcome.html)
+ [Modelo de responsabilidad compartida de AWS](https://aws.amazon.com/compliance/shared-responsibility-model/)
+ [ Governance in the Nube de AWS: The Right Balance Between Agility and Safety](https://aws.amazon.com/blogs/apn/governance-in-the-aws-cloud-the-right-balance-between-agility-and-safety/) (Gobernanza en Nube de AWS: el equilibrio entre agilidad y seguridad)

# OPS07-BP06 Habilitar planes de asistencia para cargas de trabajo de producción
<a name="ops_ready_to_support_enable_support_plans"></a>

 Facilite la asistencia de cualquier software y servicio del que dependa su carga de trabajo de producción. Seleccione un nivel de asistencia adecuado para satisfacer sus necesidades de nivel de servicio de producción. Los planes de asistencia para estas dependencias son necesarios en caso de que se produzca una interrupción del servicio o un problema con el software. Documente los planes de asistencia y cómo solicitar asistencia de todos los proveedores de servicios y software. Implemente mecanismos que verifiquen que los puntos de asistencia de los contactos se mantienen actualizados. 

 **Resultado deseado:** 
+  Implemente planes de asistencia para el software y los servicios de los que dependen las cargas de trabajo de producción. 
+  Elija un plan de asistencia adecuado en función de las necesidades del nivel de servicio. 
+  Documente los planes de asistencia, los niveles de asistencia y la forma de solicitarla. 

 **Patrones comunes de uso no recomendados:** 
+  No dispone de un plan de asistencia para un proveedor de software fundamental. Su carga de trabajo se ve afectada por su proveedor y no puede hacer nada para acelerar una solución u obtener actualizaciones puntuales de él. 
+  Un desarrollador que era el principal punto de contacto para un proveedor de software ha abandonado la empresa. No puede ponerse en contacto directamente con el equipo de asistencia del proveedor. Debe dedicar tiempo a investigar y recorrer los sistemas de contacto genéricos, lo que aumenta el tiempo necesario para responder cuando sea necesario. 
+  Se produce una interrupción de la producción con un proveedor de software. No hay documentación sobre cómo presentar un caso de asistencia. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Con el nivel de asistencia adecuado, podrá obtener una respuesta en el plazo necesario para satisfacer las necesidades de servicio. 
+  Como cliente con asistencia puede remitir a un nivel superior si hay problemas de producción. 
+  Los proveedores de software y servicios pueden ayudar en la resolución de problemas durante un incidente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Facilite planes de asistencia de cualquier proveedor de software y servicio del que dependa su carga de trabajo de producción. Configure planes de asistencia adecuados para satisfacer las necesidades de nivel de servicio. Para los clientes de AWS, esto significa habilitar AWS Business Support o superior en cualquier cuenta en la que tenga cargas de trabajo de producción. Reúnase con los proveedores de asistencia con regularidad para obtener información actualizada sobre las ofertas de asistencia, los procesos y los contactos. Documente cómo solicitar asistencia a los proveedores de software y servicios, incluida la forma de remitir a un nivel superior si se produce una interrupción. Implemente mecanismos para mantener actualizados los contactos de asistencia. 

 **Ejemplo de cliente** 

 En AnyCompany Retail, todas las dependencias de software y servicios comerciales disponen de planes de asistencia. Por ejemplo, tienen habilitado AWS Enterprise Support en todas las cuentas con cargas de trabajo de producción. Cualquier desarrollador puede abrir un caso de asistencia cuando surja un problema. Hay una página wiki con información sobre cómo solicitar asistencia, a quién notificarlo y las prácticas recomendadas para agilizar un caso. 

 **Pasos para la implementación** 

1.  Colabore con las partes interesadas de su organización para identificar a los proveedores de software y servicios en los que se basa su carga de trabajo. Documente estas dependencias. 

1.  Determine las necesidades de nivel de servicio de su carga de trabajo. Seleccione un plan de asistencia que se ajuste a ellas. 

1.  Para el software y los servicios comerciales, establezca un plan de asistencia con los proveedores. 

   1.  Al suscribirse a AWS Business Support o un plan superior en todas las cuentas de producción, disfrutará de tiempos de respuesta más rápidos por parte de AWS Support, lo que resulta muy recomendable. Si no dispone de Premium Support, deberá tener un plan de acción para administrar los problemas que requieran la ayuda de AWS Support. AWS Support le ofrece una combinación de herramientas, tecnología, personal y programas diseñados para ayudarle de forma proactiva a optimizar el rendimiento, rebajar los costes e innovar rápidamente. AWS Business Support proporciona ventajas adicionales, como el acceso a AWS Trusted Advisor y AWS Personal Health Dashboard, así como tiempos de respuesta más rápidos. 

1.  Documente el plan de asistencia en su herramienta de administración de conocimientos. Incluya la forma de solicitar asistencia, a quién notificar si se presenta un caso de asistencia y cómo remitir a un nivel superior durante un incidente. Un wiki es un buen mecanismo para que cualquiera pueda realizar las actualizaciones necesarias en la documentación cuando tenga conocimiento de cambios en los procesos de asistencia o en los contactos. 

 **Nivel de esfuerzo para el plan de implementación:** bajo. La mayoría de los proveedores de software y servicios ofrecen planes de asistencia opcionales. Documentar y compartir las prácticas recomendadas de asistencia en su sistema de administración de conocimientos verifican que su equipo sabe qué hacer cuando se produce un problema de producción. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS02-BP02 Los procesos y procedimientos han identificado a los propietarios](ops_ops_model_def_proc_owners.md) 

 **Documentos relacionados:** 
+ [ Planes de AWS Support](https://docs.aws.amazon.com/awssupport/latest/user/aws-support-plans.html)

 **Servicios relacionados:** 
+ [AWS Business Support ](https://aws.amazon.com/premiumsupport/plans/business/)
+ [AWS Enterprise Support ](https://aws.amazon.com/premiumsupport/plans/enterprise/)

# Operación
<a name="a-operate"></a>

**Topics**
+ [OPS 8 ¿Qué hace para comprender el estado de la carga de trabajo?](ops-08.md)
+ [OPS 9 ¿Qué hace para comprender el estado de las operaciones?](ops-09.md)
+ [OPS 10 ¿Cómo administra la carga de trabajo y los eventos de operaciones?](ops-10.md)

# OPS 8 ¿Qué hace para comprender el estado de la carga de trabajo?
<a name="ops-08"></a>

 Defina, capture y analice las métricas de cargas de trabajo para obtener visibilidad de los eventos de cargas de trabajo y poder tomar las medidas adecuadas. 

**Topics**
+ [OPS08-BP01 Identificar los indicadores clave de rendimiento](ops_workload_health_define_workload_kpis.md)
+ [OPS08-BP02 Definir las métricas de las cargas de trabajo](ops_workload_health_design_workload_metrics.md)
+ [OPS08-BP03 Recopilar y analizar métricas de cargas de trabajo](ops_workload_health_collect_analyze_workload_metrics.md)
+ [OPS08-BP04 Establecer puntos de referencias de métricas de cargas de trabajo](ops_workload_health_workload_metric_baselines.md)
+ [OPS08-BP05 Descubrir los patrones esperados de actividad para la carga de trabajo](ops_workload_health_learn_workload_usage_patterns.md)
+ [OPS08-BP06 Alertar cuando los resultados de la carga de trabajo corren riesgo](ops_workload_health_workload_outcome_alerts.md)
+ [OPS08-BP07 Alertar cuando se detectan anomalías en la carga de trabajo](ops_workload_health_workload_anomaly_alerts.md)
+ [OPS08-BP08 Validar el logro de resultados y la efectividad de los KPI y las métricas](ops_workload_health_biz_level_view_workload.md)

# OPS08-BP01 Identificar los indicadores clave de rendimiento
<a name="ops_workload_health_define_workload_kpis"></a>

 Identifique los indicadores clave de rendimiento (KPI) en función de los resultados empresariales deseados (por ejemplo, la tasa de pedidos, la tasa de retención de clientes y los beneficios frente a los gastos de explotación) y de los resultados de los clientes (por ejemplo, la satisfacción de los clientes). Evalúe los KPI para determinar el éxito de la carga de trabajo. 

 **Antipatrones usuales:** 
+  Los directivos de la empresa le preguntan por el éxito de una carga de trabajo para satisfacer las necesidades de la empresa, pero no tiene un marco de referencia para determinar el éxito. 
+  No es capaz de determinar si la aplicación comercial que utiliza para su organización es rentable. 

 **Beneficios de establecer esta práctica recomendada:** La identificación de los indicadores clave de rendimiento permite obtener resultados empresariales como prueba del estado y el éxito de su carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Identificar los indicadores clave de rendimiento: identifique los indicadores clave de rendimiento (KPI) en función de los resultados que desee obtener para la empresa y los clientes. Evalúe los KPI para determinar el éxito de la carga de trabajo. 

# OPS08-BP02 Definir las métricas de las cargas de trabajo
<a name="ops_workload_health_design_workload_metrics"></a>

Defina las métricas que miden el estado de la carga de trabajo. El estado de la carga de trabajo se mide por la consecución de resultados empresariales (KPI) y el estado de los componentes y las aplicaciones de la carga de trabajo. Ejemplos de KPI son carritos de la compra abandonados, pedidos realizados, costes, precios y gastos asignados a la carga de trabajo. Aunque es posible recopilar datos de telemetría de varios componentes, seleccione un subconjunto que le proporcione información sobre el estado general de la carga de trabajo. Ajuste las métricas de la carga de trabajo a lo largo del tiempo a medida que cambien las necesidades empresariales. 

 **Resultado deseado:** 
+  Ha identificado métricas que validan la consecución de KPI que reflejan los resultados empresariales. 
+  Dispone de métricas que muestran una visión coherente del estado de la carga de trabajo. 
+  Las métricas de la carga de trabajo se evalúan periódicamente conforme cambian las necesidades de la empresa. 

 **Antipatrones usuales:** 
+ Supervisa todas las aplicaciones de su carga de trabajo, pero no puede determinar si la carga de trabajo logra resultados empresariales.
+ Ha definido métricas de la carga de trabajo, pero no están asociadas a ningún KPI empresarial.

 **Beneficios de establecer esta práctica recomendada:** 
+  Puede medir la carga de trabajo en función de la consecución de resultados empresariales. 
+  Sabrá si la carga de trabajo se encuentra en buen estado o si necesita realizar alguna intervención. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El objetivo de esta práctica recomendada es obtener una respuesta a la siguiente pregunta: ¿está en buen estado mi carga de trabajo? El estado de la carga de trabajo se determina por la consecución de resultados empresariales y el estado de las aplicaciones y los componentes de la carga de trabajo. Trabaje en sentido inverso a partir de los KPI empresariales para identificar las métricas. Identifique las métricas clave de los componentes y las aplicaciones. Evalúe periódicamente las métricas de la carga de trabajo conforme cambien las necesidades de la empresa. 

 **Ejemplo de cliente** 

 En AnyCompany Retail el estado de la carga de trabajo se determina mediante una recopilación de métricas de aplicaciones y componentes. Al partir de los KPI empresariales, se identifican métricas, como el ritmo de pedidos, que permiten demostrar que se están logrando resultados empresariales. También incluyen métricas clave de la aplicación, como la respuesta de la página, y métricas de los componentes, como las conexiones abiertas a bases de datos. Cada trimestre, se vuelven a evaluar las métricas de la carga de trabajo con objeto de garantizar que sigan siendo válidas para determinar el estado de la carga de trabajo. 

 **Pasos para la implementación** 

1.  A partir de los KPI empresariales, identifique las métricas que muestren que está logrando resultados empresariales. Si hay KPI que no tengan métricas, instrumente la carga de trabajo con métricas adicionales para los KPI comerciales que falten. 

   1.  Puede publicar métricas personalizadas de sus aplicaciones en [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html). 

   1.  [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) permite recopilar métricas de aplicaciones existentes que se pueden utilizar para añadir nuevas métricas. 

   1.  Los clientes con Enterprise Support pueden solicitar el taller[Building a Monitoring Strategy](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/) (Creación de una estrategia de supervisión) a su gerente técnico de cuentas. Este taller le ayudará a erigir una estrategia de observabilidad para su carga de trabajo. 

1.  Identifique métricas para aplicaciones y componentes en la carga de trabajo. ¿Cuáles son las métricas clave que muestran el estado de los componentes y aplicaciones individuales? Las aplicaciones y los componentes pueden producir muchas métricas diferentes; elija de una o tres métricas clave que muestren el estado general. 

1.  Implante un mecanismo para evaluar periódicamente las métricas de la carga de trabajo. Cuando cambien los KPI empresariales, colabore con las partes interesadas para actualizar las métricas de la carga de trabajo. A medida que evolucionen los componentes y las aplicaciones de la carga de trabajo, ajuste las métricas de la carga de trabajo. 

 **Nivel de esfuerzo para el plan de implementación:** medio. La adición de métricas de los KPI empresariales a las aplicaciones puede requerir un esfuerzo moderado. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS04-BP01 Implementar telemetría de aplicaciones](ops_telemetry_application_telemetry.md) - Su aplicación debe emitir telemetría que respalde los resultados empresariales. 
+  [OPS04-BP02 Implementar y configurar telemetría de cargas de trabajo](ops_telemetry_workload_telemetry.md) - Debe instrumentar su carga de trabajo para que emita telemetría antes de definir las métricas de la carga de trabajo que respalden los resultados empresariales. 
+  [OPS08-BP01 Identificar los indicadores clave de rendimiento](ops_workload_health_define_workload_kpis.md) - Antes de seleccionar las métricas de la carga de trabajo debe identificar los indicadores clave de rendimiento. 

 **Documentos relacionados:** 
+ [ Adding metrics and traces to your application on Amazon EKS with AWS Distro for OpenTelemetry, AWS X-Ray, and Amazon CloudWatch](https://aws.amazon.com/blogs/mt/adding-metrics-and-traces-to-your-application-on-amazon-eks-with-aws-distro-for-opentelemetry-aws-x-ray-and-amazon-cloudwatch/) (Añadir métricas y rastreos a su aplicación en Amazon EKS con AWS Distro for OpenTelemetry, AWS X-Ray y Amazon CloudWatch)
+ [ Instrumenting distributed systems for operational visibility](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) (Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones)
+ [ Implementing health checks](https://aws.amazon.com/builders-library/implementing-health-checks/) (Implementación de comprobaciones de estado)
+ [Cómo supervisar aplicaciones eficazmente](https://aws.amazon.com/startups/start-building/how-to-monitor-applications/)
+ [ How to better monitor your custom application metrics using Amazon CloudWatch Agent](https://aws.amazon.com/blogs/devops/new-how-to-better-monitor-your-custom-application-metrics-using-amazon-cloudwatch-agent/) (Cómo supervisar mejor las métricas de su aplicación personalizada con Amazon CloudWatch Agent)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2020: Monitoring production services at Amazon](https://www.youtube.com/watch?v=hnPcf_Czbvw) (AWS re:Invent 2020: Supervisión de los servicios de producción en Amazon)
+ [AWS re:Invent 2022 - Building observable applications with OpenTelemetry (BOA310)](https://www.youtube.com/watch?v=efk8XFJrW2c) (AWS re:Invent 2022: Creación de aplicaciones observables con OpenTelemetry)
+ [How to Easily Setup Application Monitoring for Your AWS Workloads - AWS Online Tech Talks](https://www.youtube.com/watch?v=LKCth30RqnA) (Cómo configurar fácilmente la supervisión de aplicaciones para sus cargas de trabajo de AWS: charlas técnicas en línea de AWS)
+ [Mastering Observability of Your Serverless Applications - AWS Online Tech Talks](https://www.youtube.com/watch?v=CtsiXhiAUq8) (Dominar la observabilidad de sus aplicaciones sin servidor: charlas técnicas en línea de AWS)

 **Ejemplos relacionados:** 
+ [Taller sobre observabilidad](https://catalog.workshops.aws/observability/en-US/intro)

 **Servicios relacionados:** 
+ [ Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)
+ [AWS Distro for OpenTelemetry ](https://aws-otel.github.io/)

# OPS08-BP03 Recopilar y analizar métricas de cargas de trabajo
<a name="ops_workload_health_collect_analyze_workload_metrics"></a>

Lleve a cabo revisiones periódicas y proactivas de las métricas de la carga de trabajo para identificar tendencias y determinar si es necesaria una respuesta y validar la consecución de resultados empresariales. Agregue las métricas de sus aplicaciones y componentes de la carga de trabajo a una ubicación central. Utilice paneles y herramientas de análisis para analizar la telemetría y determinar el estado de la carga de trabajo. Implemente un mecanismo para realizar revisiones periódicas del estado de la carga de trabajo con las partes interesadas en la organización. 

 **Resultado deseado:** 
+  Las métricas de la carga de trabajo se recopilan en una ubicación central. 
+  Se utilizan paneles y herramientas de análisis para analizar las tendencias del estado de la carga de trabajo. 
+  Lleva a cabo revisiones periódicas de las métricas de la carga de trabajo con su organización. 

 **Antipatrones usuales:** 
+  La organización recopila métricas de la carga de trabajo en dos plataformas de observabilidad diferentes. No es capaz de determinar el estado de la carga de trabajo porque las plataformas son incompatibles. 
+  Los índices de error de un componente de la carga de trabajo aumenta poco a poco. No se da cuenta de esta tendencia porque su organización no realiza revisiones periódicas de las métricas de la carga de trabajo. Se produce un error en el componente al cabo de una semana, lo que afecta a la carga de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Ha aumentado la concienciación sobre el estado de la carga de trabajo y la consecución de resultados empresariales. 
+  Las tendencias del estado de la carga de trabajo pueden desarrollarse a lo largo del tiempo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Recopile métricas de la carga de trabajo en una ubicación central. Por medio de paneles y herramientas de análisis, estudie las métricas de la carga de trabajo para obtener información sobre el estado de la carga de trabajo, desarrollar tendencias de estado de la carga de trabajo y validar la consecución de resultados empresariales. Implemente un mecanismo para realizar revisiones periódicas de las métricas de la carga de trabajo. 

 **Ejemplo de cliente** 

 AnyCompany Retail lleva a cabo revisiones de las métricas de carga de trabajo todos los miércoles. Reúne a las partes interesadas de toda la empresa y repasa las métricas de la semana anterior. Durante la reunión, se destacan las tendencias y las ideas extraídas de las herramientas de análisis. Se publican paneles internos con métricas clave de la carga de trabajo que todos los empleados pueden ver y consultar. 

 **Pasos para la implementación** 

1.  Identifique las métricas de la carga de trabajo que están vinculadas al estado de la carga de trabajo. Empezando por los KPI empresariales, identifique las métricas de las aplicaciones, componentes y plataformas que proporcionan una visión general del estado de la carga de trabajo. 

   1.  Puede publicar las métricas personalizadas en [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html). Puede aprovechar el [agente Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html) para recopilar métricas y registros de instancias Amazon EC2 y servidores locales. 

   1.  [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) permite recopilar métricas de aplicaciones existentes que se pueden utilizar para añadir nuevas métricas. 

   1.  Los clientes con Enterprise Support pueden solicitar el taller [Building a Monitoring Strategy Workshop](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/) (Creación de una estrategia de supervisión) a su gerente técnico de cuentas. Este taller le ayuda a erigir una estrategia de observabilidad para su carga de trabajo. 

1.  Recopile métricas de la carga de trabajo en una plataforma central. Si las métricas de la carga de trabajo se dividen entre diferentes plataformas, puede resultar difícil analizar y desarrollar tendencias. La plataforma debe disponer de paneles y capacidades analíticas. 

   1.  [Amazon CloudWatch](https://docs.aws.amazon.com/) puede recopilar y conservar métricas de la carga de trabajo. En las topologías multicuenta, se recomienda disponer de una [cuenta central de registro y supervisión](https://docs.aws.amazon.com/prescriptive-guidance/latest/security-reference-architecture/log-archive.html), denominada *cuenta de archivo de registros*. 

1.  Cree un panel consolidado de métricas de la carga de trabajo. Utilice esta vista para hacer revisiones de métricas y analizar tendencias. 

   1.  Puede crear [paneles de CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) personalizados para recopilar las métricas de la carga de trabajo en una vista consolidada. 

1.  Implemente un proceso de revisión de las métricas de la carga de trabajo. Con una periodicidad semanal, quincenal o mensual, revise las métricas de la carga de trabajo con las partes interesadas, incluido el personal técnico y no técnico. Utilice estas sesiones de revisión para identificar tendencias y obtener información sobre el estado de la carga de trabajo. 

 **Nivel de esfuerzo para el plan de implementación:** alto. Si las métricas de la carga de trabajo no se recopilan de forma centralizada, podría ser necesario efectuar una inversión significativa para consolidarlas en una plataforma. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS08-BP01 Identificar los indicadores clave de rendimiento](ops_workload_health_define_workload_kpis.md) - Antes de seleccionar las métricas de la carga de trabajo debe identificar los indicadores clave de rendimiento. 
+  [OPS08-BP02 Definir las métricas de las cargas de trabajo](ops_workload_health_design_workload_metrics.md) - Debe definir las métricas de la carga de trabajo antes de recopilarlas y analizarlas. 

 **Documentos relacionados:** 
+ [ Power operational insights with Amazon Quick](https://aws.amazon.com/blogs/big-data/power-operational-insights-with-amazon-quicksight/) (Potenciar la información operativa con Amazon Quick)
+ [ Using Amazon CloudWatch dashboards custom widgets](https://aws.amazon.com/blogs/mt/introducing-amazon-cloudwatch-dashboards-custom-widgets/) (Uso de los widgets personalizados de los paneles de Amazon CloudWatch)

 **Vídeos relacionados: ** 
+ [ Create Cross Account & Cross Region CloudWatch Dashboards](https://www.youtube.com/watch?v=eIUZdaqColg) (Crear paneles de CloudWatch entre cuentas y regiones)
+ [ Monitor AWS Resources Using Amazon CloudWatch Dashboards](https://www.youtube.com/watch?v=I7EFLChc07M) (Supervisión de los recursos de AWS con paneles de Amazon CloudWatch)

 **Ejemplos relacionados:** 
+ [AWS Management and Governance Tools Workshop - CloudWatch Dashboards](https://mng.workshop.aws/operations-2022/detect/cwdashboard.html) (Taller de herramientas de administración y gobernanza de AWS: paneles de CloudWatch)
+ [ Well-Architected Labs - Level 100: Monitoring with CloudWatch Dashboards](https://www.wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_with_cloudwatch_dashboards/) (Laboratorios de Well-Architected - Nivel 100: Supervisión con paneles de CloudWatch)

 **Servicios relacionados:** 
+  [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+ [AWS Distro for OpenTelemetry](https://aws-otel.github.io/)

# OPS08-BP04 Establecer puntos de referencias de métricas de cargas de trabajo
<a name="ops_workload_health_workload_metric_baselines"></a>

El establecimiento de un punto de referencia para las métricas de la carga de trabajo ayuda a comprender el estado y el rendimiento de la carga de trabajo. Mediante el uso de líneas de referencia, es posible identificar aplicaciones y componentes de bajo y alto rendimiento. Una línea de referencia de la carga de trabajo aumenta su capacidad de mitigar los contratiempos antes de que se conviertan en incidentes. Las líneas de referencia son fundamentales para desarrollar patrones de actividad e implementar la detección de anomalías cuando las métricas se desvían de los valores esperados. 

 **Resultado deseado:** 
+  Dispone de un nivel de referencia de las métricas de la carga de trabajo en condiciones normales. 
+  Puede determinar si la carga de trabajo funciona con normalidad. 

 **Antipatrones usuales:** 
+  Tras el despliegue de una nueva característica, se produce un descenso de la latencia de las solicitudes. No se ha establecido una línea de referencia para una métrica compuesta de solicitudes entrantes procesadas y de latencia global. No es posible determinar si el cambio ha causado una mejora o un defecto. 
+  Se produce un pico repentino en la actividad de los usuarios, pero no se ha establecido una línea de referencia de las métricas. El pico de actividad conduce lentamente a una pérdida de memoria de una aplicación. Con el tiempo, la carga de trabajo pierde la conexión. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Comprenderá el patrón normal de actividad de su carga de trabajo mediante métricas para componentes y aplicaciones clave. 
+  Podrá determinar si la carga de trabajo, las aplicaciones y los componentes se comportan con normalidad o si es preciso una intervención. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Utilice datos históricos para establecer una línea de referencia de las métricas de la carga de trabajo para aplicaciones y componentes de su carga de trabajo. Utilice la línea de referencia de las métricas en las reuniones de revisión de métricas y en la solución de problemas. Revise periódicamente el rendimiento de la carga de trabajo y ajuste la línea de referencia a medida que evoluciona la arquitectura. 

 **Ejemplo de cliente** 

 Se establecen líneas de referencia para todos los componentes y aplicaciones de AnyCompany Retail. Utilizando datos históricos, AnyCompany Retail desarrolló sus líneas de referencia de las métricas de la carga de trabajo en un intervalo de medición de dos meses. Cada dos meses se vuelven a evaluar las líneas de referencia y se ajustan en función de los datos de la vida real. 

 **Pasos para la implementación** 

1.  Trabajando en sentido inverso de las métricas de la carga de trabajo, establezca una línea de referencia de las métricas de los componentes y aplicaciones clave mediante los datos históricos. Limite el número de métricas por componente o aplicación y evite la fatiga visual. 

   1.  Puede utilizar [Amazon CloudWatch Metrics Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/query_with_cloudwatch-metrics-insights.html) para consultar métricas a escala e identificar tendencias y patrones. 

   1.  La [detección de anomalías de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) utiliza algoritmos de machine learning para identificar patrones de comportamiento de las métricas, determinar líneas de referencia y revelar anomalías. 

   1.  [Amazon DevOps Guru](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) ofrece la posibilidad de detectar problemas operativos de la carga de trabajo mediante machine learning. 

   1.  Los clientes con Enterprise Support pueden solicitar el taller [Building a Monitoring Strategy Workshop](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/) (Creación de una estrategia de supervisión) a su gerente técnico de cuentas. Este taller le ayudará a erigir una estrategia de observabilidad para su carga de trabajo. 

1.  Ponga en práctica un mecanismo para revisar periódicamente las líneas de referencia de las métricas de la carga de trabajo, especialmente antes de eventos empresariales significativos. Al menos una vez cada trimestre, evalúe la línea de referencia de su métrica de carga de trabajo por medio de los datos históricos. Utilice la línea de referencia en las reuniones de revisión de métricas. 

 **Nivel de esfuerzo para el plan de implementación:** bajo. Una vez instauradas las métricas de la carga de trabajo, el establecimiento de líneas de referencia requerirá la recopilación de una cantidad suficientes datos para identificar patrones normales de comportamiento. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS08-BP02 Definir las métricas de las cargas de trabajo](ops_workload_health_design_workload_metrics.md) - En primer lugar, deben establecerse los parámetros de la carga de trabajo antes de determinar las líneas de referencia. 
+  [OPS08-BP03 Recopilar y analizar métricas de cargas de trabajo](ops_workload_health_collect_analyze_workload_metrics.md) - Es necesario recopilar y analizar las métricas de la carga de trabajo antes de establecer las líneas de referencia de las métricas. 
+  [OPS08-BP05 Descubrir los patrones esperados de actividad para la carga de trabajo](ops_workload_health_learn_workload_usage_patterns.md) - Esta práctica recomendada se basa en la línea de referencia para desarrollar tendencias de uso. 
+  [OPS08-BP06 Alertar cuando los resultados de la carga de trabajo corren riesgo](ops_workload_health_workload_outcome_alerts.md) - Las líneas de referencia de las métricas son necesarias para identificar umbrales y perfeccionar alertas. 
+  [OPS08-BP07 Alertar cuando se detectan anomalías en la carga de trabajo](ops_workload_health_workload_anomaly_alerts.md) - La detección de anomalías exige el establecimiento de líneas de referencia de las métricas. 

 **Documentos relacionados:** 
+ [AWS Observability Best Practices - Alarms](https://aws-observability.github.io/observability-best-practices/tools/alarms/) (Prácticas recomendadas de observabilidad de AWS: alarmas)
+ [Cómo supervisar aplicaciones eficazmente](https://aws.amazon.com/startups/start-building/how-to-monitor-applications/)
+ [ How to set up CloudWatch Anomaly Detection to set dynamic alarms, automate actions, and drive online sales](https://aws.amazon.com/blogs/mt/how-to-set-up-cloudwatch-anomaly-detection-to-set-dynamic-alarms-automate-actions-and-drive-online-sales/) (Cómo configurar la detección de anomalías de CloudWatch para establecer alarmas dinámicas, automatizar acciones y fomentar las ventas en línea)
+ [ Operationalizing CloudWatch Anomaly Detection](https://aws.amazon.com/blogs/mt/operationalizing-cloudwatch-anomaly-detection/) (Operatividad de la detección de CloudWatch)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2020: Monitoring production services at Amazon](https://www.youtube.com/watch?v=hnPcf_Czbvw) (AWS re:Invent 2020: Supervisión de los servicios de producción en Amazon)
+ [AWS re:Invent 2021- Get insights from operational metrics at scale with CloudWatch Metrics Insights](https://www.youtube.com/watch?v=xKib0xvbIfo) (AWS re:Invent 2021: Obtenga información de las métricas operativas a escala con CloudWatch Metrics Insights)
+ [AWS re:Invent 2022 - Developing an observability strategy (COP302)](https://www.youtube.com/watch?v=Ub3ATriFapQ) (AWS re:Invent 2022: Desarrollo de una estrategia de observabilidad)
+ [AWS Summit DC 2022 - Monitoring and observability for modern applications](https://www.youtube.com/watch?v=AHiuyT0B5Gk) (Supervisión y observabilidad de las aplicaciones modernas)
+ [AWS Summit SF 2022 - Full-stack observability and application monitoring with AWS (COP310)](https://www.youtube.com/watch?v=or7uFFyHIX0) (Observabilidad completa y supervisión de aplicaciones con AWS)

 **Ejemplos relacionados:** 
+ [AWS CloudTrail and Amazon CloudWatch Integration Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/2e48b9fc-f721-4417-b811-962b7f31b61c/en-US) (Taller de integración de AWS CloudTrail y Amazon CloudWatch)

 **Servicios relacionados:** 
+ [ Amazon CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html)
+ [ Amazon DevOps Guru ](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html)

# OPS08-BP05 Descubrir los patrones esperados de actividad para la carga de trabajo
<a name="ops_workload_health_learn_workload_usage_patterns"></a>

 Establezca patrones de actividad de la carga de trabajo para identificar comportamientos anómalos, de modo que pueda responder adecuadamente cuando sea necesario. 

 CloudWatch a través de la función [Detección de anomalías de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) aplica algoritmos estadísticos y de machine learning para generar un rango de valores esperados que representan el comportamiento normal de las métricas. 

 [Amazon DevOps Guru](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) puede utilizarse para identificar comportamientos anómalos mediante la correlación de eventos, el análisis de registros y la aplicación de machine learning para analizar la telemetría de la carga de trabajo. Cuando se detectan comportamientos inesperados, proporciona las [métricas y los eventos relacionados](https://docs.aws.amazon.com/devops-guru/latest/userguide/understanding-insights-console.html) con recomendaciones para abordar el comportamiento. 

 **Patrones de uso no recomendados comunes:** 
+  Está revisando los registros de utilización de la red y ve que la utilización de la red aumentó entre las 11:30 h y las 13:30 h y luego de nuevo entre las 16:30 h y las 18:00 h. No sabe si esto debe considerarse normal o no. 
+  Sus servidores web se reinician cada noche a las 3:00 h. No sabe si este es un comportamiento esperado. 

 **Beneficios de establecer esta práctica recomendada:** al aprender patrones de comportamiento, puede reconocer comportamientos inesperados y adoptar medidas en caso necesario. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Descubrir los patrones esperados de actividad para la carga de trabajo: establezca patrones de actividad de la carga de trabajo para determinar cuando el comportamiento está fuera de los valores esperados para que pueda responder apropiadamente si es necesario. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon DevOps Guru](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) 
+  [Detección de anomalías de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) 

# OPS08-BP06 Alertar cuando los resultados de la carga de trabajo corren riesgo
<a name="ops_workload_health_workload_outcome_alerts"></a>

 Emita una alerta cuando los resultados de la carga de trabajo corran riesgo para que pueda responder apropiadamente en caso necesario. 

 Lo ideal es que haya identificado previamente un umbral de métrica sobre el que pueda emitir una alarma o un evento que pueda utilizar para activar una respuesta automática. 

 En AWS, puede usar [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) para crear scripts de valor controlado para supervisar sus puntos de conexión y las API realizando las mismas acciones que sus clientes. La telemetría generada y la [información obtenida](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries_Details.html) pueden permitirle identificar los problemas antes de que sus clientes se vean afectados. 

 También puede utilizar [CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) para buscar y analizar de forma interactiva sus datos de registro utilizando un lenguaje de consulta especialmente diseñado. CloudWatch Logs Insights automáticamente [descubre los campos en los registros,](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_AnalyzeLogData-discoverable-fields.html) desde servicios de AWS y eventos de registros personalizados en JSON. Se adapta a su volumen de registros y a la complejidad de las consultas y le ofrece respuestas en segundos, ayudándole a buscar los factores que contribuyen a un incidente. 

 **Antipatrones usuales:** 
+  No tiene conectividad a la red. Nadie se da cuenta. Nadie trata de identificar el motivo ni de tomar medidas para restablecer la conectividad. 
+  Tras un parche, sus instancias persistentes han dejado de estar disponibles, interrumpiendo a los usuarios. Sus usuarios han abierto casos de asistencia. No se ha notificado a nadie. Nadie está tomando medidas. 

 **Beneficios de establecer esta práctica recomendada:** Al identificar que los resultados empresariales están en riesgo y alertar para que se tomen medidas, se tiene la oportunidad de prevenir o mitigar el impacto de un incidente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Alertar cuando los resultados de la carga de trabajo están en riesgo: emita una alerta cuando los resultados de la carga de trabajo estén en riesgo para que pueda responder apropiadamente si es necesario. 
  +  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 
  +  [Creación de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
  +  [Invocación de funciones de Lambda utilizando notificaciones de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) 
+  [Creación de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  [Invocación de funciones de Lambda utilizando notificaciones de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html) 
+  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 

# OPS08-BP07 Alertar cuando se detectan anomalías en la carga de trabajo
<a name="ops_workload_health_workload_anomaly_alerts"></a>

 Emita una alerta cuando se detecten anomalías en la carga de trabajo para poder responder adecuadamente en caso necesario. 

 El análisis de las métricas de la carga de trabajo a lo largo del tiempo puede establecer patrones de comportamiento que puede cuantificar lo suficiente como para definir un evento o dar una alarma en respuesta. 

 Una vez entrenada, la función [Detección de anomalías de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) se puede usar para [alertar](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create_Anomaly_Detection_Alarm.html) sobre las anomalías detectadas o puede proporcionar valores esperados superpuestos en un [gráfico](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph_a_metric.html#create-metric-graph) de datos métricos para una comparación continua. 

 **Antipatrones usuales:** 
+  Las ventas de su sitio web de venta al por menor han aumentado de forma repentina y espectacular. Nadie se da cuenta. Nadie está tratando de identificar lo que generó este aumento. Nadie está tomando medidas para garantizar la calidad de las experiencias de los clientes bajo la carga adicional. 
+  Tras la aplicación de un parche, sus servidores persistentes se reinician con frecuencia, interrumpiendo a los usuarios. Sus servidores suelen reiniciarse hasta tres veces, pero no más de eso. Nadie se da cuenta. Nadie trata de identificar por qué ocurre esto. 

 **Beneficios de establecer esta práctica recomendada:** Al comprender los patrones de comportamiento de la carga de trabajo, puede identificar comportamientos inesperados y adoptar medidas en caso necesario. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Alertar cuando se detectan anomalías en la carga de trabajo: emita una alerta cuando se detecten anomalías en la carga de trabajo para poder responder adecuadamente si es necesario. 
  +  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 
  +  [Creación de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
  +  [Invocación de funciones de Lambda utilizando notificaciones de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Creación de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  [Detección de anomalías de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) 
+  [Invocación de funciones de Lambda utilizando notificaciones de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html) 
+  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 

# OPS08-BP08 Validar el logro de resultados y la efectividad de los KPI y las métricas
<a name="ops_workload_health_biz_level_view_workload"></a>

 Cree una visión a nivel empresarial de sus operaciones de carga de trabajo para determinar si está satisfaciendo las necesidades e identificar las áreas que necesitan mejoras para alcanzar los objetivos empresariales. Valide la eficacia de los KPI y las métricas y revíselos si es necesario. 

 AWS también brinda asistencia para sistemas de análisis de registros de terceros y herramientas de inteligencia comercial a través de las API y SDK del servicio de AWS (por ejemplo, Grafana, Kibana y Logstash). 

 **Patrones de uso no recomendados comunes:** 
+  El tiempo de respuesta de las páginas nunca se ha considerado un factor que contribuya a la satisfacción del cliente. Nunca se ha establecido una métrica o un umbral para el tiempo de respuesta de las páginas. Sus clientes se quejan de la lentitud. 
+  No ha alcanzado sus objetivos de tiempo de respuesta mínimo. En un esfuerzo por mejorar el tiempo de respuesta, ha escalado sus servidores de aplicaciones. Ahora está superando los objetivos de tiempo de respuesta por un margen significativo y también tiene una importante capacidad no utilizada por la que está pagando. 

 **Beneficios de establecer esta práctica recomendada:** al examinar y revisar los KPI y las métricas, comprenderá cómo su carga de trabajo contribuye a la consecución de los resultados de la empresa y podrá identificar los aspectos que deben mejorarse para alcanzar los objetivos empresariales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Validar el logro de resultados y la efectividad de los KPI y las métricas: cree una visión a nivel empresarial de las operaciones de las cargas de trabajo para determinar si está satisfaciendo las necesidades e identificar las áreas que necesitan mejoras para alcanzar los objetivos empresariales. Valide la eficacia de los KPI y las métricas y revíselos si es necesario. 
  +  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
  +  [¿Qué es el análisis de registros?](https://aws.amazon.com/log-analytics/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
+  [¿Qué es el análisis de registros?](https://aws.amazon.com/log-analytics/) 

# OPS 9 ¿Qué hace para comprender el estado de las operaciones?
<a name="ops-09"></a>

 Defina, capture y analice las métricas de las operaciones para obtener visibilidad de los eventos de operaciones y poder tomar las medidas adecuadas. 

**Topics**
+ [OPS09-BP01 Identificar los indicadores clave de rendimiento](ops_operations_health_define_ops_kpis.md)
+ [OPS09-BP02 Definir métricas de operaciones](ops_operations_health_design_ops_metrics.md)
+ [OPS09-BP03 Recopilar y analizar métricas de operaciones](ops_operations_health_collect_analyze_ops_metrics.md)
+ [OPS09-BP04 Establecer referencias de métricas de operaciones](ops_operations_health_ops_metric_baselines.md)
+ [OPS09-BP05 Descubrir patrones esperados de actividad para las operaciones](ops_operations_health_learn_ops_usage_patterns.md)
+ [OPS09-BP06 Alertar cuando los resultados de las operaciones estén en riesgo](ops_operations_health_ops_outcome_alerts.md)
+ [OPS09-BP07 Alertar cuando se detecten anomalías en las operaciones](ops_operations_health_ops_anomaly_alerts.md)
+ [OPS09-BP08 Validar el logro de resultados y la efectividad de los KPI y las métricas](ops_operations_health_biz_level_view_ops.md)

# OPS09-BP01 Identificar los indicadores clave de rendimiento
<a name="ops_operations_health_define_ops_kpis"></a>

 Identifique los indicadores clave de rendimiento (KPI) en función de los resultados empresariales deseados (por ejemplo, las nuevas funciones entregadas) y los resultados de los clientes (por ejemplo, los casos de asistencia al cliente). Evalúe los KPI para determinar el éxito de las operaciones. 

 **Antipatrones usuales:** 
+  La dirección de la empresa le pregunta por el éxito de las operaciones en la consecución de los objetivos empresariales, pero no tiene un marco de referencia para determinar el éxito. 
+  No puede determinar si sus ventanas de mantenimiento tienen un impacto en los resultados del negocio. 

 **Beneficios de establecer esta práctica recomendada:** La identificación de los indicadores clave de rendimiento permite obtener resultados empresariales como prueba del estado y el éxito de sus operaciones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Identificar los indicadores clave de rendimiento: identifique los indicadores clave de rendimiento (KPI) en función de los resultados que desee obtener para la empresa y los clientes. Evalúe los KPI para determinar el éxito de las operaciones. 

# OPS09-BP02 Definir métricas de operaciones
<a name="ops_operations_health_design_ops_metrics"></a>

 Defina las métricas de las operaciones para medir la consecución de los KPI (por ejemplo, despliegues correctos y despliegues con errores). Defina las métricas de las operaciones para medir el estado de las actividades de las operaciones (por ejemplo, el tiempo medio para detectar un incidente [MTTD] y el tiempo medio de recuperación [MTTR] de un incidente). Evalúe las métricas para determinar si las operaciones obtienen los resultados deseados y para conocer el estado de las actividades de las operaciones. 

 **Patrones de uso no recomendados comunes:** 
+  Las métricas de sus operaciones se basan en lo que el equipo considera razonable. 
+  Tiene errores en los cálculos de las métricas que darán resultados incorrectos. 
+  No tiene ninguna métrica definida para las actividades de las operaciones. 

 **Beneficios de establecer esta práctica recomendada:** Al definir y evaluar las métricas de las operaciones, puede determinar el estado de las actividades de las operaciones y medir la consecución de los resultados empresariales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Defina la métrica de las operaciones: la finalidad es medir el logro de los KPI. Defina la métrica de las operaciones para medir estado de las operaciones y sus actividades. Evalúe las métricas para determinar si las operaciones están obteniendo los resultados deseados y para conocer el estado de las operaciones. 
  +  [Publique métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
  +  [Buscar y filtrar datos de registro](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/MonitoringLogData.html) 
  +  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Answers: registro centralizado](https://aws.amazon.com/answers/logging/centralized-logging/) 
+  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 
+  [Detecte y reaccione a los cambios en el estado de la canalización con Amazon CloudWatch Events](https://docs.aws.amazon.com/codepipeline/latest/userguide/detect-state-changes-cloudwatch-events.html) 
+  [Publique métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
+  [Buscar y filtrar datos de registro](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/MonitoringLogData.html) 

 **Vídeos relacionados:** 
+  Diseñe un plan de monitoreo 

# OPS09-BP03 Recopilar y analizar métricas de operaciones
<a name="ops_operations_health_collect_analyze_ops_metrics"></a>

 Realice exámenes periódicos y proactivos de las métricas para identificar las tendencias y determinar dónde se necesitan respuestas apropiadas. 

 Debe agregar los datos de registro de la ejecución de sus actividades de operaciones y las llamadas a la API de operaciones en un servicio como CloudWatch Logs. Genere métricas a partir de la observación del contenido de los registros necesarios para poder obtener información sobre el rendimiento de las actividades de las operaciones. 

 En AWS, puede [exportar sus datos de registro a Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/S3Export.html) o bien [enviar los registros directamente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Sending-Logs-Directly-To-S3.html) to [Amazon S3](https://aws.amazon.com/s3/) para el almacenamiento a largo plazo. Con [AWS Glue](https://aws.amazon.com/glue/), puede descubrir y preparar sus datos de registro para el análisis, almacenando los metadatos asociados en [AWSAWS Glue Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/populate-data-catalog.html). [Amazon Athena](https://aws.amazon.com/athena/), a través de su integración nativa con AWS Glue, puede utilizarse para analizar sus datos de registro, consultándolos mediante SQL estándar. Utilizando una herramienta de inteligencia empresarial como [Quick](https://aws.amazon.com/quicksight/) puede visualizar, explorar y analizar sus datos. 

 **Patrones de uso no recomendados comunes:** 
+  La entrega constante de nuevas funciones se considera un indicador clave de rendimiento. No tiene ningún método para medir la frecuencia de los despliegues. 
+  Se registran los despliegues, los despliegues revertidos, las revisiones y las revisiones revertidas para hacer un seguimiento de las actividades de las operaciones, pero nadie revisa las métricas. 
+  Tiene un objetivo de tiempo de recuperación de quince minutos para restaurar una base de datos perdida, lo cual se definió al desplegar el sistema sin usuarios. Ahora tiene diez mil usuarios y lleva dos años funcionando. Una restauración reciente llevó más de dos horas en realizarse. Esto no se registró y nadie lo sabe. 

 **Beneficios de establecer esta práctica recomendada:** mediante la recopilación y el análisis de las métricas de sus operaciones, podrá comprender el estado de las mismas y conocer las tendencias que puedan tener un impacto en sus operaciones o en la consecución de sus resultados empresariales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Recopilar y analizar métricas de operaciones: realice exámenes periódicos y proactivos de las métricas para identificar las tendencias y determinar dónde se necesitan respuestas apropiadas. 
  +  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 
  +  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 
  +  [Recopile métricas y registros de las instancias de Amazon EC2 y de los servidores locales con el agente de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon Athena](https://aws.amazon.com/athena/) 
+  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 
+  [Quick](https://aws.amazon.com/quicksight/) 
+  [AWS Glue](https://aws.amazon.com/glue/) 
+  [AWSAWS Glue Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/populate-data-catalog.html) 
+  [Recopile métricas y registros de las instancias de Amazon EC2 y de los servidores locales con el agente de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html) 
+  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 

# OPS09-BP04 Establecer referencias de métricas de operaciones
<a name="ops_operations_health_ops_metric_baselines"></a>

 Establezca referencias para las métricas con el fin de proporcionar valores esperados como base para la comparación e identificación de las actividades de las operaciones que están por debajo o por encima de lo esperado. 

 **Patrones de uso no recomendados comunes:** 
+  Le han preguntado cuál es el tiempo previsto para el despliegue. No ha medido el tiempo que tarda en desplegarse y no puede determinar los tiempos previstos. 
+  Le han preguntado cuánto tiempo se tarda en recuperarse de un problema con los servidores de aplicaciones. No tiene información sobre el tiempo de recuperación desde el primer contacto con el cliente. No tiene información sobre el tiempo de recuperación desde la primera identificación de un problema hasta la supervisión. 
+  Se le ha preguntado por cuántas personas del servicio de asistencia se necesitan durante el fin de semana. No tiene ni idea de cuántos casos de asistencia son típicos durante un fin de semana y no puede proporcionar una estimación. 
+  Tiene un objetivo de tiempo de recuperación de quince minutos para restaurar una base de datos perdida, lo cual se definió al desplegar el sistema sin usuarios. Ahora tiene diez mil usuarios y lleva dos años funcionando. No tiene información sobre cómo ha cambiado el tiempo de restauración de su base de datos. 

 **Beneficios de establecer esta práctica recomendada:** al definir los valores de las métricas de referencia, podrá evaluar los valores actuales de las métricas y las tendencias de las mismas para determinar si es necesario adoptar medidas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Descubrir los patrones esperados de actividad de las operaciones: establezca patrones de actividad de las operaciones para determinar cuando el comportamiento está fuera de los valores esperados para que pueda responder apropiadamente si es necesario. 

# OPS09-BP05 Descubrir patrones esperados de actividad para las operaciones
<a name="ops_operations_health_learn_ops_usage_patterns"></a>

 Establezca patrones de actividades de operaciones para identificar actividades anómalas, de modo que pueda responder adecuadamente en caso necesario. 

 **Patrones de uso no recomendados comunes:** 
+  Su tasa de errores en el despliegue ha aumentado sustancialmente en los últimos tiempos. Aborda cada uno de los errores de forma independiente. No se da cuenta de que los errores corresponden a despliegues realizados por un nuevo empleado que no está familiarizado con el sistema de gestión de despliegues. 

 **Beneficios de establecer esta práctica recomendada:** al aprender patrones de comportamiento, puede reconocer comportamientos inesperados y adoptar medidas en caso necesario. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Descubrir los patrones esperados de actividad de las operaciones: establezca patrones de actividad de las operaciones para determinar cuando el comportamiento está fuera de los valores esperados para que pueda responder apropiadamente si es necesario. 

# OPS09-BP06 Alertar cuando los resultados de las operaciones estén en riesgo
<a name="ops_operations_health_ops_outcome_alerts"></a>

 Siempre que los resultados de las operaciones estén en riesgo, se debe generar una alerta y actuar en consecuencia. Los resultados de las operaciones son cualquier actividad que admita una carga de trabajo en producción. Esto incluye todo, desde desplegar nuevas versiones de aplicaciones hasta recuperarse de una interrupción. Los resultados de las operaciones se deben tratar con la misma importancia que los resultados empresariales. 

Los equipos de software deben identificar las métricas y actividades clave de las operaciones y crear alertas para ellas. Las alertas deben ser oportunas y procesables. Si se produce una alerta, debe incluirse una referencia a un runbook o una guía de estrategias correspondiente. Las alertas sin una acción correspondiente pueden conllevar una saturación de alertas.

 **Resultado deseado:** cuando las actividades de las operaciones están en riesgo, se envían alertas para impulsar la acción. Las alertas contienen el contexto de los motivos por los que se produce una alerta e indican una guía de estrategias para investigar o un runbook para mitigarla. En la medida de lo posible, se automatizan los runbooks y se envían notificaciones. 

 **Patrones comunes de uso no recomendados:** 
+ Está investigando un incidente y se están presentando casos de asistencia. Estos casos incumplen el acuerdo de nivel de servicio (SLA), pero no se están generando alertas. 
+ Un despliegue a producción programado para medianoche se retrasa debido a cambios de código de última hora. No se genera ninguna alerta y el despliegue se bloquea.
+ Se produce una interrupción de producción pero no se envían alertas.
+  Su tiempo de despliegue se retrasa sistemáticamente con respecto a las estimaciones. No se toma ninguna medida para investigar. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Las alertas cuando los resultados de las operaciones están en riesgo impulsan su capacidad de prestar asistencia a la carga de trabajo al adelantarse a los problemas. 
+  Los resultados empresariales mejoran gracias a los resultados de las operaciones en buen estado. 
+  Se han mejorado la detección y la reparación de los problemas de las operaciones. 
+  El estado operativo general aumenta. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Se deben definir los resultados de las operaciones para poder generar alertas de ellos. Empiece por definir qué actividades operativas son las más importantes para su organización. ¿Se trata de desplegar a producción en menos de dos horas o de responder a un caso de asistencia en un tiempo determinado? Su organización debe definir las actividades clave de las operaciones y cómo se miden para poder supervisarlas, mejorarlas y generar alertas de ellas. Necesita una ubicación central donde se almacene y analice la carga de trabajo y la telemetría de las operaciones. El mismo mecanismo debe poder emitir una alerta cuando el resultado de una operación esté en peligro. 

 **Ejemplo de cliente** 

 Se ha desencadenado una alarma de CloudWatch durante un despliegue rutinario en AnyCompany Retail. Se ha sobrepasado el plazo de despliegue. Amazon EventBridge ha creado un OpsItem en AWS Systems Manager OpsCenter. El equipo de operaciones en la nube ha utilizado una guía de estrategias para investigar el problema y ha identificado que un cambio de esquema tardaba más de lo previsto. Ha alertado al desarrollador de guardia y ha seguido supervisando el despliegue. Una vez desplegado, el equipo de operaciones en la nube ha resuelto el OpsItem. El equipo analizará el incidente durante una autopsia. 

## Pasos para la aplicación
<a name="implementation-steps"></a>

1. Si no ha identificado los KPI, las métricas ni las actividades de las operaciones, trabaje en la implementación de las prácticas recomendadas anteriores a esta cuestión (OPS09-BP01 a OPS09-BP05). 
   +  Los clientes de Soporte con [Asistencia Enterprise](https://aws.amazon.com/premiumsupport/plans/enterprise/) pueden solicitar el [taller sobre KPI de operaciones](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/#Operational_Workshops_and_Deep_Dives) a su gerente técnico de cuentas. Este taller de colaboración, que se ofrece sin coste adicional, le ayuda a definir los KPI de las operaciones y las métricas alineadas con los objetivos empresariales. Póngase en contacto con su gerente de cuentas técnicas para obtener más información. 

1.  Una vez que tenga establecidas las actividades de las operaciones, los KPI y las métricas, configure las alertas en su plataforma de observabilidad. Las alertas deben tener una acción asociada, como una guía de estrategias o un runbook. Deben evitarse las alertas sin una acción. 

1.  Con el tiempo, deberá evaluar las métricas de las operaciones, los KPI y las actividades para identificar las áreas de mejora. Capture la retroalimentación de los operadores en los runbooks y guías de estrategias para identificar las áreas de mejora en la respuesta a las alertas. 

1.  Las alertas deben incluir un mecanismo para marcarlas como un falso positivo. Esto debería conllevar una revisión de los umbrales de las métricas. 

 **Nivel de esfuerzo para el plan de implementación:** Medio. Hay varias prácticas recomendadas que deben estar aplicadas antes de implementar esta práctica recomendada. Una vez que se han identificado las actividades de las operaciones y se han establecido los KPI de ellas, deben establecerse las alertas. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS02-BP03 Las actividades operativas han identificado a los propietarios responsables de su rendimiento](ops_ops_model_def_activity_owners.md): todas las actividades y resultados de las operaciones deben tener un propietario identificado que sea responsable. Es quien debe recibir la alerta cuando los resultados están en riesgo. 
+  [OPS03-BP02 Los miembros del equipo están capacitados para actuar cuando los resultados están en riesgo](ops_org_culture_team_emp_take_action.md): cuando se produzcan las alertas, su equipo debe tener una agencia para actuar y solucionar el problema. 
+  [OPS09-BP01 Identificar los indicadores clave de rendimiento](ops_operations_health_define_ops_kpis.md): las alertas de los resultados de las operaciones empiezan por identificar los KPI de las operaciones. 
+  [OPS09-BP02 Definir métricas de operaciones](ops_operations_health_design_ops_metrics.md): establezca esta práctica recomendada antes de empezar a generar alertas. 
+  [OPS09-BP03 Recopilar y analizar métricas de operaciones](ops_operations_health_collect_analyze_ops_metrics.md): la recopilación centralizada de las métricas de las operaciones es necesaria para crear alertas. 
+  [OPS09-BP04 Establecer referencias de métricas de operaciones](ops_operations_health_ops_metric_baselines.md): las bases de referencia de las métricas de operaciones proporcionan la capacidad de ajustar las alertas y evitar la saturación. 
+  [OPS09-BP05 Descubrir patrones esperados de actividad para las operaciones](ops_operations_health_learn_ops_usage_patterns.md): puede mejorar la precisión de las alertas si comprende los patrones de actividad de los eventos de las operaciones. 
+  [OPS09-BP08 Validar el logro de resultados y la efectividad de los KPI y las métricas](ops_operations_health_biz_level_view_ops.md): evalúe la consecución de los resultados de las operaciones para asegurarse de que sus indicadores clave de rendimiento y sus métricas son válidos. 
+  [OPS10-BP02 Tener un proceso por alerta](ops_event_response_process_per_alert.md): cada alerta debe tener asociado un runbook o una guía de estrategias y proporcionar el contexto a la persona a la que se alerta. 
+  [OPS11-BP02 Realizar un análisis después del incidente](ops_evolve_ops_perform_rca_process.md): realice un análisis posterior al incidente después de la alerta para identificar las áreas de mejora. 

 **Documentos relacionados:** 
+  [AWS Deployment Pipelines Reference Architecture: Application Pipeline Architecture (Arquitectura de referencia de las canalizaciones de despliegue de AWS: arquitectura de canalización de aplicaciones)](https://pipelines.devops.aws.dev/application-pipeline/) 
+  [GitLab: Getting Started with Agile / DevOps Metrics (GitLab: Introducción a las métricas de Agile/DevOps)](https://about.gitlab.com/handbook/marketing/strategic-marketing/devops-metrics/) 

 **Vídeos relacionados:** 
+  [Aggregate and Resolve Operational Issues Using AWS Systems Manager OpsCenter (Agregar y resolver problemas operativos mediante AWS Systems Manager OpsCenter)](https://www.youtube.com/watch?v=r6ilQdxLcqY) 
+  [Integrate AWS Systems Manager OpsCenter with Amazon CloudWatch Alarms (Integrar AWS Systems Manager OpsCenter con las alarmas de Amazon CloudWatch)](https://www.youtube.com/watch?v=Gpc7a5kVakI) 
+  [Integrate Your Data Sources into AWS Systems Manager OpsCenter Using Amazon EventBridge (Integre sus orígenes de datos en AWS Systems Manager OpsCenter con Amazon EventBridge)](https://www.youtube.com/watch?v=Xmmu5mMsq3c) 

 **Ejemplos relacionados:** 
+  [Automate remediation actions for Amazon EC2 notifications and beyond using Amazon EC2 Systems Manager Automation and AWS Health (Automatización de las medidas de corrección para las notificaciones de Amazon EC2, entre otros, mediante la automatización de Amazon EC2 y AWS Health)](https://aws.amazon.com/blogs/mt/automate-remediation-actions-for-amazon-ec2-notifications-and-beyond-using-ec2-systems-manager-automation-and-aws-health/) 
+  [AWS Management and Governance Tools Workshop - Operations 2022 (Taller de herramientas de administración y gobernanza de AWS - Operaciones 2022)](https://mng.workshop.aws/operations-2022.html) 
+  [Ingesting, analyzing, and visualizing metrics with DevOps Monitoring Dashboard on AWS (Ingesta, análisis y visualización de métricas con el panel de supervisión de DevOps en AWS)](https://docs.aws.amazon.com/solutions/latest/devops-monitoring-dashboard-on-aws/welcome.html) 

 **Servicios relacionados:** 
+  [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) 
+  [Soporte Proactive Services - Operations KPI Workshop (Servicios proactivos de Soporte - Taller de KPI de operaciones)](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/#Operational_Workshops_and_Deep_Dives) 
+  [AWS Systems Manager OpsCenter](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html) 
+  [Eventos de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 

# OPS09-BP07 Alertar cuando se detecten anomalías en las operaciones
<a name="ops_operations_health_ops_anomaly_alerts"></a>

 Emita una alerta cuando se detecten anomalías en las operaciones para poder responder adecuadamente en caso necesario. 

 El análisis de las métricas de operaciones a lo largo del tiempo puede establecer patrones de comportamiento que puede cuantificar lo suficiente como para definir un evento o dar una alarma en respuesta. 

 Una vez entrenada, la función [Detección de anomalías de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) se puede usar para [alertar](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Create_Anomaly_Detection_Alarm.html) sobre las anomalías detectadas o puede proporcionar valores esperados superpuestos en un [gráfico](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/graph_a_metric.html#create-metric-graph) de datos métricos para una comparación continua. 

 [Amazon DevOps Guru](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) puede utilizarse para identificar comportamientos anómalos mediante la correlación de eventos, el análisis de registros y la aplicación de machine learning para analizar la telemetría de la carga de trabajo. La [información](https://docs.aws.amazon.com/devops-guru/latest/userguide/understanding-insights-console.html) obtenida se presenta con los datos y recomendaciones pertinentes. 

 **Patrones de uso no recomendados comunes:** 
+  Está aplicando una revisión a su flota de instancias. Ha probado la revisión con éxito en el entorno de pruebas. La revisión está fallando en un gran porcentaje de instancias de su flota. No hace nada. 
+  Observa que hay despliegues a partir del viernes al final del día. Su organización tiene ventanas de mantenimiento predefinidas los martes y los jueves. No hace nada. 

 **Beneficios de establecer esta práctica recomendada:** al comprender los patrones de comportamiento de las operaciones, puede identificar comportamientos inesperados y adoptar medidas en caso necesario. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Alertar cuando se detectan anomalías en las operaciones: emita una alerta cuando se detecten anomalías en las operaciones para poder responder adecuadamente si es necesario. 
  +  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 
  +  [Creación de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
  +  [Invocación de funciones de Lambda utilizando notificaciones de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon DevOps Guru](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) 
+  [Detección de anomalías de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) 
+  [Creación de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  [Detecte y reaccione a los cambios en el estado del proceso con Amazon CloudWatch Events](https://docs.aws.amazon.com/codepipeline/latest/userguide/detect-state-changes-cloudwatch-events.html) 
+  [Invocación de funciones de Lambda utilizando notificaciones de Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html) 
+  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 

# OPS09-BP08 Validar el logro de resultados y la efectividad de los KPI y las métricas
<a name="ops_operations_health_biz_level_view_ops"></a>

 Cree una visión a nivel empresarial de sus actividades de operaciones para determinar si está satisfaciendo las necesidades e identificar las áreas que necesitan mejoras para alcanzar los objetivos empresariales. Valide la eficacia de los KPI y las métricas y revíselos si es necesario. 

 AWS también ofrece asistencia para sistemas de análisis de registros de terceros y herramientas de inteligencia comercial a través de las API y SDK del servicio de AWS (por ejemplo, Grafana, Kibana y Logstash). 

 **Patrones de uso no recomendados comunes:** 
+  La frecuencia de sus despliegues ha aumentado con el incremento del número de equipos de desarrollo. El número de despliegues que ha definido es de una vez a la semana. Ha realizado despliegues diarios con regularidad. Cuando hay un problema con su sistema de despliegue y este no es posible, pasa desapercibido durante días. 
+  Cuando su empresa anteriormente prestaba asistencia solo durante el horario comercial principal de lunes a viernes. Ha establecido un objetivo de tiempo de respuesta al siguiente día laborable para los incidentes. Recientemente ha empezado a ofrecer una cobertura de asistencia las 24 horas del día con un objetivo de tiempo de respuesta de dos horas. Su personal nocturno está desbordado y los clientes están descontentos. No hay indicios de que haya problemas con los tiempos de respuesta a incidentes porque está informando con respecto a un objetivo de siguiente día laborable. 

 **Beneficios de establecer esta práctica recomendada:** Al examinar y revisar los indicadores clave de rendimiento y las métricas, comprenderá cómo su carga de trabajo contribuye a la consecución de los resultados de la empresa y podrá identificar los aspectos que deben mejorarse para alcanzar los objetivos empresariales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Validar los resultados obtenidos y la eficacia de los KPI y las métricas: cree una visión a nivel empresarial de las actividades de las operaciones para determinar si está satisfaciendo las necesidades e identificar las áreas que necesitan mejoras para alcanzar los objetivos empresariales. Valide la eficacia de los KPI y las métricas y revíselos si es necesario. 
  +  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
  +  [¿Qué es el análisis de registros?](https://aws.amazon.com/log-analytics/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
+  [¿Qué es el análisis de registros?](https://aws.amazon.com/log-analytics/) 

# OPS 10 ¿Cómo administra la carga de trabajo y los eventos de operaciones?
<a name="ops-10"></a>

 Prepare y valide los procedimientos de respuesta a los eventos para minimizar la interrupción de la carga de trabajo. 

**Topics**
+ [OPS10-BP01 Uso de un proceso para la administración de eventos, incidentes y problemas](ops_event_response_event_incident_problem_process.md)
+ [OPS10-BP02 Tener un proceso por alerta](ops_event_response_process_per_alert.md)
+ [OPS10-BP03 Prioridad de los eventos operativos según el impacto empresarial](ops_event_response_prioritize_events.md)
+ [OPS10-BP04 Definir rutas de escalado](ops_event_response_define_escalation_paths.md)
+ [OPS10-BP05 Definir un plan de comunicación con los clientes en caso de interrupciones del servicio](ops_event_response_push_notify.md)
+ [OPS10-BP06 Comunicar el estado a través de paneles](ops_event_response_dashboards.md)
+ [OPS10-BP07 Automatizar las respuestas a eventos](ops_event_response_auto_event_response.md)

# OPS10-BP01 Uso de un proceso para la administración de eventos, incidentes y problemas
<a name="ops_event_response_event_incident_problem_process"></a>

Su organización tiene procesos para gestionar eventos, incidentes y problemas. *Los eventos* son cosas que ocurren en su carga de trabajo pero que podrían no necesitar intervención. *Los incidentes* son eventos que requieren intervención. *Los problemas* son eventos recurrentes que requieren una intervención o que no pueden resolverse. Necesita procesos para mitigar el impacto de estos eventos en su negocio y asegurarse de que responde adecuadamente.

Cuando se producen incidentes y problemas en su carga de trabajo, necesita procesos para gestionarlos. ¿Cómo va a comunicar el estado del evento a las partes interesadas? ¿Quién supervisa la dirección de la respuesta? ¿Cuáles son las herramientas que utiliza para mitigar el evento? Estos son ejemplos de algunas de las preguntas que debe responder para tener un proceso de respuesta sólido. 

Los procesos deben estar documentados en un lugar central y a disposición de cualquier persona involucrada en su carga de trabajo. Si no tiene un wiki central o un almacén de documentos, se puede utilizar un repositorio de control de versiones. Mantendrá estos planes actualizados a medida que sus procesos evolucionen. 

Los problemas son candidatos a la automatización. Estos eventos le restan tiempo a su capacidad de innovar. Empiece por crear un proceso repetible para mitigar el problema. Con el tiempo, céntrese en automatizar la mitigación o en solucionar el problema subyacente. Esto libera tiempo para dedicarlo a hacer mejoras en su carga de trabajo. 

**Resultado deseado:** Su organización tiene un proceso para gestionar eventos, incidentes y problemas. Estos procesos se documentan y almacenan en un lugar central. Se actualizan a medida que cambian los procesos. 

**Patrones comunes de uso no recomendados:** 
+  Se produce un incidente en el fin de semana y el ingeniero de guardia no sabe qué hacer. 
+  Un cliente le envía un correo electrónico diciendo que la aplicación no funciona. Se reinicia el servidor para solucionarlo. Esto ocurre con frecuencia. 
+  Hay un incidente en el que varios equipos trabajan de forma independiente para intentar resolverlo. 
+  Los despliegues ocurren en su carga de trabajo sin registrarse. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Tiene una pista de auditoría de los eventos en su carga de trabajo. 
+  Su tiempo para recuperarse de un incidente disminuye. 
+  Los miembros del equipo pueden resolver incidentes y problemas de manera coherente. 
+  Hay un esfuerzo más consolidado cuando se investiga un incidente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

La implementación de esta práctica recomendada implica el seguimiento de los eventos de la carga de trabajo. Dispone de procesos para gestionar las incidencias y los problemas. Los procesos se documentan, se comparten y se actualizan con frecuencia. Los problemas se identifican, se priorizan y se solucionan. 

 **Ejemplo de cliente** 

AnyCompany Retail tiene una parte de su wiki interna dedicada a los procesos de gestión de eventos, incidentes y problemas. Todos los eventos se envían a [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html). Los problemas se identifican como OpsItems en [AWS Systems Manager OpsCenter](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html) y su solución se prioriza, reduciendo la mano de obra no diferenciada. A medida que los procesos cambian, se actualizan en su wiki interna. Utilizan [Administrador de incidentes de AWS Systems Manager](https://docs.aws.amazon.com/incident-manager/latest/userguide/what-is-incident-manager.html) para gestionar los incidentes y coordinar los esfuerzos de mitigación. 

## Pasos para la aplicación
<a name="implementation-steps"></a>

1.  Eventos 
   +  Realice un seguimiento de los eventos que se producen en su carga de trabajo, aunque no sea necesaria la intervención humana. 
   +  Trabaje con las partes interesadas en la carga de trabajo para desarrollar una lista de eventos que deben rastrearse. Algunos ejemplos son los despliegues completados o la aplicación de parches con éxito. 
   +  Puede utilizar servicios como [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) o bien [Amazon Simple Notification Service](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) para generar eventos personalizados para el seguimiento. 

1.  Los incidentes 
   +  Comience por definir el plan de comunicación de incidentes. ¿Qué partes interesadas deben ser informadas? ¿Cómo los mantendrá informados? ¿Quién supervisa los esfuerzos de coordinación? Recomendamos establecer un canal de chat interno para la comunicación y la coordinación. 
   +  Defina rutas de derivación para los equipos que apoyan su carga de trabajo, especialmente si el equipo no tiene una rotación de guardia. En función de su nivel de soporte, también puede registrar un caso con Soporte. 
   +  Cree una guía de estrategias para investigar el incidente. Debe incluir el plan de comunicación y los pasos detallados de la investigación. Incluya la comprobación del [Panel de AWS Health](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html) en su investigación. 
   +  Documente su plan de respuesta a incidentes. Comunique el plan de gestión de incidentes para que los clientes internos y externos comprendan las normas de actuación y lo que se espera de ellos. Forme a los miembros de su equipo en cómo usarlo. 
   +  Los clientes pueden usar [Incident Manager](https://docs.aws.amazon.com/incident-manager/latest/userguide/what-is-incident-manager.html) para establecer y gestionar su plan de respuesta a incidentes. 
   +  Los clientes de Enterprise Support pueden solicitar el [Taller de gestión de incidentes](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/#Operational_Workshops_and_Deep_Dives) a su gerente técnico de cuentas. Este taller guiado pone a prueba su actual plan de respuesta a incidentes y le ayuda a identificar áreas de mejora. 

1.  Problemas 
   +  Los problemas deben identificarse y seguirse en el sistema ITSM. 
   +  Identifique todos los problemas conocidos y priorícelos según el esfuerzo para solucionarlos y según el impacto en la carga de trabajo.   
![\[Matriz de prioridades de acciones para priorizar los problemas.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/impact-effort-chart.png)
   +  Resuelva primero los problemas de alto impacto y bajo esfuerzo. Una vez resueltos estos, pase a los problemas que entran en el cuadrante de bajo impacto y bajo esfuerzo. 
   +  Puede usar [Systems Manager OpsCenter](systems-manager/latest/userguide/OpsCenter.html) para identificar estos problemas, adjuntarles runbooks y hacer un seguimiento de los mismos. 

**Nivel de esfuerzo para el plan de implementación:** Medio Se necesita tanto un proceso como herramientas para implementar esta práctica recomendada. Documente sus procesos y póngalos a disposición de cualquier persona relacionada con la carga de trabajo. Actualícelos con frecuencia. Tiene un proceso para gestionar los problemas y mitigarlos o solucionarlos. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS07-BP03 Uso de runbooks para realizar los procedimientos](ops_ready_to_support_use_runbooks.md): los problemas conocidos necesitan un runbook asociado para que los esfuerzos de mitigación sean coherentes.
+  [OPS07-BP04 Usar guías de estrategias para investigar problemas](ops_ready_to_support_use_playbooks.md): los incidentes deben investigarse utilizando guías de estrategias. 
+  [OPS11-BP02 Realizar un análisis después del incidente](ops_evolve_ops_perform_rca_process.md): realice siempre una autopsia después de recuperarse de un incidente. 

 **Documentos relacionados:** 
+  [Atlassian - Incident management in the age of DevOps (Atlassian: gestión de incidentes en la era de DevOps)](https://www.atlassian.com/incident-management/devops) 
+  [AWS Security Incident Response Guide (Guía de respuesta ante incidentes de seguridad de AWS)](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) 
+  [Incident Management in the Age of DevOps and SRE (Gestión de incidentes en la era de DevOps y SRE)](https://www.infoq.com/presentations/incident-management-devops-sre/) 
+  [PagerDuty - What is Incident Management? (PagerDuty: ¿Qué es la gestión de incidentes?)](https://www.pagerduty.com/resources/learn/what-is-incident-management/) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2020: Incident management in a distributed organization (Gestión de incidencias en una organización distribuida)](https://www.youtube.com/watch?v=tyS1YDhMVos) 
+  [AWS re:Invent 2021 - Building next-gen applications with event-driven architectures (Creación de aplicaciones de nueva generación con arquitecturas basadas en eventos)](https://www.youtube.com/watch?v=U5GZNt0iMZY) 
+  [AWS Supports You \$1 Exploring the Incident Management Tabletop Exercise (AWS le apoya \$1 Ejercicio práctico de exploración de gestión de incidentes)](https://www.youtube.com/watch?v=0m8sGDx-pRM) 
+  [Administrador de incidentes de AWS Systems Manager - AWS Virtual Workshops (Administrador de incidentes de AWS Systems Manager: talleres virtuales de AWS)](https://www.youtube.com/watch?v=KNOc0DxuBSY) 
+  [AWS What's Next ft. Incident Manager \$1 AWS Events (Novedades de AWS - Incident Manager \$1 Eventos de AWS)](https://www.youtube.com/watch?v=uZL-z7cII3k) 

 **Ejemplos relacionados:** 
+  [AWS Management and Governance Tools Workshop - OpsCenter (Taller de herramientas de administración y gobernanza de AWS - OpsCenter)](https://mng.workshop.aws/ssm/capability_hands-on_labs/opscenter.html) 
+  [AWS Proactive Services – Incident Management Workshop (Servicios proactivos de AWS: taller de gestión de incidencias)](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/#Operational_Workshops_and_Deep_Dives) 
+  [Building an event-driven application with Amazon EventBridge (Creación de una aplicación basada en eventos con Amazon EventBridge)](https://aws.amazon.com/blogs/compute/building-an-event-driven-application-with-amazon-eventbridge/) 
+  [Building event-driven architectures on AWS (Desarrollo de arquitecturas basadas en eventos en AWS)](https://catalog.us-east-1.prod.workshops.aws/workshops/63320e83-6abc-493d-83d8-f822584fb3cb/en-US/) 

 **Servicios relacionados:** 
+  [Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) 
+  [Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) 
+  [Panel de AWS Health](https://docs.aws.amazon.com/health/latest/ug/what-is-aws-health.html) 
+  [Administrador de incidentes de AWS Systems Manager](https://docs.aws.amazon.com/incident-manager/latest/userguide/what-is-incident-manager.html) 
+  [AWS Systems Manager OpsCenter](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html) 

# OPS10-BP02 Tener un proceso por alerta
<a name="ops_event_response_process_per_alert"></a>

 Tenga una respuesta bien definida (runbook o guía de estrategia) con un propietario identificado de forma específica para cualquier evento del que se alerte. Esto garantiza respuestas rápidas y eficaces a eventos operativos y previene que los eventos procesables queden ocultos por notificaciones menos importantes. 

 **Patrones de uso no recomendados comunes:** 
+  Su sistema de supervisión le presenta un flujo de conexiones aprobadas junto con otros mensajes. El volumen de mensajes es tan grande que pasa por alto los mensajes de error periódicos que requieren su intervención. 
+  Recibe una alerta de que el sitio web está inactivo. No hay un proceso definido para cuando sucede esto. Se ve obligado a adoptar un enfoque ad hoc para diagnosticar y resolver el problema. El desarrollo de este proceso sobre la marcha alarga el tiempo de recuperación. 

 **Beneficios de establecer esta práctica recomendada:** Al alertar solo cuando es necesario actuar, se evita que las alertas de bajo valor oculten las de alto valor. Al contar con un proceso para cada alerta procesable, permite una respuesta coherente y rápida a los eventos de su entorno. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Procese por alerta: cualquier evento del que se alerte debe tener una respuesta bien definida (runbook o guía de estrategia) con un propietario identificado de manera específica (por ejemplo, un individuo, un equipo o un rol) responsable de una realización correcta. Una respuesta puede llevarse a cabo de forma automática o no (otro equipo puede ejecutarla); sin embargo, el propietario es el responsable de garantizar que el proceso obtenga los resultados esperados. Al contar con estos procesos, se asegura de disponer de respuestas a eventos operativos eficaces y rápidas y, además, podrá prevenir que los eventos procesables queden ocultos por notificaciones menos importantes. Por ejemplo, Auto Scaling puede aplicarse para escalar el front-end de una web, pero el equipo operativo puede ser responsable de garantizar que las normas y los límites de Auto Scaling sean apropiados para las necesidades de la carga de trabajo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Características de Amazon CloudWatch](https://aws.amazon.com/cloudwatch/features/) 
+  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 

 **Vídeos relacionados:** 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU) 

# OPS10-BP03 Prioridad de los eventos operativos según el impacto empresarial
<a name="ops_event_response_prioritize_events"></a>

 Asegúrese de que, cuando varios eventos requieran una intervención, se aborden primero los más importantes para el negocio. Hay diversos tipos de impactos, como muertes o daños físicos, pérdidas económicas, así como daños a la reputación o confianza. 

 **Antipatrones usuales:** 
+  Recibe una solicitud de soporte para añadir una configuración de impresora para un usuario. Mientras trabaja en el problema, recibe una solicitud de soporte indicando que su sitio web de venta al por menor no funciona. Después de completar la configuración de la impresora para su usuario, comienza a trabajar en el problema del sitio web. 
+  Se le notifica que tanto su sitio web de venta al por menor como su sistema de nóminas no funcionan. No sabes cuál debe tener la máxima prioridad. 

 **Beneficios de establecer esta práctica recomendada:** La priorización de las respuestas a los incidentes con mayor impacto en la empresa permite gestionar dicho impacto. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Prioridad de los eventos operativos según el impacto empresarial: asegúrese de que, cuando varios eventos requieran una intervención, se aborden primero los más importantes para el negocio. Hay diversos tipos de impactos, como muertes o daños físicos, pérdidas económicas, infracciones de normas, así como daños a la reputación o confianza. 

# OPS10-BP04 Definir rutas de escalado
<a name="ops_event_response_define_escalation_paths"></a>

 Defina las rutas de derivación en los runbooks y guías de estrategia, como, por ejemplo, aquello que desencadena una derivación y los procedimientos. Identifique a los titulares de cada acción de forma específica para garantizar respuestas rápidas y eficaces a los eventos operativos. 

 Identifique cuándo se requiere una decisión humana antes de realizar una acción. Trabaje con los responsables de la toma de decisiones para que esa decisión se tome con antelación y la acción se apruebe previamente, para que el tiempo medio de resolución no se prolongue esperando una respuesta. 

 **Antipatrones usuales:** 
+  Su sitio web de venta al por menor no funciona. No comprende el libro de instrucciones para recuperar el sitio. Empieza a llamar a sus colegas con la esperanza de que alguien pueda ayudarle. 
+  Recibe una incidencia de soporte para una aplicación inalcanzable. No tiene permisos para administrar el sistema. No sabe quién lo hace. Se intenta contactar con el propietario del sistema que abrió el incidente y no hay respuesta. No tiene contactos para el sistema y sus colegas no están familiarizados con él. 

 **Beneficios de establecer esta práctica recomendada:** Al definir los escalados, los desencadenantes y los procedimientos de los escalados, se permite la adición sistemática de recursos a un incidente a un ritmo adecuado para el impacto. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Definir rutas de escalado: defina las rutas de escalado en los runbooks y guías de estrategia, como, por ejemplo, aquello que desencadena un escalado y los procedimientos. Por ejemplo, la derivación de un problema de los ingenieros de apoyo a los ingenieros de apoyo senior cuando los runbooks no tengan la respuesta a un problema o cuando haya transcurrido un periodo de tiempo definido previamente. Otro ejemplo sería la derivación de una carga de trabajo de los ingenieros de apoyo senior al equipo de desarrollo cuando las guías de estrategia no puedan identificar qué ruta seguir para solucionar el problema o cuando haya transcurrido un periodo de tiempo definido previamente. Identifique a los titulares de cada acción de forma específica para garantizar respuestas rápidas y eficaces a los eventos operativos. Las derivaciones pueden incluir a terceros. Por ejemplo, a un proveedor de conectividad de red o de software. Las derivaciones pueden incluir a los responsables de la toma de decisiones en lo que respecta a los sistemas afectados autorizados e identificados 

# OPS10-BP05 Definir un plan de comunicación con los clientes en caso de interrupciones del servicio
<a name="ops_event_response_push_notify"></a>

 Defina y pruebe un plan de comunicación para interrupciones del sistema en el que pueda confiar, a fin de mantener informados a sus clientes y partes interesadas durante las interrupciones del servicio. Comuníquese directamente con sus usuarios tanto cuando los servicios que utilizan se vean afectados como cuando vuelvan a la normalidad. 

 **Resultado deseado:** 
+  Dispone de un plan de comunicación para situaciones que van desde el mantenimiento programado hasta grandes errores inesperados, incluida la invocación de planes de recuperación de desastres. 
+  En sus comunicaciones, proporciona información clara y transparente sobre los problemas de los sistemas para ayudar a los clientes a no dudar del rendimiento de sus sistemas. 
+  Utiliza mensajes de error y páginas de estado personalizados para reducir el pico de solicitudes al servicio de asistencia y mantener informados a los usuarios. 
+  El plan de comunicación se pone a prueba periódicamente para garantizar que funcione según lo previsto cuando se produzca una interrupción real. 

 **Antipatrones usuales:** 
+ Se produce una interrupción de la carga de trabajo, pero no dispone de un plan de comunicación. Los usuarios saturan el sistema de tickets de problemas con solicitudes porque no tienen información sobre la interrupción del servicio.
+ Envía una notificación por correo electrónico a los usuarios durante una interrupción del servicio. No incluye un plazo para el restablecimiento del servicio, por lo que los usuarios no pueden hacer planes para la interrupción.
+ Existe un plan de comunicación para las interrupciones del servicio, pero no se ha probado nunca. Se produce una interrupción y el plan de comunicación no funciona porque se ha omitido un paso crucial que podría haberse detectado en las pruebas.
+  Durante una interrupción, envía una notificación a los usuarios que contiene demasiados detalles técnicos e información según su acuerdo de confidencialidad de AWS. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Mantener la comunicación durante las interrupciones del servicio garantiza que los clientes estén al tanto de la evolución de los problemas y el tiempo estimado para su resolución. 
+  El desarrollo de un plan de comunicaciones bien definido asegura que sus clientes y usuarios finales estén bien informados para que puedan tomar las medidas adicionales necesarias para mitigar la repercusión de las interrupciones del servicio. 
+  Con una comunicación adecuada y un mejor conocimiento de las interrupciones planificadas y no planificadas, puede mejorar la satisfacción del cliente, limitar las reacciones imprevistas y favorecer la retención de clientes. 
+  Una comunicación oportuna y transparente sobre las interrupciones del sistema estimula la confianza necesaria para mantener las relaciones entre usted y sus clientes. 
+  Una estrategia de comunicación sólida durante una interrupción o crisis del servicio reduce las conjeturas y habladurías que podrían obstaculizar su capacidad de recuperación. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los planes de comunicación que mantienen informados a los clientes durante las interrupciones del servicio son holísticos y abarcan numerosas interfaces, como páginas de error orientadas al cliente, mensajes de error de API personalizados, banners de estado del sistema y páginas de comprobación de estado. Si su sistema tiene usuarios registrados, puede comunicarse a través de canales de mensajería como correo electrónico, SMS o notificaciones push para enviar mensajes con contenido personalizado a los clientes. 

 **Herramientas de comunicación con el cliente** 

 Como primera línea de defensa, las aplicaciones web y móviles deben proporcionar mensajes de error amables e informativos durante una interrupción del servicio, así como tener la capacidad de redirigir el tráfico a una página de estado. [Amazon CloudFront](https://aws.amazon.com/cloudfront/) es una red de entrega de contenido (CDN) totalmente administrada que incluye capacidades para definir y presentar contenido de error personalizado. Las páginas de error personalizadas de CloudFront son una buena primera capa de mensajería para clientes en caso de interrupciones de servicio en el nivel de componente. CloudFront también contribuye a simplificar la administración y activación de una página de estado para interceptar todas las solicitudes durante interrupciones planificadas o no planificadas. 

 Los mensajes de error de API personalizados pueden ayudar a detectar y reducir el efecto cuando las interrupciones se limitan a servicios discretos. [Amazon API Gateway](https://aws.amazon.com/api-gateway/) le permite configurar respuestas personalizadas para sus API de REST. Esto le permite proporcionar mensajes claros y significativos a los consumidores de la API cuando API Gateway no es capaz de llegar a los servicios de backend. Los mensajes personalizados también sirven para apoyar el contenido de banners de interrupción y notificaciones cuando una característica concreta del sistema se degrada debido a interrupciones en el nivel de servicio. 

 La mensajería directa es el tipo más personalizado de mensajería para clientes. [Amazon Pinpoint](https://aws.amazon.com/pinpoint/) es un servicio administrado para comunicaciones multicanal escalables. Amazon Pinpoint le permite crear campañas que pueden transmitir mensajes ampliamente a toda su base de clientes afectada mediante SMS, correo electrónico, voz, notificaciones push o canales personalizados que usted defina. Cuando administra la mensajería con Amazon Pinpoint, las campañas de mensajes están bien definidas, se pueden probar y se pueden aplicar de forma inteligente a segmentos de clientes específicos. Una vez establecidas, las campañas se pueden programar o activar por eventos y se pueden probar con toda facilidad. 

 **Ejemplo de cliente** 

 Cuando la carga de trabajo se ve afectada, AnyCompany Retail envía una notificación por correo electrónico a sus usuarios. En el correo electrónico se describe qué funcionalidad empresarial se ha visto afectada y se proporciona una estimación realista de cuándo se restablecerá el servicio. Además, dispone de una página de estado que muestra información en tiempo real sobre el estado de su carga de trabajo. El plan de comunicación se prueba en un entorno de desarrollo dos veces al año para comprobar que sea eficaz. 

 **Pasos para la implementación** 

1.  Determine los canales de comunicación de su estrategia de mensajería. Considere los aspectos arquitectónicos de su aplicación y determine la mejor estrategia para hacer llegar los comentarios a los clientes. Esto podría incluir una o más de las estrategias de orientación descritas, como páginas de error y estado, respuestas de error de API personalizadas o mensajería directa. 

1.  Diseñe páginas de estado para su aplicación. Si ha determinado que las páginas de estado o de error personalizadas son adecuadas para sus clientes, tendrá que diseñar el contenido y los mensajes para esas páginas. Las páginas de error explican a los usuarios por qué no está disponible una aplicación, cuándo podría volver a estar disponible y qué pueden hacer mientras tanto. Si su aplicación utiliza Amazon CloudFront puede presentar [respuestas de error personalizadas](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/GeneratingCustomErrorResponses.html) o utilizar Lambda at Edge para [traducir errores](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/lambda-examples.html#lambda-examples-update-error-status-examples) y reescribir el contenido de la página. CloudFront también permite intercambiar destinos del contenido de su aplicación a un origen de contenido estático de [Amazon S3](https://aws.amazon.com/s3/) que contenga su página de mantenimiento o estado de interrupción del servicio. 

1.  Diseñe el conjunto correcto de estados de error de la API para su servicio. Los mensajes de error producidos por API Gateway cuando no es posible llegar a los servicios de backend, así como las excepciones de nivel de servicio, podrían no contener mensajes amables adecuados para mostrar a los usuarios finales. Sin tener que realizar cambios de código en sus servicios de backend, puede configurar [respuestas de error personalizadas](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-gatewayResponse-definition.html) de API Gateway para asignar códigos de respuesta HTTP a mensajes de error de API seleccionados. 

1.  Diseñe la mensajería desde una perspectiva empresarial de modo que sea relevante para los usuarios finales de su sistema y no contenga detalles técnicos. Tenga en cuenta su audiencia y adapte los mensajes. Por ejemplo, dirija a los usuarios internos hacia una solución o un proceso manual que aproveche sistemas alternativos. En cuanto a los usuarios externos, puede pedirles que esperen hasta que se restablezca el sistema o que se suscriban a las actualizaciones para recibir una notificación una vez que se restablezca el sistema. Defina la mensajería aprobada para numerosas situaciones, como interrupciones inesperadas del servicio, mantenimiento planificado y errores parciales del sistema en los que una característica concreta podría degradarse o no estar disponible. 

1.  Cree plantillas y automatice la mensajería para clientes. Una vez que haya establecido el contenido del mensaje, puede utilizar [Amazon Pinpoint](https://docs.aws.amazon.com/pinpoint/latest/developerguide/welcome.html) u otras herramientas para automatizar la campaña de mensajería. Con Amazon Pinpoint puede crear segmentos de clientes objetivo para usuarios específicos afectados y transformar los mensajes en plantillas. Revise el [tutorial de Amazon Pinpoint](https://docs.aws.amazon.com/pinpoint/latest/developerguide/tutorials.html) para entender cómo configurar una campaña de mensajería. 

1.  Evite vincular estrechamente las capacidades de mensajería a su sistema de orientación al cliente. Su estrategia de mensajería no debe depender de servicios ni almacenes de datos del sistema para verificar que puede enviar mensajes correctamente cuando se produzcan interrupciones del servicio. Plantéese la posibilidad de crear la capacidad de enviar mensajes desde más de [una región o zona de disponibilidad](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/rel_fault_isolation_multiaz_region_system.html) para asegurar la disponibilidad de la mensajería. Si utiliza servicios de AWS para enviar mensajes, aproveche las operaciones del plano de datos en lugar de las [operaciones del plano de control](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/rel_withstand_component_failures_avoid_control_plane.html) para invocar la mensajería. 

 **Nivel de esfuerzo para el plan de implementación:** alto. El desarrollo de un plan de comunicación —y los mecanismos para enviarlo— puede demandar un esfuerzo considerable. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS07-BP03 Uso de runbooks para realizar los procedimientos](ops_ready_to_support_use_runbooks.md) - El plan de comunicación debe ir acompañado de un runbook para que el personal sepa cómo responder. 
+  [OPS11-BP02 Realizar un análisis después del incidente](ops_evolve_ops_perform_rca_process.md) - Tras una interrupción, lleve a cabo un análisis posterior al incidente para identificar mecanismos que eviten otra interrupción. 

 **Documentos relacionados:** 
+ [ Error Handling Patterns in Amazon API Gateway and AWS Lambda](https://aws.amazon.com/blogs/compute/error-handling-patterns-in-amazon-api-gateway-and-aws-lambda/) (Patrones de gestión de errores en Amazon API Gateway y AWS Lambda)
+ [ Amazon API Gateway responses](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-gatewayResponse-definition.html#supported-gateway-response-types) (Respuestas de Amazon API Gateway)

 **Ejemplos relacionados:** 
+ [AWS Health Dashboard ](https://aws.amazon.com/premiumsupport/technology/aws-health-dashboard/)
+ [ Summary of the AWS Service Event in the Northern Virginia (US-EAST-1) Region](https://aws.amazon.com/message/12721/) (Resumen del evento de servicio de AWS en la región del norte de Virginia [Este de EE. UU. 1])

 **Servicios relacionados:** 
+ [AWS Support](https://aws.amazon.com/premiumsupport/)
+ [Contrato de usuario de AWS](https://aws.amazon.com/agreement/)
+ [ Amazon CloudFront ](https://aws.amazon.com/cloudfront/)
+ [ Amazon API Gateway ](https://aws.amazon.com/api-gateway/)
+ [ Amazon Pinpoint ](https://aws.amazon.com/pinpoint/)
+ [ Amazon S3 ](https://aws.amazon.com/s3/)

# OPS10-BP06 Comunicar el estado a través de paneles
<a name="ops_event_response_dashboards"></a>

 Proporcione paneles adaptados a las audiencias de destino (por ejemplo, equipos técnicos internos, liderazgo y clientes) para comunicar el estado operativo actual del negocio y facilitar métricas de interés. 

 Puede crear paneles mediante [Amazon CloudWatch Dashboards](https://aws.amazon.com/blogs/aws/cloudwatch-dashboards-create-use-customized-metrics-views/) en las páginas de inicio personalizables en la consola de CloudWatch. Mediante servicios de inteligencia empresarial como [Quick](https://aws.amazon.com/quicksight/) puede crear y publicar paneles interactivos de su carga de trabajo y estado operativo (por ejemplo, índices de pedidos, usuarios conectados y tiempos de transacción). Cree paneles que presenten vistas a nivel de sistema y de empresa de sus métricas. 

 **Patrones de uso no recomendados comunes:** 
+  Ejecuta, a petición, un informe sobre la utilización actual de su aplicación para la administración. 
+  Durante un incidente, cada veinte minutos se pone en contacto con usted un propietario del sistema preocupado por saber si ya está solucionado. 

 **Beneficios de establecer esta práctica recomendada:** Mediante la creación de paneles, posibilita el acceso de autoservicio a la información, lo que permite a sus clientes informarse por sí mismos y determinar si necesitan tomar medidas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Comunique el estado mediante paneles: proporcione paneles adaptados a las audiencias de destino (por ejemplo, equipos técnicos internos, liderazgo y clientes) para comunicar el estado operativo actual del negocio y facilitar métricas de interés. Proporcionar una opción de autoservicio para facilitar información sobre el estado hace que haya menos interrupciones cuando se solicita esta información al equipo operativo. Algunos ejemplos son los paneles de control de Amazon CloudWatch y Panel de AWS Health. 
  +  [Los paneles de CloudWatch crean y usan vistas de métricas personalizadas](https://aws.amazon.com/blogs/aws/cloudwatch-dashboards-create-use-customized-metrics-views/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Quick](https://aws.amazon.com/quicksight/) 
+  [Los paneles de CloudWatch crean y usan vistas de métricas personalizadas](https://aws.amazon.com/blogs/aws/cloudwatch-dashboards-create-use-customized-metrics-views/) 

# OPS10-BP07 Automatizar las respuestas a eventos
<a name="ops_event_response_auto_event_response"></a>

 Automatice las respuestas a los eventos para reducir los errores causados por los procesos manuales y garantizar respuestas coherentes y rápidas. 

 Hay varias formas de automatizar las acciones del runbook y de la guía de estrategias en AWS. Para responder a un evento de un cambio de estado en sus recursos de AWS o de sus propios eventos personalizados, debe crear [reglas de CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) para desencadenar respuestas a través de destinos de CloudWatch (por ejemplo, funciones de Lambda, temas de Amazon Simple Notification Service (Amazon SNS), tareas de Amazon ECS y AWS Systems Manager Automation). 

 Para responder a una métrica que cruza un umbral para un recurso (por ejemplo, el tiempo de espera), debe crear [alarmas de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) para realizar una o más acciones mediante acciones de Amazon EC2, acciones de Auto Scaling, o para enviar una notificación a un tema de Amazon SNS. Si necesita realizar acciones personalizadas en respuesta a una alarma, invoque a Lambda a través de una notificación de Amazon SNS. Use Amazon SNS para publicar notificaciones de eventos y mensajes de derivación a fin de mantener a las personas informadas. 

 AWS también admite sistemas de terceros a través de las API y los SDK del servicio de AWS. Hay una serie de herramientas de supervisión proporcionados por los socios de AWS y terceros que permiten la supervisión, las notificaciones y las respuestas. Algunas de estas herramientas incluyen New Relic, Splunk, Loggly, SumoLogic y Datadog. 

 Debe tener los procedimientos manuales importantes disponibles para usarlos cuando los procedimientos automatizados fallen. 

 **Antipatrones usuales:** 
+  Un desarrollador comprueba su código. Este evento podría haberse utilizado para iniciar una compilación y luego realizar pruebas, pero en su lugar no ocurre nada. 
+  La aplicación registra un error específico antes de dejar de funcionar. El procedimiento de reinicio de la aplicación se entiende bien y puede programarse. Podría utilizar el evento de registro para invocar un script y reiniciar la aplicación. En cambio, cuando el error se produce a las 3 de la madrugada de un domingo, le despiertan como recurso de guardia, que es responsable de reparar el sistema. 

 **Beneficios de establecer esta práctica recomendada:** Al utilizar respuestas automatizadas a los eventos, se reduce el tiempo de respuesta y se limita la introducción de errores por actividades manuales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatizar las respuestas a eventos: automatice las respuestas a los eventos para reducir los errores causados por los procesos manuales y garantizar respuestas coherentes y rápidas. 
  +  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 
  +  [Creación de una regla de CloudWatch Events que se desencadena con un evento](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-Rule.html) 
  +  [Creación de una regla de CloudWatch Events que se desencadena en una llamada a la API de AWS con AWS CloudTrail](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-CloudTrail-Rule.html) 
  +  [Ejemplos de eventos de CloudWatch Events de los servicios admitidos](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Funciones de Amazon CloudWatch](https://aws.amazon.com/cloudwatch/features/) 
+  [Ejemplos de eventos de CloudWatch Events de los servicios admitidos](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html) 
+  [Creación de una regla de CloudWatch Events que se desencadena en una llamada a la API de AWS con AWS CloudTrail](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-CloudTrail-Rule.html) 
+  [Creación de una regla de CloudWatch Events que se desencadena con un evento](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/Create-CloudWatch-Events-Rule.html) 
+  [¿Qué es Amazon CloudWatch Events?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 

 **Vídeos relacionados:** 
+  [Diseñar un plan de supervisión](https://www.youtube.com/watch?v=OMmiGETJpfU) 

 **Ejemplos relacionados:** 

# Evolucionar
<a name="a-evolve"></a>

**Topics**
+ [OPS 11 ¿Cómo desarrolla las operaciones?](ops-11.md)

# OPS 11 ¿Cómo desarrolla las operaciones?
<a name="ops-11"></a>

 Dedique tiempo y recursos para la mejora incremental continua, para desarrollar la efectividad y la eficiencia de sus operaciones. 

**Topics**
+ [OPS11-BP01 Tener un proceso de mejora continua](ops_evolve_ops_process_cont_imp.md)
+ [OPS11-BP02 Realizar un análisis después del incidente](ops_evolve_ops_perform_rca_process.md)
+ [OPS11-BP03 Implementar bucles de retroalimentación](ops_evolve_ops_feedback_loops.md)
+ [OPS11-BP04 Realizar la administración de conocimientos](ops_evolve_ops_knowledge_management.md)
+ [OPS11-BP05 Definir los elementos que impulsan la mejora](ops_evolve_ops_drivers_for_imp.md)
+ [OPS11-BP06 Validar las informaciones](ops_evolve_ops_validate_insights.md)
+ [OPS11-BP07 Realizar revisiones de métricas de operaciones](ops_evolve_ops_metrics_review.md)
+ [OPS11-BP08 Documentar y compartir las lecciones aprendidas](ops_evolve_ops_share_lessons_learned.md)
+ [OPS11-BP09 Asignar tiempo para realizar mejoras](ops_evolve_ops_allocate_time_for_imp.md)

# OPS11-BP01 Tener un proceso de mejora continua
<a name="ops_evolve_ops_process_cont_imp"></a>

Evalúe su carga de trabajo con respecto a las prácticas recomendadas de arquitectura interna y externa. Realice revisiones de la carga de trabajo al menos una vez al año. Dé prioridad a las oportunidades de mejora en su cadencia de desarrollo de software. 

 **Resultado deseado:** 
+  Analiza su carga de trabajo con respecto a las prácticas recomendadas de arquitectura al menos una vez al año. 
+  Las oportunidades de mejora tienen la misma prioridad en su proceso de desarrollo de software. 

 **Antipatrones usuales:** 
+ No ha realizado una revisión de la arquitectura de su carga de trabajo desde que se desplegó hace varios años.
+ Las oportunidades de mejora reciben una prioridad menor y permanecen en la lista de tareas pendientes.
+  No existe un estándar para implementar las modificaciones de las prácticas recomendadas para la organización. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Su carga de trabajo se mantiene actualizada en cuanto a las prácticas recomendadas de arquitectura. 
+  La evolución de su carga de trabajo se realiza de forma deliberada. 
+  Puede aprovechar las prácticas recomendadas de la organización para mejorar todas las cargas de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Al menos una vez al año, realice una revisión de la arquitectura de su carga de trabajo. Mediante prácticas recomendadas internas y externas, evalúe su carga de trabajo e identifique las oportunidades de mejora. Dé prioridad a las oportunidades de mejora en su cadencia de desarrollo de software. 

 **Ejemplo de cliente** 

 Se realiza un proceso anual de revisión de la arquitectura de todas las cargas de trabajo en AnyCompany Retail. Ha desarrollado su propia lista de prácticas recomendadas que se aplican a todas las cargas de trabajo. Gracias a la característica de enfoque personalizado de AWS Well-Architected Tool, realiza revisiones mediante la herramienta y su enfoque personalizado de prácticas recomendadas. Las oportunidades de mejora que se generan a partir de las revisiones se priorizan en sus sprints de software. 

 **Pasos para la implementación** 

1.  Realice revisiones periódicas de la arquitectura de su carga de trabajo de producción al menos una vez al año. Utilice un estándar de arquitectura documentado que incluya prácticas recomendadas específicas de AWS. 

   1.  Le recomendamos que, para estas revisiones, utilice sus propios estándares definidos internamente. Si no dispone de un estándar interno, le recomendamos que utilice el marco AWS Well-Architected Framework. 

   1.  Puede usar AWS Well-Architected Tool para crear un enfoque personalizado de sus prácticas recomendadas internas y llevar a cabo la revisión de la arquitectura. 

   1.  Los clientes pueden contactar con su arquitecto de soluciones de AWS para realizar una revisión guiada del marco Well-Architected Framework de su carga de trabajo. 

1.  Dé prioridad a las oportunidades de mejora identificadas durante la revisión en su proceso de desarrollo de software. 

 **Nivel de esfuerzo para el plan de implementación:** bajo. Puede utilizar el marco AWS Well-Architected Framework para llevar a cabo la revisión anual de la arquitectura. 

### Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS11-BP02 Realizar un análisis después del incidente](ops_evolve_ops_perform_rca_process.md) - El análisis posterior al incidente es otro generador de elementos de mejora. Incorpore las lecciones aprendidas a su lista interna de prácticas recomendadas de arquitectura. 
+  [OPS11-BP08 Documentar y compartir las lecciones aprendidas](ops_evolve_ops_share_lessons_learned.md) - A medida que desarrolle sus propias prácticas recomendadas de arquitectura, compártalas en toda su organización. 

 **Documentos relacionados:** 
+ [AWS Well-Architected Tool - Custom Lenses ](https://docs.aws.amazon.com/wellarchitected/latest/userguide/lenses-custom.html)(AWS Well-Architected Tool: enfoques personalizados)
+ [AWS Well-Architected Whitepaper - The review process ](https://docs.aws.amazon.com/wellarchitected/latest/framework/the-review-process.html)(Documento técnico de AWS Well-Architected: el proceso de revisión)
+ [ Customize Well-Architected Reviews using Custom Lenses and the AWS Well-Architected Tool](https://aws.amazon.com/blogs/mt/customize-well-architected-reviews-using-custom-lenses-and-the-aws-well-architected-tool/)(Personalizar las revisiones de Well-Architected mediante enfoques personalizados y AWS Well-Architected Tool)
+ [ Implementing the AWS Well-Architected Custom Lens lifecycle in your organization ](https://aws.amazon.com/blogs/architecture/implementing-the-aws-well-architected-custom-lens-lifecycle-in-your-organization/)(Implementación del ciclo de vida del enfoque personalizado de AWS Well-Architected en su organización)

 **Vídeos relacionados: ** 
+ [ Well-Architected Labs - Level 100: Custom Lenses on AWS Well-Architected Tool](https://www.wellarchitectedlabs.com/well-architectedtool/100_labs/100_custom_lenses_on_watool/)(Laboratorios de Well-Architected - Nivel 100: enfoques personalizados en AWS Well-Architected Tool)

 **Ejemplos relacionados:** 
+ [AWS Well-Architected Tool](https://docs.aws.amazon.com/wellarchitected/latest/userguide/intro.html)

# OPS11-BP02 Realizar un análisis después del incidente
<a name="ops_evolve_ops_perform_rca_process"></a>

 Revise los eventos que afectan a los clientes e identifique los factores que contribuyen al evento y las medidas preventivas. Use esta información para desarrollar un plan de mitigación que limite o evite la reaparición del problema. Desarrolle procedimientos para proporcionar respuestas rápidas y eficaces. Comunique los factores que han contribuido al problema y las medidas correctivas según corresponda, adaptados al público de destino. 

 **Patrones de uso no recomendados comunes:** 
+  Administra un servidor de aplicaciones. Aproximadamente cada 23 horas y 55 minutos se terminan todas sus sesiones activas. Ha tratado de identificar lo que va mal en su servidor de aplicaciones. Sospecha que podría tratarse de un problema de red, pero no consigue la colaboración del equipo de red porque están demasiado ocupados para ayudarle. Carece de un proceso predefinido que seguir para obtener asistencia y recopilar la información necesaria para determinar lo que está sucediendo. 
+  Ha tenido pérdidas de datos dentro de su carga de trabajo. Es la primera vez que ocurre y la causa no es evidente. Decide que no es importante porque puede recrear los datos. Comienza a producirse con mayor frecuencia la pérdida de datos afectando a sus clientes. Esto también supone una carga operativa adicional al restaurar los datos perdidos. 

 **Beneficios de establecer esta práctica recomendada:** disponer de un proceso predefinido para determinar los componentes, las condiciones, las acciones y los eventos que han contribuido a un incidente le permite identificar las oportunidades de mejora. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Usar un proceso para determinar los factores que han contribuido al problema: revise todos los incidentes que afectan a los clientes Disponga de un proceso para identificar y documentar los factores que han contribuido al incidente, de manera que se puedan elaborar medidas de mitigación para limitar o prevenir su repetición y se puedan desarrollar procedimientos para dar respuestas rápidas y eficaces. Comunique la causa raíz como sea apropiado, según el público de destino. 

# OPS11-BP03 Implementar bucles de retroalimentación
<a name="ops_evolve_ops_feedback_loops"></a>

Los bucles de retroalimentación proporcionan información procesable que impulsa la toma de decisiones. Cree bucles de retroalimentación en sus procedimientos y cargas de trabajo. Le servirán para identificar los problemas y las áreas que necesitan mejoras. También validan las inversiones realizadas en las mejoras. Estos bucles de retroalimentación son la base para mejorar continuamente la carga de trabajo.

 Los bucles de retroalimentación se dividen en dos categorías: *retroalimentación inmediata* y *análisis retrospectivo*. La retroalimentación inmediata se obtiene mediante la revisión del rendimiento y los resultados de las actividades operativas. Esta retroalimentación procede de los miembros del equipo, de los clientes o del resultado automático de la actividad. Se recibe retroalimentación inmediata de aspectos como las pruebas A/B y el envío de nuevas características. Es esencial responder rápido a los errores. 

 El análisis retrospectivo se realiza periódicamente para obtener retroalimentación de la revisión de resultados operativos y de las métricas a lo largo del tiempo. Estas retrospectivas tienen lugar al final de un sprint, en una cadencia, o después de lanzamientos o eventos importantes. Este tipo de bucle de retroalimentación valida las inversiones en operaciones o la carga de trabajo. Le ayuda a medir el éxito y valida su estrategia. 

 **Resultado deseado:** utilice la retroalimentación inmediata y el análisis retrospectivo para impulsar las mejoras. Existe un mecanismo para obtener la retroalimentación de los usuarios y de los miembros del equipo. El análisis retrospectivo se utiliza para identificar las tendencias que impulsan las mejoras. 

 **Patrones comunes de uso no recomendados:** 
+ Lanza una nueva característica pero no tiene forma de recibir la retroalimentación de los clientes sobre ella.
+ Después de invertir en mejoras operativas, no realiza una retrospectiva para validarlas.
+ Recopila la retroalimentación de los clientes pero no la revisa con regularidad.
+ Los bucles de retroalimentación dan lugar a propuestas de acción, pero no se incluyen en el proceso de desarrollo del software.
+  Los clientes no reciben retroalimentación sobre las mejoras que han propuesto. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Puede hacer un recorrido inverso desde el cliente para impulsar nuevas características. 
+  La cultura de su organización puede reaccionar más rápidamente a los cambios. 
+  Las tendencias se utilizan para identificar las oportunidades de mejora. 
+  Las retrospectivas validan las inversiones realizadas en la carga de trabajo y las operaciones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Implementar esta práctica recomendada implica utilizar tanto la retroalimentación inmediata como el análisis retrospectivo. Estos bucles de retroalimentación impulsan las mejoras. Existen muchos mecanismos para obtener retroalimentación inmediata, como encuestas, sondeos de opinión de los clientes o formularios de retroalimentación. Su organización también utiliza las retrospectivas para identificar las oportunidades de mejora y validar las iniciativas. 

 **Ejemplo de cliente** 

 AnyCompany Retail ha creado un formulario web en el que los clientes pueden dar retroalimentación o informar de sus problemas. Durante el examen semanal, el equipo de desarrollo de software evalúa la retroalimentación de los usuarios. La retroalimentación se utiliza periódicamente para dirigir la evolución de la plataforma. Realizan una retrospectiva al final de cada sprint para identificar los elementos que quieren mejorar. 

## Pasos para la aplicación
<a name="implementation-steps"></a>

1. Retroalimentación inmediata
   +  Necesita un mecanismo para recibir retroalimentación de los clientes y de los miembros del equipo. Las actividades de sus operaciones también se pueden configurar para ofrecer retroalimentación automática. 
   +  Su organización necesita un proceso para revisar esta retroalimentación, determinar qué hay que mejorar y programar la mejora. 
   +  La retroalimentación debe agregarse a su proceso de desarrollo de software. 
   +  A medida que vaya incorporando mejoras, haga un seguimiento del remitente de la retroalimentación. 
     +  Puede usar [AWS Systems Manager OpsCenter](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html) para crear estas mejoras y realizar su seguimiento como [OpsItems](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-working-with-OpsItems.html).

1.  Análisis retrospectivo 
   +  Realice retrospectivas al final de un ciclo de desarrollo, con una cadencia determinada o después de un lanzamiento importante. 
   +  Convoque a las partes implicadas en la carga de trabajo para una reunión retrospectiva. 
   +  Cree tres columnas en una pizarra u hoja de cálculo: Parar, Iniciar y Mantener. 
     +  *Parar* corresponde a lo que quiera que su equipo deje de hacer. 
     +  *Iniciar* corresponde a las ideas que quiere empezar a hacer. 
     +  *Mantener* corresponde a lo que desea seguir haciendo. 
   +  Recorra la sala y recopile la retroalimentación de las partes interesadas. 
   +  Dé prioridad a la retroalimentación. Asigne acciones y partes interesadas a los elementos de los apartados Iniciar o Mantener. 
   +  Agregue las acciones a su proceso de desarrollo de software y comunique las actualizaciones de estado a las partes interesadas a medida que realiza las mejoras. 

 **Nivel de esfuerzo para el plan de implementación:** Medio. Para implementar esta práctica recomendada, necesita un método para recibir retroalimentación inmediata y analizarla. Además, debe establecer un proceso de análisis retrospectivo. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS01-BP01 Evaluar las necesidades externas del cliente](ops_priorities_ext_cust_needs.md): los bucles de retroalimentación son un mecanismo para recopilar las necesidades de los clientes externos. 
+  [OPS01-BP02 Evaluar las necesidades internas del cliente](ops_priorities_int_cust_needs.md): las partes interesadas internas pueden utilizar los bucles de retroalimentación para comunicar las necesidades y los requisitos. 
+  [OPS11-BP02 Realizar un análisis después del incidente](ops_evolve_ops_perform_rca_process.md): los análisis posteriores a los incidentes son una forma importante de análisis retrospectivo que se realiza después de los incidentes. 
+  [OPS11-BP07 Realizar revisiones de métricas de operaciones](ops_evolve_ops_metrics_review.md): las revisiones de las métricas de las operaciones identifican tendencias y áreas de mejora. 

 **Documentos relacionados:** 
+  [7 Pitfalls to Avoid When Building a CCOE (7 obstáculos que evitar al crear un CCOE)](https://aws.amazon.com/blogs/enterprise-strategy/7-pitfalls-to-avoid-when-building-a-ccoe/) 
+  [Atlassian Team Playbook - Retrospectivas](https://www.atlassian.com/team-playbook/plays/retrospective) 
+  [Email Definitions: Feedback Loops (Definiciones del correo electrónico: bucles de retroalimentación)](https://aws.amazon.com/blogs/messaging-and-targeting/email-definitions-feedback-loops/) 
+  [Establishing Feedback Loops Based on the AWS Well-Architected Framework Review (Establecimiento de bucles de retroalimentacións basados en la revisión de AWS Well-Architected Framework)](https://aws.amazon.com/blogs/architecture/establishing-feedback-loops-based-on-the-aws-well-architected-framework-review/) 
+  [IBM Garage Methodology - Hold a retrospective (Metodología de IBM Garage: realizar una retrospectiva)](https://www.ibm.com/garage/method/practices/learn/practice_retrospective_analysis/) 
+  [Investopedia – The PDCS Cycle (Investopedia: el ciclo PDCS)](https://www.investopedia.com/terms/p/pdca-cycle.asp) 
+  [Maximizing Developer Effectiveness (Maximizar la eficacia de los desarrolladores) por Tim Cochran](https://martinfowler.com/articles/developer-effectiveness.html) 
+  [Operations Readiness Reviews (ORR) Whitepaper - Iteration (Documento técnico de revisiones de preparación de operaciones [ORR]: iteración)](https://docs.aws.amazon.com/wellarchitected/latest/operational-readiness-reviews/iteration.html) 
+  [TIL CSI - Continual Service Improvement (TIL CSI: mejora continua del servicio)](https://wiki.en.it-processmaps.com/index.php/ITIL_CSI_-_Continual_Service_Improvement)
+  [When Toyota met e-commerce: Lean at Amazon (Cuando Toyota se encontró con el comercio electrónico: eficiencia en Amazon)](https://www.mckinsey.com/capabilities/operations/our-insights/when-toyota-met-e-commerce-lean-at-amazon) 

 **Vídeos relacionados:** 
+  [Building Effective Customer Feedback Loops (Crear bucles de retroalimentación eficaces de los clientes)](https://www.youtube.com/watch?v=zz_VImJRZ3U) 

 **Ejemplos relacionados: ** 
+  [Astuto: herramienta de código abierto para la retroalimentación de los clientes](https://github.com/riggraz/astuto) 
+  [Soluciones de AWS: QnABot en AWS](https://aws.amazon.com/solutions/implementations/qnabot-on-aws/) 
+  [Fider: una plataforma para organizar la retroalimentación de los clientes](https://github.com/getfider/fider) 

 **Servicios relacionados:** 
+  [AWS Systems Manager OpsCenter](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter.html) 

# OPS11-BP04 Realizar la administración de conocimientos
<a name="ops_evolve_ops_knowledge_management"></a>

La administración del conocimiento ayuda a los miembros del equipo a encontrar la información necesaria para cumplir con su cometido. En las organizaciones basadas en el aprendizaje, la información se comparte libremente, lo que capacita a los individuos. La información puede descubrirse o buscarse. La información es precisa y está actualizada. Existen mecanismos para crear nueva información, actualizar la existente y archivar la obsoleta. Los ejemplos más frecuentes de plataforma de administración del conocimiento es un sistema de administración de contenido, como una wiki. 

 **Resultado deseado:** 
+  Los miembros del equipo tienen acceso a información oportuna y precisa. 
+  Se puede buscar información. 
+  Existen mecanismos para añadir, actualizar y archivar la información. 

 **Antipatrones usuales:** 
+ No existe un almacenamiento centralizado de conocimientos. Los miembros del equipo administran sus propias notas en sus máquinas locales.
+  Dispone de una wiki autoalojada, pero no de mecanismos para administrar la información, lo que provoca que esta quede obsoleta. 
+  Alguien identifica información que falta, pero no existe un proceso para solicitar que se añada a la wiki del equipo. La añaden ellos mismos, pero se saltan un paso clave, lo que provoca una interrupción del servicio. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Los miembros del equipo tienen más poder porque la información se comparte libremente. 
+  Los nuevos miembros del equipo se incorporan más rápidamente porque la documentación está actualizada y es posible hacer búsquedas en ella. 
+  La información es oportuna, precisa y procesable. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La administración del conocimiento es una faceta importante de las organizaciones de aprendizaje. Para empezar, necesita un repositorio central para almacenar los conocimientos (un ejemplo habitual es una wiki autoalojada). Debe desarrollar procesos para añadir, actualizar y archivar conocimientos. Desarrolle estándares sobre lo que debe documentarse y permita que todos contribuyan. 

 **Ejemplo de cliente** 

 AnyCompany Retail alberga una wiki interna donde se almacenan todos los conocimientos. Se anima a los miembros del equipo a añadir información a la base de conocimientos mientras realizan sus tareas cotidianas. Cada trimestre, un equipo interfuncional evalúa las páginas menos actualizadas y determina si deben archivarse o actualizarse. 

 **Pasos para la implementación** 

1.  Empiece por identificar el sistema de administración de contenido en el que se almacenarán los conocimientos. Consiga el acuerdo de las partes interesadas de toda la organización. 

   1.  Si no dispone de un sistema de administración de contenido, considere la posibilidad de crear una wiki autoalojada o utilizar un repositorio de control de versiones como punto de partida. 

1.  Elabore runbooks para añadir, actualizar y archivar información. Forme a su equipo sobre estos procesos. 

1.  Identifique qué conocimientos deben almacenarse en el sistema de administración de contenido. Empiece por las actividades diarias (runbooks y guías) que realizan los miembros del equipo. Colabore con las partes interesadas para priorizar qué conocimientos se añaden. 

1.  Trabaje periódicamente con las partes interesadas para identificar la información obsoleta y archivarla o actualizarla. 

 **Nivel de esfuerzo para el plan de implementación:** medio. Si no dispone de un sistema de administración de contenido, puede crear una wiki autoalojada o un repositorio de documentos controlado por versiones. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [OPS11-BP08 Documentar y compartir las lecciones aprendidas](ops_evolve_ops_share_lessons_learned.md) - La administración del conocimiento facilita el intercambio de información sobre las lecciones aprendidas. 

 **Documentos relacionados:** 
+ [ Atlassian - Knowledge Management](https://www.atlassian.com/itsm/knowledge-management) (Atlassian: Administración de conocimientos) 

 **Ejemplos relacionados:** 
+ [ DokuWiki ](https://www.dokuwiki.org/dokuwiki)
+ [ Gollum ](https://github.com/gollum/gollum)
+ [ MediaWiki ](https://www.mediawiki.org/wiki/MediaWiki)
+ [ Wiki.js ](https://github.com/Requarks/wiki)

# OPS11-BP05 Definir los elementos que impulsan la mejora
<a name="ops_evolve_ops_drivers_for_imp"></a>

 Identifique los elementos que impulsan mejoras para evaluar y priorizar las oportunidades. 

 En AWS, puede agregar los registros de todas sus actividades de operaciones, cargas de trabajo e infraestructuras para crear un historial de actividades detallado. A continuación, podrá utilizar las herramientas de AWS para analizar sus operaciones y el estado de la carga de trabajo a lo largo del tiempo (por ejemplo, identificar tendencias, correlacionar eventos y actividades con los resultados y comparar y contrastar entre entornos y entre sistemas) para revelar las oportunidades de mejora según sus elementos de impulso. 

 Debe utilizar CloudTrail para realizar el seguimiento de la actividad de la API (a través de la Consola de administración de AWS, CLI, SDK y API) para saber lo que está sucediendo en sus cuentas. Realice el seguimiento de las actividades de despliegue de las herramientas para desarrolladores de AWS con CloudTrail y CloudWatch. Esto agregará un historial de actividad detallado de sus despliegues y sus resultados a sus datos de registro de CloudWatch Logs. 

 [Exporte sus datos de registro a Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/S3Export.html) para realizar el almacenamiento a largo plazo. Con [AWS Glue](https://aws.amazon.com/glue/?whats-new-cards.sort-by=item.additionalFields.postDateTime&whats-new-cards.sort-order=desc), descubre y prepara sus datos de registro en Amazon S3 para el análisis. Uso [Amazon Athena](https://aws.amazon.com/athena/?whats-new-cards.sort-by=item.additionalFields.postDateTime&whats-new-cards.sort-order=desc), mediante su integración nativa con AWS Glue, para analizar sus datos de registro. Use una herramienta de inteligencia empresarial como [Quick](https://aws.amazon.com/quicksight/) para visualizar, explorar y analizar sus datos. 

 **Patrones de uso no recomendados comunes:** 
+  Tiene un script que funciona pero no es elegante. Invierte tiempo en volver a escribirlo. Ahora es una obra de arte. 
+  Su empresa emergente está tratando de conseguir otra financiación de un capitalista de riesgo. Quiere que demuestre el cumplimiento de la norma PCI DSS. Quiere que esté satisfecho, así que documenta su cumplimiento y se salta una fecha de entrega para un cliente, por lo que lo pierde. No ha sido algo malo, pero ahora se pregunta si ha sido lo correcto. 

 **Beneficios de establecer esta práctica recomendada:** Al determinar los criterios que desea utilizar para mejorar, puede minimizar el impacto de las motivaciones basadas en los acontecimientos o la inversión emocional. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Conozca los elementos que impulsan la mejora: solo debe hacer cambios en un sistema cuando producen un resultado deseado. 
  +  Capacidades deseadas: evalúe las características y capacidades deseadas al evaluar las oportunidades de mejora. 
    +  [Novedades de AWS](https://aws.amazon.com/new/) 
  +  Problemas inaceptables: evalúe los problemas, errores y vulnerabilidades inaceptables al evaluar las oportunidades de mejora. 
    +  [Últimos boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins/) 
    +  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
  +  Requisitos de cumplimiento: evalúe las actualizaciones y los cambios necesarios para mantener el cumplimiento de la normativa, la política o la asistencia de terceros cuando revise las oportunidades de mejora. 
    +  [Conformidad de AWS](https://aws.amazon.com/compliance/) 
    +  [Programas de conformidad de AWS](https://aws.amazon.com/compliance/programs/) 
    +  [Noticias recientes de conformidad de AWS](https://aws.amazon.com/compliance/compliance-latest-news/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon Athena](https://aws.amazon.com/athena/?whats-new-cards.sort-by=item.additionalFields.postDateTime&whats-new-cards.sort-order=desc) 
+  [Quick](https://aws.amazon.com/quicksight/) 
+  [Conformidad de AWS](https://aws.amazon.com/compliance/) 
+  [Noticias recientes de conformidad de AWS](https://aws.amazon.com/compliance/compliance-latest-news/) 
+  [Programas de conformidad de AWS](https://aws.amazon.com/compliance/programs/) 
+  [AWS Glue](https://aws.amazon.com/glue/?whats-new-cards.sort-by=item.additionalFields.postDateTime&whats-new-cards.sort-order=desc) 
+  [Últimos boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [Exporte sus datos de registro a Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/S3Export.html) 
+  [Novedades de AWS](https://aws.amazon.com/new/) 

# OPS11-BP06 Validar las informaciones
<a name="ops_evolve_ops_validate_insights"></a>

 Revise los resultados de los análisis y las respuestas con equipos multifuncionales y con los propietarios de la empresa. Use estas revisiones para establecer un entendimiento común, identificar repercusiones adicionales y determinar cursos de acción. Ajuste las respuestas cuando corresponda. 

 **Patrones de uso no recomendados comunes:** 
+  Ve que la utilización de la CPU está en el 95 % en un sistema y considera una prioridad encontrar una manera de reducir la carga en el sistema. Determina que el mejor procedimiento es escalar verticalmente. El sistema es un transcodificador y el sistema se ha escalado para que funcione al 95 % de utilización de la CPU todo el tiempo. El propietario del sistema podría haberle explicado la situación si se hubiera puesto en contacto con él. Su tiempo se ha desperdiciado. 
+  El propietario de un sistema sostiene que su sistema es crucial para su negocio. El sistema no se colocó en un entorno de alta seguridad. Para mejorar la seguridad, se implementan los controles adicionales de detección y prevención que se requieren para los sistemas importantes. Notifica al propietario del sistema que el trabajo está terminado y que se le cobrará por los recursos adicionales. En la discusión que sigue a esta notificación, el propietario del sistema se entera de que hay una definición formal para los sistemas importantes que este sistema no cumple. 

 **Beneficios de establecer esta práctica recomendada:** al validar las ideas con los propietarios de los negocios y los expertos en la materia, puede establecer un entendimiento común y orientar las mejoras de forma más eficaz. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Validar informaciones: colabore con los propietarios de las empresas y los expertos en la materia para asegurarse de que existe un entendimiento común y un acuerdo sobre el significado de los datos que ha recopilado. Identifique las preocupaciones adicionales, los impactos potenciales y determine un procedimiento. 

# OPS11-BP07 Realizar revisiones de métricas de operaciones
<a name="ops_evolve_ops_metrics_review"></a>

 Realice análisis retrospectivos periódicos de las métricas de operaciones con participantes de diferentes equipos y áreas de la empresa. Use estas revisiones para identificar las oportunidades de mejora, los posibles cursos de acción y para compartir las lecciones aprendidas. 

 Busque oportunidades para mejorar en todos sus entornos (por ejemplo, desarrollo, pruebas y producción). 

 **Patrones de uso no recomendados comunes:** 
+  Hubo una importante promoción al por menor que se interrumpió por su periodo de mantenimiento. La empresa no es consciente de que existe un periodo de mantenimiento estándar que podría retrasarse si se producen otros eventos que afecten a la empresa. 
+  Ha sufrido una interrupción prolongada debido al uso de una biblioteca con errores que se utiliza habitualmente en su organización. Desde entonces, ha migrado a una biblioteca fiable. Los demás equipos de su organización no saben que están en peligro. Si se reunieran periódicamente y revisaran este incidente, serían conscientes del riesgo. 
+  El rendimiento de su transcodificador ha ido cayendo de forma constante y ha afectado al equipo de medios. Todavía no es terrible. No tendrá la oportunidad de averiguarlo hasta que no sea lo suficientemente grave como para provocar un incidente. Si revisara las métricas de sus operaciones con el equipo de medios, habría una oportunidad para que se reconociera el cambio en las métricas y su experiencia y se solucionara el problema. 
+  No está revisando su satisfacción de los SLA de los clientes. Tiende a no cumplir los SLA de sus clientes. Existen sanciones económicas relacionadas con el incumplimiento de los SLA de sus clientes. Si se reunieran periódicamente para revisar las métricas de estos SLA, tendrían la oportunidad de reconocer y abordar el problema. 

 **Beneficios de establecer esta práctica recomendada:** Al reunirse periódicamente para revisar las métricas de las operaciones, los eventos y los incidentes, se mantiene un entendimiento común entre los equipos, se comparten las lecciones aprendidas y se pueden priorizar y orientar las mejoras. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Revisiones de las métricas de las operaciones: realice análisis retrospectivos periódicos de las métricas de operaciones con participantes de diferentes equipos y áreas de la empresa. Involucre a las partes interesadas, incluidos los equipos de negocio, desarrollo y operaciones, para confirmar los hallazgos obtenidos de la retroalimentación inmediata y el análisis retrospectivo, y para compartir las lecciones aprendidas. Use sus ideas para identificar las oportunidades de mejora y los posibles cursos de acción. 
  +  [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) 
  +  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 
  +  [Publique métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
  +  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) 
+  [Referencia de métricas y dimensiones de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 
+  [Publique métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
+  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 

# OPS11-BP08 Documentar y compartir las lecciones aprendidas
<a name="ops_evolve_ops_share_lessons_learned"></a>

 Documente y comparta las lecciones aprendidas de las actividades de operaciones para poder aplicarlas internamente y entre los equipos. 

 Deber compartir lo que sus equipos aprenden para aumentar el beneficio en toda su organización. Es necesario compartir información y recursos para prevenir errores evitables y facilitar los esfuerzos de desarrollo. Esto le permitirá concentrarse en la entrega de las características deseadas. 

 Utilice AWS Identity and Access Management (IAM) para definir los permisos que proporcionan el acceso controlado a los recursos que desea compartir en las cuentas y a través de ellas. A continuación, debe utilizar los repositorios de AWS CodeCommit, controlados por versión, para compartir bibliotecas de aplicaciones, procedimientos en scripts, documentación de procedimientos y otra documentación del sistema. Comparta sus estándares de computación al dar acceso a sus AMI y autorizar el uso de sus funciones Lambda a través de las cuentas. También puede compartir sus estándares de infraestructura como plantillas de AWS CloudFormation. 

 A través de las API y los SDK de AWS, puede integrar herramientas y repositorios externos y de terceros (por ejemplo, GitHub, BitBucket y SourceForge). Cuando comparta lo que ha aprendido y desarrollado, tenga cuidado de estructurar los permisos para asegurar la integridad de los repositorios compartidos. 

 **Patrones de uso no recomendados comunes:** 
+  Ha sufrido una interrupción prolongada debido al uso de una biblioteca con errores que se utiliza habitualmente en su organización. Desde entonces, ha migrado a una biblioteca fiable. Los demás equipos de su organización no saben que están en peligro. Si documentara y compartiera su experiencia con esta biblioteca, serían conscientes del riesgo. 
+  Ha identificado un caso límite en un microservicio compartido internamente que provoca la caída de las sesiones. Ha actualizado sus llamadas al servicio para evitar este caso límite. Los demás equipos de su organización no saben que están en peligro. Si documentara y compartiera su experiencia con esta biblioteca, serían conscientes del riesgo. 
+  Ha encontrado una forma de reducir significativamente los requisitos de utilización de la CPU para uno de sus microservicios. No sabe si otros equipos podrían aprovechar esta técnica. Si documentara y compartiera su experiencia con esta biblioteca, tendrían la oportunidad de hacerlo. 

 **Beneficios de establecer esta práctica recomendada:** Comparta las lecciones aprendidas para respaldar las mejoras y maximizar los beneficios de la experiencia. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Documente y comparta las lecciones aprendidas: disponga de procedimientos para documentar las lecciones aprendidas durante la ejecución de las actividades de operaciones y el análisis retrospectivo para que puedan servir a otros equipos. 
  +  Comparta aprendizajes: disponga de procedimientos para compartir las lecciones aprendidas y los artefactos asociados entre equipos. Por ejemplo, comparta los procedimientos actualizados, la orientación, la gobernanza y las mejores prácticas a través de un wiki accesible. Comparta los scripts, el código y las bibliotecas por medio de un repositorio común. 
    +  [Delegating access to your AWS environment (Delegación del acceso a su entorno de AWS)](https://www.youtube.com/watch?v=0zJuULHFS6A&t=849s) 
    +  [Share an AWS CodeCommit repository (Compartir un repositorio de AWS CodeCommit)](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-share-repository.html) 
    +  [Easy authorization of AWS Lambda functions (Autorización fácil de las funciones AWS Lambda)](https://aws.amazon.com/blogs/compute/easy-authorization-of-aws-lambda-functions/) 
    +  [Compartir una AMI con cuentas de AWS específicas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharingamis-explicit.html) 
    +  [Speed template sharing with an AWS CloudFormation designer URL (Acelerar el intercambio de plantillas con un URL de diseñador de AWS CloudFormation)](https://aws.amazon.com/blogs/devops/speed-template-sharing-with-an-aws-cloudformation-designer-url/) 
    +  [Uso de AWS Lambda con Amazon SNS](https://docs.aws.amazon.com/lambda/latest/dg/with-sns-example.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Easy authorization of AWS Lambda functions (Autorización fácil de las funciones AWS Lambda)](https://aws.amazon.com/blogs/compute/easy-authorization-of-aws-lambda-functions/) 
+  [Share an AWS CodeCommit repository (Compartir un repositorio de AWS CodeCommit)](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-share-repository.html) 
+  [Compartir una AMI con cuentas de AWS específicas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharingamis-explicit.html) 
+  [Speed template sharing with an AWS CloudFormation designer URL (Acelerar el intercambio de plantillas con un URL de diseñador de AWS CloudFormation)](https://aws.amazon.com/blogs/devops/speed-template-sharing-with-an-aws-cloudformation-designer-url/) 
+  [Uso de AWS Lambda con Amazon SNS](https://docs.aws.amazon.com/lambda/latest/dg/with-sns-example.html) 

 **Vídeos relacionados:** 
+  [Delegating access to your AWS environment (Delegación del acceso a su entorno de AWS)](https://www.youtube.com/watch?v=0zJuULHFS6A&t=849s) 

# OPS11-BP09 Asignar tiempo para realizar mejoras
<a name="ops_evolve_ops_allocate_time_for_imp"></a>

 Dedique tiempo y recursos de sus procesos para hacer posibles las mejoras incrementales continuas. 

 En AWS, se pueden crear duplicados temporales de los entornos, lo que reduce el riesgo, el esfuerzo y el coste de la experimentación y las pruebas. Estos ambientes duplicados pueden usarse para probar las conclusiones de su análisis, experimentar, así como para desarrollar y probar las mejoras planeadas. 

 **Patrones de uso no recomendados comunes:** 
+  Hay un problema de rendimiento conocido en su servidor de aplicaciones. Se añade a las tareas pendientes existentes detrás de cada implementación de funciones programadas. Si el ritmo de adición de funciones previstas se mantiene constante, el problema del rendimiento nunca se solucionará. 
+  Para respaldar la mejora continua, aprueba que los administradores y desarrolladores utilicen todo su tiempo extra para seleccionar y aplicar las mejoras. Nunca se completan las mejoras. 

 **Beneficios de establecer esta práctica recomendada:** al dedicar tiempo y recursos en sus procesos hace posibles las mejoras incrementales continuas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Asignar tiempo para realizar mejoras: dedique tiempo y recursos dentro de sus procesos para hacer posibles las mejoras incrementales continuas. Aplique cambios para mejorar y evalúe los resultados para determinar el éxito. Si los resultados no alcanzan los objetivos y la mejora sigue siendo una prioridad, busque cursos de acción alternativos. 

# Seguridad
<a name="a-security"></a>

El pilar de seguridad engloba la capacidad de proteger datos, sistemas y activos para sacar partido de las tecnologías de nube con el fin de mejorar su nivel de seguridad. Encontrará una guía prescriptiva de implementación en el [ documento técnico Pilar de seguridad](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html?ref=wellarchitected-wp). 

**Topics**
+ [Aspectos básicos de seguridad](a-sec-security.md)
+ [Identity and Access Management](a-identity-and-access-management.md)
+ [Detección](a-detective-controls.md)
+ [Protección de la infraestructura](a-infrastructure-protection.md)
+ [Protección de los datos](a-data-protection.md)
+ [Respuesta ante incidentes](a-incident-response.md)
+ [Seguridad de las aplicaciones](a-appsec.md)

# Aspectos básicos de seguridad
<a name="a-sec-security"></a>

**Topics**
+ [SEC 1 ¿Cómo utiliza la carga de trabajo de forma segura?](sec-01.md)

# SEC 1 ¿Cómo utiliza la carga de trabajo de forma segura?
<a name="sec-01"></a>

 Para utilizar la carga de trabajo de forma segura, debe adoptar prácticas recomendadas globales en cada área de seguridad. Tome los requisitos y los procesos que ha definido en la excelencia operativa a nivel de organización y de carga de trabajo, y aplíquelos a todas las áreas. Mantenerse actualizado con AWS, las prácticas recomendadas del sector y la inteligencia de amenazas le ayudan a desarrollar el modelo de amenaza y los objetivos de control. La automatización de los procesos de seguridad, las pruebas y la validación le ayudan a escalar las operaciones de seguridad. 

**Topics**
+ [SEC01-BP01 Separar cargas de trabajo utilizando cuentas](sec_securely_operate_multi_accounts.md)
+ [SEC01-BP02 Proteger el usuario raíz y las propiedades de la cuenta](sec_securely_operate_aws_account.md)
+ [SEC01-BP03 Identificar y validar objetivos de control](sec_securely_operate_control_objectives.md)
+ [SEC01-BP04 Mantenerse al día de las amenazas de seguridad](sec_securely_operate_updated_threats.md)
+ [SEC01-BP05 Mantenerse al día con las recomendaciones de seguridad](sec_securely_operate_updated_recommendations.md)
+ [SEC01-BP06 Automatizar la comprobación y validación de controles de seguridad en canalizaciones](sec_securely_operate_test_validate_pipeline.md)
+ [SEC01-BP07 Identificar amenazas y priorizar mitigaciones con un modelo de amenazas](sec_securely_operate_threat_model.md)
+ [SEC01-BP08 Evaluar e implementar nuevos servicios y características de seguridad de forma periódica](sec_securely_operate_implement_services_features.md)

# SEC01-BP01 Separar cargas de trabajo utilizando cuentas
<a name="sec_securely_operate_multi_accounts"></a>

 Establezca barreras de protección y medidas de aislamiento comunes entre los entornos (por ejemplo, producción, desarrollo y pruebas) y las cargas de trabajo mediante una estrategia de varias cuentas. Es muy recomendable que la separación se realice a nivel de cuenta, ya que así se consigue una barrera de aislamiento sólida para gestionar la seguridad, la facturación y el acceso. 

**Resultado deseado:** una estructura de cuentas que aísle las operaciones en la nube, las cargas de trabajo no relacionadas y los entornos en cuentas separadas para aumentar la seguridad en toda la infraestructura en la nube.

**Antipatrones usuales:**
+  Colocar en la misma cuenta varias cargas de trabajo no relacionadas con diferentes niveles de confidencialidad de los datos.
+  Estructura de la unidad organizativa (OU) mal definida.

**Beneficios de establecer esta práctica recomendada:**
+  Menor alcance del impacto si se accede inadvertidamente a una carga de trabajo
+  Gobernanza central del acceso a los servicios, recursos y regiones de AWS.
+  Mantenimiento de la seguridad de la infraestructura en la nube con políticas y una administración centralizada de los servicios de seguridad
+  Proceso automatizado de creación y mantenimiento de las cuentas
+  Auditoría centralizada de la infraestructura para los requisitos de conformidad y reglamentarios

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Las Cuentas de AWS proporcionan una barrera de aislamiento de seguridad entre cargas de trabajo o recursos que operan con distintos niveles de confidencialidad. AWS ofrece herramientas para administrar sus cargas de trabajo en la nube a escala mediante una estrategia de varias cuentas para aprovechar esta barrera de aislamiento. Para obtener orientación sobre los conceptos, los patrones y la implementación de una estrategia de varias cuentas en AWS, consulte [Organizing Your AWS Environment Using Multiple Accounts](https://docs.aws.amazon.com/whitepapers/latest/organizing-your-aws-environment/organizing-your-aws-environment.html) (Organización del entorno de AWS utilizando varias cuentas). 

 Cuando tenga varias Cuentas de AWS con una administración central, sus cuentas deben organizarse en una jerarquía definida por capas de unidades organizativas (OU). Luego, pueden organizarse y aplicarse controles de seguridad a las OU y a las cuentas miembro mediante el establecimiento de controles preventivos uniformes en las cuentas miembros de la organización. Los controles de seguridad se heredan, lo que permite filtrar los permisos disponibles para las cuentas miembros situadas en niveles inferiores de una jerarquía de OU. Un buen diseño aprovecha esta herencia para reducir el número y la complejidad de las políticas de seguridad necesarias para lograr los controles de seguridad deseados para cada cuenta miembro. 

 [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html) y [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) son dos de los servicios que puede utilizar para implementar y administrar esta estructura de varias cuentas en su entorno de AWS. AWS Organizations le permite organizar las cuentas en una jerarquía definida por una o varias capas de OU, en la que cada OU contiene una serie de cuentas miembro. [Las políticas de control de servicios](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) (SCP) permiten al administrador de la organización establecer controles preventivos detallados en las cuentas miembros y [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/config-rule-multi-account-deployment.html) puede utilizarse para establecer controles proactivos y de detección en las cuentas miembro. Muchos servicios de AWS [se integran con AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services_list.html) para proporcionar controles administrativos delegados y realizar tareas específicas del servicio en todas las cuentas miembros de la organización. 

 Por encima de AWS Organizations, [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) proporciona una configuración recomendada de un solo clic para un entorno de AWS de varias cuentas con una [zona de aterrizaje](https://docs.aws.amazon.com/controltower/latest/userguide/aws-multi-account-landing-zone.html). La zona de aterrizaje es el punto de entrada al entorno de varias cuentas que se establece por medio de Control Tower. Control Tower tiene varias [ventajas](https://aws.amazon.com/blogs/architecture/fast-and-secure-account-governance-with-customizations-for-aws-control-tower/) con respecto a AWS Organizations. Estas son tres ventajas que mejoran la gobernanza de las cuentas: 
+  Barreras de protección de seguridad obligatorias integradas que se aplican automáticamente a las cuentas que se admiten en la organización. 
+  Barreras de protección opcionales que pueden activarse o desactivarse para un conjunto determinado de OU. 
+  [AWS Control Tower Account Factory](https://docs.aws.amazon.com/controltower/latest/userguide/account-factory.html) proporciona un despliegue automatizado de cuentas que contienen bases de referencia y opciones de configuración preaprobadas dentro de su organización. 

## Pasos para la implementación
<a name="implementation-steps"></a>

1.  **Diseñe una estructura de unidades organizativas: **si la estructura de unidades organizativas está diseñada correctamente, se reduce la carga administrativa necesaria para crear y mantener las políticas de control de los servicios y otros controles de seguridad. La estructura de su unidad organizativa debe [ajustarse a sus necesidades empresariales, la confidencialidad de los datos y la estructura de la carga de trabajo](https://aws.amazon.com/blogs/mt/best-practices-for-organizational-units-with-aws-organizations/). 

1.  **Cree una zona de aterrizaje para su entorno de varias cuentas**: una zona de aterrizaje proporciona una base de seguridad e infraestructura uniforme desde la que su organización puede desarrollar, iniciar y desplegar cargas de trabajo rápidamente. Puede utilizar una [zona de aterrizaje personalizada o AWS Control Tower](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-aws-environment/building-landing-zones.html) para organizar su entorno. 

1.  **Establezca barreras de protección:** implemente barreras de protección de seguridad uniformes para su entorno en toda su zona de aterrizaje. AWS Control Tower proporciona una lista de controles [obligatorios](https://docs.aws.amazon.com/controltower/latest/userguide/mandatory-controls.html) y [opcionales](https://docs.aws.amazon.com/controltower/latest/userguide/optional-controls.html) que pueden desplegarse. Los controles obligatorios se despliegan automáticamente al implementar Control Tower. Revise la lista de los controles más recomendables y opcionales, e implemente los controles que sean adecuados a sus necesidades. 

1.  **Restrinja el acceso a las regiones añadidas recientemente**: para las nuevas Regiones de AWS, los recursos de IAM, como los usuarios y los roles, solo se propagan a las regiones que especifique. Esta acción puede realizarse a través de la [consola cuando se utiliza Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/region-deny.html) o ajustando las políticas de permisos de [IAM en AWS Organizations](https://aws.amazon.com/blogs/security/setting-permissions-to-enable-accounts-for-upcoming-aws-regions/). 

1.  **Considere la posibilidad de usar AWS [CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html)**: StackSets le ayuda a desplegar recursos como políticas, roles y grupos de IAM en diferentes regiones y Cuentas de AWS a partir de una plantilla aprobada. 

## Recursos
<a name="resources"></a>

**Prácticas recomendadas relacionadas:** 
+ [SEC02-BP04 Recurrir a un proveedor de identidades centralizado](sec_identities_identity_provider.md)

**Documentos relacionados:** 
+  [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) 
+  [AWS Security Audit Guidelines](https://docs.aws.amazon.com/general/latest/gr/aws-security-audit-guide.html) (Directivas de auditoría de seguridad de AWS) 
+  [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html) 
+  [Use CloudFormation StackSets to provision resources across multiple Cuentas de AWS and regions](https://aws.amazon.com/blogs/aws/use-cloudformation-stacksets-to-provision-resources-across-multiple-aws-accounts-and-regions/) (Utilice CloudFormation StackSets para aprovisionar recursos en varias cuentas y regiones de AWS) 
+  [Preguntas frecuentes de AWS Organizations](https://aws.amazon.com/organizations/faqs/) 
+  [Terminología y conceptos de AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html) 
+  [Best Practices for AWS Organizations Service Control Policies in a Multi-Account Environment](https://aws.amazon.com/blogs/industries/best-practices-for-aws-organizations-service-control-policies-in-a-multi-account-environment/) (Prácticas recomendadas para las políticas de control de servicios de AWS Organizations en un entorno de varias cuentas) 
+  [AWS Account Management Reference Guide](https://docs.aws.amazon.com/accounts/latest/reference/accounts-welcome.html) (Guía de referencia para la administración de cuentas de AWS) 
+  [Organización de su entorno de AWS mediante varias cuentas](https://docs.aws.amazon.com/whitepapers/latest/organizing-your-aws-environment/organizing-your-aws-environment.html) 

**Vídeos relacionados: ** 
+  [Enable AWS adoption at scale with automation and governance](https://youtu.be/GUMSgdB-l6s) (Facilitar la adopción de AWS a escala con la automatización y la gobernanza) 
+  [Security Best Practices the Well-Architected Way](https://youtu.be/u6BCVkXkPnM) (Prácticas recomendadas de seguridad al estilo de Well-Architected) 
+  [Building and Governing Multiple Accounts using AWS Control Tower](https://www.youtube.com/watch?v=agpyuvRv5oo) (Creación y administración de varias cuentas mediante Control Tower) 
+  [Enable Control Tower for Existing Organizations](https://www.youtube.com/watch?v=CwRy0t8nfgM) (Habilitar Control Tower para las organizaciones existentes) 

**Talleres relacionados:** 
+  [Control Tower Immersion Day](https://controltower.aws-management.tools/immersionday/) (Día de inmersión en Control Tower) 

# SEC01-BP02 Proteger el usuario raíz y las propiedades de la cuenta
<a name="sec_securely_operate_aws_account"></a>

 El usuario raíz es el usuario con más privilegios de una Cuenta de AWS. Tiene acceso administrativo completo a todos los recursos de la cuenta y, en algunos casos, no se puede limitar con políticas de seguridad. Deshabilitar el acceso programático al usuario raíz, establecer controles apropiados para este usuario y evitar su uso rutinario ayuda a reducir el riesgo de exposición inadvertida de las credenciales raíz y el consiguiente peligro que esto supone para el entorno de la nube. 

**Resultado deseado: **proteger al usuario raíz ayuda a reducir la posibilidad de que se produzcan daños accidentales o intencionados por el uso indebido de las credenciales de usuario raíz. Establecer controles de detección también puede servir para alertar al personal adecuado cuando se realizan acciones con el usuario raíz.

**Antipatrones usuales:**
+  Utilizar el usuario raíz para realizar tareas que no se encuentran entre las pocas que requieren credenciales de usuario raíz.  
+  Dejar de comprobar periódicamente los planes de contingencia para verificar el funcionamiento de las infraestructuras críticas, los procesos y el personal durante una emergencia. 
+  Considerar únicamente el flujo de inicio de sesión típico de la cuenta y olvidarse de considerar o probar métodos alternativos de recuperación de la cuenta. 
+  No ocuparse de DNS, servidores de correo electrónico y proveedores de telefonía como parte del perímetro crítico de seguridad, ya que estos se utilizan en el flujo de recuperación de la cuenta. 

 **Beneficios de establecer esta práctica recomendada:** proteger el acceso al usuario raíz genera confianza, ya que las acciones en su cuenta están controladas y auditadas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 AWS dispone de muchas herramientas para proteger su cuenta. Sin embargo, dado que algunas de estas medidas no están habilitadas de forma predeterminada, deberá implementarlas directamente. Considere estas recomendaciones como pasos básicos para proteger su Cuenta de AWS. A medida que vaya implementando estos pasos, es importante que cree un proceso para evaluar y supervisar continuamente los controles de seguridad. 

 Cuando crea una Cuenta de AWS por primera vez, empieza con una sola identidad que tiene acceso completo a todos los servicios y recursos de AWS de la cuenta. Esta identidad se denomina usuario raíz de la Cuenta de AWS. Puede iniciar sesión como usuario raíz con la dirección de correo electrónico y la contraseña que se ha usado para crear la cuenta. Dado el elevado nivel de acceso que se concede al usuario raíz de AWS, debe limitar el uso de este usuario de AWS a la realización de tareas que [lo requieran específicamente](https://docs.aws.amazon.com/general/latest/gr/aws_tasks-that-require-root.html). Las credenciales de inicio de sesión del usuario raíz deben estar muy bien protegidas y siempre se debe habilitar la autenticación multifactor (MFA) para el usuario raíz de la Cuenta de AWS. 

 Además del flujo de autenticación normal para iniciar sesión con su usuario raíz mediante un nombre de usuario, una contraseña y un dispositivo de autenticación multifactor (MFA), existen flujos de recuperación de la cuenta para iniciar sesión con el usuario raíz de la Cuenta de AWS que tiene acceso a la dirección de correo electrónico y al número de teléfono asociados a su cuenta. Por lo tanto, también es muy importante proteger la cuenta de correo electrónico del usuario raíz a la que se envía el mensaje de recuperación y el número de teléfono asociado a la cuenta. Tenga en cuenta también las posibles dependencias circulares si la dirección de correo electrónico asociada al usuario raíz está alojada en servidores de correo electrónico o recursos del servicio de nombres de dominio (DNS) de la misma Cuenta de AWS. 

 Cuando se utiliza AWS Organizations, hay varias Cuentas de AWS y cada una de ellas tiene un usuario raíz. Se designa una cuenta como cuenta de administración y, a continuación, se pueden añadir varias capas de cuentas miembro por debajo de esa cuenta de administración. Dé prioridad a la seguridad del usuario raíz de su cuenta de administración y, luego, céntrese en los usuarios raíz de las cuentas miembros. La estrategia para proteger el usuario raíz de su cuenta de administración puede ser diferente a la de los usuarios raíz de sus cuentas miembro, y puede colocar controles de seguridad preventivos en los usuarios raíz de sus cuentas miembro. 

### Pasos para la implementación
<a name="implementation-steps"></a>

 Se recomienda realizar los siguientes pasos de implementación para establecer controles para el usuario raíz. Cuando sea oportuno, las recomendaciones hacen referencia a la [referencia de CIS AWS Foundations versión 1.4.0](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-cis-controls-1.4.0.html). Además de estos pasos, consulte las [prácticas recomendadas de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/security-best-practices/) para proteger sus recursos y su Cuenta de AWS. 

 **Controles preventivos** 

1.  Establezca [información de contacto](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact-primary.html) precisa para la cuenta. 

   1.  Esta información se utiliza para el flujo de recuperación de las contraseñas perdidas, el flujo de recuperación de cuentas de los dispositivos MFA perdidos y para comunicaciones críticas relacionadas con la seguridad con su equipo. 

   1.  Utilice una dirección de correo electrónico alojada en su dominio corporativo (preferiblemente una lista de distribución) como dirección de correo electrónico del usuario raíz. Al utilizar una lista de distribución en lugar de la cuenta de correo electrónico de una persona, se consigue redundancia y continuidad adicionales para acceder a la cuenta raíz durante largos periodos de tiempo. 

   1.  El número de teléfono que figure en la información de contacto debe ser un teléfono dedicado y seguro para este fin. El número de teléfono no debe figurar en ninguna parte ni compartirse con nadie. 

1.  No cree claves de acceso para el usuario raíz. Si existen claves de acceso, elimínelas (CIS 1.4). 

   1.  Elimine cualquier credencial programática de larga duración (claves de acceso y secretas) para el usuario raíz. 

   1.  Si ya existen claves de acceso para el usuario raíz, debe hacer que los procesos que utilizan dichas claves pasen a utilizar claves de acceso temporales de un rol de AWS Identity and Access Management (IAM) y, a continuación, [eliminar las claves de acceso del usuario raíz](https://docs.aws.amazon.com/accounts/latest/reference/root-user-access-key.html#root-user-delete-access-key). 

1.  Determine si necesita almacenar las credenciales del usuario raíz. 

   1.  Si utiliza AWS Organizations para crear nuevas cuentas miembro, la contraseña inicial del usuario raíz de esas nuevas cuentas miembro se establece en un valor aleatorio que no está expuesto a usted. Considere la posibilidad de utilizar el flujo de restablecimiento de las contraseñas desde su cuenta de administración de AWS Organization para [obtener acceso a la cuenta miembro](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_accounts_access.html#orgs_manage_accounts_access-as-root) si es necesario. 

   1.  Para Cuentas de AWS independientes o la cuenta de administración de AWS, considere la posibilidad de crear y almacenar de forma segura credenciales para el usuario raíz. Habilite MFA para el usuario raíz. 

1.  Habilite controles preventivos para usuarios raíz de cuentas miembro en entornos de varias cuentas de AWS. 

   1.  Considere la posibilidad de habilitar la barrera de protección preventiva [No permitir la creación de claves de acceso para el usuario raíz](https://docs.aws.amazon.com/controltower/latest/userguide/strongly-recommended-controls.html#disallow-root-access-keys) para las cuentas miembros. 

   1.  Considere la posibilidad de habilitar la barrera de protección preventiva [No permitir acciones como usuario raíz](https://docs.aws.amazon.com/controltower/latest/userguide/strongly-recommended-controls.html#disallow-root-auser-actions) para las cuentas miembros. 

1.  Si necesita credenciales para el usuario raíz: 

   1.  Utilice una contraseña compleja. 

   1.  Habilite la autenticación multifactor (MFA) para el usuario raíz, especialmente para las cuentas de administración de AWS Organizations (pagador) (CIS 1.5). 

   1.  Considere la posibilidad de usar dispositivos MFA físicos para mejorar la resiliencia y la seguridad, ya que los dispositivos de un solo uso pueden reducir las posibilidades de que los dispositivos que contienen los códigos MFA puedan reutilizarse para otros fines. Verifique que los dispositivos MFA físicos que funcionan con baterías se sustituyan con regularidad. (CIS 1.6) 
      +  Para configurar MFA para el usuario raíz, siga las instrucciones para habilitar un [dispositivo MFA virtual](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_mfa_enable_virtual.html#enable-virt-mfa-for-root) o un [dispositivo MFA físico](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_mfa_enable_physical.html#enable-hw-mfa-for-root). 

   1.  Considere la posibilidad de inscribir varios dispositivos MFA de reserva. [Se permiten hasta 8 dispositivos MFA por cuenta](https://aws.amazon.com/blogs/security/you-can-now-assign-multiple-mfa-devices-in-iam/). 
      +  Tenga en cuenta que, si inscribe más de un dispositivo MFA para el usuario raíz, se desactiva automáticamente el [flujo para recuperar su cuenta si el dispositivo MFA se pierde](https://aws.amazon.com/premiumsupport/knowledge-center/reset-root-user-mfa/). 

   1.  Guarde la contraseña con todas las medidas de seguridad y tenga en cuenta las dependencias circulares si la guarda electrónicamente. No guarde la contraseña de forma que sea necesario acceder a la misma Cuenta de AWS para obtenerla. 

1.  Opcional: considere la posibilidad de establecer un programa de rotación periódica de contraseñas para el usuario raíz. 
   +  Las prácticas recomendadas de administración de credenciales dependen de los requisitos de las normativas y políticas que tenga. Los usuarios raíz protegidos por MFA no dependen de una contraseña como único factor de autenticación. 
   +  [Cambiar la contraseña del usuario raíz ](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_passwords_change-root.html)de forma periódica reduce el riesgo de que se utilice de forma indebida si se ha expuesto de forma inadvertida. 

### Controles de detección
<a name="detective-controls"></a>
+  Cree alarmas para detectar el uso de las credenciales del usuario raíz (CIS 1.7). [Si se habilita Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_settingup.html), este supervisará el uso de credenciales de API del usuario raíz y alertará de ese uso mediante el hallazgo de [RootCredentialUsage](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-iam.html#policy-iam-rootcredentialusage). 
+  Evalúe e implemente los controles de detección que se incluyen en el [paquete de conformidad del pilar de seguridad de AWS Well-Architected para AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/operational-best-practices-for-wa-Security-Pillar.html) o, si utiliza AWS Control Tower, los [controles más recomendados](https://docs.aws.amazon.com/controltower/latest/userguide/strongly-recommended-controls.html) que hay disponibles en Control Tower. 

### Guía operativa
<a name="operational-guidance"></a>
+  Determine qué persona de la organización debe tener acceso a las credenciales del usuario raíz. 
  +  Utilice la regla de dos personas para no haya una sola persona que tenga acceso a todas las credenciales y el dispositivo MFA necesarios para obtener acceso de usuario raíz. 
  +  Compruebe que sea la organización, y no un único individuo, quien mantenga un control del número de teléfono y el alias de correo electrónico asociados a la cuenta (que se utilizan para el restablecimiento de la contraseña y el flujo de restablecimiento de MFA). 
+  Utilice el usuario raíz únicamente de forma excepcional (CIS 1.7). 
  +  El usuario raíz de AWS no debe utilizarse para las tareas diarias, ni siquiera para las tareas administrativas. Inicie sesión únicamente como usuario raíz para realizar las tareas de [AWS que requieran dicho usuario](https://docs.aws.amazon.com/general/latest/gr/aws_tasks-that-require-root.html). Todas las demás acciones deben realizarlas otros usuarios que asuman los roles apropiados. 
+  Compruebe periódicamente que el acceso al usuario raíz funciona para poder probar los procedimientos antes de que se produzca una situación de emergencia que requiera el uso de las credenciales del usuario raíz. 
+  Compruebe periódicamente que la dirección de correo electrónico asociada a la cuenta y las que figuran en los [contactos alternativos](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-update-contact-alternate.html) funcionan. Supervise las bandejas de entrada de estas direcciones de correo electrónico para comprobar si se reciben notificaciones de seguridad de abuse@amazon.com. Asegúrese también de que los números de teléfono asociados a la cuenta funcionan. 
+  Prepare procedimientos de respuesta a incidentes para responder al uso indebido de la cuenta raíz. Consulte la [AWS Security Incident Response Guide](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/aws-security-incident-response-guide.html) (Guía de respuesta a incidentes de seguridad de AWS) y las prácticas recomendadas de la sección [Incident Response](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/incident-response.html) (Respuesta a incidentes) del documento técnico sobre los pilares de seguridad para obtener más información sobre la creación de una estrategia de respuesta a incidentes para su Cuenta de AWS. 

## Recursos
<a name="resources"></a>

**Prácticas recomendadas relacionadas:** 
+ [SEC01-BP01 Separar cargas de trabajo utilizando cuentas](sec_securely_operate_multi_accounts.md)
+ [SEC02-BP01 Usar mecanismos de inicio de sesión sólidos](sec_identities_enforce_mechanisms.md)
+ [SEC03-BP02 Conceder acceso con privilegios mínimos](sec_permissions_least_privileges.md)
+ [SEC03-BP03 Establecer un proceso de acceso de emergencia](sec_permissions_emergency_process.md)
+ [SEC10-BP05: Aprovisionamiento previo del acceso](sec_incident_response_pre_provision_access.md)

**Documentos relacionados:** 
+  [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html) 
+  [AWS Security Audit Guidelines](https://docs.aws.amazon.com/general/latest/gr/aws-security-audit-guide.html) (Directivas de auditoría de seguridad de AWS) 
+  [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html) 
+  [Amazon GuardDuty: alerta sobre el uso de credenciales raíz](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-iam.html#policy-iam-rootcredentialusage) 
+  [Step-by-step guidance on monitoring for root credential use through CloudTrail](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-cis-controls-1.4.0.html#securityhub-cis1.4-controls-1.7) (Guía paso a paso para supervisar el uso de credenciales raíz a través de Control Tower) 
+  [MFA tokens approved for use with AWS](https://aws.amazon.com/iam/features/mfa/) (Tokens MFA aprobados para su uso con AWS) 
+  Implementación del [acceso con rotura de cristales](https://docs.aws.amazon.com/whitepapers/latest/organizing-your-aws-environment/break-glass-access.html) en AWS 
+  [Top 10 security items to improve in your Cuenta de AWS](https://aws.amazon.com/blogs/security/top-10-security-items-to-improve-in-your-aws-account/) (Los 10 elementos de seguridad que debe mejorar en su cuenta de AWS) 
+  [What do I do if I notice unauthorized activity in my Cuenta de AWS?](https://aws.amazon.com/premiumsupport/knowledge-center/potential-account-compromise/) (¿Qué hago si observo actividad no autorizada en mi cuenta de AWS? 

**Vídeos relacionados: ** 
+  [Enable AWS adoption at scale with automation and governance](https://youtu.be/GUMSgdB-l6s) (Facilitar la adopción de AWS a escala con la automatización y la gobernanza) 
+  [Security Best Practices the Well-Architected Way](https://youtu.be/u6BCVkXkPnM) (Prácticas recomendadas de seguridad al estilo de Well-Architected) 
+  [Limitación del uso de credenciales raíz de AWS](https://youtu.be/SMjvtxXOXdU?t=979) de AWS re:inforce 2022 – Security best practices with AWS IAM (AWS re:inforce 2022: prácticas recomendadas de seguridad con AWS IAM)

**Ejemplos relacionados y laboratorios:** 
+  [Laboratorio: Cuenta de AWS and root user](https://www.wellarchitectedlabs.com/security/100_labs/100_aws_account_and_root_user/) (La cuenta de AWS y el usuario raíz) 

# SEC01-BP03 Identificar y validar objetivos de control
<a name="sec_securely_operate_control_objectives"></a>

 En función de sus requisitos de cumplimiento y los riesgos identificados a partir de su modelo de amenazas, derive y valide los objetivos de control y los controles que tiene que aplicar a su carga de trabajo. La validación continua de los objetivos de control y los controles le ayuda a medir la efectividad de la mitigación de riesgos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Identificar los requisitos de cumplimiento: descubra los requisitos organizativos, legales y de conformidad que debe cumplir la carga de trabajo. 
+  Identificar los recursos de cumplimiento de AWS: identifique los recursos que AWS tiene disponibles para ayudarle en términos de cumplimiento. 
  +  [https://aws.amazon.com/compliance/ ](https://aws.amazon.com/compliance/)
  + [ https://aws.amazon.com/artifact/](https://aws.amazon.com/artifact/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Directrices de auditoría de seguridad de AWS](https://docs.aws.amazon.com/general/latest/gr/aws-security-audit-guide.html) 
+ [ Boletines de seguridad](https://aws.amazon.com/security/security-bulletins/) 

 **Vídeos relacionados:** 
+  [AWS Security Hub CSPM: gestionar las alertas de seguridad y automatizar el cumplimiento](https://youtu.be/HsWtPG_rTak) 
+  [Prácticas recomendadas de seguridad a la forma Well-Architected](https://youtu.be/u6BCVkXkPnM) 

# SEC01-BP04 Mantenerse al día de las amenazas de seguridad
<a name="sec_securely_operate_updated_threats"></a>

 Para ayudarle a definir e implementar los controles adecuados, reconozca los vectores de ataque manteniéndose al día de las últimas amenazas de seguridad. Use AWS Managed Services para facilitar la recepción de notificaciones de comportamientos inesperados o inusuales en sus cuentas de AWS. Investigue mediante herramientas de socios de AWS o orígenes de información sobre amenazas de terceros como parte de su flujo de información de seguridad. La [lista de vulnerabilidades y exposiciones comunes (CVE) ](https://cve.mitre.org/) contiene vulnerabilidades de ciberseguridad divulgadas públicamente que puede utilizar para estar al día. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Suscríbase a orígenes de inteligencia sobre amenazas: consulte periódicamente información de inteligencia de distintos orígenes que sean relevantes para las tecnologías que se usan en su carga de trabajo. 
  +  [Lista de vulnerabilidades y exposiciones comunes (CVE) ](https://cve.mitre.org/)
+  Considere [AWS Shield Advanced](https://aws.amazon.com/shield/?whats-new-cards.sort-by=item.additionalFields.postDateTime&whats-new-cards.sort-order=desc) : proporciona visibilidad casi en tiempo real sobre los orígenes de inteligencia si se puede acceder a su carga de trabajo desde Internet. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [AWS Security Audit Guidelines (Directrices de auditoría de seguridad de AWS)](https://docs.aws.amazon.com/general/latest/gr/aws-security-audit-guide.html) 
+  [AWS Shield](https://aws.amazon.com/shield/) 
+ [ Boletines de seguridad](https://aws.amazon.com/security/security-bulletins/) 

 **Vídeos relacionados:** 
+ [Security Best Practices the Well-Architected Way (Prácticas recomendadas de seguridad a la forma Well-Architected) ](https://youtu.be/u6BCVkXkPnM) 

# SEC01-BP05 Mantenerse al día con las recomendaciones de seguridad
<a name="sec_securely_operate_updated_recommendations"></a>

 Manténgase al día de las recomendaciones de seguridad de AWS y de todo el sector para hacer evolucionar la postura de seguridad de su carga de trabajo. [Los boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins/?card-body.sort-by=item.additionalFields.bulletinDateSort&card-body.sort-order=desc&awsf.bulletins-year=year%232009) contienen información importante sobre la seguridad y las notificaciones de privacidad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Siga las actualizaciones de AWS: suscríbase o compruebe regularmente las nuevas recomendaciones, consejos y trucos. 
  +  [Laboratorios de AWS Well-Architected](https://wellarchitectedlabs.com/?ref=wellarchitected) 
  +  [Blog de seguridad de AWS](https://aws.amazon.com/blogs/security/?ref=wellarchitected) 
  +  [Documentación de servicio de AWS](https://aws.amazon.com/documentation/?ref=wellarchitected) 
+  Suscríbase a las noticias del sector: consulte habitualmente noticias de distintas fuentes que sean relevantes para las tecnologías que se utilicen en su carga de trabajo. 
  +  [Ejemplo: lista de vulnerabilidades y exposiciones comunes](https://cve.mitre.org/cve/?ref=wellarchitected) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Boletines de seguridad](https://aws.amazon.com/security/security-bulletins/) 

 **Videos relacionados:** 
+  [Prácticas recomendadas de seguridad a la forma Well-Architected](https://youtu.be/u6BCVkXkPnM) 

# SEC01-BP06 Automatizar la comprobación y validación de controles de seguridad en canalizaciones
<a name="sec_securely_operate_test_validate_pipeline"></a>

 Establezca referencias y plantillas seguras para mecanismos de seguridad que se comprueben y validen como parte de sus compilaciones, canalizaciones y procesos. Utilice herramientas y automatización para probar y validar todos los controles de seguridad de forma continua. Por ejemplo, escanee elementos como imágenes de máquinas y plantillas de infraestructura como código en busca de vulnerabilidades de seguridad, irregularidades y divergencias respecto de una referencia establecida en cada etapa. AWS CloudFormation Guard puede ayudarle a verificar que las plantillas de CloudFormation sean seguras, ahorrarle tiempo y reducir el riesgo de errores de configuración. 

Reducir el número de configuraciones incorrectas de seguridad introducidas en un entorno de producción es fundamental. De este modo, establecer un control de calidad más exhaustivo y reducir los defectos durante el proceso de compilación facilitará obtener mejores resultados. Cuando sea posible, diseñe canalizaciones de integración e implementación continuas (CI/CD) para probar si hay problemas de seguridad. Las canalizaciones de CI/CD ofrecen la oportunidad de mejorar la seguridad en cada etapa de la compilación y la entrega. Las herramientas de seguridad de CI/CD también deben mantenerse actualizadas para mitigar las amenazas en evolución.

Realice un seguimiento de los cambios en la configuración de su carga de trabajo para ayudar con la auditoría normativa, la gestión de cambios y las investigaciones que puedan afectarle. Puede utilizar AWS Config para registrar y evaluar sus recursos de AWS y de terceros. Le permite evaluar y auditar de forma continua el cumplimiento general de las reglas y los paquetes de conformidad, que son conjuntos de reglas con acciones de corrección.

Entre las medidas de seguimiento de los cambios deberían incluirse cambios planificados que formen parte del proceso de control de cambios de la organización (lo que a veces se denomina "MACD": "mover", "agregar", "cambiar" y "eliminar", por sus siglas en inglés), cambios ad hoc o cambios inesperados, como incidentes. Los cambios pueden producirse en la infraestructura, pero también pueden estar relacionados con otras categorías, como los cambios en los repositorios de código, en los inventarios de aplicaciones e imágenes de máquinas, en los procesos y políticas o en la documentación.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatice la administración de la configuración: aplique y valide configuraciones seguras de forma automática mediante el uso de un servicio o herramienta de administración de la configuración. 
  +  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
  +  [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
  +  [Configurar una canalización de CI/CD en AWS](https://aws.amazon.com/getting-started/projects/set-up-ci-cd-pipeline/)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Cómo utilizar las políticas de control de servicios para establecer barreras de protección de permisos entre cuentas de AWS Organizations](https://aws.amazon.com/blogs/security/how-to-use-service-control-policies-to-set-permission-guardrails-across-accounts-in-your-aws-organization/) 

 **Videos relacionados:** 
+  [Administración de entornos de AWS con varias cuentas utilizando AWS Organizations](https://youtu.be/fxo67UeeN1A) 
+  [Prácticas recomendadas de seguridad a la forma Well-Architected](https://youtu.be/u6BCVkXkPnM) 

# SEC01-BP07 Identificar amenazas y priorizar mitigaciones con un modelo de amenazas
<a name="sec_securely_operate_threat_model"></a>

 Utilice el modelado de amenazas para identificar y mantener un registro actualizado de las amenazas potenciales y las mitigaciones asociadas para su carga de trabajo. Priorice sus amenazas y adapte sus mitigaciones de controles de seguridad para evitarlas, detectarlas y responder a ellas. Revise y mantenga todo esto en el contexto de su carga de trabajo y de la evolución del panorama de seguridad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 **¿Qué es el modelado de amenazas?** 

 Como definición, «el modelado de amenazas sirve para identificar, comunicar y comprender las amenazas y mitigaciones dentro del contexto de la protección de algo de valor» – [The Open Web Application Security Project (OWASP) Application Threat Modeling](https://owasp.org/www-community/Threat_Modeling) (Modelado de amenazas de aplicaciones de Open Web Application Security Project [OWASP]). 

 **¿Por qué debe modelar las amenazas?** 

 Los sistemas son complejos y, con el tiempo, se hacen más complejos y potentes aún, por lo que aportan más valor empresarial y aumentan la satisfacción y el compromiso de los clientes. Esto significa que, en las decisiones de diseño de TI, se deben tener en cuenta un número cada vez mayor de casos de uso. Debido a esta complejidad y al número de combinaciones de casos de uso, los enfoques no estructurados suelen resultar ineficaces para encontrar y mitigar las amenazas. En su lugar, se necesita un enfoque sistemático para encontrar las amenazas potenciales para el sistema, pero también para concebir mitigaciones y priorizarlas para asegurarse de que los limitados recursos de la organización tengan el máximo impacto en la mejora de la postura de seguridad general del sistema. 

 El modelado de amenazas está diseñado para proporcionar este enfoque sistemático, con el objetivo de encontrar y abordar los problemas en las primeras fases del proceso de diseño, cuando las mitigaciones tienen un coste y un esfuerzo relativamente bajos en comparación con las fases posteriores del ciclo de vida. Este enfoque se ajusta al principio de seguridad [«shift-left»](https://owasp.org/www-project-devsecops-guideline/latest/00a-Overview) (desplazamiento a la izquierda) del sector. En última instancia, el modelado de amenazas se integra en el proceso de administración de riesgos de una organización y ayuda a tomar decisiones sobre qué controles aplicar mediante un enfoque basado en las amenazas. 

 **¿Cuándo debe realizarse el modelado de amenazas?** 

 Empiece a modelar las amenazas lo antes posible en el ciclo de vida de su carga de trabajo, ya que así tendrá más flexibilidad para actuar en relación con las amenazas que identifique. Al igual que ocurre con los errores de software, cuanto antes identifique las amenazas, más rentable le resultará abordarlas. Un modelo de amenazas es un documento vivo y debe evolucionar a medida que cambien sus cargas de trabajo. Revise los modelos de amenazas a lo largo del tiempo, especialmente cuando se produzca un cambio importante, un cambio en el panorama de las amenazas o cuando adopte una nueva función o servicio. 

 **Pasos para la implementación** 

 **¿Cómo podemos realizar el modelado de amenazas?** 

 Hay muchas formas diferentes de realizar el modelado de amenazas. Al igual que ocurre con los lenguajes de programación, cada una tiene sus ventajas y sus inconvenientes, por lo que debe elegir la que mejor le convenga. Un enfoque es comenzar con [Shostack’s 4 Question Frame for Threat Modeling](https://github.com/adamshostack/4QuestionFrame) (Marco de 4 preguntas para el modelado de amenazas de Shostack), que plantea preguntas abiertas para proporcionar una estructura a su modelado de amenazas: 

1.  **¿En qué está trabajando?** 

    La finalidad de esta pregunta es ayudarle a comprender y acordar el sistema que está construyendo y los detalles de ese sistema que son relevantes para la seguridad. Lo más habitual es responder que se está creando un modelo o diagrama, ya esto ayuda a visualizar lo que está construyendo, por ejemplo, con un [diagrama de flujo de datos](https://en.wikipedia.org/wiki/Data-flow_diagram). Anotar las suposiciones y los detalles importantes sobre su sistema también le ayuda a definir el alcance del trabajo. De esta manera, todas las personas que contribuyen al modelo de amenazas pueden centrarse en lo mismo, y evita dar largos rodeos hacia temas que están fuera del alcance (lo que incluye versiones desactualizadas de su sistema). Por ejemplo, si crea una aplicación web, probablemente no merezca la pena que modele la secuencia de arranque de confianza del sistema operativo para los clientes del navegador, ya que no tiene capacidad para influir en esto con su diseño. 

1.  **¿Qué puede salir mal?** 

    Aquí es donde usted identifica las amenazas que afectan a su sistema. Las amenazas son acciones o acontecimientos accidentales o intencionados que tienen repercusiones no deseadas y podrían afectar a la seguridad de su sistema. Si no tiene una idea clara de lo que podría salir mal, no podrá hacer nada al respecto. 

    No existe una lista formal de lo que puede salir mal. Para crear esta lista, todos los miembros de su equipo y las [personas relevantes implicadas](https://aws.amazon.com/blogs/security/how-to-approach-threat-modeling/#tips) en el modelado de amenazas deben hacer una lluvia de ideas y colaborar. Para facilitar la lluvia de ideas, puede utilizar un modelo de identificación de amenazas, como [STRIDE](https://en.wikipedia.org/wiki/STRIDE_(security)), que sugiere diferentes categorías para evaluar las siguientes amenazas: suplantación de identidad, manipulación, repudio, divulgación de información, denegación de servicio y elevación de privilegios. Además, puede facilitar la lluvia de ideas inspirándose en listas e investigaciones existentes, como [OWASP Top 10](https://owasp.org/www-project-top-ten/) (Los 10 principales riesgos de seguridad de OWASP), [HiTrust Threat Catalog](https://hitrustalliance.net/hitrust-threat-catalogue/) (Catálogo de amenazas de HiTrust) y el propio catálogo de amenazas de su organización. 

1.  **¿Qué vamos a hacer al respecto?** 

    Igual que en la pregunta anterior, no existe una lista formal de todas las mitigaciones posibles. En este paso, tenemos las amenazas, los actores y las áreas de mejora identificados en el paso anterior. 

    La seguridad y la conformidad constituyen una [responsabilidad compartida entre usted y AWS](https://aws.amazon.com/compliance/shared-responsibility-model/). Es importante entender que, cuando se pregunta «¿Qué vamos a hacer al respecto?», también se está preguntando «¿Quién es responsable de hacer algo al respecto?». Comprender el reparto de responsabilidades entre usted y AWS le ayuda a delimitar su modelado de amenazas a las mitigaciones que están bajo su control, que suelen ser una combinación de opciones de configuración de los servicios de AWS y las mitigaciones específicas de su propio sistema. 

    En lo que se refiere a la parte de AWS de esa responsabilidad compartida, descubrirá que los servicios de [AWS están dentro del ámbito de muchos programas de conformidad](https://aws.amazon.com/compliance/services-in-scope/). Estos programas le ayudan a conocer los sólidos controles que hay en AWS para mantener la seguridad y la conformidad de la nube. Los clientes de AWS pueden descargar informes de auditoría de estos programas desde [AWS Artifact](https://aws.amazon.com/artifact/). 

    Independientemente de los servicios de AWS que utilice, el cliente siempre tiene una parte de la responsabilidad y las mitigaciones que se corresponden con estas responsabilidades deben incluirse en su modelo de amenazas. En cuanto a las mitigaciones de los controles de seguridad de los propios servicios de AWS, debe considerar la posibilidad de implementar controles de seguridad en todos los dominios, como los de administración de identidades y accesos (autenticación y autorización), protección de datos (en reposo y en tránsito), seguridad de la infraestructura, registro y supervisión. En la documentación de cada servicio de AWS, hay un [capítulo dedicado a la seguridad](https://docs.aws.amazon.com/security/) que ofrece orientación sobre los controles de seguridad que deben considerarse como mitigaciones. Y lo que es más importante, considere el código que está escribiendo y sus dependencias, y piense en los controles que podría establecer para hacer frente a esas amenazas. Estos controles podrían ser cosas como la [validación de entradas](https://cheatsheetseries.owasp.org/cheatsheets/Input_Validation_Cheat_Sheet.html), la [gestión de sesiones](https://owasp.org/www-project-mobile-top-10/2014-risks/m9-improper-session-handling) y la [gestión de límites](https://owasp.org/www-community/vulnerabilities/Buffer_Overflow). Muchas veces, la mayoría de las vulnerabilidades se introducen en el código personalizado, así que céntrese en esta área. 

1.  **¿Hemos hecho un buen trabajo?** 

    El objetivo es que su equipo y su organización mejoren con el tiempo tanto la calidad de los modelos de amenazas como la velocidad a la que los realizan. Estas mejoras se deben a una combinación de práctica, aprendizaje, enseñanza y revisión. Para profundizar y ponerse manos a la obra, es recomendable que usted y su equipo completen el curso de formación el [taller](https://catalog.workshops.aws/threatmodel/en-US) [Threat modeling the right way for builders training course](https://explore.skillbuilder.aws/learn/course/external/view/elearning/13274/threat-modeling-the-right-way-for-builders-workshop) (Modelado de amenazas de la forma adecuada para constructores). Además, si busca orientación sobre cómo integrar el modelado de amenazas en el ciclo de vida de desarrollo de aplicaciones de su organización, consulte la publicación [How to approach threat modeling](https://aws.amazon.com/blogs/security/how-to-approach-threat-modeling/) (Cómo abordar el modelado de amenazas) en el blog de seguridad de AWS. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC01-BP03 Identificar y validar objetivos de control](sec_securely_operate_control_objectives.md) 
+  [SEC01-BP04 Mantenerse al día de las amenazas de seguridad](sec_securely_operate_updated_threats.md) 
+  [SEC01-BP05 Mantenerse al día con las recomendaciones de seguridad](sec_securely_operate_updated_recommendations.md) 
+  [SEC01-BP08 Evaluar e implementar nuevos servicios y características de seguridad de forma periódica](sec_securely_operate_implement_services_features.md) 

 **Documentos relacionados:** 
+  [How to approach threat modeling](https://aws.amazon.com/blogs/security/how-to-approach-threat-modeling/) (Cómo abordar el modelado de amenazas) (Blog de seguridad de AWS) 
+ [ NIST: Guide to Data-Centric System Threat Modelling ](https://csrc.nist.gov/publications/detail/sp/800-154/draft)(Guía para el modelado de amenazas de sistemas centrados en datos)

 **Vídeos relacionados: ** 
+ [AWS Summit ANZ 2021 - How to approach threat modelling ](https://www.youtube.com/watch?v=GuhIefIGeuA) (AWS Summit ANZ 2021 - Cómo abordar el modelado de amenazas)
+ [AWS Summit ANZ 2022 - Scaling security – Optimise for fast and secure delivery ](https://www.youtube.com/watch?v=DjNPihdWHeA) (AWS Summit ANZ 2022 - Escalar la seguridad - Optimizar para una entrega rápida y segura)

 **Formación relacionada:** 
+ [ Threat modeling the right way for builders – AWS Skill Builder virtual self-paced training ](https://explore.skillbuilder.aws/learn/course/external/view/elearning/13274/threat-modeling-the-right-way-for-builders-workshop) (Modelado de amenazas de la forma correcta para constructores - Formación virtual autodidacta de AWS Skill Builder)
+ [ Threat modeling the right way for builders – AWS Workshop ](https://catalog.workshops.aws/threatmodel) (Modelado de amenazas de la forma correcta para constructores - Taller)

# SEC01-BP08 Evaluar e implementar nuevos servicios y características de seguridad de forma periódica
<a name="sec_securely_operate_implement_services_features"></a>

 Evalúe e implemente servicios y características de seguridad de AWS y socios de AWS que le permitan desarrollar la postura de seguridad de su carga de trabajo. En el blog de seguridad de AWS se destacan nuevos servicios y características de AWS, guías de implementación y directrices de seguridad generales. [Novedades de AWS](https://aws.amazon.com/new) es una forma ideal de estar al día de las nuevas características, servicios y anuncios de AWS. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Planifique revisiones periódicas: cree un calendario de actividades de revisión que incluya requisitos de cumplimiento, evaluación de nuevas características y servicios de seguridad de AWS y revisión de las noticias del sector. 
+  Descubra servicios y características de AWS: descubra las características de seguridad disponibles para los servicios que está utilizando y las características nuevas que se vayan lanzando. 
  + [ Blog de seguridad de AWS](https://aws.amazon.com/blogs/security/) 
  + [ Boletines de seguridad de AWS](https://aws.amazon.com/security/security-bulletins/)
  +  [Documentación de servicio de AWS](https://aws.amazon.com/documentation/)
+  Defina el proceso de incorporación de servicios de AWS: defina procesos para incorporar nuevos servicios de AWS. Incluya la forma en que evalúa los nuevos servicios de AWS en cuanto a su funcionalidad, así como los requisitos de conformidad de su carga de trabajo. 
+  Pruebe nuevos servicios y características: pruebe nuevos servicios y características a medida que se publiquen en un entorno que no sea de producción y que replique de forma fidedigna uno de producción. 
+  Implemente otros mecanismos de defensa: ponga en marcha mecanismos automatizados para defender su carga de trabajo, explore las opciones disponibles. 
  +  [Corrección de recursos de AWS disconformes con Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/remediation.html)

## Recursos
<a name="resources"></a>

 **Videos relacionados:** 
+  [Prácticas recomendadas de seguridad a la forma Well-Architected ](https://youtu.be/u6BCVkXkPnM)

# Identity and Access Management
<a name="a-identity-and-access-management"></a>

**Topics**
+ [SEC 2 ¿Cómo administra la autenticación para personas y máquinas?](sec-02.md)
+ [SEC 3 ¿Cómo administra la autenticación para personas y máquinas?](sec-03.md)

# SEC 2 ¿Cómo administra la autenticación para personas y máquinas?
<a name="sec-02"></a>

 Hay dos tipos de identidades que debe administrar cuando tenga que utilizar cargas de trabajo de AWS seguras. Entender el tipo de identidad que necesita para administrar y otorgar acceso ayuda a que las identidades adecuadas tengan acceso a los recursos correctos bajo las condiciones apropiadas. 

Identidades humanas: los administradores, desarrolladores, operadores y clientes finales requieren una identidad para acceder a sus aplicaciones y entornos de AWS. Estos son miembros de la organización o usuarios externos con los que colabora y que interactúan con sus recursos de AWS a través de un navegador web, una aplicación de cliente o herramientas de línea de comandos interactivas. 

Identidades de máquinas: las aplicaciones de servicio, herramientas operativas y cargas de trabajo requieren una identidad para realizar solicitudes a los servicios de AWS, por ejemplo, para leer datos. Entre estas identidades se incluyen máquinas que se ejecutan en el entorno de AWS, como, por ejemplo, instancias Amazon EC2 o funciones de AWS Lambda. También puede administrar identidades de máquinas para terceros que necesiten acceso. Además, es posible que también tenga máquinas fuera de AWS que necesiten acceso al entorno de AWS. 

**Topics**
+ [SEC02-BP01 Usar mecanismos de inicio de sesión sólidos](sec_identities_enforce_mechanisms.md)
+ [SEC02-BP02 Usar credenciales temporales](sec_identities_unique.md)
+ [SEC02-BP03 Almacenar y usar secretos de forma segura](sec_identities_secrets.md)
+ [SEC02-BP04 Recurrir a un proveedor de identidades centralizado](sec_identities_identity_provider.md)
+ [SEC02-BP05 Auditar y rotar las credenciales periódicamente](sec_identities_audit.md)
+ [SEC02-BP06 Aprovechar los grupos y atributos de usuarios](sec_identities_groups_attributes.md)

# SEC02-BP01 Usar mecanismos de inicio de sesión sólidos
<a name="sec_identities_enforce_mechanisms"></a>

Los inicios de sesión (autenticación mediante credenciales de inicio de sesión) pueden ser arriesgados si no se utilizan mecanismos como la autenticación multifactor (MFA), especialmente en situaciones en las que las credenciales de inicio de sesión se han revelado de forma inadvertida o son fáciles de adivinar. Utilice mecanismos de inicio de sesión sólidos para reducir estos riesgos. Para ello, exija que se cumplan políticas de contraseñas sólidas y se utilice MFA. 

 **Resultado deseado:** reducir los riesgos que supone el acceso involuntario a las credenciales en AWS utilizando mecanismos de inicio de sesión sólidos para los usuarios de [AWS Identity and Access Management (IAM)](https://aws.amazon.com/iam/), el [usuario raíz de la Cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) [AWS IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) (sucesor de AWS Single Sign-On) y los proveedores de identidad de terceros. Esto significa exigir que se use MFA, aplicar políticas de contraseñas sólidas y detectar comportamientos de inicio de sesión anómalos. 

 **Antipatrones usuales:** 
+  No aplicar una política de contraseñas segura para sus identidades que incluya contraseñas complejas y MFA. 
+  Compartir las mismas credenciales entre diferentes usuarios. 
+  No utilizar controles de detección de inicios de sesión sospechosos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Existen muchas formas en que las identidades humanas pueden iniciar sesión en AWS. Una práctica recomendada de AWS es confiar en un proveedor de identidades centralizado que utilice la federación (federación directa o mediante AWS IAM Identity Center) a la hora de autenticarse en AWS. En ese caso, deberá establecer un proceso de inicio de sesión seguro con su proveedor de identidades o Microsoft Active Directory. 

 Cuando abre una Cuenta de AWS por primera vez, comienza con un usuario raíz de la Cuenta de AWS. Solo debe utilizar el usuario raíz de la cuenta para configurar el acceso de sus usuarios (y para las [tareas que requieran el usuario raíz](https://docs.aws.amazon.com/accounts/latest/reference/root-user-tasks.html)). Es importante habilitar MFA para el usuario raíz de la cuenta inmediatamente después de abrir su Cuenta de AWS y proteger ese usuario utilizando la [guía de prácticas recomendadas de AWS.](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_securely_operate_aws_account.html) 

 Si crea usuarios en AWS IAM Identity Center, asegure el proceso de inicio de sesión en ese servicio. Para las identidades de consumidor, puede utilizar [Amazon Cognito user pools](https://docs.aws.amazon.com/cognito/index.html) y proteger el proceso de inicio de sesión en ese servicio, o utilizar uno de los proveedores de identidades que admiten los Amazon Cognito user pools. 

 Si utiliza usuarios de [AWS Identity and Access Management (IAM)](https://aws.amazon.com/iam/), debe asegurar el proceso de inicio de sesión mediante IAM. 

 Independientemente del método de inicio de sesión que se utilice, es fundamental aplicar una política de inicio de sesión sólida. 

 **Pasos para la implementación** 

 Estas son recomendaciones generales para un inicio de sesión sólido. Los ajustes reales que configure se deben establecer en la política de la empresa o se debe utilizar un estándar como [NIST 800-63](https://pages.nist.gov/800-63-3/sp800-63b.html). 
+  Exija el uso de MFA. Es una práctica recomendada de [IAM exigir que se utilice MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#enable-mfa-for-privileged-users) para identidades y cargas de trabajo humanas. Si se habilita MFA, habrá una capa adicional de seguridad que requiere que los usuarios proporcionen credenciales de inicio de sesión y una contraseña de un solo uso (OTP) o una cadena que se verifica criptográficamente y se genera desde un dispositivo físico. 
+  Imponga una longitud mínima para la contraseña. Esto es un factor fundamental para la seguridad de la contraseña. 
+  Imponga una complejidad de las contraseñas para que sean más difíciles de adivinar. 
+  Permita que los usuarios cambien sus propias contraseñas. 
+  Cree identidades individuales en lugar de credenciales compartidas. Si crea identidades individuales, puede dar a cada usuario un conjunto único de credenciales de seguridad. Tener usuarios individuales permite auditar la actividad de cada uno de ellos. 

 Recomendaciones sobre IAM Identity Center 
+  IAM Identity Center proporciona una [política de contraseñas](https://docs.aws.amazon.com/singlesignon/latest/userguide/password-requirements.html) predefinida cuando se utiliza el directorio predeterminado que establece los requisitos de longitud, complejidad y reutilización de las contraseñas. 
+  [Habilite MFA](https://docs.aws.amazon.com/singlesignon/latest/userguide/mfa-enable-how-to.html) y configure el ajuste contextual o continuo para MFA cuando la fuente de identidad sea el directorio predeterminado, AWS Managed Microsoft AD o AD Connector. 
+  Permita que los usuarios [registren sus propios dispositivos MFA](https://docs.aws.amazon.com/singlesignon/latest/userguide/how-to-allow-user-registration.html). 

 Recomendaciones sobre el directorio de Amazon Cognito user pools: 
+  Configure los ajustes de [seguridad de la contraseña](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-policies.html). 
+  [Exija el uso de MFA](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-mfa.html) a los usuarios. 
+  Utilice la [configuración de seguridad avanzada de Amazon Cognito user pools](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html) para funciones como la [autenticación adaptativa](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-adaptive-authentication.html), que puede bloquear inicios de sesión sospechosos. 

 Recomendaciones de usuarios de IAM 
+  Lo ideal es que utilice IAM Identity Center o la federación directa. Sin embargo, es posible que necesite usuarios de IAM. En ese caso, [establezca una política de contraseñas](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html) para los usuarios de IAM. Puede usar una política de contraseñas para definir requisitos, tales como la longitud mínima o si deben contener caracteres alfanuméricos. 
+  Cree una política de IAM para [imponer el inicio de sesión MFA](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_users-self-manage-mfa-and-creds.html#tutorial_mfa_step1) de modo que los usuarios puedan administrar sus propias contraseñas y dispositivos MFA. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC02-BP03 Almacenar y usar secretos de forma segura](sec_identities_secrets.md) 
+  [SEC02-BP04 Recurrir a un proveedor de identidades centralizado](sec_identities_identity_provider.md) 
+  [SEC03-BP08 Compartir recursos de forma segura en su organización](sec_permissions_share_securely.md) 

 **Documentos relacionados:** 
+ [ Política de contraseñas de AWS IAM Identity Center (sucesor de AWS Single Sign-On)](https://docs.aws.amazon.com/singlesignon/latest/userguide/password-requirements.html)
+ [ Política de contraseñas de usuarios de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html)
+ [ Configuración de la contraseña del usuario raíz de la Cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html)
+ [ Política de contraseñas de Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-policies.html)
+ [Credenciales de AWS](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html)
+ [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)

 **Vídeos relacionados: ** 
+  [Managing user permissions at scale with AWS IAM Identity Center](https://youtu.be/aEIqeFCcK7E) (Administración de permisos de usuario a escala con AWS SSO) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) (Dominar la identidad en cada capa del pastel) 

# SEC02-BP02 Usar credenciales temporales
<a name="sec_identities_unique"></a>

 Al realizar cualquier tipo de autenticación, es mejor utilizar credenciales temporales en lugar de credenciales de larga duración para reducir o eliminar riesgos, tales como que las credenciales se divulguen, compartan o roben de forma inadvertida. 

**Resultado deseado**: para reducir el riesgo que implican las credenciales de larga duración, utilice credenciales temporales siempre que sea posible tanto para las identidades humanas como para las de las máquinas. Las credenciales de larga duración entrañan muchos riesgos; por ejemplo, pueden subirse en el código en repositorios públicos de GitHub. Al utilizar credenciales temporales, reducirá enormemente las posibilidades de que las credenciales se vean comprometidas. 

**Antipatrones usuales:**
+  Desarrolladores que utilizan claves de acceso de larga duración de IAM users en lugar de obtener credenciales temporales de la CLI mediante federación. 
+  Desarrolladores que incrustan claves de acceso de larga duración en su código y suben ese código a repositorios de Git públicos. 
+  Desarrolladores que incrustan claves de acceso de larga duración en aplicaciones móviles que luego se ponen a disposición de todo el mundo en las tiendas de aplicaciones. 
+  Usuarios que comparten claves de acceso de larga duración con otros usuarios, o empleados que abandonan la empresa con claves de acceso de larga duración aún en su poder. 
+  Utilizar claves de acceso de larga duración para identidades de máquinas cuando podrían utilizarse credenciales temporales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Utilice credenciales de seguridad temporales en lugar de credenciales de larga duración para todas las solicitudes de la API y la CLI de AWS. Las solicitudes de la API y la CLI a los servicios de AWS deben, en prácticamente todos los casos, firmarse utilizando [claves de acceso de AWS](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_access-keys.html). Estas solicitudes pueden firmarse con credenciales temporales o de larga duración. El único caso en que debe utilizar credenciales de larga duración, que también se conocen como claves de acceso de larga duración, es cuando utiliza un [usuario de IAM o el ](https://docs.aws.amazon.com//latest/UserGuide/id_users.html)[usuario raíz de la Cuenta de AWS](https://docs.aws.amazon.com//latest/UserGuide/id_root-user.html). Si se federa a AWS o asume un [rol de IAM](https://docs.aws.amazon.com//latest/UserGuide/id_roles.html) a través de otros métodos, se generan credenciales temporales. Incluso cuando accede a la Consola de administración de AWS utilizando credenciales de inicio de sesión, se generan credenciales temporales para que pueda realizar llamadas a los servicios de AWS. Hay pocas situaciones en las que necesite credenciales de larga duración y casi todas las tareas se pueden realizar utilizando credenciales temporales. 

 Evitar el uso de credenciales de larga duración en favor de credenciales temporales debería acompañarse de una estrategia de reducción del uso de usuarios de IAM en favor de la federación y los roles de IAM. Aunque en el pasado se han utilizado usuarios de IAM tanto para identidades humanas como de máquinas, ahora recomendamos no utilizarlos para evitar los riesgos que conlleva el uso de claves de acceso de larga duración. 

### Pasos para la implementación
<a name="implementation-steps"></a>

 Para identidades humanas, como las de empleados, administradores, desarrolladores, operadores y clientes: 
+  Debe [recurrir a un proveedor de identidades centralizado](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_identities_identity_provider.html) y [exigir a los usuarios humanos que utilicen la federación con un proveedor de identidades para acceder a AWS utilizando credenciales temporales](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html#bp-users-federation-idp). La federación para sus usuarios puede realizarse con [federación directa a cada Cuenta de AWS](https://aws.amazon.com/identity/federation/) o mediante [AWSIAM Identity Center (sucesor de AWS IAM Identity Center)](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html) y el proveedor de identidades de su elección. La federación tiene una serie de ventajas con respecto a los usuarios de IAM, además de eliminar las credenciales de larga duración. Sus usuarios también pueden solicitar credenciales temporales desde la línea de comandos para la [federación directa](https://aws.amazon.com/blogs/security/how-to-implement-federated-api-and-cli-access-using-saml-2-0-and-ad-fs/) o mediante [IAM Identity Center](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html). Esto significa que hay pocos casos de uso que requieran usuarios de IAM o credenciales de larga duración para sus usuarios.  
+  Cuando conceda a terceros (por ejemplo, proveedores de software como servicio [SaaS]), acceso a los recursos de su Cuenta de AWS, puede utilizar [roles entre cuentas](https://docs.aws.amazon.com//latest/UserGuide/tutorial_cross-account-with-roles.html) y [políticas basadas en recursos](https://docs.aws.amazon.com//latest/UserGuide/access_policies_identity-vs-resource.html). 
+  Si necesita conceder acceso a sus recursos de AWS a aplicaciones para consumidores o clientes, puede utilizar [grupos de identidades de Amazon Cognito](https://docs.aws.amazon.com/cognito/latest/developerguide/identity-pools.html) o [grupos de usuarios de Amazon Cognito user pools](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html) para proporcionar credenciales temporales. Los permisos para las credenciales se configuran a través de roles de IAM También puede definir un rol de IAM separado con permisos limitados para los usuarios invitados que no se hayan autenticado. 

 En el caso de las identidades de máquina, puede que necesite utilizar credenciales de larga duración. En estos casos, debe [exigir que las cargas de trabajo utilicen credenciales temporales con roles de IAM para acceder a AWS](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html#bp-workloads-use-roles). 
+  Para [Amazon Elastic Compute Cloud](https://aws.amazon.com/pm/ec2/) (Amazon EC2), puede utilizar [roles para Amazon EC2](https://docs.aws.amazon.com//latest/UserGuide/id_roles_use_switch-role-ec2.html). 
+  [AWS Lambda](https://aws.amazon.com/lambda/) le permite configurar un [rol de ejecución de Lambda para conceder al servicio permisos](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) para realizar acciones de AWS utilizando credenciales temporales. Existen muchos otros modelos similares para que los servicios de AWS concedan credenciales temporales utilizando roles de IAM. 
+  Para los dispositivos IoT, puede utilizar el [proveedor de credenciales de AWS IoT Core](https://docs.aws.amazon.com/iot/latest/developerguide/authorizing-direct-aws.html) para solicitar credenciales temporales. 
+  Para sistemas locales o sistemas que se ejecutan fuera de AWS que necesitan acceso a los recursos de AWS, puede utilizar [Funciones de IAM en cualquier lugar](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html). 

 Hay escenarios en los que las credenciales temporales no son una opción y puede que necesite utilizar credenciales de larga duración. En estas situaciones, [audite y rote las credenciales periódicamente](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_identities_audit.html) y [rote las claves de acceso con regularidad para los casos de uso que requieran credenciales de larga duración](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html#rotate-credentials). Algunos ejemplos que podrían requerir credenciales de larga duración son los plugins de WordPress y los clientes de AWS de terceros. En situaciones en las que deba utilizar credenciales de larga duración, o para credenciales que no sean claves de acceso de AWS, como inicios de sesión en bases de datos, puede utilizar un servicio diseñado para administrar secretos, como [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/). Secrets Manager simplifica la administración, la rotación y el almacenamiento seguro de secretos cifrados mediante [servicios compatibles](https://docs.aws.amazon.com/secretsmanager/latest/userguide/integrating.html). Si desea obtener más información sobre la rotación de las credenciales de larga duración, consulte [Rotación de las claves de acceso](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_access-keys.html#Using_RotateAccessKey). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [SEC02-BP03 Almacenar y usar secretos de forma segura](sec_identities_secrets.md) 
+ [SEC02-BP04 Recurrir a un proveedor de identidades centralizado](sec_identities_identity_provider.md) 
+ [SEC03-BP08 Compartir recursos de forma segura en su organización](sec_permissions_share_securely.md) 

 **Documentos relacionados:** 
+  [Credenciales de seguridad temporales](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_temp.html) 
+  [Credenciales de AWS](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html) 
+  [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html) 
+  [Roles de IAM](https://docs.aws.amazon.com//latest/UserGuide/id_roles.html) 
+  [IAM Identity Center](https://aws.amazon.com/iam/identity-center/) 
+  [Federación y proveedores de identidades](https://docs.aws.amazon.com//latest/UserGuide/id_roles_providers.html) 
+  [Rotación de las claves de acceso](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_access-keys.html#Using_RotateAccessKey) 
+  [Soluciones de socios con competencia en seguridad: acceso y control de acceso](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [Cuenta de AWS usuario raíz](https://docs.aws.amazon.com//latest/UserGuide/id_root-user.html) 

 **Vídeos relacionados: ** 
+  [Managing user permissions at scale with AWSIAM Identity Center (successor to AWS IAM Identity Center)](https://youtu.be/aEIqeFCcK7E) (Administración de permisos de usuario a escala con AWS SSO [sucesor de AWS Single Sign-On]) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) (Dominar la identidad en cada capa del pastel) 

# SEC02-BP03 Almacenar y usar secretos de forma segura
<a name="sec_identities_secrets"></a>

 Una carga de trabajo necesita una capacidad automatizada para demostrar su identidad a bases de datos, recursos y servicios de terceros. Para ello, se utilizan credenciales de acceso secretas, como claves de acceso a API, contraseñas y tokens OAuth. El uso de un servicio creado específicamente para almacenar, administrar y rotar estas credenciales ayuda a reducir la probabilidad de que dichas credenciales se vean comprometidas. 

**Resultado deseado**: implementar un mecanismo para administrar de forma segura las credenciales de las aplicaciones que logre los siguientes objetivos: 
+  Identificar qué secretos son necesarios para la carga de trabajo. 
+  Reducir el número de credenciales de larga duración necesarias y sustituirlas por credenciales de corta duración cuando sea posible. 
+  Establecer un almacenamiento seguro y una rotación automatizada de las credenciales restantes de larga duración. 
+  Auditar el acceso a los secretos que existen en la carga de trabajo. 
+  Supervisar de forma continua para verificar que no hay secretos incrustados en el código fuente durante el proceso de desarrollo. 
+  Reducir la probabilidad de que las credenciales se divulguen de forma inadvertida. 

**Antipatrones usuales:**
+  Credenciales no rotativas. 
+  Almacenar credenciales a largo plazo en el código fuente o en archivos de configuración. 
+  Almacenar credenciales en reposo sin cifrar. 

 **Beneficios de establecer esta práctica recomendada:**
+  Los secretos se almacenan cifrados en reposo y en tránsito. 
+  El acceso a las credenciales se controla a través de una API (es algo parecido a una *máquina expendedora de credenciales*). 
+  El acceso a una credencial (tanto de lectura como de escritura) se audita y registra. 
+  Separación de preocupaciones: la rotación de credenciales la realiza un componente independiente, que puede separarse del resto de la arquitectura. 
+  Los secretos se distribuyen automáticamente bajo demanda a los componentes de software y la rotación se produce en una ubicación central. 
+  El acceso a las credenciales puede controlarse de forma detallada. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 En el pasado, las credenciales que se utilizaban para autenticarse en bases de datos, API de terceros, tokens y otros secretos podían estar incrustadas en el código fuente o en archivos del entorno. AWS proporciona varios mecanismos para almacenar estas credenciales de forma segura, rotarlas automáticamente y auditar su uso. 

 La mejor manera de abordar la administración de secretos es seguir la norma de eliminar, sustituir y rotar. La credencial más segura es aquella que no se tiene que almacenar, administrar ni manejar. Es posible que haya credenciales que ya no sean necesarias para el funcionamiento de la carga de trabajo y que, por tanto, puedan eliminarse de forma segura. 

 En el caso de las credenciales que siguen siendo necesarias para el correcto funcionamiento de la carga de trabajo, podría existir la oportunidad de sustituir una credencial de larga duración por una credencial temporal o de corta duración. Por ejemplo, en lugar de codificar una clave de acceso secreta de AWS, considere la posibilidad de sustituir esa credencial de larga duración por una credencial temporal utilizando roles de IAM. 

 Es posible que algunos secretos de larga duración no puedan eliminarse ni sustituirse. Estos secretos pueden almacenarse en un servicio como [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html), donde pueden almacenarse, administrarse y rotarse de forma centralizada y periódica. 

 Una auditoría del código fuente y de los archivos de configuración de la carga de trabajo puede revelar muchos tipos de credenciales. La siguiente tabla resume las estrategias para manejar los tipos comunes de credenciales: 


|  Credential type  |  Description  |  Suggested strategy  | 
| --- | --- | --- | 
|  IAM access keys  |  AWS IAM access and secret keys used to assume IAM roles inside of a workload  |  Replace: Use [Roles de IAM](https://docs.aws.amazon.com//latest/UserGuide/id_roles_common-scenarios.html) assigned to the compute instances (such as [Amazon EC2](https://docs.aws.amazon.com//latest/UserGuide/id_roles_use_switch-role-ec2.html) or [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html)) instead. For interoperability with third parties that require access to resources in your Cuenta de AWS, ask if they support [Acceso entre cuentas de AWS](https://docs.aws.amazon.com//latest/UserGuide/id_roles_common-scenarios_third-party.html). For mobile apps, consider using temporary credentials through [Grupos de identidades de Amazon Cognito (identidades federadas)](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html). For workloads running outside of AWS, consider [Funciones de IAM en cualquier lugar](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html) or [Activaciones híbridas de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/activations.html).  | 
|  SSH keys  |  Secure Shell private keys used to log into Linux EC2 instances, manually or as part of an automated process  |  Replace: Use [AWS Systems Manager](https://aws.amazon.com/blogs/mt/vr-beneficios-session-manager/) or [EC2 Instance Connect](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Connect-using-EC2-Instance-Connect.html) to provide programmatic and human access to EC2 instances using IAM roles.  | 
|  Application and database credentials  |  Passwords – plain text string  |  Rotate: Store credentials in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) and establish automated rotation if possible.  | 
|  Amazon RDS and Aurora Admin Database credentials  |  Passwords – plain text string  |  Replace: Use the [Integración de Secrets Manager con Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html) or [Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-secrets-manager.html). In addition, some RDS database types can use IAM roles instead of passwords for some use cases (for more detail, see [Autenticación de bases de datos de IAM](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.DBAuth.html)).  | 
|  OAuth tokens  |  Secret tokens – plain text string  |  Rotate: Store tokens in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) and configure automated rotation.  | 
|  API tokens and keys  |  Secret tokens – plain text string  |  Rotate: Store in [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) and establish automated rotation if possible.  | 

 Un antipatrón común es incrustar claves de acceso de IAM dentro del código fuente, los archivos de configuración o las aplicaciones móviles. Cuando se requiera una clave de acceso de IAM para comunicarse con un servicio de AWS, utilice [credenciales de seguridad temporales (a corto plazo)](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_temp.html). Estas credenciales a corto plazo pueden proporcionarse a través de [roles de IAM para instancias de EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html), [roles de ejecución](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html) para funciones Lambda, [roles de IAM de Cognito para el acceso de usuarios móviles y ](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html)políticas de IoT Core[ para dispositivos IoT](https://docs.aws.amazon.com/iot/latest/developerguide/iot-policies.html). Cuando interactúe con terceros, es preferible que [delegue el acceso a un rol de IAM](https://docs.aws.amazon.com//latest/UserGuide/id_roles_common-scenarios_third-party.html) con el acceso necesario a los recursos de su cuenta en lugar de configurar un usuario de IAM y enviar a ese tercero la clave de acceso secreta para ese usuario. 

 Hay muchos casos en los que la carga de trabajo requiere que se almacenen los secretos necesarios para interoperar con otros servicios y recursos. [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) se ha creado específicamente para administrar de forma segura estas credenciales, así como el almacenamiento, el uso y la rotación de tokens de API, contraseñas y otras credenciales. 

 AWS Secrets Manager proporciona cinco capacidades clave para garantizar el almacenamiento y la gestión seguros de credenciales confidenciales: [cifrado en reposo](https://docs.aws.amazon.com/secretsmanager/latest/userguide/security-encryption.html), [cifrado en tránsito](https://docs.aws.amazon.com/secretsmanager/latest/userguide/data-protection.html), [auditoría exhaustiva](https://docs.aws.amazon.com/secretsmanager/latest/userguide/monitoring.html), [control de acceso detallado](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access.html) y [rotación de credenciales extensible](https://docs.aws.amazon.com/secretsmanager/latest/userguide/rotating-secrets.html). También son aceptables otros servicios de administración de secretos de socios de AWS o soluciones desarrolladas localmente que proporcionen capacidades y garantías similares. 

### Pasos para la implementación
<a name="implementation-steps"></a>

1.  Identifique rutas de código que contengan credenciales codificadas mediante herramientas automatizadas como [Amazon CodeGuru](https://aws.amazon.com/codeguru/features/). 
   +  Utilice Amazon CodeGuru para analizar sus repositorios de código. Una vez finalizada la revisión, filtre `Type=Secrets` en CodeGuru para encontrar las líneas de código problemáticas. 

1.  Identifique las credenciales que pueden eliminarse o sustituirse. 

   1.  Identifique las credenciales que ya no sean necesarias y márquelas para eliminarlas. 

   1.  En el caso de las claves secretas de AWS que estén incrustadas en el código fuente, sustitúyalas por roles de IAM asociados a los recursos necesarios. Si parte de su carga de trabajo está fuera de AWS pero requiere credenciales de IAM para acceder a recursos de AWS, considere la posibilidad de usar [Funciones de IAM en cualquier lugar](https://aws.amazon.com/blogs/security/extend-aws-iam-roles-to-workloads-outside-of-aws-with-iam-roles-anywhere/) o [activaciones híbridas de AWSSystems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/activations.html). 

1.  Para otros secretos de terceros de larga duración que requieran el uso de la estrategia de rotación, integre Secrets Manager en su código para recuperar secretos de terceros en tiempo de ejecución. 

   1.  La consola CodeGuru puede [crear automáticamente un secreto en Secrets Manager](https://aws.amazon.com/blogs/aws/codeguru-reviewer-secrets-detector-identify-hardcoded-secrets/) utilizando las credenciales descubiertas. 

   1.  Integre la recuperación de secretos desde Secrets Manager en el código de su aplicación. 
      +  Las funciones Lambda sin servidor pueden utilizar una [extensión de Lambda agnóstica del lenguaje](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets_lambda.html). 
      +  Para instancias o contenedores EC2, AWS proporciona ejemplos de [código del lado del cliente para recuperar secretos de Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/retrieving-secrets.html) en varios lenguajes de programación populares. 

1.  Revise periódicamente su base de código y vuelva a analizarlo para verificar que no se hayan añadido nuevos secretos. 
   +  Considere la posibilidad de utilizar una herramienta como [git-secrets](https://github.com/awslabs/git-secrets) para evitar que se envíen nuevos secretos a su repositorio de código fuente. 

1.  [Supervise la actividad de Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/monitoring.html) en busca de indicios de un uso inesperado, un acceso inapropiado a secretos o intentos de eliminar secretos. 

1.  Reduzca la exposición humana a las credenciales. Restrinja el acceso para leer, escribir y modificar credenciales a un rol de IAM dedicado a este fin, y solo proporcione acceso para asumir el rol a un pequeño subconjunto de usuarios operativos. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [SEC02-BP02 Usar credenciales temporales](sec_identities_unique.md)
+ [SEC02-BP05 Auditar y rotar las credenciales periódicamente](sec_identities_audit.md)

 **Documentos relacionados:** 
+  [Introducción a AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [Federación y proveedores de identidades](https://docs.aws.amazon.com//latest/UserGuide/id_roles_providers.html) 
+  [Amazon CodeGuru Introduces Secrets Detector](https://aws.amazon.com/blogs/aws/codeguru-reviewer-secrets-detector-identify-hardcoded-secrets/) (El revisor de Amazon CodeGuru presenta el detector de secretos) 
+  [Cómo AWS Secrets Manager usa AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/services-secrets-manager.html) 
+  [Cifrado y descifrado de secretos en Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/security-encryption.html) 
+  [Entradas del blog de Secrets Manager](https://aws.amazon.com/blogs/security/tag/aws-secrets-manager/) 
+  [Amazon RDS presenta la integración con AWS Secrets Manager](https://aws.amazon.com/about-aws/whats-new/2022/12/amazon-rds-integration-aws-secrets-manager/) 

 **Vídeos relacionados: ** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale](https://youtu.be/qoxxRlwJKZ4) (Prácticas recomendadas para administrar, recuperar y rotar secretos a escala) 
+  [Find Hard-Coded Secrets Using Amazon CodeGuru Secrets Detector](https://www.youtube.com/watch?v=ryK3PN--oJs) (Encuentre secretos difíciles de descifrar utilizando el detector de secretos de Amazon CodeGuru) 
+  [Securing Secrets for Hybrid Workloads Using AWS Secrets Manager](https://www.youtube.com/watch?v=k1YWhogGVF8) (Asegurar secretos para cargas de trabajo híbridas utilizando AWS Secrets Manager) 

 **Talleres relacionados:** 
+  [Almacene, recupere y administre credenciales confidenciales en AWS Secrets Manager](https://catalog.us-east-1.prod.workshops.aws/workshops/497b4908-169f-4e6f-b80d-ef10be3038d3/en-US) 
+  [ Activaciones híbridas de AWS Systems Manager](https://mng.workshop.aws/ssm/capability_hands-on_labs/hybridactivations.html) 

# SEC02-BP04 Recurrir a un proveedor de identidades centralizado
<a name="sec_identities_identity_provider"></a>

 Para las identidades del personal, recurra a un proveedor de identidades que le permita administrar las identidades en un lugar centralizado. Esto facilita la administración del acceso a varias aplicaciones y servicios, ya que crea, administra y revoca el acceso desde una única ubicación. Por ejemplo, si alguien se va de su organización, puede revocarle el acceso a todas las aplicaciones y servicios (incluido AWS) desde una ubicación. Esto reduce la necesidad de tener múltiples credenciales y proporciona una oportunidad para integrarse con los procesos de recursos humanos (RR. HH.) existentes. 

Para la federación con cuentas de AWS individuales, puede usar identidades centralizadas para AWS con un proveedor basado en SAML 2.0 con AWS Identity and Access Management. Puede utilizar cualquier proveedor, ya sea alojado por usted en AWS, externo a AWS o suministrado por la AWS Partner, que sea compatible con el protocolo [SAML 2.0](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html) . Puede usar la federación entre su cuenta de AWS y un proveedor de su elección para conceder a un usuario o una aplicación acceso a las operaciones de llamada a la API de AWS utilizando una aserción SAML para obtener credenciales de seguridad temporales. El inicio de sesión único basado en web también es compatible y permite a los usuarios iniciar sesión en la Consola de administración de AWS desde el sitio web de inicio de sesión.

Para la federación en múltiples cuentas en su AWS Organizations, puede configurar su origen de identidad en [AWS IAM Identity Center (IAM Identity Center)](http://aws.amazon.com/single-sign-on/), y especificar dónde se almacenan sus usuarios y grupos. Una vez configurado, su proveedor de identidades es su fuente de verdad, y la información se puede [sincronizar](https://docs.aws.amazon.com/singlesignon/latest/userguide/provision-automatically.html) utilizando el protocolo del sistema para administración de identidades entre dominios (SCIM) v2.0. A continuación puede buscar usuarios o grupos y concederles acceso IAM Identity Center a las cuentas de AWS, aplicaciones en la nube o ambas.

IAM Identity Center se integra con AWS Organizations, lo que le permite configurar su proveedor de identidades una vez y después [conceder acceso a las cuentas nuevas y existentes](https://docs.aws.amazon.com/singlesignon/latest/userguide/useraccess.html) que se administran en su organización. IAM Identity Center le proporciona un almacén predeterminado que puede utilizar para administrar sus usuarios y grupos. Si decide usar el almacén de IAM Identity Center, cree sus usuarios y grupos y asígneles su nivel de acceso a sus cuentas y aplicaciones de AWS, teniendo siempre en mente la práctica recomendada de conceder un privilegio mínimo. Como alternativa, puede decidir [conectarse a su proveedor de identidades externo ](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-idp.html)con SAML 2.0, o [conectarse a su directorio de Microsoft AD](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-ad.html) con AWS Directory Service. Tras la configuración, puede iniciar sesión en la Consola de administración de AWS o la aplicación móvil de AWS autenticándose en su proveedor de identidades central.

Para administrar a los usuarios finales o consumidores de sus cargas de trabajo, como una aplicación móvil, puede usar [Amazon Cognito](http://aws.amazon.com/cognito/). Proporciona autenticación, autorización y administración de usuarios para sus aplicaciones móviles y web. Sus usuarios pueden iniciar sesión directamente con un nombre de usuario y una contraseña, o a través de un tercero, como Amazon, Apple, Facebook o Google.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Centralice el acceso administrativo: cree una entidad proveedora de identidades en Identity and Access Management (IAM) para establecer una relación de confianza entre su Cuenta de AWS y su proveedor de identidades (IdP). IAM admite IdP compatibles con OpenID Connect (OIDC) o SAML 2.0 (Lenguaje de Marcado para Confirmaciones de Seguridad 2.0). 
  +  [Proveedores de identidades y federación](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  Centralice el acceso a aplicaciones: plantéese usar Amazon Cognito para centralizar el acceso a aplicaciones. Le permite incorporar control de acceso e inscripción e inicio de sesión de usuarios a su sitio web y aplicaciones para dispositivos móviles de manera rápida y sencilla. [Amazon Cognito](https://aws.amazon.com/cognito/) se amplía a millones de usuarios y admite el inicio de sesión con proveedores de identidades sociales, como Facebook, Google y Amazon, y proveedores de identidades empresariales a través de SAML 2.0. 
+  Elimine a los antiguos usuarios y grupos de IAM: tras empezar a utilizar un proveedor de identidades (IdP), elimine usuarios y grupos de IAM que ya no sean necesarios. 
  +  [Búsqueda de credenciales no utilizadas](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_finding-unused.html) 
  +  [Eliminación de un grupo de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_groups_manage_delete.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Prácticas recomendadas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [Soluciones de socios de seguridad: acceso y control de acceso](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [Credenciales de seguridad temporales](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) 
+  [Usuario raíz de una cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) 

 **Vídeos relacionados:** 
+  [Prácticas recomendadas para administrar, recuperar y rotar secretos a escala](https://youtu.be/qoxxRlwJKZ4) 
+  [Administración de permisos de usuarios a escala con AWS IAM Identity Center](https://youtu.be/aEIqeFCcK7E) 
+  [Dominar la identidad en cada piso del pastel](https://www.youtube.com/watch?v=vbjFjMNVEpc) 

# SEC02-BP05 Auditar y rotar las credenciales periódicamente
<a name="sec_identities_audit"></a>

Audite y rote las credenciales periódicamente para limitar el tiempo que pueden utilizarse para acceder a sus recursos. Las credenciales de larga duración entrañan muchos riesgos, y estos riesgos pueden reducirse rotándolas regularmente.

 **Resultado deseado:** implementar la rotación de credenciales para ayudar a reducir los riesgos asociados al uso de credenciales de larga duración. Auditar regularmente y corregir la no conformidad con las políticas de rotación de credenciales. 

 **Antipatrones usuales:** 
+  No auditar el uso de credenciales. 
+  Utilizar credenciales de larga duración de forma innecesaria. 
+  Utilizar credenciales de larga duración y no rotarlas regularmente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Cuando no pueda confiar en credenciales temporales y necesite credenciales de larga duración, audítelas para verificar que los controles definidos, por ejemplo, la autenticación multifactor (MFA), se aplican, se rotan periódicamente y tienen el nivel de acceso adecuado. 

 Es necesario realizar una validación periódica, preferiblemente mediante una herramienta automatizada, para verificar que se están aplicando los controles correctos. En el caso de las identidades humanas, debe exigir a los usuarios que cambien sus contraseñas periódicamente y retirar las claves de acceso para sustituirlas por credenciales temporales. Si pasa de usuarios de AWS Identity and Access Management (IAM) a identidades centralizadas, puede generar un [informe de credenciales](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html) para auditar a sus usuarios. 

 También recomendamos que aplique y supervise una configuración de MFA en su proveedor de identidades. Puede configurar [Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) o utilizar los estándares de seguridad de [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp-controls.html#fsbp-iam-3) para supervisar si los usuarios tienen habilitado MFA. Considere la posibilidad de utilizar Funciones de IAM en cualquier lugar para proporcionar credenciales temporales para identidades de máquinas. En situaciones en las que no sea posible utilizar roles de IAM y credenciales temporales, es necesario realizar auditorías frecuentes y rotar las claves de acceso. 

 **Pasos para la implementación** 
+  **Audite las credenciales periódicamente:** auditar las identidades que están configuradas en el proveedor de identidades e IAM le permite asegurarse de que las únicas identidades que pueden acceder a su carga de trabajo son aquellas que estén autorizadas. Dichas identidades pueden incluir, entre otras, usuarios de IAM, usuarios de AWS IAM Identity Center, usuarios de Active Directory o usuarios de un proveedor de identidades ascendente diferente. Por ejemplo, elimine a las personas que abandonen la organización y los roles entre cuentas que ya no sean necesarios. Implante un proceso para auditar periódicamente los permisos a los servicios a los que accede una entidad de IAM. Esto le ayudará a identificar las políticas que debe modificar para eliminar los permisos que no se utilizan. Utilice informes de credenciales y [AWS Identity and Access Management Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) para auditar las credenciales y los permisos de IAM. Puede utilizar [Amazon CloudWatch para configurar alarmas para llamadas a la API específicas](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html) que se realicen dentro de su entorno de AWS. [Amazon GuardDuty también puede alertarle de actividades inesperadas](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-iam.html), que podrían indicar que el acceso es demasiado permisivo o que se ha producido un acceso no intencionado a las credenciales de IAM. 
+  **Rote las credenciales periódicamente:** cuando no pueda utilizar credenciales temporales, rote las claves de acceso de larga duración de IAM de forma periódica (cada 90 días como máximo). Si se revela una clave de acceso de forma involuntaria sin su conocimiento, esto limita el tiempo durante el que se pueden utilizar las credenciales para acceder a sus recursos. Si desea obtener más información sobre la rotación de las claves de acceso para los usuarios de IAM, consulte [Rotación de las claves de acceso](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_RotateAccessKey). 
+  **Revise los permisos de IAM:** para mejorar la seguridad de su Cuenta de AWS, revise y supervise de forma regular cada una de sus políticas de IAM. Verifique que las políticas sigan el principio del privilegio mínimo. 
+  **Considere la posibilidad de automatizar la creación y actualización de recursos de IAM:** IAM Identity Center automatiza muchas tareas de IAM, como la administración de roles y políticas. Como alternativa, se puede utilizar AWS CloudFormation para automatizar el despliegue de los recursos de IAM, incluidos los roles y las políticas, para reducir la posibilidad de que se produzcan errores humanos, ya que las plantillas se pueden verificar y controlar por versiones. 
+  **Utilice Funciones de IAM en cualquier lugar para sustituir a los usuarios de IAM en las identidades de máquina:** Funciones de IAM en cualquier lugar le permite utilizar roles en áreas en las que tradicionalmente no podía, como los servidores locales. Funciones de IAM en cualquier lugar utiliza un certificado X.509 de confianza para autenticarse en AWS y recibir credenciales temporales. El uso de Funciones de IAM en cualquier lugar evita la necesidad de rotar estas credenciales, ya que las credenciales de larga duración ya no se almacenan en su entorno local. Tenga en cuenta que deberá supervisar y rotar el certificado X.509 a medida que se acerque su fecha de vencimiento. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC02-BP02 Usar credenciales temporales](sec_identities_unique.md) 
+  [SEC02-BP03 Almacenar y usar secretos de forma segura](sec_identities_secrets.md) 

 **Documentos relacionados:** 
+  [Introducción a AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html) 
+  [Federación y proveedores de identidades](https://docs.aws.amazon.com//latest/UserGuide/id_roles_providers.html) 
+  [Soluciones de socios con competencia en seguridad: acceso y control de acceso](https://aws.amazon.com/security/partner-solutions/#access-control) 
+  [Credenciales de seguridad temporales](https://docs.aws.amazon.com//latest/UserGuide/id_credentials_temp.html) 
+ [ Obtener informes de credenciales para su Cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html)

 **Vídeos relacionados: ** 
+  [Best Practices for Managing, Retrieving, and Rotating Secrets at Scale](https://youtu.be/qoxxRlwJKZ4) (Prácticas recomendadas para administrar, recuperar y rotar secretos a escala) 
+  [Managing user permissions at scale with AWS IAM Identity Center](https://youtu.be/aEIqeFCcK7E) (Administración de permisos de usuario a escala con AWS SSO) 
+  [Mastering identity at every layer of the cake](https://www.youtube.com/watch?v=vbjFjMNVEpc) (Dominar la identidad en cada capa del pastel) 

 **Ejemplos relacionados:** 
+ [ Well-Architected Lab - Automated IAM User Cleanup ](https://wellarchitectedlabs.com/security/200_labs/200_automated_iam_user_cleanup/) (Laboratorio de AWS Well-Architected: Limpieza automatizada de usuarios de IAM)
+ [ Well-Architected Lab - Automated Deployment of IAM Groups and Roles ](https://wellarchitectedlabs.com/security/200_labs/200_automated_deployment_of_iam_groups_and_roles/) (Laboratorio de AWS Well-Architected: Despliegue automatizado de grupos y roles de IAM)

# SEC02-BP06 Aprovechar los grupos y atributos de usuarios
<a name="sec_identities_groups_attributes"></a>

 A medida que crezca el número de usuarios que administra, tendrá que determinar formas de organizarlos para que pueda administrarlos a escala. Coloque a usuarios con requisitos de seguridad comunes en grupos definidos por su proveedor de identidades, y prepare mecanismos para garantizar que los atributos de usuarios que puedan usarse para controlar el acceso (por ejemplo, los de departamento o ubicación) sean correctos y estén actualizados. Use estos grupos y atributos para controlar el acceso, en lugar de usuarios individuales. Esto le permitirá administrar el acceso de forma centralizada cambiando la pertenencia a un grupo de un usuario o sus atributos una vez con un [conjunto de permisos](https://docs.aws.amazon.com/singlesignon/latest/userguide/permissionsets.html), en lugar de actualizar muchas políticas individuales cuando el acceso de un usuario tenga que cambiarse. Puede usar AWS IAM Identity Center (IAM Identity Center) para administrar grupos y atributos de usuarios. IAM Identity Center admite los atributos de usuarios utilizados más habitualmente, ya sea mediante introducción manual durante la creación del usuario o mediante un aprovisionamiento automático con un motor de sincronización, como lo que se define en el estándar Sistema para administración de identidades entre dominios (SCIM). 

Coloque a usuarios con requisitos de seguridad comunes en grupos definidos por su proveedor de identidades, y prepare mecanismos para garantizar que los atributos de usuarios que puedan usarse para controlar el acceso (por ejemplo, los de departamento o ubicación) sean correctos y estén actualizados. Use estos grupos y atributos en lugar de usuarios individuales para controlar el acceso. Esto le permite administrar el acceso de forma centralizada cambiando la pertenencia a un grupo de un usuario o sus atributos una vez, en lugar de tener que actualizar muchas políticas individuales cuando el acceso de un usuario necesita cambiarse.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Si utiliza AWS IAM Identity Center (IAM Identity Center), configure grupos: IAM Identity Center le proporciona la capacidad de configurar grupos de usuarios y asignar a los grupos el nivel deseado de permisos. 
  +  [Inicio de sesión único de AWS: administración de identidades](https://docs.aws.amazon.com/singlesignon/latest/userguide/manage-your-identity-source-sso.html) 
+  Descubra el control de acceso basado en atributos (ABAC): ABAC es una estrategia de autorización que define permisos basados en atributos. 
  +  [¿Qué es ABAC para AWS?](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) 
  +  [Laboratorio: Control de acceso basado en etiquetas de IAM para EC2](https://www.wellarchitectedlabs.com/Security/300_IAM_Tag_Based_Access_Control_for_EC2/README.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Introducción a AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/getting-started.html) 
+  [Prácticas recomendadas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 
+  [Proveedores de identidades y federación](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers.html) 
+  [Usuario raíz de una cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) 

 **Videos relacionados:** 
+  [Prácticas recomendadas para administrar, recuperar y rotar secretos a escala](https://youtu.be/qoxxRlwJKZ4) 
+  [Administración de permisos de usuarios a escala con AWS IAM Identity Center](https://youtu.be/aEIqeFCcK7E) 
+  [Dominar la identidad en cada piso de la tarta](https://www.youtube.com/watch?v=vbjFjMNVEpc) 

 **Ejemplos relacionados:** 
+  [Laboratorio: Control de acceso basado en etiquetas de IAM para EC2](https://www.wellarchitectedlabs.com/Security/300_IAM_Tag_Based_Access_Control_for_EC2/README.html) 

# SEC 3 ¿Cómo administra la autenticación para personas y máquinas?
<a name="sec-03"></a>

 Administre permisos para controlar el acceso a identidades de personas y de máquinas que requieran acceso a AWS y sus cargas de trabajo. Los permisos controlan a qué puede acceder cada usuario y en qué condiciones. 

**Topics**
+ [SEC03-BP01 Definir los requisitos de acceso](sec_permissions_define.md)
+ [SEC03-BP02 Conceder acceso con privilegios mínimos](sec_permissions_least_privileges.md)
+ [SEC03-BP03 Establecer un proceso de acceso de emergencia](sec_permissions_emergency_process.md)
+ [SEC03-BP04 Reducir continuamente los permisos](sec_permissions_continuous_reduction.md)
+ [SEC03-BP05 Definir las barreras de protección de los permisos para su organización](sec_permissions_define_guardrails.md)
+ [SEC03-BP06 Administrar el acceso en función del ciclo de vida](sec_permissions_lifecycle.md)
+ [SEC03-BP07 Analizar el acceso público y entre cuentas](sec_permissions_analyze_cross_account.md)
+ [SEC03-BP08 Compartir recursos de forma segura en su organización](sec_permissions_share_securely.md)
+ [SEC03-BP09 Compartir recursos de forma segura con terceros](sec_permissions_share_securely_third_party.md)

# SEC03-BP01 Definir los requisitos de acceso
<a name="sec_permissions_define"></a>

A cada componente o recurso de su carga de trabajo deben acceder administradores, usuarios finales u otros componentes. Tenga una definición clara de quién o qué debe tener acceso a cada componente, elija el tipo de identidad y el método de autenticación y autorización adecuados.

 **Patrones comunes de uso no recomendados:** 
+ Codificación rígida o almacenamiento de secretos en la aplicación. 
+ Concesión de permisos personalizados para cada usuario. 
+ Uso de credenciales de larga duración. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 A cada componente o recurso de su carga de trabajo deben acceder administradores, usuarios finales u otros componentes. Tenga una definición clara de quién o qué debe tener acceso a cada componente, elija el tipo de identidad y el método de autenticación y autorización adecuados.

El acceso normal a las Cuentas de AWS en la organización debe proporcionarse mediante [acceso federado](https://aws.amazon.com/identity/federation/) o un proveedor de identidades centralizado. También debe centralizar su administración de identidades y asegurarse de que existe una práctica establecida para integrar el acceso de AWS al ciclo de vida de los empleados. Por ejemplo, cuando un empleado cambia a un cargo con un nivel de acceso distinto, su pertenencia al grupo también debe cambiar para reflejar sus nuevos requisitos de acceso.

 Al definir los requisitos de acceso para las identidades que no son humanas, determine qué aplicaciones y componentes necesitan acceso y cómo se conceden los permisos. El enfoque recomendado es utilizar roles de IAM creados con el modelo de acceso de privilegio mínimo. [Las políticas administradas de AWS](https://docs.aws.amazon.com/singlesignon/latest/userguide/security-iam-awsmanpol.html) proporcionan políticas de IAM predefinidas que cubren los casos de uso más comunes.

Los servicios de AWS, como [AWS Secrets Manager](https://aws.amazon.com/blogs/security/identify-arrange-manage-secrets-easily-using-enhanced-search-in-aws-secrets-manager/) y [AWS Systems Manager Parameter Store](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html), pueden servir para desacoplar los secretos de la aplicación o de la carga de trabajo de forma segura en los casos en los que no es factible utilizar roles de IAM. En Secrets Manager, puede establecer una rotación automática de sus credenciales. Puede utilizar Systems Manager para hacer referencia a los parámetros en sus scripts, comandos, documentos SSM, configuración y flujos de trabajo de automatización con el nombre único que especificó al crear el parámetro.

Puede usar Funciones de AWS Identity and Access Management en cualquier lugar para obtener [credenciales de seguridad temporales en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html) para las cargas de trabajo que se ejecutan fuera de AWS. Sus cargas de trabajo puede usar las mismas [políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) y [roles de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) que utiliza con las aplicaciones de AWS para acceder a los recursos de AWS. 

 Siempre que sea posible, se deben preferir las credenciales temporales a corto plazo en lugar de las credenciales estáticas a largo plazo. En las situaciones en las que necesite usuarios de IAM con acceso programático y credenciales a largo plazo, utilice [información de la clave de acceso utilizada por última vez](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_RotateAccessKey) para rotar y retirar las claves de acceso. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Control de acceso basado en atributos (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) 
+  [AWS IAM Identity Center](https://aws.amazon.com/iam/identity-center/) 
+  [Funciones de IAM en cualquier lugar](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html) 
+  [Políticas administradas de AWS para IAM Identity Center](https://docs.aws.amazon.com/singlesignon/latest/userguide/security-iam-awsmanpol.html) 
+  [Condiciones de las políticas de AWS IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) 
+  [Casos de uso de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UseCases.html) 
+  [Elimine credenciales innecesarias](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#remove-credentials) 
+  [Administración de políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage.html) 
+  [How to control access to AWS resources based on Cuenta de AWS, OU, or organization (Cómo controlar el acceso a los recursos de AWS en función de la Cuenta de AWS, la unidad organizativa o la organización)](https://aws.amazon.com/blogs/security/how-to-control-access-to-aws-resources-based-on-aws-account-ou-or-organization/) 
+  [Identify, arrange, and manage secrets easily using enhanced search in AWS Secrets Manager (Identificar, organizar y administrar fácilmente los secretos mediante la búsqueda mejorada en AWS Secrets Manager)](https://aws.amazon.com/blogs/security/identify-arrange-manage-secrets-easily-using-enhanced-search-in-aws-secrets-manager/) 

 **Vídeos relacionados:** 
+  [Become an IAM Policy Master in 60 Minutes or Less (Consiga dominar las políticas de IAM en 60 minutos o menos)](https://youtu.be/YQsK4MtsELU) 
+  [Separation of Duties, Least Privilege, Delegation, and CI/CD (Separación de deberes, privilegio mínimo, delegación y CI/CD)](https://youtu.be/3H0i7VyTu70) 
+  [Streamlining identity and access management for innovation (Optimizar la administración de identidades y accesos para la innovación)](https://www.youtube.com/watch?v=3qK0b1UkaE8) 

# SEC03-BP02 Conceder acceso con privilegios mínimos
<a name="sec_permissions_least_privileges"></a>

 Se recomienda conceder exclusivamente el acceso que las identidades necesitan para realizar acciones concretas en recursos específicos en determinadas condiciones. Utilice atributos de grupo y de identidad para configurar dinámicamente los permisos en función de las necesidades en lugar de configurarlos para cada usuario. Por ejemplo, puede conceder acceso a un grupo de desarrolladores para que solamente puedan administrar recursos de su proyecto. De este modo, si un desarrollador abandona el proyecto, su acceso se revoca automáticamente sin cambiar las políticas de acceso subyacentes. 

**Resultado esperado:** los usuarios solo tienen los permisos necesarios para desempeñar su trabajo. A los usuarios solo se les concede acceso a entornos de productos para llevar a cabo una tarea específica en un periodo de tiempo limitado y el acceso se debe revocar una vez terminada la tarea. Los permisos se deben revocar cuando no se necesiten, por ejemplo, cuando un usuario cambia de proyecto o de puesto. Los privilegios de administrador solo se deben conceder a un pequeño grupo de administradores de confianza. Los permisos se deben revisar periódicamente para evitar su acumulación. A las cuentas de máquinas o sistemas se les debe asignar el conjunto más reducido de permisos que sean necesarios para realizar sus tareas. 

**Antipatrones usuales:**
+  Concesión predeterminada de permisos de administrador a los usuarios. 
+  Uso del usuario raíz para las actividades cotidianas. 
+  Creación de políticas excesivamente permisivas, pero sin todos los privilegios de administrador. 
+  No revisar los permisos para averiguar si se les permite el acceso de privilegio mínimo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El principio de [privilegio mínimo](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html#grant-least-privilege) establece que a las identidades solo les debe permitir realizar el menor conjunto de acciones necesarias para completar una tarea específica. De este modo, se equilibra la facilidad de uso, la eficiencia y la seguridad. Operar según este principio contribuye a limitar el acceso involuntario y a realizar el seguimiento de quién tiene acceso a determinados recursos. Los usuarios y roles de IAM no tienen permisos de forma predeterminada. El usuario raíz tiene acceso total de forma predeterminada y se debe controlar y supervisar de forma estricta. Únicamente se debe usar para [tareas que requieran acceso raíz](https://docs.aws.amazon.com/accounts/latest/reference/root-user-tasks.html). 

 Las políticas de IAM se usan para conceder permisos a roles de IAM o recursos específicos. Por ejemplo, las políticas basadas en la identidad se pueden adjuntar a grupos de IAM, mientras que los buckets de S3 se pueden controlar mediante políticas basadas en recursos. 

 Al crear una política de IAM, puede especificar las acciones de servicio, los recursos y las condiciones que se deben cumplir para que AWS permita o deniegue el acceso. AWS es compatible con una amplia variedad de condiciones que le ayudarán a acotar el acceso. Por ejemplo, mediante la [clave de condición](https://docs.aws.amazon.com//latest/UserGuide/reference_policies_condition-keys.html) `PrincipalOrgID`, puede denegar acciones si el solicitante no forma parte de su organización de AWS. 

 También puede controlar las solicitudes que realicen los servicios de AWS en su nombre, como que AWS CloudFormation cree una función de AWS Lambda, mediante la clave de condición `CalledVia`. Debe estratificar los diferentes tipos de políticas para establecer una defensa en profundidad y limitar los permisos generales de sus usuarios. También puede restringir qué permisos se pueden conceder y en qué condiciones. Por ejemplo, puede permitir que sus equipos de aplicaciones creen sus propias políticas de IAM para los sistemas que creen, pero también debe aplicar un [límite de permiso](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/) para acotar el máximo de permisos que puede recibir el sistema. 

 **Pasos para la implementación** 
+  **Implemente políticas de privilegio mínimo**: asigne políticas de acceso con privilegio mínimo a grupos y roles de IAM para reflejar el rol o la función del usuario que haya definido. 
  +  **Base las políticas en el uso de la API**: una forma de determinar los permisos necesarios consiste en revisar los registros de AWS CloudTrail. Esta revisión le permite crear permisos adaptados a las acciones que el usuario realiza realmente en AWS. [IAM Access Analyzer puede generar automáticamente una política de IAM basada](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/) [en la actividad](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/). Puede usar IAM Access Advisor en el nivel de organización o de cuenta para [realizar el seguimiento](https://docs.aws.amazon.com//latest/UserGuide/access_policies_access-advisor.html) [de la información a la que se ha accedido por última vez para una política concreta](https://docs.aws.amazon.com//latest/UserGuide/access_policies_access-advisor.html). 
+  **Considere la utilización de [políticas administradas por AWS para funciones de trabajo](https://docs.aws.amazon.com//latest/UserGuide/access_policies_job-functions.html).** Cuando empiece a crear políticas de permisos detalladas, puede ser difícil saber por dónde empezar. AWS tiene políticas administradas para roles comunes, por ejemplo, facturación, administradores de bases de datos y científicos de datos. Estas políticas pueden servir para limitar el acceso que tienen los usuarios al mismo tiempo que se determina cómo implementar las políticas de privilegio mínimo. 
+  **Elimine los permisos innecesarios:** elimine los permisos que no son necesarios y limite las políticas excesivamente permisivas. La [generación de políticas de IAM Access Analyzer](https://docs.aws.amazon.com//latest/UserGuide/access-analyzer-policy-generation.html) puede ser de ayuda en la optimización de las políticas de permisos. 
+  **Garantice que los usuarios cuenten con acceso limitado a los entornos de producción:** los usuarios solo deben tener acceso a los entornos de producción con un motivo válido. Después de que el usuario lleve a cabo las tareas específicas que requieren el acceso a producción, se debe revocar el acceso. La limitación del acceso a los entornos de producción previene los eventos involuntarios que afectan a la producción y reduce el ámbito de las consecuencias del acceso involuntario. 
+ **Considere el uso de límites de permisos:** un límite de permisos es una característica para usar una política administrada que establece los permisos máximos que una política basada en identidad puede conceder a una entidad de IAM. El límite de permisos de una identidad le permite llevar a cabo únicamente las acciones autorizadas tanto por sus políticas basadas en la identidad como por sus límites de permisos.  
+  **Considere el uso de [etiquetas de recursos](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) para los permisos:** un modelo de control de acceso basado en atributos mediante etiquetas de recursos le permite conceder acceso según la finalidad del recurso, el propietario, el entorno u otros criterios. Por ejemplo, puede usar etiquetas de recursos para diferenciar entre los entornos de desarrollo y de producción. Con estas etiquetas, puede limitar a los desarrolladores al entorno de desarrollo. Mediante la combinación de las políticas de etiquetado y de permisos, puede conseguir un acceso detallado a los recursos sin necesidad de definir políticas complicadas y personalizadas para cada puesto. 
+  **Use las [políticas de control de servicios](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) para AWS Organizations.** Las políticas de control de servicios controlan de forma centralizada el máximo de permisos disponibles para las cuentas de los miembros de su organización. Es importante destacar que las políticas de control de servicios le permiten restringir los permisos del usuario raíz en las cuentas de los miembros. Considere también la posibilidad de utilizar AWS Control Tower, que proporciona controles prescriptivos administrados que enriquecen AWS Organizations. También puede definir sus propios controles en Control Tower. 
+  **Establezca una política de ciclo de vida del usuario para la organización:** las políticas de este tipo definen las tareas que se realizan cuando los usuarios se incorporan en AWS, cambian de rol o ámbito, o ya no necesitan acceder a AWS. Las revisiones de permisos se deben realizar durante cada paso del ciclo de vida de un usuario para verificar son restrictivos de forma correcta y para evitar la acumulación de permisos. 
+  **Establezca una programación periódica para revisar los permisos y eliminar los que no sean necesarios:** debe revisar periódicamente el acceso de usuario para verificar que los usuarios no tengan permisos demasiado permisivos. [AWS Config](https://aws.amazon.com/config/) y IAM Access Analyzer pueden ser de ayuda al auditar los permisos de usuario. 
+ **Establezca una matriz de roles de trabajo:** con una matriz de roles de trabajo se visualizan los distintos roles y los niveles de acceso necesarios en su presencia de AWS. Con una matriz de roles de trabajo, puede definir y separar los permisos según las responsabilidades de usuario en su organización. Use grupos en vez de aplicar permisos directamente a usuarios o roles individuales.**  **

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Conceder privilegios mínimos](https://docs.aws.amazon.com//latest/UserGuide/best-practices.html?ref=wellarchitected#grant-least-privilege) 
+  [Límites de permisos para las entidades de IAM](https://docs.aws.amazon.com//latest/UserGuide/access_policies_boundaries.html) 
+  [Techniques for writing least privilege IAM policies](https://aws.amazon.com/blogs/security/techniques-for-writing-least-privilege-iam-policies/) (Técnicas para elaborar políticas de IAM de privilegio mínimo) 
+  [IAM Access Analyzer makes it easier to implement least privilege permissions by generating IAM](https://aws.amazon.com/blogs/security/iam-access-analyzer-makes-it-easier-to-implement-least-privilege-permissions-by-generating-iam-policies-based-on-access-activity/) [policies based on access activity](https://aws.amazon.com/blogs/security/iam-access-analyzer-makes-it-easier-to-implement-least-privilege-permissions-by-generating-iam-policies-based-on-access-activity/) (IAM Access Analyzer facilita la implementación de los permisos de privilegio mínimo al generar políticas de IAM basadas en la actividad de acceso) 
+  [Delegate permission management to developers by using IAM permissions boundaries](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/) (Delegar la administración de permisos para desarrolladores mediante límites de permisos de IAM) 
+  [Refining Permissions using last accessed information (Mejora de los permisos con la información del último acceso)](https://docs.aws.amazon.com//latest/UserGuide/access_policies_access-advisor.html) 
+  [IAM policy types and when to use them](https://docs.aws.amazon.com//latest/UserGuide/access_policies.html) (Tipos de políticas de IAM y cuándo utilizarlas) 
+  [Testing IAM policies with the IAM policy simulator](https://docs.aws.amazon.com//latest/UserGuide/access_policies_testing-policies.html) (Prueba de las políticas de IAM con el simulador de políticas de IAM) 
+  [Guardrails in AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html) (Barreras de protección en AWS Control Tower) 
+  [Zero Trust architectures: An AWS perspective](https://aws.amazon.com/blogs/security/zero-trust-architectures-an-aws-perspective/) (Arquitecturas de confianza cero: una perspectiva de AWS) 
+  [How to implement the principle of least privilege with CloudFormation StackSets](https://aws.amazon.com/blogs/security/how-to-implement-the-principle-of-least-privilege-with-cloudformation-stacksets/) (Cómo implementar el principio de privilegio mínimo con CloudFormation StackSets) 
+  [Control de acceso basado en atributos (ABAC)](https://docs.aws.amazon.com//latest/UserGuide/introduction_attribute-based-access-control.html?ref=wellarchitected) 
+ [Reducción del alcance de las políticas con datos de la actividad de los usuarios](https://docs.aws.amazon.com//latest/UserGuide/access_policies_access-advisor.html?ref=wellarchitected) 
+  [Ver accesos de rol](https://docs.aws.amazon.com//latest/UserGuide/id_roles_manage_delete.html?ref=wellarchitected#roles-delete_prerequisites) 
+  [Use el etiquetado para organizar el entorno y fomentar la responsabilidad](https://docs.aws.amazon.com/aws-technical-content/latest/cost-optimization-laying-the-foundation/tagging.html?ref=wellarchitected) 
+  [Estrategias de etiquetado de AWS](https://aws.amazon.com/answers/account-management/aws-tagging-strategies/?ref=wellarchitected) 
+  [Etiquetado de recursos de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/quicksight-iam-identity-center/) 

 **Vídeos relacionados: ** 
+  [Next-generation permissions management (Administración de permisos de nueva generación)](https://www.youtube.com/watch?v=8vsD_aTtuTo) 
+  [Zero Trust: An AWS perspective](https://www.youtube.com/watch?v=1p5G1-4s1r0) (Confianza cero: una perspectiva de AWS) 
+  [How can I use permissions boundaries to limit users and roles to prevent privilege escalation?](https://www.youtube.com/watch?v=omwq3r7poek) (¿Cómo puedo utilizar los límites de los permisos para restringir a los usuarios y los roles para evitar la escalada de privilegios?) 

 **Ejemplos relacionados:** 
+  [Laboratorio: Límites de permisos de IAM para delegar la creación de roles](https://wellarchitectedlabs.com/Security/300__Permission_Boundaries_Delegating_Role_Creation/README.html) 
+  [Laboratorio: Control de acceso basado en etiquetas de IAM para EC2](https://wellarchitectedlabs.com/Security/300__Tag_Based_Access_Control_for_EC2/README.html?ref=wellarchitected) 

# SEC03-BP03 Establecer un proceso de acceso de emergencia
<a name="sec_permissions_emergency_process"></a>

 Un proceso que permita el acceso de emergencia a su carga de trabajo en el improbable caso de que se produzca un error en un proceso automatizado o una canalización. Esto le ayudará a recurrir al acceso de privilegio mínimo, pero a la vez garantiza que los usuarios puedan obtener el nivel de acceso correcto cuando lo necesiten. Por ejemplo, establezca un proceso para que los administradores verifiquen y aprueben su solicitud, como un rol entre cuentas de AWS para el acceso o un proceso específico que puedan seguir los administradores para validar y aprobar una solicitud de emergencia. 

 **Patrones comunes de uso no recomendados:** 
+ No contar con un proceso de emergencia para recuperarse de una interrupción con su configuración de identidad existente
+ Conceder permisos de alto nivel a largo plazo con fines de solución de problemas o de recuperación

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El establecimiento de un acceso de emergencia puede adoptar varias formas para las que debe estar preparado. La primera es un error de su proveedor de identidad principal. En este caso, deberá confiar en un segundo método de acceso con los permisos necesarios para la recuperación. Este método podría ser un proveedor de identidad de reserva o un usuario de IAM. Este segundo método se debe [controlar, supervisar y notificar de forma estricta](https://aws.amazon.com/blogs/mt/monitor-and-notify-on-aws-account-root-user-activity/) en caso de que se utilice. La identidad de acceso de emergencia debe proceder de una cuenta específica para este fin y tener solo permisos para asumir un rol específicamente diseñado para la recuperación. 

 También debe estar preparado para un acceso de emergencia en el que se necesite un acceso administrativo de alto nivel temporal. Una situación habitual es limitar los permisos de mutación a un proceso automatizado utilizado para desplegar los cambios. Si este proceso tiene algún problema, es posible que los usuarios deban solicitar permisos de alto nivel para restablecer la funcionalidad. En este caso, establezca un proceso en el que los usuarios puedan solicitar un acceso de alto nivel y los administradores puedan validarlo y aprobarlo. Los planes de implementación que detallan la guía de prácticas recomendadas para aprovisionar previamente el acceso y configurar los roles de emergencia e *inmediatos*, se proporcionan como parte de [SEC10-BP05: Aprovisionamiento previo del acceso](sec_incident_response_pre_provision_access.md). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Monitor and Notify on AWS (Supervisar y notificar sobre AWS)](https://aws.amazon.com/blogs/mt/monitor-and-notify-on-aws-account-root-user-activity) 
+ [Managing temporary elevated access (Administrar el acceso de alto nivel temporal)](https://aws.amazon.com/blogs/security/managing-temporary-elevated-access-to-your-aws-environment/) 

 **Vídeo relacionado:** 
+  [Become an IAM Policy Master in 60 Minutes or Less (Consiga dominar las políticas de IAM en 60 minutos o menos)](https://youtu.be/YQsK4MtsELU) 

# SEC03-BP04 Reducir continuamente los permisos
<a name="sec_permissions_continuous_reduction"></a>

A medida que los equipos determinen qué acceso es necesario, elimine los permisos innecesarios y establezca procesos de revisión para conseguir permisos con privilegios mínimos. Supervise y elimine continuamente las identidades y los permisos que no se utilicen, tanto para el acceso humano como para el de las máquinas.

 **Resultado deseado:** las políticas de permisos deben cumplir el principio del privilegio mínimo. A medida que se definan mejor las responsabilidades y los roles del trabajo, debe revisar sus políticas de permisos para eliminar los permisos innecesarios. Este enfoque reduce el alcance del impacto en caso de que las credenciales se expongan de forma inadvertida o se acceda a ellas sin autorización. 

 **Antipatrones usuales:** 
+  Conceder de forma predeterminada permisos de administrador a los usuarios. 
+  Crear políticas excesivamente permisivas, pero sin todos los privilegios de administrador. 
+  Mantener políticas de permisos después de que ya no son necesarias. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Cuando los equipos y los proyectos están dando sus primeros pasos, utilizar unas políticas de permisos permisivas sirve para fomentar la innovación y la agilidad. Por ejemplo, en un entorno de desarrollo o de pruebas, se puede dar acceso a los desarrolladores a un amplio conjunto de servicios de AWS. Recomendamos que evalúe el acceso continuamente y lo restrinja únicamente a aquellos servicios y acciones de servicio que sean necesarios para realizar el trabajo actual. Recomendamos realizar esta evaluación tanto para las identidades humanas como para las de máquina. Las identidades de máquina, que a veces se denominan cuentas del sistema o del servicio, son identidades que dan acceso a AWS a aplicaciones o servidores. Este acceso es especialmente importante en un entorno de producción, donde unos permisos demasiado permisivos pueden tener un impacto enorme y el potencial de exponer los datos de los clientes. 

 AWS tiene numerosos métodos para ayudar a identificar a los usuarios, roles, permisos y credenciales no utilizados. AWS también puede ayudar a analizar la actividad de acceso de los usuarios y roles de IAM, incluidas las claves de acceso asociadas, y el acceso a recursos de AWS, como los objetos de los buckets de Amazon S3. La generación de políticas de AWS Identity and Access Management Access Analyzer puede ayudarle a crear políticas de permisos restrictivas basadas en los servicios y acciones reales con los que interactúa una entidad principal. [El control de acceso basado en atributos (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) puede ayudar a simplificar la administración de permisos, ya que le permite proporcionar permisos a los usuarios utilizando sus atributos en lugar de tener que asociar políticas de permisos directamente a cada usuario. 

 **Pasos para la implementación** 
+  **Utilice [AWS Identity and Access Management Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html):** IAM Access Analyzer le ayuda a identificar recursos de su organización y sus cuentas, como buckets de Amazon Simple Storage Service (Amazon S3) o roles de IAM, que se [comparten con una entidad externa](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html). 
+  **Utilice la [generación de políticas de IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html):** la generación de políticas de IAM Access Analyzer le ayuda a [crear políticas de permisos detalladas basadas en la actividad de acceso de un usuario o rol de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html#access-analyzer-policy-generation-howitworks). 
+  **Determine un marco temporal y una política de uso aceptables para los usuarios y roles de IAM:** utilice la [marca de tiempo del último acceso](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor-view-data.html) para [identificar a los usuarios y roles no utilizados](https://aws.amazon.com/blogs/security/identify-unused-iam-roles-remove-confidently-last-used-timestamp/) y eliminarlos. Revise la información de último acceso a servicios y acciones para identificar y [delimitar los permisos de usuarios y roles específicos](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html). Por ejemplo, puede utilizar la información sobre el último acceso para identificar las acciones específicas de Amazon S3 necesarias para el rol de su aplicación y restringir el acceso únicamente a dichas acciones. Estas características de información sobre el último acceso están disponibles en la Consola de administración de AWS y de manera programática para permitirle incorporarlas en sus flujos de trabajo de infraestructura y sus herramientas automatizadas. 
+  **Considere la posibilidad de [registrar eventos de datos en AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html):** de manera predeterminada, CloudTrail no registra eventos de datos como la actividad a nivel de objeto de Amazon S3 (por ejemplo, `GetObject` y `DeleteObject`) o las actividades de tabla de Amazon DynamoDB (por ejemplo, `PutItem` y `DeleteItem`). Considere la posibilidad de habilitar el registro de estos eventos para determinar qué usuarios y roles necesitan acceder a objetos de Amazon S3 o elementos de tabla de DynamoDB específicos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Conceder privilegios mínimos](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) 
+  [Elimine credenciales innecesarias](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#remove-credentials) 
+ [¿Qué es AWS CloudTrail?](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)
+  [Administración de políticas](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage.html) 
+ [ Registro y monitoreo en DynamoDB ](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/MonitoringDynamoDB.html)
+ [ Habilitación del registro de eventos de CloudTrail para buckets y objetos de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-cloudtrail-logging-for-s3.html)
+ [ Obtener informes de credenciales para su Cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html)

 **Vídeos relacionados: ** 
+  [Become an IAM Policy Master in 60 Minutes or Less](https://youtu.be/YQsK4MtsELU) (Consiga dominar las políticas de IAM en 60 minutos o menos) 
+  [Separation of Duties, Least Privilege, Delegation, and CI/CD (Separación de deberes, privilegio mínimo, delegación y CI/CD)](https://youtu.be/3H0i7VyTu70) 
+ [AWS re:Inforce 2022 - AWS Identity and Access Management (IAM) deep dive ](https://www.youtube.com/watch?v=YMj33ToS8cI) (AWS re:Inforce 2022: Profundización en AWS Identity and Access Management [IAM])

# SEC03-BP05 Definir las barreras de protección de los permisos para su organización
<a name="sec_permissions_define_guardrails"></a>

 Establezca controles comunes que restrinjan el acceso a todas las identidades de su organización. Por ejemplo, puede restringir el acceso a determinadas Regiones de AWS o impedir que sus operadores eliminen recursos comunes, como un rol de IAM que usa su equipo de seguridad central. 

 **Patrones comunes de uso no recomendados:** 
+ Ejecutar cargas de trabajo en su cuenta de administrador de la organización. 
+ Ejecutar cargas de trabajo de producción y de no producción en la misma cuenta. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 A medida que crezca y administre cargas de trabajo adicionales en AWS, deberá separarlas mediante cuentas y administrar dichas cuentas con AWS Organizations. Le recomendamos que establezca barreras de protección de permisos comunes que restrinjan el acceso a todas las identidades de su organización. Por ejemplo, puede restringir el acceso a determinadas Regiones de AWS o impedir que su equipo elimine recursos comunes, como un rol de IAM que usa su equipo de seguridad central. 

 Puede empezar con la implementación de ejemplos de políticas de control de servicios, como impedir que los usuarios desactiven servicios clave. Las SCP utilizan el lenguaje de las políticas de IAM y le permiten establecer controles a los que se adhieren todas las entidades principales de IAM (usuarios y roles). Puede restringir el acceso a determinadas acciones de servicio, recursos y según una condición específica para satisfacer las necesidades de control de acceso de su organización. Si es necesario, puede definir excepciones a sus barreras de protección. Por ejemplo, puede restringir las acciones de servicio para todas las entidades de IAM de la cuenta excepto para un rol de administrador específico. 

 Le recomendamos que evite ejecutar cargas de trabajo en su cuenta de administración. Esta cuenta debe utilizarse para controlar y desplegar las barreras de protección que afectarán a las cuentas de los miembros. Algunos servicios de AWS admiten el uso de una cuenta de administrador delegada. Cuando esté disponible, deberá utilizar esta cuenta delegada en lugar de la cuenta de administración. Debe limitar firmemente el acceso a la cuenta de administrador de la organización. 

El uso de una estrategia de varias cuentas le permite tener una mayor flexibilidad a la hora de aplicar las barreras de protección a sus cargas de trabajo. La Arquitectura de referencia de Seguridad de AWS ofrece recomendaciones sobre cómo diseñar la estructura de su cuenta. Los servicios de AWS como AWS Control Tower proporcionan capacidades para administrar de forma centralizada tanto los controles preventivos como los de detección en toda la organización. Defina un propósito claro para cada cuenta o unidad organizativa en su organización y limite los controles de acuerdo con dicho propósito. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [AWS Organizations](https://aws.amazon.com/organizations/) 
+ [Service control policies (SCPs) (Políticas de control de servicios [SCP])](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) 
+ [Get more out of service control policies in a multi-account environment (Saque más partido a las políticas de control del servicio en un entorno de varias cuentas)](https://aws.amazon.com/blogs/security/get-more-out-of-service-control-policies-in-a-multi-account-environment/) 
+ [Arquitectura de referencia de AWS (AWS SRA)](https://docs.aws.amazon.com/prescriptive-guidance/latest/security-reference-architecture/welcome.html) 

 **Vídeos relacionados:** 
+ [Enforce Preventive Guardrails using Service Control Policies (Aplicar las barreras de protección preventivas mediante políticas de control de servicios)](https://www.youtube.com/watch?v=mEO05mmbSms) 
+  [Building governance at scale with AWS Control Tower (Consolidar la gobernanza a escala con AWS Control Tower)](https://www.youtube.com/watch?v=Zxrs6YXMidk) 
+  [AWS Identity and Access Management deep dive (Profundización en AWS Identity and Access Management)](https://www.youtube.com/watch?v=YMj33ToS8cI) 

# SEC03-BP06 Administrar el acceso en función del ciclo de vida
<a name="sec_permissions_lifecycle"></a>

 Integre los controles de acceso con el ciclo de vida de la aplicación y el operador, el proveedor de federación centralizado. Por ejemplo, quite el acceso a un usuario cuando abandone la organización o cambie de rol. 

A medida que vaya administrando las cargas de trabajo con cuentas independientes, habrá casos en los que necesite compartir recursos entre esas cuentas. Le recomendamos que comparta los recursos con [AWS Resource Access Manager (AWS RAM)](http://aws.amazon.com/ram/). Este servicio le permite compartir de forma sencilla y segura recursos de AWS en su AWS Organizations y las unidades organizativas. Con AWS RAM, el acceso a los recursos compartidos se concede o revoca automáticamente a medida que las cuentas entran y salen de la organización o unidad organizativa con la que se comparten. Esto ayuda a garantizar que los recursos se comparten solo con las cuentas que pretende.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Ciclo de vida de acceso de los usuarios Implemente una política de ciclo de vida de acceso de los usuarios para la incorporación de nuevos usuarios, los cambios de puesto y la salida de usuarios, de modo que solo tengan acceso los usuarios actuales. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Control de acceso basado en atributos (ABAC)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) 
+  [Conceder privilegios mínimos](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) 
+  [Analizador de acceso de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) 
+  [Elimine credenciales innecesarias](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#remove-credentials) 
+  [Administración de políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage.html) 

 **Vídeos relacionados:** 
+  [Become an IAM Policy Master in 60 Minutes or Less (Consiga dominar las políticas de IAM en 60 minutos o menos)](https://youtu.be/YQsK4MtsELU) 
+  [Separation of Duties, Least Privilege, Delegation, and CI/CD (Separación de deberes, privilegio mínimo, delegación y CI/CD)](https://youtu.be/3H0i7VyTu70) 

# SEC03-BP07 Analizar el acceso público y entre cuentas
<a name="sec_permissions_analyze_cross_account"></a>

Supervise continuamente los resultados que ponen de relieve el acceso público y entre cuentas. Reduzca el acceso público y el acceso entre cuentas solo a los recursos que requieran ese acceso.

 **Resultado deseado:** saber cuáles de sus recursos de AWS se comparten y con quién. Supervisar y auditar continuamente sus recursos compartidos para verificar que solo se compartan con las entidades principales autorizadas. 

 **Antipatrones usuales:** 
+  No mantener un inventario de los recursos compartidos. 
+  No seguir un proceso para aprobar el acceso público o entre cuentas a los recursos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Si su cuenta pertenece a AWS Organizations, puede conceder acceso a los recursos a toda la organización, a unidades organizativas específicas o a cuentas individuales. Si su cuenta no es miembro de una organización, puede compartir recursos con cuentas individuales. Puede conceder acceso directo entre cuentas utilizando políticas basadas en recursos —por ejemplo, [políticas de buckets de Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html)—- o permitiendo que una entidad principal de otra cuenta asuma un rol de IAM en su cuenta. Cuando utilice políticas de recursos, compruebe que solo se concede acceso a las entidades principales autorizadas. Defina un proceso para aprobar todos los recursos que deban estar disponibles públicamente. 

 [AWS Identity and Access Management Access Analyzer](https://aws.amazon.com/iam/features/analyze-access/) utiliza la [seguridad comprobable](https://aws.amazon.com/security/provable-security/) para identificar todas las rutas de acceso a un recurso desde fuera de su cuenta. Revisa continuamente las políticas de recursos e informa de los resultados del acceso público y entre cuentas para facilitarle el análisis de un acceso potencialmente amplio. Considere la posibilidad de configurar IAM Access Analyzer con AWS Organizations para comprobar que tiene visibilidad de todas sus cuentas. IAM Access Analyzer también le permite [previsualizar los resultados](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-access-preview.html) antes de desplegar los permisos de recursos. Esto le permite validar que sus cambios de política conceden solo el acceso público y entre cuentas previsto a sus recursos. Al diseñar el acceso de varias cuentas, puede utilizar [políticas de confianza](https://aws.amazon.com/blogs/security/how-to-use-trust-policies-with-iam-roles/) para controlar en qué casos se puede asumir un rol. Por ejemplo, podría utilizar la clave de condición [`PrincipalOrgId` para denegar un intento de asumir un rol desde fuera de su AWS Organizations](https://aws.amazon.com/blogs/security/how-to-use-trust-policies-with-iam-roles/). 

 [AWS Config puede informar de los recursos](https://docs.aws.amazon.com/config/latest/developerguide/operational-best-practices-for-Publicly-Accessible-Resources.html) que están mal configurados y, a través de las comprobaciones de políticas de AWS Config, puede detectar los recursos que tienen configurado el acceso público. Servicios como [AWS Control Tower](https://aws.amazon.com/controltower/) y [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp.html) simplifican el despliegue de controles de detección y barreras de protección en AWS Organizations para identificar y corregir los recursos expuestos públicamente. Por ejemplo,AWS Control Tower dispone de una barrera de protección administrada que puede detectar si las Cuentas de AWS pueden restaurar alguna [instantánea de Amazon EBS](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html). 

 **Pasos para la implementación** 
+  **Considere la posibilidad de habilitar [AWS Config para AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/services-that-can-integrate-config.html):** AWS Config le permite agregar los hallazgos de varias cuentas que están dentro de una AWS Organizations a una cuenta de administrador delegado. Esto proporciona una visión global y le permite [desplegar Reglas de AWS Config en todas las cuentas para detectar recursos de acceso público](https://docs.aws.amazon.com/config/latest/developerguide/config-rule-multi-account-deployment.html). 
+  **Configure AWS Identity and Access Management Access Analyzer:** IAM Access Analyzer le ayuda a identificar los recursos y cuentas de su organización, como los buckets de Amazon S3 o los roles de IAM, que se [comparten con una entidad externa](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-getting-started.html). 
+  **Utilice la corrección automatizada en AWS Config para responder a los cambios en la configuración del acceso público de los buckets de Amazon S3:** [puede volver a habilitar automáticamente la configuración de acceso público en bloque para los buckets de Amazon S3](https://aws.amazon.com/blogs/security/how-to-use-aws-config-to-monitor-for-and-respond-to-amazon-s3-buckets-allowing-public-access/). 
+  **Implemente la supervisión y las alertas para identificar si los buckets de Amazon S3 se han hecho públicos:** debe disponer de [supervisión y alertas](https://aws.amazon.com/blogs/aws/amazon-s3-update-cloudtrail-integration/) para identificar cuándo se desactiva el acceso público a bloques de Amazon S3 y si los buckets de Amazon S3 se hacen públicos. Además, si utiliza AWS Organizations, puede crear una [política de control de servicios](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) que impida realizar cambios en las políticas de acceso público de Amazon S3. AWS Trusted Advisor comprueba si hay buckets de Amazon S3 que tengan permisos de acceso abierto. Los permisos del bucket que otorgan, suben o eliminan el acceso para todo el mundo crean posibles vulnerabilidades de seguridad, ya que permiten que cualquiera añada, modifique o elimine elementos en un bucket. La comprobación de Trusted Advisor examina los permisos explícitos del bucket y las políticas asociadas que podrían anular los permisos del bucket. También puede utilizar AWS Config para supervisar sus buckets de Amazon S3 para comprobar si tienen acceso público. Para obtener más información, consulte [How to Use AWS Config to Monitor for and Respond to Amazon S3 Buckets Allowing Public Access](https://aws.amazon.com/blogs/security/how-to-use-aws-config-to-monitor-for-and-respond-to-amazon-s3-buckets-allowing-public-access/) (Cómo utilizar AWS Config para supervisar y responder a los buckets de Amazon S3 que permiten el acceso público). Al revisar el acceso, es importante tener en cuenta qué tipos de datos contienen los buckets de Amazon S3. [Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/findings-types.html) ayuda a detectar y proteger datos confidenciales, como PII, PHI y credenciales, además de claves privadas o de AWS. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Uso de AWS Identity and Access Management Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html?ref=wellarchitected)
+ [AWS Control Tower controls library ](https://docs.aws.amazon.com/controltower/latest/userguide/controls-reference.html) (Biblioteca de controles de AWS Tower Control)
+  [AWS Foundational Security Best Practices standard](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-standards-fsbp.html) (Estándar de prácticas recomendadas de seguridad básicas de AWS)
+  [AWS Config Managed Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html) (Reglas administradas de AWS Config) 
+  [Referencia de verificaciones de AWS Trusted Advisor](https://docs.aws.amazon.com/awssupport/latest/user/trusted-advisor-check-reference.html) 
+ [ Supervisión de resultados de la verificación de AWS Trusted Advisor con Amazon EventBridge ](https://docs.aws.amazon.com/awssupport/latest/user/cloudwatch-events-ta.html)
+ [ Managing AWS Config Rules Across All Accounts in Your Organization ](https://docs.aws.amazon.com/config/latest/developerguide/config-rule-multi-account-deployment.html) (Administración de reglas de AWS Config en todas las cuentas de su organización)
+ [AWS Config y AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/services-that-can-integrate-config.html)

 **Vídeos relacionados: ** 
+ [Best Practices for securing your multi-account environment (Prácticas recomendadas para proteger su entorno de varias cuentas)](https://www.youtube.com/watch?v=ip5sn3z5FNg)
+ [Dive Deep into IAM Access Analyzer](https://www.youtube.com/watch?v=i5apYXya2m0) (Profundización en IAM Access Analyzer)

# SEC03-BP08 Compartir recursos de forma segura en su organización
<a name="sec_permissions_share_securely"></a>

A medida que el número de cargas de trabajo va aumentando, es posible que necesite compartir el acceso a los recursos de esas cargas de trabajo o aprovisionar los recursos varias veces entre varias cuentas. Es posible que disponga de componentes para compartimentar el entorno, por ejemplo, en entornos de desarrollo, pruebas y producción. Sin embargo, disponer de componentes de separación no le impide compartir de forma segura. Al compartir componentes que se solapan, puede reducir la sobrecarga operativa y conseguir una experiencia uniforme sin tener que adivinar qué podría haber pasado por alto al crear el mismo recurso varias veces. 

 **Resultado deseado**: reducir al mínimo el acceso involuntario mediante métodos seguros para compartir recursos dentro de su organización y facilitar su iniciativa de prevención de pérdida de datos. Reducir la sobrecarga operativa en comparación con la administración de componentes individuales, reducir los errores derivados de crear manualmente el mismo componente varias veces y aumentar la escalabilidad de las cargas de trabajo. Puede disminuir el tiempo de resolución en escenarios con varios puntos de fallo y aumentar su confianza a la hora de determinar cuándo un componente ya no es necesario. Para obtener orientación prescriptiva sobre el análisis de recursos que se comparten externamente, consulte [SEC03-BP07 Analizar el acceso público y entre cuentas](sec_permissions_analyze_cross_account.md). 

 **Antipatrones usuales:** 
+  Falta de un proceso para supervisar continuamente y alertar automáticamente sobre un uso compartido externo inesperado. 
+  Falta de una referencia sobre lo que se debe compartir y lo que no. 
+  Adoptar de manera predeterminada una política muy abierta en lugar de compartir explícitamente cuando es necesario. 
+  Crear manualmente recursos fundamentales que se solapan cuando es necesario. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Diseñe sus controles y patrones de acceso para que rijan el consumo de recursos compartidos de forma segura y solo con entidades de confianza. Supervise los recursos compartidos y revise el acceso a ellos de forma continua; además, reciba alertas sobre un uso compartido inapropiado o inesperado. Revise [Analizar el acceso público y entre cuentas](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_permissions_analyze_cross_account.html) para ayudarle a establecer una gobernanza que reduzca el acceso externo solo a los recursos que lo requieran, además de a establecer un proceso para supervisar continuamente y alertar automáticamente. 

 El uso compartido entre cuentas dentro de AWS Organizations está respaldado por una serie de [servicios de AWS](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services_list.html), como [AWS Security Hub CSPM](https://docs.aws.amazon.com/organizations/latest/userguide/services-that-can-integrate-securityhub.html), [Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_organizations.html) y [AWS Backup](https://docs.aws.amazon.com/organizations/latest/userguide/services-that-can-integrate-backup.html). Estos servicios permiten compartir datos con una cuenta central, acceder a ellos desde una cuenta central o administrar recursos y datos desde una cuenta central. Por ejemplo, AWS Security Hub CSPM puede transferir hallazgos desde cuentas individuales a una cuenta central en la que podrá verlos todos. AWS Backup puede realizar una copia de seguridad de un recurso y compartirlo entre varias cuentas. Puede utilizar [AWS Resource Access Manager](https://aws.amazon.com/ram/) (AWS RAM) para compartir otros recursos comunes, como [subredes de VPC y asociaciones de Transit Gateway](https://docs.aws.amazon.com/ram/latest/userguide/shareable.html#shareable-vpc), [AWS Network Firewall](https://docs.aws.amazon.com/ram/latest/userguide/shareable.html#shareable-network-firewall) o [canalizaciones de Amazon SageMaker AI](https://docs.aws.amazon.com/ram/latest/userguide/shareable.html#shareable-sagemaker). 

 Para limitar su cuenta para que solo comparta recursos dentro de su organización, utilice [políticas de control de servicios (SCP)](https://docs.aws.amazon.com/ram/latest/userguide/scp.html) para impedir el acceso a las entidades principales externas. Cuando comparta recursos, combine controles basados en identidades y controles de red para [crear un perímetro de datos para su organización](https://docs.aws.amazon.com/whitepapers/latest/building-a-data-perimeter-on-aws/building-a-data-perimeter-on-aws.html) que le ayude a protegerse contra el acceso no intencionado. Un perímetro de datos es un conjunto de barreras de protección preventivas para ayudar a verificar que solo sus identidades de confianza accedan a los recursos de confianza desde las redes previstas. Estos controles ponen límites apropiados a los recursos que se pueden compartir y evitan que se compartan o expongan recursos que no deberían permitirse. Por ejemplo, como parte de su perímetro de datos, puede utilizar políticas de punto de conexión de VPC y la condición `AWS:PrincipalOrgId` para asegurarse de que las identidades que acceden a sus buckets de Amazon S3 pertenecen a su organización. Es importante tener en cuenta que los [SCP no se aplican a los roles vinculados al servicio (LSR) ni a las entidades principales del servicio de AWS](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html#scp-effects-on-permissions). 

 Cuando utilice Amazon S3, [deshabilite las ACL para su bucket de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) y utilice las políticas de IAM para definir el control de acceso. Para [restringir el acceso a un origen de Amazon S3](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-s3.html) desde [Amazon CloudFront](https://aws.amazon.com/cloudfront/), migre de la identidad de acceso de origen (OAI) al control de acceso de origen (OAC), que admite características adicionales como el cifrado del servidor con [AWS Key Management Service](https://aws.amazon.com/kms/). 

 En algunos casos, es posible que desee permitir compartir recursos fuera de su organización o conceder a un tercero acceso a sus recursos. Para obtener orientación prescriptiva sobre la administración de permisos para compartir recursos externamente, consulte [Administración de permisos](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/permissions-management.html). 

 **Pasos para la implementación** 

1.  **Use AWS Organizations.** 

    AWS Organizations es un servicio de administración de cuentas que le permite consolidar varias Cuentas de AWS en una organización que usted crea y administra de manera centralizada. Puede agrupar sus cuentas en unidades organizativas (OU) y asociar diferentes políticas a cada OU para ayudarle a satisfacer sus necesidades presupuestarias, de seguridad y de conformidad. También puede controlar cómo los servicios de inteligencia artificial (IA) y machine learning (ML) de AWS pueden recopilar y almacenar datos, y utilizar la administración de varias cuentas de los servicios de AWS integrada con Organizations. 

1.  **Integre AWS Organizations con servicios de AWS.** 

    Cuando habilita un servicio de AWS para que realice tareas en su nombre en las cuentas miembros de su organización, AWS Organizations crea un rol vinculado al servicio de IAM para dicho servicio en cada cuenta miembro. Debe administrar el acceso de confianza mediante la Consola de administración de AWS, las API de AWS o la AWS CLI. Para obtener orientación prescriptiva sobre la habilitación del acceso de confianza, consulte [Uso de AWS Organizations con otros servicios de AWS](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services.html) y [Servicios de AWS que se pueden utilizar con Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services_list.html). 

1.  **Establezca un perímetro de datos.** 

    El perímetro de AWS suele representarse como una organización administrada por AWS Organizations. Junto con las redes y sistemas locales, el acceso a los recursos de AWS es lo que muchas personas consideran que es el perímetro de Mi AWS. El objetivo del perímetro es verificar que se permite el acceso si la identidad es de confianza, el recurso es de confianza y la red es la que se espera. 

   1.  Defina e implemente los perímetros. 

       Siga los pasos que se describen en [Perimeter implementation](https://docs.aws.amazon.com/whitepapers/latest/building-a-data-perimeter-on-aws/perimeter-implementation.html) (Implementación del perímetro) del documento técnico Building a Perimeter on AWS (Construir un perímetro en AWS) para cada condición de autorización. Para obtener orientación prescriptiva sobre la protección de la capa de red, consulte [Protección de redes](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/protecting-networks.html). 

   1.  Supervise y alerte continuamente. 

       [AWS Identity and Access Management Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) ayuda a identificar los recursos y las cuentas de su organización que se comparten con entidades externas. Puede integrar [IAM Access Analyzer con AWS Security Hub CSPM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-securityhub-integration.html) para enviar y agregar los hallazgos sobre un recurso desde IAM Access Analyzer a Security Hub CSPM para ayudarle a analizar la postura de seguridad de su entorno. Para permitir la integración, habilite tanto IAM Access Analyzer como Security Hub CSPM en cada región de cada cuenta. También puede utilizar Reglas de AWS Config para auditar la configuración y alertar a quien corresponda utilizando [Amazon Q Developer in chat applications con AWS Security Hub CSPM](https://aws.amazon.com/blogs/security/enabling-aws-security-hub-integration-with-aws-chatbot/). A continuación, puede utilizar los [documentos de AWS Systems Manager Automation](https://docs.aws.amazon.com/config/latest/developerguide/remediation.html) para corregir los recursos no conformes. 

   1.  Para obtener orientación prescriptiva sobre la supervisión y alerta continua de los recursos compartidos externamente, consulte [Analizar el acceso público y entre cuentas](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_permissions_analyze_cross_account.html). 

1.  **Utilice el uso compartido de recursos en los servicios de AWS y restrínjalos de la forma oportuna.** 

    Muchos servicios de AWS le permiten compartir recursos con otra cuenta o dirigirse a un recurso de otra cuenta, como las [imágenes de máquina de Amazon (AMI)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) y [AWS Resource Access Manager (AWS RAM)](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html). Restrinja la API `ModifyImageAttribute` para especificar las cuentas de confianza con las que compartir la AMI. Especifique la condición `ram:RequestedAllowsExternalPrincipals` cuando utilice AWS RAM para restringir el uso compartido únicamente a su organización; de esta forma, ayuda a evitar el acceso desde identidades que no sean de confianza. Para obtener orientación prescriptiva y conocer otras consideraciones, consulte [Resource sharing and external targets](https://docs.aws.amazon.com/whitepapers/latest/building-a-data-perimeter-on-aws/perimeter-implementation.html) (Uso compartido de recursos y destinos externos). 

1.  **Utilice AWS RAM para compartir de forma segura en una cuenta o con otras Cuentas de AWS.** 

    [AWS RAM](https://aws.amazon.com/ram/) le ayuda a compartir de forma segura los recursos que ha creado con roles y usuarios de su cuenta y con otras Cuentas de AWS. En un entorno de varias cuentas, AWS RAM le permite crear un recurso una vez y compartirlo con otras cuentas. Este enfoque ayuda a reducir su sobrecarga operativa a la vez que proporciona coherencia, visibilidad y auditabilidad en integraciones con Amazon CloudWatch y AWS CloudTrail, algo que no tiene cuando utiliza el acceso entre cuentas. 

    Si tiene recursos que compartió anteriormente mediante una política basada en recursos, puede utilizar la API [PromoteResourceShareCreatedFromPolicy``](https://docs.aws.amazon.com/ram/latest/APIReference/API_PromoteResourceShareCreatedFromPolicy.html) o una equivalente para promover el recurso compartido a un recurso compartido completo de AWS RAM. 

    En algunos casos, puede que tenga que dar pasos adicionales para compartir recursos. Por ejemplo, para compartir una instantánea cifrada, necesita [compartir una clave AWS KMS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html#share-kms-key). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC03-BP07 Analizar el acceso público y entre cuentas](sec_permissions_analyze_cross_account.md) 
+  [SEC03-BP09 Compartir recursos de forma segura con terceros](sec_permissions_share_securely_third_party.md) 
+  [SEC05-BP01 Crear capas de red](sec_network_protection_create_layers.md) 

 **Documentos relacionados:** 
+ [Bucket owner granting cross-account permission to objects it does not own (El propietario del bucket concede permisos entre varias cuentas a objetos que no son de su propiedad)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-walkthroughs-managing-access-example4.html)
+ [How to use Trust Policies with IAM](https://aws.amazon.com/blogs/security/how-to-use-trust-policies-with-iam-roles/) (Cómo utilizar las políticas de confianza con IAM)
+ [Building Data Perimeter on AWS](https://docs.aws.amazon.com/whitepapers/latest/building-a-data-perimeter-on-aws/building-a-data-perimeter-on-aws.html) (Creación de un perímetro de datos en AWS)
+ [Cómo utilizar un ID externo al otorgar acceso a los recursos de AWS a terceros](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html)
+ [ Servicios de AWS que se pueden utilizar con AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services_list.html)
+ [ Establishing a data perimeter on AWS: Allow only trusted identities to access company data ](https://aws.amazon.com/blogs/security/establishing-a-data-perimeter-on-aws-allow-only-trusted-identities-to-access-company-data/) (Establecer un perímetro de datos en AWS: permitir que solo las identidades de confianza accedan a los datos de la empresa)

 **Vídeos relacionados: ** 
+ [Granular Access with AWS Resource Access Manager (Acceso detallado con AWS Resource Access Manager)](https://www.youtube.com/watch?v=X3HskbPqR2s)
+ [Securing your data perimeter with VPC endpoints (Protección del perímetro de datos con puntos de conexión de VPC)](https://www.youtube.com/watch?v=iu0-o6hiPpI)
+ [ Establishing a data perimeter on AWS](https://www.youtube.com/watch?v=SMi5OBjp1fI) (Establecer un perímetro de datos en AWS)

 **Herramientas relacionadas:** 
+ [ Data Perimeter Policy Examples ](https://github.com/aws-samples/data-perimeter-policy-examples) (Ejemplos de políticas del perímetro de datos)

# SEC03-BP09 Compartir recursos de forma segura con terceros
<a name="sec_permissions_share_securely_third_party"></a>

 La seguridad de su entorno en la nube no se limita a su organización. Su organización puede recurrir a terceros para administrar una parte de sus datos. La administración de permisos para el sistema administrado por terceros debe seguir la práctica del acceso justo a tiempo utilizando el principio del privilegio mínimo con credenciales temporales. Si colabora estrechamente con un tercero, podrán reducir juntos el alcance del impacto y el riesgo de un acceso no intencionado. 

 **Resultado deseado**: cualquiera puede utilizar las credenciales de larga duración de AWS Identity and Access Management (IAM), las claves de acceso de IAM y las claves secretas que están asociadas a un usuario siempre que las credenciales sean válidas y estén activas. El uso de un rol de IAM y credenciales temporales le ayuda a mejorar su postura de seguridad general al reducir el esfuerzo que supone mantener credenciales de larga duración, incluida la sobrecarga de administración y operativa que entrañan esos datos confidenciales. Al utilizar un identificador único universal (UUID) para el ID externo en la política de confianza de IAM y mantener bajo su control las políticas de IAM asociadas al rol de IAM, puede auditar y verificar que el acceso concedido a un tercero no sea demasiado permisivo. Para obtener orientación prescriptiva sobre el análisis de recursos que se comparten externamente, consulte [SEC03-BP07 Analizar el acceso público y entre cuentas](sec_permissions_analyze_cross_account.md). 

 **Antipatrones usuales:** 
+  Utilizar la política de confianza de IAM predeterminada sin ninguna condición. 
+  Utilizar credenciales y claves de acceso de IAM de larga duración. 
+  Reutilizar ID externos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Es posible que desee permitir que se compartan recursos fuera de AWS Organizations o conceder a un tercero acceso a su cuenta. Por ejemplo, es posible que un tercero le proporcione una solución de supervisión que necesite acceder a los recursos de su cuenta. En esos casos, cree un rol entre cuentas de IAM con solo los privilegios que necesite el tercero. Además, defina una política de confianza utilizando la [condición de ID externo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html). Cuando utilice un ID externo, usted o el tercero pueden generar un ID único para cada cliente, tercero o tenencia. El ID único no debe controlarlo nadie más que usted después de crearlo. El tercero debe implementar un proceso para relacionar el ID externo con el cliente de una forma segura, auditable y reproducible. 

 También puede utilizar [Funciones de IAM en cualquier lugar](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html) para administrar roles de IAM para aplicaciones fuera de AWS que utilicen API de AWS. 

 Si el tercero ya no necesita acceder a su entorno, elimine el rol. Procure no proporcionar credenciales de larga duración a terceros. Manténgase al tanto de otros servicios de AWS que admiten el uso compartido. Por ejemplo, AWS Well-Architected Tool permite [compartir una carga de trabajo](https://docs.aws.amazon.com/wellarchitected/latest/userguide/workloads-sharing.html) con otras Cuentas de AWS y [AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) le ayuda a compartir de forma segura un recurso de AWS de su propiedad con otras cuentas. 

 **Pasos para la implementación** 

1.  **Utilice roles entre cuentas para proporcionar acceso a cuentas externas.** 

    [Los roles entre cuentas](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_third-party.html) reducen la cantidad de información confidencial que almacenan las cuentas externas y terceros para dar servicio a sus clientes. Los roles entre cuentas le permiten conceder acceso a los recursos de AWS de su cuenta de forma segura a un tercero, como AWS Partner u otras cuentas de su organización, al tiempo que puede mantener la capacidad de administrar y auditar dicho acceso. 

    El tercero podría estar proporcionándole un servicio desde una infraestructura híbrida o extrayendo datos a una ubicación externa. [Funciones de IAM en cualquier lugar](https://docs.aws.amazon.com/rolesanywhere/latest/userguide/introduction.html) le ayuda a permitir que las cargas de trabajo de terceros interactúen de forma segura con sus cargas de trabajo de AWS y a reducir aún más la necesidad de utilizar credenciales de larga duración. 

    No debería utilizar credenciales de larga duración ni claves de acceso asociadas a usuarios para proporcionar acceso a cuentas externas. En su lugar, utilice roles entre cuentas para proporcionar el acceso entre cuentas. 

1.  **Utilice un ID externo con terceros.** 

    El uso de un [ID externo](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html) le permite designar quién puede asumir un rol en una política de confianza de IAM. La política de confianza puede exigir que el usuario que asume el rol reafirme la condición y el objetivo en el que opera. También proporciona un mecanismo para que el propietario de la cuenta permita que el rol se adopte únicamente en circunstancias específicas. La función principal del ID externo es abordar y prevenir el problema del [suplente confundido](https://docs.aws.amazon.com/blogs/security/how-to-use-external-id-when-granting-access-to-your-aws-resources/). 

    Utilice un ID externo si es propietario de una Cuenta de AWS y ha configurado un rol para un tercero que accede a otras Cuentas de AWS además de la suya, o cuando tenga que asumir roles en nombre de diferentes clientes. Trabaje con su tercero o AWS Partner para establecer una condición de ID externo que desee incluir en la política de confianza de IAM. 

1.  **Utilice ID externos universalmente únicos.** 

    Implemente un proceso que genere un valor único aleatorio para un ID externo, como un identificador universalmente único (UUID). El hecho de que un tercero reutilice los ID externos para distintos clientes no resuelve el problema del suplente confundido, ya que el cliente A podría ver los datos del cliente B utilizando el ARN de rol del cliente B junto con el ID externo duplicado. En un entorno de varios inquilinos, en el que un tercero da soporte a varios clientes con diferentes Cuentas de AWS, el tercero debe utilizar un ID único diferente como ID externo para cada Cuenta de AWS. El tercero es responsable de detectar los ID externos duplicados y de asignar de forma segura cada cliente a su ID externo correspondiente. El tercero debe realizar pruebas para verificar que solo puede asumir el rol cuando se especifica el ID externo. El tercero debería abstenerse de almacenar el ARN del rol del cliente y el ID externo hasta que se requiera el ID externo. 

    El ID externo no se trata como un secreto, pero no debe ser un valor fácil de adivinar, como un número de teléfono, un nombre o un ID de cuenta. Convierta el ID externo en un campo de solo lectura para que no pueda modificarse con el fin de suplantar la configuración. 

    El ID externo puede generarlo usted o el tercero. Defina un proceso para determinar quién es el responsable de generar el ID. Independientemente de la entidad que cree el ID externo, el tercero aplica la unicidad y los formatos de manera uniforme en todos los clientes. 

1.  **Declare obsoletas las credenciales de larga duración proporcionadas por el cliente.** 

    Declare obsoleto el uso de credenciales de larga duración y utilice roles de cuentas cruzadas o Funciones de IAM en cualquier lugar. Si debe utilizar credenciales de larga duración, establezca un plan para migrar al acceso basado en roles. Para obtener información sobre la administración de claves, consulte [Administración de identidades](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_identities_audit.html). Trabaje también con el equipo de su Cuenta de AWS y el tercero para establecer un runbook de mitigación de riesgos. Para obtener orientación prescriptiva sobre cómo responder y mitigar el impacto potencial de un incidente de seguridad, consulte [Respuesta a incidentes](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/incident-response.html). 

1.  **Verifique que la configuración tenga una orientación prescriptiva o esté automatizada.** 

    La política que se cree para el acceso entre cuentas en sus cuentas debe seguir el [principio del privilegio mínimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege). El tercero debe proporcionarle un documento de políticas de roles o un mecanismo de configuración automatizado que utilice una plantilla de AWS CloudFormation o algo equivalente. Esto reduce la posibilidad de que se produzcan errores asociados a la creación manual de políticas y ofrece un registro de seguimiento auditable Para obtener más información sobre el uso de una plantilla de CloudFormation para crear roles entre cuentas, consulte [Cross-Account Roles](https://aws.amazon.com/blogs/apn/tag/cross-account-roles/) (Roles entre cuentas). 

    El tercero debe proporcionar un mecanismo de configuración automatizado y auditable. Sin embargo, debería automatizar la configuración del rol con el documento de la política de roles que describe el acceso necesario. Con una plantilla de CloudFormation o algo equivalente, debería supervisar los cambios y utilizar la detección de desviaciones como parte de la práctica de auditoría. 

1.  **Tenga en cuenta los cambios.** 

    La estructura de su cuenta, su necesidad de utilizar al tercero o la oferta de servicios que este le proporciona pueden cambiar. Debe anticiparse a los cambios y a los fallos y planificar en consecuencia las personas, los procesos y la tecnología adecuados. Audite de forma periódica el nivel de acceso que proporciona e implemente métodos de detección que le alerten de cambios inesperados. Supervise y audite el uso del rol y el almacén de datos de los ID externos. Debe estar preparado para revocar el acceso del tercero, de forma temporal o permanente, a causa de cambios o patrones de acceso inesperados. Asimismo, mida el impacto en su operación de revocación, incluido el tiempo que lleva realizarla, las personas implicadas, el coste y el impacto en otros recursos. 

    Para obtener una orientación prescriptiva sobre los métodos de detección, consulte las prácticas recomendadas en [Detección](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/detection.html). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC02-BP02 Usar credenciales temporales](sec_identities_unique.md) 
+  [SEC03-BP05 Definir las barreras de protección de los permisos para su organización](sec_permissions_define_guardrails.md) 
+  [SEC03-BP06 Administrar el acceso en función del ciclo de vida](sec_permissions_lifecycle.md) 
+  [SEC03-BP07 Analizar el acceso público y entre cuentas](sec_permissions_analyze_cross_account.md) 
+ [ SEC04 Detección ](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/detection.html)

 **Documentos relacionados:** 
+ [Bucket owner granting cross-account permission to objects it does not own (El propietario del bucket concede permisos entre varias cuentas a objetos que no son de su propiedad)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-walkthroughs-managing-access-example4.html)
+ [How to use Trust Policies with IAM](https://aws.amazon.com/blogs/security/how-to-use-trust-policies-with-iam-roles/) roles (Cómo utilizar las políticas de confianza con roles de IAM)
+ [ Delegación del acceso entre Cuentas de AWS mediante roles de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_cross-account-with-roles.html)
+ [ How do I access resources in another Cuenta de AWS using AWS IAM?](https://aws.amazon.com/premiumsupport/knowledge-center/cross-account-access-iam/) (¿Cómo accedo a los recursos en otra cuenta de AWS a través de AWS IAM?)
+ [ Prácticas recomendadas de seguridad en IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html)
+ [ Lógica de evaluación de políticas entre cuentas ](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic-cross-account.html)
+ [Cómo utilizar un ID externo al otorgar acceso a los recursos de AWS a terceros](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html)
+ [ Collecting Information from AWS CloudFormation Resources Created in External Accounts with Custom Resources ](https://aws.amazon.com/blogs/apn/collecting-information-from-aws-cloudformation-resources-created-in-external-accounts-with-custom-resources/) (Recopilación de información de recursos de AWS CloudFormation creados en cuentas externas con recursos personalizados)
+ [ Securely Using External ID for Accessing AWS Accounts Owned by Others ](https://aws.amazon.com/blogs/apn/securely-using-external-id-for-accessing-aws-accounts-owned-by-others/) (Uso seguro del ID externo para acceder a cuentas de AWS propiedad de terceros)
+ [ Extend IAM roles to workloads outside of IAM with IAM Roles Anywhere ](https://aws.amazon.com/blogs/security/extend-aws-iam-roles-to-workloads-outside-of-aws-with-iam-roles-anywhere/) (Extienda los roles de IAM de AWS a cargas de trabajo fuera de AWS con Funciones de IAM en cualquier lugar)

 **Vídeos relacionados: ** 
+ [ How do I allow users or roles in a separate Cuenta de AWS access to my Cuenta de AWS? ](https://www.youtube.com/watch?v=20tr9gUY4i0)(¿Cómo permito que los usuarios o roles de una cuenta de AWS independiente accedan a mi cuenta de AWS?
+ [AWS re:Invent 2018: Become an IAM Policy Master in 60 Minutes or Less ](https://www.youtube.com/watch?v=YQsK4MtsELU) (AWS re:Invent 2018: Consiga dominar las políticas de IAM en 60 minutos o menos)
+ [AWS Knowledge Center Live: IAM Best Practices and Design Decisions ](https://www.youtube.com/watch?v=xzDFPIQy4Ks)(Centro de conocimiento de AWS en directo: Prácticas recomendadas y decisiones de diseño de IAM)

 **Ejemplos relacionados:** 
+ [ Well-Architected Lab - Lambda cross account IAM role assumption (Level 300) ](https://www.wellarchitectedlabs.com/security/300_labs/300_lambda_cross_account_iam_role_assumption/) (Laboratorio de Well-Architected: Asunción de roles de IAM entre cuentas de Lambda [Nivel 300])
+ [ Configure cross-account access to Amazon DynamoDB ](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/configure-cross-account-access-to-amazon-dynamodb.html) (Configurar el acceso entre cuentas a Amazon DynamoDB)
+ [AWS STS Network Query Tool ](https://github.com/aws-samples/aws-sts-network-query-tool)(Herramienta de consulta de red AWS STS)

# Detección
<a name="a-detective-controls"></a>

**Topics**
+ [SEC 4 ¿Cómo detecta e investiga los eventos de seguridad?](sec-04.md)

# SEC 4 ¿Cómo detecta e investiga los eventos de seguridad?
<a name="sec-04"></a>

Capte y analice eventos de registros y métricas para obtener visibilidad. Tome medidas sobre eventos de seguridad y posibles amenazas para ayudar a proteger su carga de trabajo.

**Topics**
+ [SEC04-BP01 Configurar el registro de servicios y aplicaciones](sec_detect_investigate_events_app_service_logging.md)
+ [SEC04-BP02 Análisis centralizados de registros, hallazgos y métricas](sec_detect_investigate_events_analyze_all.md)
+ [SEC04-BP03 Automatizar la respuesta a eventos](sec_detect_investigate_events_auto_response.md)
+ [SEC04-BP04 Implementar eventos de seguridad procesables](sec_detect_investigate_events_actionable_events.md)

# SEC04-BP01 Configurar el registro de servicios y aplicaciones
<a name="sec_detect_investigate_events_app_service_logging"></a>

Retenga los registros de eventos de seguridad de servicios y aplicaciones. Se trata de un principio fundamental de seguridad en casos de uso de auditoría, investigación y uso operativo, y un requisito de seguridad común basado en las normas, políticas y procedimientos de gobernanza, riesgo y cumplimiento (GRC).

 **Resultado deseado:** una organización debe ser capaz de recuperar de forma fiable y uniforme los registros de eventos de seguridad de los servicios y aplicaciones de AWS en el momento oportuno cuando sea necesario realizar un proceso o cumplir una obligación interna (por ejemplo, la respuesta a un incidente de seguridad). Considere la posibilidad de centralizar los registros para obtener mejores resultados operativos. 

 **Antipatrones usuales:** 
+  Los registros se almacenan para siempre o se eliminan demasiado pronto. 
+  Todo el mundo puede acceder a los registros. 
+  Depender por completo de procesos manuales para la gobernanza y el uso de los registros. 
+  Almacenar todos y cada uno de los tipos de registros por si fueran necesarios. 
+  Comprobar la integridad de los registros solo cuando es necesario. 

 **Ventajas de esta práctica recomendada:** implementar un mecanismo de análisis de causa raíz (RCA) para los incidentes de seguridad y una fuente de pruebas para sus obligaciones de gobernanza, riesgo y conformidad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Durante una investigación de seguridad u otros casos de uso basados en sus requisitos, necesita poder revisar los registros correspondientes para registrar y comprender todo el alcance y la cronología del incidente. También necesita los registros para generar alertas que indican que se han producido determinadas acciones de interés. Es fundamental seleccionar, habilitar, almacenar y configurar mecanismos de consulta y recuperación, así como de alerta. 

 **Pasos para la implementación** 
+  **Seleccione y habilite las fuentes de registro.** Antes de una investigación de seguridad, necesita obtener los registros relevantes para reconstruir de forma reatroctiva la actividad que se ha producido en una Cuenta de AWS. Seleccione y habilite las fuentes de registros relevantes para sus cargas de trabajo. 

   Los criterios de selección de las fuentes de registros deben basarse en los casos de uso que requiera su negocio. Establezca un registro de seguimiento para cada Cuenta de AWS mediante AWS CloudTrail o un registro de seguimiento de AWS Organizations y, para ello, configure un bucket de Amazon S3. 

   AWS CloudTrail es un servicio de registro que rastrea las llamadas a la API que se realizan en una Cuenta de AWS y captura la actividad de los servicios de AWS. Está habilitado de manera predeterminada y retiene durante 90 días los eventos de administración que se pueden [recuperar a través del historial de eventos de CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) mediante la Consola de administración de AWS, la AWS CLI o un SDK de AWS. Si desea una retención y una visibilidad de los eventos de datos mayores, cree un [registro de seguimiento de CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html) y asócielo a un bucket de Amazon S3 y, opcionalmente, a un grupo de registros de Amazon CloudWatch. Como alternativa, puede crear un [CloudTrail Lake](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-lake.html), que retiene los registros de CloudTrail hasta siete años y dispone de una utilidad de consulta basada en SQL. 

   AWS recomienda a los clientes que utilizan una VPC que habiliten los registros del tráfico de red y de DNS mediante los [registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) y los [registros de consultas de solucionador de Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-query-logs.html), respectivamente, y que los transmitan por streaming a un bucket de Amazon S3 o a un grupo de registros de CloudWatch. Puede crear un registro de flujo de VPC para una VPC, una subred o una interfaz de red. En el caso de los registros de flujo de VPC, puede elegir cómo y dónde utilizar los registros de flujo para reducir costes. 

   Los registros de AWS CloudTrail, los registros de flujo de VPC y los registros de consulta del solucionador de Route 53 son las fuentes de registros básicas que facilitan las investigaciones de seguridad en AWS. También puede utilizar [Amazon Security Lake](https://docs.aws.amazon.com/security-lake/latest/userguide/what-is-security-lake.html) para recopilar, normalizar y almacenar estos datos de registros en los formatos Apache Parquet y Open Cybersecurity Schema Framework (OCSF), que están listos para su consulta. Security Lake también admite otros registros de AWS y registros de fuentes de terceros. 

   Los servicios de AWS pueden generar registros que no capturan las fuentes de registros básicas, como los registros de Elastic Load Balancing, los registros de AWS WAF, los registros del registrador de AWS Config, los hallazgos de Amazon GuardDuty, los registros de auditoría de Amazon Elastic Kubernetes Service (Amazon EKS) y los registros del sistema operativo y las aplicaciones de las instancias de Amazon EC2. Para obtener una lista completa de las opciones de registro y supervisión, consulte [Appendix A: Cloud capability deﬁnitions – Logging and Events](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/logging-and-events.html) (Apéndice A: Deﬁniciones de las capacidades de la nube - Registro y eventos) de [AWS Security Incident Response Guide](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/detection.html) (Guía de respuesta a incidentes de seguridad de AWS). 
+  **Investigue las capacidades de registro de cada servicio y aplicación de AWS:** cada servicio y aplicación de AWS le proporciona opciones para el almacenamiento de registros, cada una de las cuales tiene sus propias capacidades de retención y ciclo de vida. Los dos servicios de almacenamiento de registros más comunes son Amazon Simple Storage Service (Amazon S3) y Amazon CloudWatch. Para periodos de retención largos, se recomienda utilizar Amazon S3 por su rentabilidad y la flexibilidad de sus ciclos de vida. Si la opción de registro principal es Amazon CloudWatch Logs, quizá debería considerar la posibilidad de archivar los registros a los que se accede con menos frecuencia en Amazon S3. 
+  **Seleccione el almacenamiento de registros:** la elección del almacenamiento de registros suele estar relacionada con la herramienta de consulta que utilice, las capacidades de retención, la familiaridad con él y el coste. Las principales opciones para el almacenamiento de registros son un bucket de Amazon S3 o un grupo de CloudWatch Log. 

   Un bucket de Amazon S3 es un almacenamiento rentable y duradero que tiene una política de ciclo de vida opcional. Los registros almacenados en buckets de Amazon S3 pueden consultarse a través de servicios como Amazon Athena. 

   Un grupo de CloudWatch Logs ofrece un almacenamiento duradero y una utilidad de consulta integrada a través de CloudWatch Logs Insights. 
+  **Identifique un periodo de retención de registros adecuado:** cuando utilice un bucket de Amazon S3 o un grupo de CloudWatch Logs para almacenar registros, deberá establecer ciclos de vida adecuados para cada fuente de registros con el fin de optimizar los costes de almacenamiento y recuperación. Por lo general, los clientes tienen entre tres meses y un año de registros disponibles para su consulta, con un periodo de retención de hasta siete años. La elección de la disponibilidad y el periodo de retención debe ajustarse a sus requisitos de seguridad y a una combinación de requisitos legales, reglamentarios y empresariales. 
+  **Habilite el registro para cada servicio y aplicación de AWS con las políticas de retención y ciclo de vida adecuadas:** para cada servicio o aplicación de AWS de su organización, busque la guía de configuración de registro específica: 
  + [ Configuración de registros de seguimiento de AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
  + [ Configuración de registros de flujo de VPC ](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html)
  + [ Configuración de exportaciones de hallazgos de Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_exportfindings.html)
  + [ Configuración de grabaciones de AWS Config](https://docs.aws.amazon.com/systems-manager/latest/userguide/quick-setup-config.html)
  + [ Configuración del tráfico de ACL web de AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/logging.html)
  + [ Configuración de registros del tráfico de red de AWS Network Firewall](https://docs.aws.amazon.com/network-firewall/latest/developerguide/firewall-logging.html)
  + [ Configuración de registros de acceso de Elastic Load Balancing ](https://docs.aws.amazon.com/)
  + [ Configuración de registros de consultas del solucionador de Amazon Route 53 ](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-query-logs.html)
  + [ Configuración de registros de Amazon RDS ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_LogAccess.html)
  + [ Configuración de registros del plano de control de Amazon EKS ](https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html)
  + [ Configuración del agente de Amazon CloudWatch para instancias de Amazon EC2 y servidores locales ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)
+  **Seleccione e implemente mecanismos de consulta para los registros:** para las consultas de registros, puede utilizar [CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) para los datos almacenados en los grupos de CloudWatch Logs y [Amazon Athena](https://aws.amazon.com/athena/) y [Amazon OpenSearch Service](https://aws.amazon.com/opensearch-service/) para los datos almacenados en Amazon S3. También puede utilizar herramientas de consulta de terceros, como un servicio de administración de eventos e información de seguridad (SIEM). 

   En el proceso de selección de una herramienta de consulta de registros, se deben tener en cuenta los aspectos relacionados con las personas, los procesos y la tecnología de sus operaciones de seguridad. Seleccione una herramienta que cumpla los requisitos operativos, empresariales y de seguridad, y que sea accesible y pueda mantenerse a largo plazo. Tenga en cuenta que las herramientas de consulta de registros funcionan de forma óptima cuando el número de registros a analizar se mantiene dentro de los límites de la herramienta. No es raro disponer de varias herramientas de consulta debido a limitaciones técnicas o de costes. 

   Por ejemplo, podría utilizar una herramienta de administración de eventos e información de seguridad (SIEM) de terceros para realizar consultas en los últimos 90 días de datos, pero utilizar Athena para realizar consultas anteriores a esos 90 días debido al coste de la ingestión de registros de un SIEM. Independientemente de cuál sea la implementación, compruebe que su enfoque permite reducir al mínimo el número de herramientas necesarias para maximizar la eficiencia operativa, especialmente durante la investigación de un evento de seguridad. 
+  **Utilice registros para las alertas: ** AWS proporciona alertas a través de varios servicios de seguridad: 
  +  [AWS Config](https://aws.amazon.com/config/) supervisa y registra las configuraciones de sus recursos de AWS y le permite automatizar la evaluación y la corrección con respecto a las configuraciones deseadas. 
  +  [Amazon GuardDuty](https://aws.amazon.com/guardduty/) es un servicio de detección de amenazas que supervisa continuamente la actividad maliciosa y el comportamiento no autorizado para proteger sus Cuentas de AWS y cargas de trabajo. GuardDuty ingiere, agrega y analiza información de fuentes, como eventos de administración y datos de AWS CloudTrail, registros DNS, registros de flujo de VPC y registros de auditoría de Amazon EKS. GuardDuty extrae secuencias de datos independientes directamente de CloudTrail, los registros de flujo de VPC, los registros de consultas de DNS y Amazon EKS. No es necesario que administre las políticas de los buckets de Amazon S3 ni que modifique la forma en que recopila y almacena los registros. Aun así, es recomendable que retenga estos registros para sus propios fines de investigación y conformidad. 
  +  [AWS Security Hub CSPM](https://aws.amazon.com/security-hub/) proporciona un único lugar en el que se agregan, organizan y priorizan las alertas de seguridad, o los hallazgos, desde varios servicios de AWS y productos de terceros opcionales para ofrecerle una vista completa de las alertas de seguridad y los estados de conformidad. 

   También puede utilizar motores de generación de alertas personalizados para alertas de seguridad que no cubran estos servicios o para alertas específicas relevantes para su entorno. Para obtener información sobre la creación de estas alertas y detecciones, consulte [Detection (Detección) en AWS Security Incident Response Guide](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/detection.html) (Guía de respuesta a incidentes de seguridad de AWS). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC04-BP02 Análisis centralizados de registros, hallazgos y métricas](sec_detect_investigate_events_analyze_all.md) 
+  [SEC07-BP04 Definir la administración del ciclo de vida de los datos](sec_data_classification_lifecycle_management.md) 
+  [SEC10-BP06: Implementar previamente herramientas](sec_incident_response_pre_deploy_tools.md) 

 **Documentos relacionados:** 
+ [AWS Security Incident Response Guide](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/aws-security-incident-response-guide.html) (Guía de respuesta ante incidentes de seguridad de AWS)
+ [ Cómo comenzar a utilizar Amazon Security Lake ](https://aws.amazon.com/security-lake/getting-started/)
+ [ Introducción a Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_GettingStarted.html)
+  [Soluciones de socios de seguridad: registro y monitorización](https://aws.amazon.com/security/partner-solutions/#logging-monitoring) 

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2022 - Introducing Amazon Security Lake ](https://www.youtube.com/watch?v=V7XwbPPjXSY)(re:Invent 2022: Introducción a Amazon Security Lake)

 **Ejemplos relacionados:** 
+ [ Assisted Log Enabler for AWS](https://github.com/awslabs/assisted-log-enabler-for-aws/)(Habilitador de registro asistido para AWS)
+ [AWS Security Hub CSPM Findings Historical Export ](https://github.com/aws-samples/aws-security-hub-findings-historical-export)(Exportación de hallazgos históricos de AWS Security Hub)

 **Herramientas relacionadas:** 
+ [ Snowflake for Cybersecurity ](https://www.snowflake.com/en/data-cloud/workloads/cybersecurity/)

# SEC04-BP02 Análisis centralizados de registros, hallazgos y métricas
<a name="sec_detect_investigate_events_analyze_all"></a>

 Los equipos de operaciones de seguridad confían en la recopilación de registros y el uso de herramientas de búsqueda para descubrir posibles eventos de interés, que podrían indicar una actividad no autorizada o un cambio no intencionado. Sin embargo, solo con analizar los datos recopilados y procesar manualmente la información no basta para satisfacer el volumen de información procedente de arquitecturas complejas. Solo con los análisis y los informes no se facilita la asignación de los recursos adecuados para trabajar en un evento a tiempo. 

Una práctica recomendada para crear un equipo de operaciones de seguridad eficaz es integrar en profundidad el flujo de hallazgos y eventos de seguridad en un sistema de flujo de trabajo y notificación, como un sistema de emisión de tiques, un sistema de errores o problemas u otro sistema de administración de eventos e información de seguridad (SIEM, por sus siglas en inglés). De esta forma, se saca el flujo de trabajo de informes estáticos y de correo electrónico, y le permite enrutar, escalar y administrar eventos o hallazgos. Numerosas organizaciones ya integran también alertas de seguridad en sus plataformas de productividad de desarrolladores, de colaboración o de chats. Para las organizaciones que estén comenzando a incorporar la automatización, un sistema de tickets de baja latencia basado en API ofrece una flexibilidad considerable al planificar qué automatizar primero.

Esta práctica recomendada no se aplica solo a los eventos de seguridad generados a partir de mensajes de registro que muestran eventos de red o actividad del usuario, sino también a partir de cambios detectados en la propia infraestructura. La capacidad de detectar cambios, determinar su conveniencia y luego enrutar esa información al flujo de trabajo de corrección adecuado resulta esencial para mantener y validar una arquitectura segura en el contexto de los cambios en los que la naturaleza de su indeseabilidad es lo suficientemente sutil como para que su ejecución no pueda evitarse actualmente con una combinación de configuraciones de AWS Identity and Access Management (IAM) y AWS Organizations.

Amazon GuardDuty y AWS Security Hub CSPM ofrecen mecanismos de agregación, desduplicación y análisis para los registros que también están disponibles mediante otros servicios de AWS. GuardDuty ingiere, agrega y analiza información de fuentes como eventos de administración y datos de AWS CloudTrail, registros DNS de VPC y registros de flujo de VPC. Security Hub CSPM puede ingerir, agregar y analizar los resultados de GuardDuty, AWS Config, Amazon Inspector, Amazon Macie y AWS Firewall Manager, y un número significativo de productos de seguridad de terceros disponibles en AWS Marketplace y, si está convenientemente compilado, su propio código. Tanto GuardDuty como Security Hub CSPM tienen un modelo de administrador-miembro que puede combinar los hallazgos y los conocimientos de varias cuentas, los clientes con un SIEM local suelen utilizar Security Hub CSPM como registro del lado de AWS y un preprocesador y agregador de alertas a partir del que pueden ingerir Amazon EventBridge mediante un procesador y reenviador basado en AWS Lambda.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Evaluar las capacidades de procesamiento de registros: evalúe de las opciones disponibles para procesar registros. 
  +  [Usar Amazon OpenSearch Service para registrar y supervisar (casi) todo ](https://d1.awsstatic.com/whitepapers/whitepaper-use-amazon-elasticsearch-to-log-and-monitor-almost-everything.pdf)
  +  [Búsqueda de un socio especializado en soluciones de registro y monitoreo ](https://aws.amazon.com/security/partner-solutions/#Logging_and_Monitoring)
+  Como punto de partida para el análisis de registros de CloudTrail, pruebe con Amazon Athena. 
  + [ Configuración de Athena para analizar registros de CloudTrail ](https://docs.aws.amazon.com/athena/latest/ug/cloudtrail-logs.html)
+  Implementar el registro centralizado en AWS: consulte la siguiente solución de ejemplo de AWS para centralizar el registro procedente de varias fuentes. 
  +  [Solución de centralización de registros ](https://aws.amazon.com/solutions/centralized-logging/https://aws.amazon.com/solutions/centralized-logging/)
+  Implementar el registro centralizado con un socio: los socios de APN tienen soluciones que le ayudarán a analizar los registros de forma centralizada. 
  + [ Registro y supervisión ](https://aws.amazon.com/security/partner-solutions/#Logging_and_Monitoring)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Soluciones de AWS: registro centralizado ](https://aws.amazon.com/answers/logging/centralized-logging/)
+  [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html) 
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+  [Amazon EventBridge ](https://aws.amazon.com/eventbridge)
+ [ Introducción: Amazon CloudWatch Logs ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_GettingStarted.html)
+  [Soluciones de socios de seguridad: registro y monitorización](https://aws.amazon.com/security/partner-solutions/#logging-monitoring) 

 **Vídeos relacionados:** 
+ [ Supervisión centralizada de la configuración de recursos y el cumplimiento ](https://youtu.be/kErRv4YB_T4)
+  [Corrección de los hallazgos de Amazon GuardDuty y AWS Security Hub CSPM](https://youtu.be/nyh4imv8zuk)
+ [ Administración de amenazas en la nube: Amazon GuardDuty y AWS Security Hub CSPM](https://youtu.be/vhYsm5gq9jE)

# SEC04-BP03 Automatizar la respuesta a eventos
<a name="sec_detect_investigate_events_auto_response"></a>

 El uso de la automatización para investigar y corregir eventos reduce el esfuerzo y los posibles errores humanos, y le permite escalar sus capacidades de investigación. Las revisiones frecuentes le ayudarán a ajustar sus herramientas de automatización y a aplicar iteraciones continuas. 

En AWS, la investigación de eventos de interés y la información sobre cambios potencialmente inesperados en un flujo de trabajo automatizado se pueden lograr con Amazon EventBridge. Este servicio ofrece un motor de reglas escalable diseñado para gestionar tanto formatos de eventos nativos de AWS (p. ej., eventos de AWS CloudTrail) como eventos personalizados que puede generar a partir de su aplicación. Amazon GuardDuty también le permite enrutar eventos a un sistema de flujo de trabajo para esos sistemas de respuesta a incidentes de creación (AWS Step Functions) o a una cuenta de seguridad centralizada, o a un bucket para seguir analizándolos.

La detección de cambios y el enrutamiento de esta información al flujo de trabajo correcto también se puede llevar a cabo utilizando Reglas de AWS Config y [paquetes de conformidad](https://docs.aws.amazon.com/config/latest/developerguide/conformance-packs.html). AWS Config detecta cambios en los servicios del ámbito (aunque con una mayor latencia que EventBridge) y genera eventos que se pueden analizar con Reglas de AWS Config para restaurar, aplicar la política de conformidad y reenviar información a sistemas, como plataformas de administración de cambios y sistemas de emisión de tiques operativos. Además de escribir sus propias funciones de Lambda para responder a eventos de AWS Config, puede utilizar el [kit de desarrollo de Reglas de AWS Config](https://github.com/awslabs/aws-config-rdk)y una [biblioteca de código abierto](https://github.com/awslabs/aws-config-rules) Reglas de AWS Config. Los paquetes de conformidad son una colección de Reglas de AWS Config y acciones de corrección que se despliegan como una entidad única elaborada como una plantilla YAML. A [plantilla de paquete de conformidad de ejemplo](https://docs.aws.amazon.com/config/latest/developerguide/operational-best-practices-for-wa-Security-Pillar.html) está disponible para el pilar de seguridad del modelo Well-Architected.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implementar alertas automatizadas con GuardDuty: GuardDuty es un servicio de detección de amenazas que supervisa sin descanso cualquier actividad malintencionada o comportamiento no autorizado para proteger sus cargas de trabajo y sus Cuentas de AWS. Active GuardDuty y configure alertas automatizadas. 
+  Automatizar los procesos de investigación: desarrolle procesos automatizados que investiguen un evento y envíen la información a un administrador para ganar tiempo. 
  + [ Laboratorio: experiencia práctica con Amazon GuardDuty ](https://hands-on-guardduty.awssecworkshops.com/)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Soluciones de AWS: registro centralizado ](https://aws.amazon.com/answers/logging/centralized-logging/)
+  [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html) 
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+  [Amazon EventBridge ](https://aws.amazon.com/eventbridge)
+ [ Introducción: Amazon CloudWatch Logs ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_GettingStarted.html)
+  [Soluciones de socios de seguridad: registro y monitorización](https://aws.amazon.com/security/partner-solutions/#logging-monitoring) 
+ [ Configuración de Amazon GuardDuty ](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_settingup.html)

 **Vídeos relacionados:** 
+ [ Supervisión centralizada de la configuración de recursos y el cumplimiento ](https://youtu.be/kErRv4YB_T4)
+  [Corrección de los hallazgos de Amazon GuardDuty y AWS Security Hub CSPM](https://youtu.be/nyh4imv8zuk)
+ [ Administración de amenazas en la nube: Amazon GuardDuty y AWS Security Hub CSPM](https://youtu.be/vhYsm5gq9jE)

 **Ejemplos relacionados:** 
+  [Laboratorio: Despliegue automatizado de controles de detección ](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_Detective_Controls/README.html)

# SEC04-BP04 Implementar eventos de seguridad procesables
<a name="sec_detect_investigate_events_actionable_events"></a>

 Cree alertas que se envíen a su equipo y que este pueda actuar sobre ellas. Asegúrese de que las alertas incluyen información relevante para que el equipo pueda actuar. Para cada mecanismo de detección que tenga, también debería tener un proceso, en forma de [runbook](https://wa.aws.amazon.com/wat.concept.runbook.en.html) o bien [manual](https://wa.aws.amazon.com/wat.concept.playbook.en.html), para realizar la investigación. Por ejemplo, cuando se activa [Amazon GuardDuty](http://aws.amazon.com/guardduty), se generan diferentes [resultados](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_findings.html). Debe tener una entrada de runbook para cada tipo de resultado, por ejemplo, si se detecta un [troyano](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_trojan.html) , su runbook tiene instrucciones simples que indican a alguien que debe investigarlo y solucionarlo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Descubra las métricas disponibles para los servicios de AWS: descubra las métricas disponibles a través de Amazon CloudWatch para los servicios que está utilizando. 
  +  [Documentación de servicio de AWS](https://aws.amazon.com/documentation/) 
  +  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 
+  Configure las alarmas de Amazon CloudWatch. 
  +  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+  [Amazon EventBridge ](https://aws.amazon.com/eventbridge)
+  [Soluciones de socios de seguridad: registro y monitorización](https://aws.amazon.com/security/partner-solutions/#logging-monitoring) 

 **Vídeos relacionados:** 
+ [ Centrally Monitoring Resource Configuration and Compliance (Supervisión centralizada de la configuración de recursos y el cumplimiento) ](https://youtu.be/kErRv4YB_T4)
+  [Remediating Amazon GuardDuty and AWS Security Hub CSPM Findings (Corrección de los resultados de Amazon GuardDuty y AWS Security Hub CSPM) ](https://youtu.be/nyh4imv8zuk)
+ [ Threat management in the cloud: Amazon GuardDuty and AWS Security Hub CSPM (Administración de amenazas en la nube: Amazon GuardDuty y AWS Security Hub CSPM) ](https://youtu.be/vhYsm5gq9jE)

# Protección de la infraestructura
<a name="a-infrastructure-protection"></a>

**Topics**
+ [SEC 5 ¿Cómo protege sus redes?](sec-05.md)
+ [SEC 6 ¿Cómo protege sus recursos informáticos?](sec-06.md)

# SEC 5 ¿Cómo protege sus redes?
<a name="sec-05"></a>

Cualquier carga de trabajo que tenga forma de conexión de red, ya sea internet o una red privada, requiere varias capas de defensa para protegerse de amenazas internas y externas basadas en la red.

**Topics**
+ [SEC05-BP01 Crear capas de red](sec_network_protection_create_layers.md)
+ [SEC05-BP02 Controlar el tráfico en todas las capas](sec_network_protection_layered.md)
+ [SEC05-BP03 Automatizar la protección de la red](sec_network_protection_auto_protect.md)
+ [SEC05-BP04 Implementar inspección y protección](sec_network_protection_inspection.md)

# SEC05-BP01 Crear capas de red
<a name="sec_network_protection_create_layers"></a>

Agrupe por capas los componentes que tienen los mismos requisitos de confidencialidad para minimizar el alcance potencial del impacto de un acceso no autorizado. Por ejemplo, un clúster de base de datos que está en una nube virtual privada (VPC) y no necesita acceso a Internet debe colocarse en subredes sin enrutamiento hacia Internet o desde Internet. El tráfico solo debe salir desde el siguiente recurso adyacente menos confidencial. Supongamos que tiene una aplicación web detrás de un equilibrador de carga. Su base de datos no debería ser accesible directamente desde este equilibrador de carga. Solo deberían tener acceso directo a su base de datos la lógica empresarial o el servidor web. 

 **Resultado deseado:** crear una red en capas. Las redes en capas ayudan a agrupar de forma lógica componentes de red similares. También reducen el alcance potencial del impacto que supondría un acceso no autorizado a la red. Una red que se haya configurado por capas de la forma adecuada hace más difícil que los usuarios no autorizados se dirijan a recursos adicionales dentro de su entorno de AWS. Además de asegurar las rutas de red internas, también debe proteger la periferia de su red, como las aplicaciones web y los puntos de conexión de API. 

 **Antipatrones usuales:** 
+  Crear todos los recursos en una única VPC o subred. 
+  Utilizar grupos de seguridad demasiado permisivos. 
+  No utilizar subredes. 
+  Permitir el acceso directo a almacenes de datos como bases de datos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los componentes como instancias Amazon Elastic Compute Cloud (Amazon EC2), clústeres de base de datos de Amazon Relational Database Service (Amazon RDS) y funciones AWS Lambda que comparten requisitos de accesibilidad pueden segmentarse en capas formadas por subredes. Considere la posibilidad de desplegar cargas de trabajo sin servidor, como funciones [Lambda](https://docs.aws.amazon.com/lambda/index.html), dentro de una VPC o detrás de un [Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html). Las tareas de [AWS Fargate](https://aws.amazon.com/fargate/getting-started/) que no tengan la necesidad de acceder a Internet deben colocarse en subredes sin una ruta hacia o desde Internet. Este enfoque por capas mitiga el impacto de una configuración errónea de una sola capa, que podría permitir un acceso no intencionado. Para AWS Lambda, puede ejecutar sus funciones en su VPC a fin de aprovechar los controles basados en VPC. 

 Si la conectividad de red incluye miles de VPC, Cuentas de AWS y redes locales, debe utilizar [AWS Transit Gateway](https://aws.amazon.com/transit-gateway/). Transit Gateway actúa como un centro que controla cómo se enruta el tráfico entre todas las redes conectadas, que actúan como radios. El tráfico entre Amazon Virtual Private Cloud (Amazon VPC) y Transit Gateway permanece en la red privada de AWS, lo que reduce la exposición externa a usuarios no autorizados y a posibles problemas de seguridad. El emparejamiento interregional de Transit Gateway también cifra el tráfico interregional sin ningún punto único de fallo ni cuello de botella en el ancho de banda. 

 **Pasos para la implementación** 
+  **Utilice [Reachability Analyzer](https://docs.aws.amazon.com/vpc/latest/reachability/how-reachability-analyzer-works.html) para analizar la ruta entre un origen y un destino en función de la configuración: **Reachability Analyzer le permite automatizar la verificación de la conectividad hacia y desde los recursos conectados a la VPC. Tenga en cuenta que, para realizar este análisis, se revisa la configuración (no se envían paquetes de red). 
+  **Utilice el analizador de acceso de la red de [Amazon VPC](https://docs.aws.amazon.com/vpc/latest/network-access-analyzer/what-is-network-access-analyzer.html) para identificar el acceso no intencionado de la red a los recursos:** el analizador de acceso de la red de Amazon VPC le permite especificar sus requisitos de acceso a la red e identificar posibles rutas de la red. 
+  **Considere si es necesario que los recursos se encuentren en una subred pública:** no coloque recursos en subredes públicas de su VPC a menos que sea absolutamente necesario que reciban tráfico de red de fuentes públicas. 
+  **Cree [subredes en sus VPC](https://docs.aws.amazon.com/vpc/latest/userguide/how-it-works.html):** cree subredes para cada capa de red (en grupos que incluyan varias zonas de disponibilidad) para mejorar la microsegmentación. Compruebe también que ha asociado las [tablas de enrutamiento](https://docs.aws.amazon.com/vpc/latest/userguide/how-it-works.html) correctas con sus subredes para controlar el enrutamiento y la conectividad a Internet. 
+  **Utilice [AWS Firewall Manager](https://docs.aws.amazon.com/waf/latest/developerguide/security-group-policies.html) para administrar sus grupos de seguridad de VPC:** AWS Firewall Manager ayuda a disminuir la carga de administración que supone el uso de varios grupos de seguridad. 
+  **Utilice [AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/waf-chapter.html) para protegerse contra vulnerabilidades web comunes:** AWS WAF puede ayudar a mejorar la seguridad de la periferia inspeccionando el tráfico en busca de vulnerabilidades web comunes, como la inyección de código SQL. También le permite restringir el tráfico de direcciones IP procedentes de determinados países o ubicaciones geográficas. 
+  **Utilice [Amazon CloudFront](https://docs.aws.amazon.com/cloudfront/index.html) como red de distribución de contenido (CDN):** Amazon CloudFront puede ayudarle a acelerar su aplicación web al almacenar los datos más cerca de sus usuarios. También puede mejorar la seguridad de la periferia al utilizar HTTPS, restringir el acceso a zonas geográficas y garantizar que el tráfico de red solo pueda acceder a los recursos cuando se enrute a través de CloudFront. 
+  **Utilice [Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html) cuando cree interfaces de programación de aplicaciones (API):**Amazon API Gateway ayuda a publicar, supervisar y proteger las API de REST, HTTPS y WebSocket. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Firewall Manager](https://docs.aws.amazon.com/waf/latest/developerguide/fms-chapter.html) 
+ [ Amazon Inspector ](https://aws.amazon.com/inspector)
+  [Seguridad de Amazon VPC](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Security.html) 
+ [ Reachability Analyzer ](https://docs.aws.amazon.com/vpc/latest/reachability/what-is-reachability-analyzer.html)
+ [ Amazon VPC Network Access Analyzer ](https://docs.aws.amazon.com/vpc/latest/network-access-analyzer/getting-started.html#run-analysis) (Analizador de acceso de la red de Amazon Virtual Private Cloud)

 **Vídeos relacionados: ** 
+  [AWS Transit Gateway reference architectures for many VPCs ](https://youtu.be/9Nikqn_02Oc)(Arquitecturas de referencia de AWS Transit Gateway para muchas VPC)
+  [Application Acceleration and Protection with Amazon CloudFront, AWS WAF, and AWS Shield](https://youtu.be/0xlwLEccRe0) (Aceleración y protección de aplicaciones con Amazon CloudFront, AWS WAF y AWS Shield) 
+ [AWS re:Inforce 2022 - Validate effective network access controls on AWS](https://www.youtube.com/watch?v=aN2P2zeQek0) (re:Inforce 2022: Validar la eficacia de los controles de acceso a la red en AWS)
+ [AWS re:Inforce 2022 - Advanced protections against bots using AWS WAF](https://www.youtube.com/watch?v=pZ2eftlwZns)(re:Inforce 2022: Protecciones avanzadas contra bots con AWS WAF)

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Automated Deployment of VPC](https://www.wellarchitectedlabs.com/Security/200_Automated_Deployment_of_VPC/README.html) (Laboratorio de Well-Architected: Despliegue automatizado de VPC) 
+ [ Taller: Amazon VPC Network Access Analyzer ](https://catalog.us-east-1.prod.workshops.aws/workshops/cf2ecaa4-e4be-4f40-b93f-e9fe3b1c1f64) (Analizador de acceso de la red de Amazon VPC)

# SEC05-BP02 Controlar el tráfico en todas las capas
<a name="sec_network_protection_layered"></a>

  Al diseñar su topología de red, debería examinar los requisitos de conectividad de cada componente. Por ejemplo, si un componente requiere accesibilidad a Internet (entrante y saliente), conectividad a las VPC, servicios en la periferia y centros de datos externos. 

 Una VPC le permite definir su topología de red que abarca una Región de AWS, con un rango de direcciones IPv4 privadas que puede configurar o un rango de direcciones IPv6 que selecciona AWS. Debe aplicar múltiples controles con un enfoque de defensa en profundidad tanto para el tráfico entrante como para el saliente, incluido el uso de grupos de seguridad (firewall de inspección con estado), ACL de red, subredes y tablas de enrutamiento. Puede crear subredes en una zona de disponibilidad de una VPC. Cada subred puede tener una tabla de enrutamiento asociada que define las reglas para administrar las rutas que sigue el tráfico de la subred. Puede definir una subred que se pueda enrutar en Internet con una ruta que se dirija a una puerta de enlace de Internet o NAT asociada a la VPC o mediante otra VPC. 

 Cuando una instancia, una base de datos de Amazon Relational Database Service (Amazon RDS) u otro servicio se lanza en una VPC, tiene su propio grupo de seguridad por interfaz de red. Este firewall está situado fuera de la capa del sistema operativo y se puede usar para definir reglas sobre el tráfico entrante y saliente permitido. También puede definir las relaciones entre grupos de seguridad. Por ejemplo, las instancias de un grupo de seguridad de nivel de base de datos solo aceptan tráfico de instancias de nivel de aplicación, según la referencia de los grupos de seguridad aplicados a las instancias implicadas. A no ser que utilice protocolos que no sean TCP, no debería ser necesario disponer de una instancia de Amazon Elastic Compute Cloud (Amazon EC2) que sea directamente accesible desde Internet (ni siquiera con puertos restringidos por grupos de seguridad) sin un equilibrador de carga o [CloudFront](https://aws.amazon.com/cloudfront). Esto ayuda en la protección ante el acceso no intencionado debido a un problema con el sistema operativo o la aplicación. Una subred también puede tener una ACL de red asociada, que actúa como firewall sin estado. Debería configurar la ACL de red para que estreche el ámbito del tráfico permitido entre capas; tenga en cuenta que tiene que definir reglas tanto para el tráfico entrante como para el saliente. 

 Algunos servicios de AWS requieren que los componentes accedan a Internet para realizar llamadas a la API, donde están ubicados los [puntos de conexión de la API de AWS](https://docs.aws.amazon.com/general/latest/gr/rande.html) . Otros servicios de AWS usan [Puntos de enlace de la VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints.html) en sus Amazon VPC. Muchos servicios de AWS, incluidos Amazon S3 y Amazon DynamoDB, son compatibles con los puntos de conexión de VPC, y esta tecnología se ha generalizado en [AWS PrivateLink](https://aws.amazon.com/privatelink/). Le recomendamos que utilice este enfoque para acceder a servicios de AWS, servicios de terceros y sus propios servicios alojados en otras VPC de forma segura. Todo el tráfico de red de AWS PrivateLink permanece en la estructura global de AWS y nunca pasa por Internet. La conectividad solamente la puede iniciar el consumidor del servicio y no el proveedor de este. El uso de AWS PrivateLink para el acceso de un servicio externo le permite crear VPC aisladas por espacios vacíos sin acceso a Internet y ayuda a proteger sus VPC de vectores de amenaza externos. Los servicios de terceros pueden usar AWS PrivateLink para permitir que sus clientes se conecten a los servicios de sus VPC a través de direcciones IP privadas. Para activos de VPC que necesiten realizar conexiones salientes a Internet, se pueden establecer para que sean solo salientes (unidireccionales) mediante una puerta de enlace NAT administrada por AWS, puertas de enlace de Internet solo salientes o proxies web que cree y administre. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Controlar el tráfico de web en una VPC: implemente prácticas recomendadas de VPC para controlar el tráfico. 
  +  [Seguridad de Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Security.html) 
  +  [Puntos de enlace de la VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) 
  +  [Grupo de seguridad de Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_SecurityGroups.html) 
  +  [ACL de red](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-network-acls.html) 
+  Controlar el tráfico en la periferia: implemente servicios en la periferia, como Amazon CloudFront, para proporcionar una capa adicional de protección y otras características. 
  +  [Casos de uso de Amazon CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/IntroductionUseCases.html) 
  +  [AWS Global Accelerator](https://docs.aws.amazon.com/global-accelerator/latest/dg/what-is-global-accelerator.html) 
  +  [Firewall para aplicaciones web de AWS (AWS WAF)](https://docs.aws.amazon.com/waf/latest/developerguide/waf-section.html) 
  +  [Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) 
  +  [Enrutamiento de entrada de Amazon VPC](https://aws.amazon.com/about-aws/whats-new/2019/12/amazon-vpc-ingress-routing-insert-virtual-appliances-forwarding-path-vpc-traffic/) 
+  Controlar el tráfico de red privado: implemente servicios que protejan el tráfico privado para su carga de trabajo. 
  +  [Interconexión de Amazon VPC](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) 
  +  [Servicios de punto de conexión de Amazon VPC (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-service.html) 
  +  [Amazon VPC Transit Gateway](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 
  +  [AWS Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html) 
  +  [AWS Site-to-site VPN](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) 
  +  [AWS Client VPN](https://docs.aws.amazon.com/vpn/latest/clientvpn-user/user-getting-started.html) 
  +  [Puntos de acceso de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-points.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Firewall Manager](https://docs.aws.amazon.com/waf/latest/developerguide/fms-section.html) 
+  [Amazon Inspector](https://aws.amazon.com/inspector) 
+  [Introducción a AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html) 

 **Vídeos relacionados:** 
+  [Arquitecturas de referencia de AWS Transit Gateway para muchas VPC](https://youtu.be/9Nikqn_02Oc) 
+  [Aceleración y protección de aplicaciones con Amazon CloudFront, AWS WAF y AWS Shield](https://youtu.be/0xlwLEccRe0)

 **Ejemplos relacionados:** 
+  [Laboratorio: Despliegue automatizado de VPC](https://www.wellarchitectedlabs.com/Security/200_Automated_Deployment_of_VPC/README.html) 

# SEC05-BP03 Automatizar la protección de la red
<a name="sec_network_protection_auto_protect"></a>

 Automatice los mecanismos de protección para proporcionar una red de autodefensa basada en la inteligencia de amenazas y la detección de anomalías. Por ejemplo, las herramientas de detección y prevención de intrusiones que puedan adaptarse a las amenazas actuales y reducir su impacto. Un firewall de una aplicación web es un ejemplo de dónde puede automatizar la protección de la red, por ejemplo, utilizando la solución AWS WAF Security Automations ([https://github.com/awslabs/aws-waf-security-automations](https://github.com/awslabs/aws-waf-security-automations)) para bloquear automáticamente las solicitudes que se originen en direcciones IP asociadas con actores de amenazas conocidos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatice la protección para el tráfico basado en la web: AWS ofrece una solución que utiliza AWS CloudFormation para desplegar automáticamente un conjunto de reglas de AWS WAF diseñadas para filtrar ataques basados en web frecuentes. Los usuarios pueden seleccionar entre funciones de protección preconfiguradas que definen las reglas incluidas en una lista de control de acceso web de AWS WAF (ACL web). 
  +  [Automatizaciones de seguridad de AWS WAF](https://aws.amazon.com/solutions/aws-waf-security-automations/) 
+  Plantéese soluciones de AWS Partner: los socios de AWS ofrecen cientos de productos destacados que son equivalentes o idénticos a los controles que ya utiliza en sus entornos locales o que pueden integrarse con ellos. Estos productos complementan a los servicios de AWS existentes y le permiten implementar una completa arquitectura de seguridad, así como disfrutar de una experiencia más coherente tanto en la nube como en los entornos locales. 
  +  [Seguridad de la infraestructura](https://aws.amazon.com/security/partner-solutions/#infrastructure_security) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Firewall Manager](https://docs.aws.amazon.com/waf/latest/developerguide/fms-section.html) 
+  [Amazon Inspector](https://aws.amazon.com/inspector) 
+ [Seguridad del Amazon VPC](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Security.html)
+  [Introducción a AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html) 

 **Videos relacionados:** 
+  [Arquitecturas de referencia de AWS Transit Gateway para muchas VPC](https://youtu.be/9Nikqn_02Oc) 
+  [Aceleración y protección de aplicaciones con Amazon CloudFront, AWS WAF y AWS Shield](https://youtu.be/0xlwLEccRe0)

 **Ejemplos relacionados:** 
+  [Laboratorio: Despliegue automatizado de VPC](https://www.wellarchitectedlabs.com/Security/200_Automated_Deployment_of_VPC/README.html) 

# SEC05-BP04 Implementar inspección y protección
<a name="sec_network_protection_inspection"></a>

 Inspeccione y filtre el tráfico en cada capa. Puede inspeccionar las configuraciones de VPC para buscar posibles accesos no deseados mediante [Analizador de acceso de red de VPC](https://docs.aws.amazon.com/vpc/latest/network-access-analyzer/what-is-vaa.html). Puede especificar los requisitos de acceso a la red e identificar las posibles rutas de red que no los cumplan. En el caso de los componentes que realizan transacciones a través de protocolos basados en HTTP, un firewall de aplicaciones web puede ayudar a protegerlos de los ataques más habituales. [AWS WAF](https://aws.amazon.com/waf) es un firewall de aplicaciones web que le permite supervisar y bloquear las solicitudes HTTP(s) que coincidan con sus reglas configurables y que se reenvíen a una API de Amazon API Gateway, Amazon CloudFront o un Application Load Balancer. Para empezar con AWS WAF, puede usar [Reglas administradas de AWS](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html#getting-started-wizard-add-rule-group) en combinación con sus propias [integraciones socios o utilizar las existentes](https://aws.amazon.com/waf/partners/). 

 Para administrar AWS WAF, las protecciones de AWS Shield Advanced y los grupos de seguridad de Amazon VPC en AWS Organizations, puede utilizar AWS Firewall Manager. Le permite configurar y administrar de forma centralizada las reglas de firewall en todas sus cuentas y aplicaciones, lo que facilita escalar la aplicación de las reglas comunes. También le permite responder rápidamente a los ataques, con [AWS Shield Advanced](https://docs.aws.amazon.com/waf/latest/developerguide/ddos-responding.html)o [soluciones](https://aws.amazon.com/solutions/aws-waf-security-automations/) que puede bloquear automáticamente las solicitudes no deseadas a sus aplicaciones web. Firewall Manager también funciona con [AWS Network Firewall](https://aws.amazon.com/network-firewall/). AWS Network Firewall es un servicio administrado que utiliza un motor de reglas para ofrecerle un control detallado del tráfico de red con estado y sin estado. Es compatible con las especificaciones del sistema de prevención de intrusiones (IPS) de código abierto [compatibles con Suricata](https://docs.aws.amazon.com/network-firewall/latest/developerguide/stateful-rule-groups-ips.html)  para ayudar a proteger su carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Configure Amazon GuardDuty: GuardDuty es un servicio de detección de amenazas que supervisa sin descanso cualquier actividad malintencionada o comportamiento no autorizado para proteger sus cargas de trabajo y sus Cuentas de AWS. Active GuardDuty y configure alertas automatizadas. 
  +  [Amazon GuardDuty](https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html) 
  +  [Laboratorio: Despliegue automatizado de controles de detección](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_Detective_Controls/README.html) 
+  Configure los registros de flujo de nube virtual privada (VPC): la característica de registros de flujo de VPC permite registrar información acerca del tráfico IP que entra y sale de las interfaces de red en la VPC. Los datos de registro de flujo se pueden publicar en Amazon CloudWatch Logs y Amazon Simple Storage Service (Amazon S3). Cuando cree un registro de flujo, podrá recuperar y ver sus datos en el destino elegido. 
+  Considere el reflejo de tráfico de VPC: el reflejo de tráfico es una característica de Amazon VPC que puede utilizar para copiar el tráfico de red de una interfaz de red elástica de instancias de Amazon Elastic Compute Cloud (Amazon EC2) y, a continuación, enviarlo a dispositivos de seguridad y supervisión fuera de banda para la inspección de contenido, la supervisión de amenazas y la resolución de problemas. 
  +  [Reflejo de tráfico de VPC](https://docs.aws.amazon.com/vpc/latest/mirroring/what-is-traffic-mirroring.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Firewall Manager](https://docs.aws.amazon.com/waf/latest/developerguide/fms-section.html) 
+  [Amazon Inspector](https://aws.amazon.com/inspector) 
+  [Seguridad de Amazon VPC](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Security.html) 
+  [Introducción a AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html) 

 **Vídeos relacionados:** 
+  [AWS Transit Gateway reference architectures for many VPCs (Arquitecturas de referencia de AWS Transit Gateway para muchas VPC)](https://youtu.be/9Nikqn_02Oc) 
+  [Application Acceleration and Protection with Amazon CloudFront, AWS WAF, and AWS Shield (Aceleración y protección de aplicaciones con Amazon CloudFront, AWS WAF y AWS Shield)](https://youtu.be/0xlwLEccRe0) 

 **Ejemplos relacionados:** 
+  [Laboratorio: Despliegue automatizado de VPC](https://www.wellarchitectedlabs.com/Security/200_Automated_Deployment_of_VPC/README.html) 

# SEC 6 ¿Cómo protege sus recursos informáticos?
<a name="sec-06"></a>

Los recursos informáticos en su carga de trabajo requieren varias capas de defensa para ayudar a protegerse de amenazas externas e internas. Entre los recursos informáticos se incluyen instancias EC2, contenedores, funciones de AWS Lambda, servicios de bases de datos, dispositivos IoT, etc.

**Topics**
+ [SEC06-BP01 Administrar las vulnerabilidades](sec_protect_compute_vulnerability_management.md)
+ [SEC06-BP02 Reducir la superficie expuesta a ataques](sec_protect_compute_reduce_surface.md)
+ [SEC06-BP03 Implementar servicios administrados](sec_protect_compute_implement_managed_services.md)
+ [SEC06-BP04 Automatizar la protección informática](sec_protect_compute_auto_protection.md)
+ [SEC06-BP05 Permitir que los usuarios realicen acciones a distancia](sec_protect_compute_actions_distance.md)
+ [SEC06-BP06 Validar la integridad del software](sec_protect_compute_validate_software_integrity.md)

# SEC06-BP01 Administrar las vulnerabilidades
<a name="sec_protect_compute_vulnerability_management"></a>

Analice con frecuencia su código, sus dependencias y su infraestructura en busca de vulnerabilidades, y aplique parches para solucionarlas, para ayudarle a protegerse contra las nuevas amenazas.

 **Resultado deseado:** crear y mantener un programa de administración de vulnerabilidades. Analice periódicamente recursos como las instancias de Amazon EC2, los contenedores de Amazon Elastic Container Service (Amazon ECS) y las cargas de trabajo de Amazon Elastic Kubernetes Service (Amazon EKS) y aplique parches en ellos. Configure periodos de mantenimiento para los recursos administrados por AWS, como las bases de datos de Amazon Relational Database Service (Amazon RDS). Utilice el análisis de código estático para inspeccionar el código fuente de las aplicaciones en busca de problemas comunes. Considere la posibilidad de realizar pruebas de penetración en aplicaciones web si su organización cuenta con los conocimientos necesarios o puede contratar ayuda externa. 

 **Antipatrones usuales:** 
+  No disponer de un programa de administración de vulnerabilidades. 
+  Aplicar parches en el sistema sin tener en cuenta la gravedad o la forma de evitar riesgos. 
+  Utilizar software que haya superado la fecha de fin de vida útil (EOL) de su proveedor. 
+  Desplegar código en producción antes de analizarlo en busca de problemas de seguridad. 

 **Beneficios de establecer esta práctica recomendada:** 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Un programa de administración de vulnerabilidades incluye la evaluación de la seguridad, la identificación de problemas, el establecimiento de prioridades y la aplicación de parches como parte de la resolución de los problemas. La automatización es la clave para analizar continuamente las cargas de trabajo en busca de problemas y exposiciones no intencionadas a la red y para realizar correcciones. La automatización de la creación y actualización de recursos ahorra tiempo y reduce el riesgo de que los errores de configuración den lugar a más problemas. En un programa de administración de vulnerabilidades bien diseñado, también se debería considerar la realización de pruebas de vulnerabilidad durante las fases de desarrollo y despliegue del ciclo de vida del software. Implementar la administración de vulnerabilidades durante el desarrollo y el despliegue ayuda a disminuir la posibilidad de que una vulnerabilidad pueda abrirse camino en su entorno de producción. 

 Para implementar un programa de administración de vulnerabilidades, es necesario conocer bien el [modelo de responsabilidad compartida de AWS](https://aws.amazon.com/compliance/shared-responsibility-model/) y cómo se relaciona con sus cargas de trabajo específicas. En el modelo de responsabilidad compartida, AWS es responsable de proteger la infraestructura de la Nube de AWS. Esta infraestructura está compuesta por hardware, software, redes e instalaciones que ejecutan servicios de la Nube de AWS. Usted es responsable de la seguridad en la nube, por ejemplo, de los datos reales, de la configuración de seguridad y de las tareas de administración de las instancias de Amazon EC2, así como de verificar que sus objetos de Amazon S3 estén clasificados y configurados correctamente. Su enfoque de la administración de vulnerabilidades también puede variar en función de los servicios que consuma. Por ejemplo, AWS es quien administra la aplicación de parches de nuestro servicio de base de datos relacional administrado, Amazon RDS, pero usted es el responsable de aplicar los parches en las bases de datos autoalojadas. 

 AWS dispone de numerosos servicios para ayudarle con su programa de administración de vulnerabilidades. [Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/what-is-inspector.html) analiza continuamente las cargas de trabajo de AWS en busca de problemas de software y accesos no intencionados a la red. [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) ayuda a administrar la aplicación de parches en todas sus instancias de Amazon EC2. Amazon Inspector y Systems Manager pueden consultarse en [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html), un servicio de administración de la postura de seguridad en la nube que ayuda a automatizar las comprobaciones de seguridad de AWS y a centralizar las alertas de seguridad. 

 [Amazon CodeGuru](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) puede ayudar a identificar posibles problemas en las aplicaciones Java y Python mediante el análisis estático del código. 

 **Pasos para la implementación** 
+  **Configure [Amazon Inspector](https://docs.aws.amazon.com/inspector/v1/userguide/inspector_introduction.html):** Amazon Inspector detecta automáticamente las instancias de Amazon EC2 recién lanzadas, las funciones Lambda y las imágenes de contenedor elegibles que se envían a Amazon ECR y las analiza inmediatamente en busca de problemas del software, defectos potenciales y una exposición no intencionada a la red. 
+  **Analice el código fuente:** analice bibliotecas y dependencias en busca de problemas y defectos. [Amazon CodeGuru](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) puede analizar y proporcionar recomendaciones para corregir [problemas de seguridad comunes](https://docs.aws.amazon.com/codeguru/detector-library/index.html) tanto para aplicaciones Java como Python. [La Fundación OWASP](https://owasp.org/www-community/Source_Code_Analysis_Tools) publica una lista de herramientas de análisis del código fuente (también conocidas como herramientas SAST). 
+  **Implemente un mecanismo para analizar y aplicar parches en su entorno existente, así como para incluir el análisis como parte de un proceso de desarrollo de la canalización CI/CD**: implemente un mecanismo para analizar y aplicar parches para solucionar los problemas en sus dependencias y sistemas operativos y protegerse contra nuevas amenazas. Haga que ese mecanismo se ejecute de forma regular. La administración de vulnerabilidades de software es esencial para saber dónde hay que aplicar parches o solucionar problemas del software. Dé prioridad a la corrección de los posibles problemas de seguridad incorporando evaluaciones de vulnerabilidad en una fase temprana de la canalización de la integración continua y entrega continua (CI/CD). Su enfoque puede variar en función de los servicios de AWS que consuma. Para buscar posibles problemas en el software que se ejecuta en instancias de Amazon EC2, añada [Amazon Inspector](https://aws.amazon.com/inspector/) a su canalización para que le avise y detenga el proceso de desarrollo si se detectan problemas o posibles defectos. Amazon Inspector supervisa continuamente los recursos. También puede utilizar productos de código abierto como [OWASP Dependency-Check](https://owasp.org/www-project-dependency-check/), [Snyk](https://snyk.io/product/open-source-security-management/), [OpenVAS](https://www.openvas.org/), administradores de paquetes y herramientas de AWS Partner para la administración de vulnerabilidades. 
+  **Utilice [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html):** usted es el responsable de la administración de parches en sus recursos de AWS, incluidas las instancias de Amazon Elastic Compute Cloud (Amazon EC2), las imágenes de máquina de Amazon (AMI) y otros recursos de computación. [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) automatiza el proceso de aplicación de parches a instancias administradas con actualizaciones de seguridad y de otro tipo. Patch Manager puede utilizarse para aplicar parches en instancias de Amazon EC2 tanto para sistemas operativos como para aplicaciones, incluidas aplicaciones de Microsoft, paquetes de servicios de Windows y actualizaciones de versiones secundarias para instancias basadas en Linux. Además de Amazon EC2, Patch Manager también puede utilizarse para aplicar parches en servidores locales. 

   Para obtener una lista de los sistemas operativos compatibles, consulte [Sistemas operativos compatibles](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-operating-systems.html) en la Guía del usuario de Systems Manager. Puede analizar instancias para ver solamente un informe de los parches que faltan, o puede analizar e instalar automáticamente todos los parches que falten. 
+  **Utilice [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html):** Security Hub CSPM proporciona una vista completa de su estado de seguridad en AWS. Recopila datos de seguridad en [múltiples servicios de AWS](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-internal-providers.html) y proporciona esos hallazgos en un formato estandarizado, que le permite priorizar los hallazgos de seguridad en todos los servicios de AWS. 
+  **Utilice [AWS CloudFormation](https://aws.amazon.com/cloudformation/):** [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) es un servicio de infraestructura como código (IaC) que puede ayudarle a administrar las vulnerabilidades mediante la automatización del despliegue de recursos y la estandarización de la arquitectura de los recursos en diversas cuentas y entornos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
+  [Security Overview of AWS Lambda](https://pages.awscloud.com/rs/112-TZM-766/images/Overview-AWS--Security.pdf) (Información general de seguridad de AWS Lambda) 
+ [ Amazon CodeGuru ](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html)
+ [ Improved, Automated Vulnerability Management for Cloud Workloads with a New Amazon Inspector ](https://aws.amazon.com/blogs/aws/improved-automated-vulnerability-management-for-cloud-workloads-with-a-new-amazon-inspector/)(Administración de vulnerabilidades mejorada y automatizada para cargas de trabajo en la nube con un nuevo Amazon Inspector)
+ [ Automate vulnerability management and remediation in AWS using Amazon Inspector and AWS Systems Manager – Part 1 ](https://aws.amazon.com/blogs/mt/automate-vulnerability-management-and-remediation-in-aws-using-amazon-inspector-and-aws-systems-manager-part-1/)(Automatice la administración y corrección de vulnerabilidades en AWS mediante Amazon Inspector y AWS Systems Manager - Primera parte)

 **Vídeos relacionados: ** 
+  [Securing Serverless and Container Services](https://youtu.be/kmSdyN9qiXY) (Protección de servicios de contenedor y sin servidor) 
+  [Security best practices for the Amazon EC2 instance metadata service](https://youtu.be/2B5bhZzayjI) (Prácticas recomendadas de seguridad para el servicio de metadatos de instancias de Amazon EC2) 

# SEC06-BP02 Reducir la superficie expuesta a ataques
<a name="sec_protect_compute_reduce_surface"></a>

 Reduzca su exposición al acceso no intencionado endureciendo los sistemas operativos y minimizando los componentes, bibliotecas y servicios consumibles externamente que se estén utilizando. Puede comenzar por reducir los componentes no utilizados, ya sean paquetes de sistemas operativos, aplicaciones para cargas de trabajo basadas en Amazon Elastic Compute Cloud (Amazon EC2) o módulos de software externos en su código, para todas las cargas de trabajo. Puede encontrar muchas guías de endurecimiento y configuración de seguridad para sistemas operativos y software de servidores comunes. Por ejemplo, puede empezar por el [Centro para la seguridad de Internet](https://www.cisecurity.org/) e iterar a partir de ahí.

 En Amazon EC2, puede crear sus propias imágenes de máquina de Amazon (AMI), a las que habrá aplicado parches y habrá endurecido, para ayudarle a cumplir los requisitos de seguridad específicos de su organización. Los parches y otros controles de seguridad que apliquen en la AMI serán efectivos en el momento en el que se crearon, no son dinámicos a no ser que los modifique tras el lanzamiento, por ejemplo con AWS Systems Manager. 

 Puede simplificar el proceso de creación de AMI seguras con EC2 Image Builder. EC2 Image Builder reduce significativamente el esfuerzo necesario para crear y mantener imágenes golden sin escribir ni mantener automatizaciones. Cuando hay disponibles actualizaciones de software, Image Builder produce automáticamente una nueva imagen sin exigir a los usuarios que inicien manualmente creaciones de imágenes. EC2 Image Builder le permite validar fácilmente la funcionalidad y seguridad de sus imágenes antes de usarlas en producción con pruebas propias o proporcionadas por AWS. También puede aplicar la configuración de seguridad facilitada por AWS para proteger aún más sus imágenes de modo que cumplan criterios de seguridad internos. Por ejemplo, puede producir imágenes que se ajusten al estándar Security Technical Implementation Guide (STIG) con plantillas proporcionadas por AWS. 

 Mediante el uso de herramientas de análisis de código estático de terceros, puede identificar problemas de seguridad comunes como enlaces de entrada de funciones sin comprobar, además de vulnerabilidades y exposiciones comunes aplicables (CVE). Puede usar [Amazon CodeGuru](https://aws.amazon.com/codeguru/) para los lenguajes compatibles. Las herramientas de comprobación de dependencias también se pueden usar para determinar si las bibliotecas con las que se vincula su código están actualizadas a su última versión, si no tienen CVE y si tienen condiciones de licencia que se ajusten a sus requisitos de política del software. 

 Con Amazon Inspector, puede llevar a cabo evaluaciones de configuración de sus instancias en busca de CVE conocidos, evaluarlas en función de referencias de seguridad y automatizar la notificación de defectos. Amazon Inspector se ejecuta en instancias de producción o en una canalización de compilación y notifica a los desarrolladores e ingenieros cuando detecten algún hallazgo. Puede acceder a los hallazgos programáticamente y dirigir el equipo a trabajos pendientes y sistemas de seguimiento de errores. [EC2 Image Builder](https://aws.amazon.com/image-builder/) se puede usar para mantener imágenes de servidor (AMI) con aplicación de parches automática, aplicación de políticas de seguridad proporcionadas por AWS y otras personalizaciones. Al usar contenedores, implemente el [análisis de imágenes de ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html) en su canalización de compilación y aplíquelo de forma frecuente a su repositorio de imágenes para buscar CVE en sus contenedores. 

 Aunque Amazon Inspector y otras herramientas son eficaces a la hora de identificar configuraciones y cualquier CVE que pudiese constar, son necesarios otros métodos para comprobar su carga de trabajo en el nivel de la aplicación. [El fuzzing](https://owasp.org/www-community/Fuzzing) es un método conocido de detección de errores utilizando la automatización para inyectar datos con un formato incorrecto en los campos de entrada y otras áreas de su aplicación. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Endurezca el sistema operativo: configure el sistema operativo para cumplir con las prácticas recomendadas. 
  +  [Protección de Amazon Linux](https://www.cisecurity.org/benchmark/amazon_linux/) 
  +  [Protección de Microsoft Windows Server](https://www.cisecurity.org/benchmark/microsoft_windows_server/) 
+  Endurezca los recursos en contenedores: configure los recursos en contenedores para cumplir con las prácticas recomendadas de seguridad. 
+  Implemente prácticas recomendadas de AWS Lambda. 
  +  [Prácticas recomendadas de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
+  [Sustitución de un host bastión con Amazon EC2 Systems Manager](https://aws.amazon.com/blogs/mt/replacing-a-bastion-host-with-amazon-ec2-systems-manager/) 
+  [Información general de seguridad de AWS Lambda](https://pages.awscloud.com/rs/112-TZM-766/images/Overview-AWS-Lambda-Security.pdf) 

 **Videos relacionados:** 
+  [Ejecución de cargas de trabajo de alta seguridad en Amazon EKS](https://youtu.be/OWRWDXszR-4) 
+  [Protección de servicios de contenedor y sin servidor](https://youtu.be/kmSdyN9qiXY) 
+  [Prácticas recomendadas de seguridad para el servicio de metadatos de instancias Amazon EC2](https://youtu.be/2B5bhZzayjI) 

 **Ejemplos relacionados:** 
+  [Laboratorio: Despliegue de un firewall para aplicaciones web](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_Web_Application_Firewall/README.html) 

# SEC06-BP03 Implementar servicios administrados
<a name="sec_protect_compute_implement_managed_services"></a>

 Implemente servicios que administren recursos, como Amazon Relational Database Service (Amazon RDS), AWS Lambda y Amazon Elastic Container Service (Amazon ECS), para reducir sus tareas de mantenimiento de seguridad como parte del modelo de responsabilidad compartida. Por ejemplo, Amazon RDS le ayuda a configurar, operar y escalar una base de datos relacional, y automatiza tareas administrativas, como el aprovisionamiento de hardware, la configuración de bases de datos, la aplicación de parches y la creación de copias de seguridad. Esto significa que tendrá más tiempo libre para centrarse en proteger su aplicación de otras maneras descritas en AWS Well-Architected Framework. Lambda le permite ejecutar código sin aprovisionar ni administrar servidores, de modo que solo tendrá que centrarse en la conectividad, invocación y seguridad en el nivel del código, y no en la infraestructura ni en el sistema operativo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Explore los servicios disponibles: explore, pruebe e implemente servicios que administren recursos, como Amazon RDS, AWS Lambda y Amazon ECS. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Sitio web de AWS](https://aws.amazon.com/)
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
+  [Sustitución de un host bastión con Amazon EC2 Systems Manager](https://aws.amazon.com/blogs/mt/replacing-a-bastion-host-with-amazon-ec2-systems-manager/) 
+  [Información general de seguridad de AWS Lambda](https://pages.awscloud.com/rs/112-TZM-766/images/Overview-AWS-Lambda-Security.pdf) 

 **Vídeos relacionados:** 
+  [Ejecución de cargas de trabajo de alta seguridad en Amazon EKS](https://youtu.be/OWRWDXszR-4) 
+  [Protección de servicios de contenedor y sin servidor](https://youtu.be/kmSdyN9qiXY) 
+  [Prácticas recomendadas de seguridad para el servicio de metadatos de instancias Amazon EC2](https://youtu.be/2B5bhZzayjI) 

 **Ejemplos relacionados:** 
+ [Laboratorio: solicitar un certificado público en AWS Certificate Manager ](https://wellarchitectedlabs.com/security/200_labs/200_certificate_manager_request_public_certificate/)

# SEC06-BP04 Automatizar la protección informática
<a name="sec_protect_compute_auto_protection"></a>

 Automatice sus mecanismos de protección informática, incluida la administración de vulnerabilidades, la reducción de superficies expuestas a ataques y la administración de recursos. La automatización le ayudará a dedicar tiempo a proteger otros aspectos de su carga de trabajo y a reducir el riesgo de errores humanos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatizar la administración de la configuración: aplique y valide configuraciones seguras de forma automática mediante el uso de un servicio o herramienta de administración de la configuración. 
  +  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
  +  [AWS CloudFormation](https://aws.amazon.com/cloudformation/) 
  +  [Laboratorio: Despliegue automatizado de VPC](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_VPC/README.html) 
  +  [Laboratorio: Despliegue automatizado de una aplicación web en EC2](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_EC2_Web_Application/README.html) 
+  Automatizar la aplicación de revisiones en instancias Amazon Elastic Compute Cloud (Amazon EC2): Patch Manager de AWS Systems Manager automatiza el proceso de aplicación de revisiones a instancias administradas con actualizaciones de seguridad y de otro tipo. Puede utilizar Patch Manager para aplicar revisiones tanto para sistemas operativos como para aplicaciones. 
  +  [Patch Manager de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 
  +  [Implementación de revisiones centralizadas para varias regiones y cuentas con Automatización de AWS Systems Manager](https://https://aws.amazon.com/blogs/mt/centralized-multi-account-and-multi-region-patching-with-aws-systems-manager-automation/) 
+  Implementar la detección y prevención de intrusiones: implemente una herramienta de detección y prevención de intrusiones para supervisar y detener las actividades maliciosas en las instancias. 
+  Considerar soluciones de AWS Partner: los socios de AWS ofrecen cientos de productos destacados que son equivalentes o idénticos a los controles que ya utiliza en sus entornos locales o que pueden integrarse con ellos. Estos productos complementan a los servicios de AWS existentes y le permiten implementar una completa arquitectura de seguridad, así como disfrutar de una experiencia más coherente tanto en la nube como en los entornos locales. 
  +  [Seguridad de la infraestructura](https://aws.amazon.com/security/partner-solutions/#infrastructure_security) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS CloudFormation](https://aws.amazon.com/cloudformation/) 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
+  [Patch Manager de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 
+  [Implementación de revisiones centralizadas para varias regiones y cuentas con Automatización de AWS Systems Manager](https://aws.amazon.com/blogs/mt/centralized-multi-account-and-multi-region-patching-with-aws-systems-manager-automation/) 
+  [Seguridad de la infraestructura](https://aws.amazon.com/security/partner-solutions/#infrastructure_security) 
+  [Sustitución de un host bastión con Amazon EC2 Systems Manager](https://aws.amazon.com/blogs/mt/replacing-a-bastion-host-with-amazon-ec2-systems-manager/) 
+  [Información general de seguridad de AWS Lambda](https://pages.awscloud.com/rs/112-TZM-766/images/Overview-AWS-Lambda-Security.pdf) 

 **Vídeos relacionados:** 
+  [Ejecución de cargas de trabajo de alta seguridad en Amazon EKS](https://youtu.be/OWRWDXszR-4) 
+  [Protección de servicios de contenedor y sin servidor](https://youtu.be/kmSdyN9qiXY) 
+  [Prácticas recomendadas de seguridad para el servicio de metadatos de instancias de Amazon EC2](https://youtu.be/2B5bhZzayjI) 

 **Ejemplos relacionados:** 
+  [Laboratorio: Despliegue de un firewall para aplicaciones web](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_Web_Application_Firewall/README.html) 
+  [Laboratorio: Despliegue automatizado de una aplicación web en EC2](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_EC2_Web_Application/README.html) 

# SEC06-BP05 Permitir que los usuarios realicen acciones a distancia
<a name="sec_protect_compute_actions_distance"></a>

 La eliminación de la capacidad de acceder de forma interactiva reduce el riesgo de errores humanos y el potencial de llevar a cabo configuración o administración manuales. Por ejemplo, utilice un flujo de trabajo de administración de cambios para desplegar instancias de Amazon Elastic Compute Cloud (Amazon EC2) utilizando infraestructura como código, y después administre instancias de Amazon EC2 utilizando herramientas como AWS Systems Manager en lugar de permitir el acceso directo o mediante un host bastión. AWS Systems Manager puede automatizar una variedad de tareas de mantenimiento y despliegue, utilizando características como [automatización](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) [de automatización](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html), [documentos](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html) (guías de estrategias) y el [comando de ejecución](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html). Las pilas de AWS CloudFormation se generan a partir de las canalizaciones y pueden automatizar el despliegue de su infraestructura y las tareas de administración sin usar directamente la Consola de administración de AWS o las API. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Sustituir el acceso a la consola: sustituya el acceso a la consola (SSH o RDP) a instancias con Run Command de AWS Systems Manager para automatizar las tareas de administración. 
+  [Run Command de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
+  [Run Command de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html) 
+  [Sustitución de un host bastión con Amazon EC2 Systems Manager](https://aws.amazon.com/blogs/mt/replacing-a-bastion-host-with-amazon-ec2-systems-manager/) 
+  [Información general de seguridad de AWS Lambda](https://pages.awscloud.com/rs/112-TZM-766/images/Overview-AWS-Lambda-Security.pdf) 

 **Vídeos relacionados:** 
+  [Ejecución de cargas de trabajo de alta seguridad en Amazon EKS](https://youtu.be/OWRWDXszR-4) 
+  [Protección de servicios de contenedor y sin servidor](https://youtu.be/kmSdyN9qiXY) 
+  [Prácticas recomendadas de seguridad para el servicio de metadatos de instancias de Amazon EC2](https://youtu.be/2B5bhZzayjI) 

 **Ejemplos relacionados:** 
+  [Laboratorio: Despliegue de un firewall para aplicaciones web](https://wellarchitectedlabs.com/Security/200_Automated_Deployment_of_Web_Application_Firewall/README.html) 

# SEC06-BP06 Validar la integridad del software
<a name="sec_protect_compute_validate_software_integrity"></a>

 Implemente mecanismos (por ejemplo, firma de código) para validar que el software, el código y las bibliotecas que se utilizan en la carga de trabajo procedan de fuentes de confianza y no se hayan manipulado. Por ejemplo, debería verificar el certificado de firma de código de binarios y scripts para confirmar el autor y asegurarse de que no se haya manipulado desde que el autor lo creó. [AWS Signer](https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html) puede ayudar a garantizar la confianza e integridad de su código administrando de forma centralizada el ciclo de vida de la firma del código, incluida la certificación de la firma y las claves públicas y privadas. Puede aprender a usar patrones avanzados y prácticas recomendadas para la firma de código con [AWS Lambda](https://aws.amazon.com/blogs/security/best-practices-and-advanced-patterns-for-lambda-code-signing/). Además, comparar la suma de comprobación de un software que haya descargado con la suma de comprobación del proveedor puede ayudar a garantizar que no haya existido manipulación alguna. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Investigue mecanismos: la firma de código es un mecanismo que se puede usar para validar la integridad del software. 
  +  [NIST: consideraciones de seguridad para la firma de código](https://nvlpubs.nist.gov/nistpubs/CSWP/NIST.CSWP.01262018.pdf) 

## Recursos
<a name="resources"></a>

**Documentos relacionados:** 
+ [AWS Signer](https://docs.aws.amazon.com/signer/index.html)
+ [Nuevo: Firma de código, un control de confianza e integridad para AWS Lambda](https://aws.amazon.com/blogs/aws/new-code-signing-a-trust-and-integrity-control-for-aws-lambda/) 

# Protección de los datos
<a name="a-data-protection"></a>

**Topics**
+ [SEC 7 ¿Cómo clasifica sus datos?](sec-07.md)
+ [SEC 8 ¿Cómo protege los datos en reposo?](sec-08.md)
+ [SEC 9 ¿Cómo protege sus datos en tránsito?](sec-09.md)

# SEC 7 ¿Cómo clasifica sus datos?
<a name="sec-07"></a>

La clasificación proporciona una forma de categorizar los datos, basada en el nivel de importancia y la confidencialidad, para ayudarle a determinar los controles de protección y conservación adecuados.

**Topics**
+ [SEC07-BP01 Identificar los datos en su carga de trabajo](sec_data_classification_identify_data.md)
+ [SEC07-BP02 Definir controles de protección de datos](sec_data_classification_define_protection.md)
+ [SEC07-BP03 Automatizar la identificación y la clasificación](sec_data_classification_auto_classification.md)
+ [SEC07-BP04 Definir la administración del ciclo de vida de los datos](sec_data_classification_lifecycle_management.md)

# SEC07-BP01 Identificar los datos en su carga de trabajo
<a name="sec_data_classification_identify_data"></a>

Es fundamental conocer el tipo y la clasificación de los datos que procesa su carga de trabajo, los procesos empresariales asociados, dónde se almacenan los datos y quién es su propietario. También debe conocer los requisitos legales y de conformidad aplicables a su carga de trabajo y qué controles deben aplicarse en los datos. Identificar los datos es el primer paso en el proceso de clasificación de los datos. 

**Beneficios de establecer esta práctica recomendada:**

 La clasificación de datos permite a los propietarios de las cargas de trabajo identificar las ubicaciones en las que se almacenan datos confidenciales y determinar cómo se debe acceder a esos datos y compartirlos. 

 La clasificación de los datos tiene como objetivo responder a las siguientes preguntas: 
+ **¿Qué tipo de datos tiene?**

  Podrían ser datos como los siguientes: 
  +  Datos de propiedad intelectual (PI), como secretos comerciales, patentes o acuerdos contractuales. 
  +  Información sanitaria protegida (PHI), como historiales médicos que contienen información sobre la historia clínica de una persona. 
  +  Información de identificación personal (PII), como nombre, dirección, fecha de nacimiento y número de identificación nacional o de registro. 
  +  Datos de tarjetas de crédito, como el número de cuenta principal (PAN), el nombre del titular de la tarjeta, la fecha de caducidad y el número de código de servicio. 
  +  ¿Dónde se almacenan los datos confidenciales? 
  +  ¿Quién puede acceder a los datos, modificarlos y borrarlos? 
  +  Es esencial conocer los permisos de los usuarios para protegerse de posibles tratamientos indebidos de los datos. 
+ **¿Quién puede realizar operaciones de creación, lectura, actualización y eliminación (CRUD)?**
  +  Para tener en cuenta la posible escalada de privilegios, conozca quién puede administrar los permisos de los datos. 
+ **¿Qué impacto podría tener en la empresa que los datos se divulgasen involuntariamente, se alteraren o se eliminasen?**
  +  Conozca el riesgo que supone que los datos se modifiquen, eliminen o revelen de forma inadvertida. 

Si conoce las respuestas a estas preguntas, podrá tomar las siguientes medidas: 
+  Reducir el alcance de los datos confidenciales (como el número de ubicaciones de datos confidenciales) y limitar el acceso a los datos confidenciales solo a los usuarios autorizados. 
+  Conocer los distintos tipos de datos para poder implementar los mecanismos y técnicas de protección de datos adecuados, como el cifrado, la prevención de la pérdida de datos y la administración de identidades y accesos. 
+  Optimizar los costes proporcionando los objetivos de control adecuados para los datos. 
+  Responder con confianza a las preguntas de los reguladores y auditores sobre el tipo y la cantidad de datos, y sobre cómo se aíslan entre sí los datos con distintos niveles de confidencialidad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La clasificación de los datos es el acto de identificar el nivel de confidencialidad de los datos. Podría ser necesario etiquetarlos para que la búsqueda y el seguimiento de esos datos sean más sencillos. La clasificación de los datos también reduce la duplicación de datos, lo que puede ayudar a disminuir los costes de almacenamiento y de copias de seguridad al tiempo que acelera el proceso de búsqueda. 

 Utilice servicios como Amazon Macie para automatizar a escala tanto la detección como la clasificación de datos confidenciales. Otros servicios, como Amazon EventBridge y AWS Config, pueden utilizarse para automatizar la corrección de problemas de seguridad de los datos, como los buckets sin cifrar de Amazon Simple Storage Service (Amazon S3) y volúmenes EBS de Amazon EC2 o recursos de datos sin etiquetar. Para obtener una lista completa de las integraciones de los servicios de AWS, consulte la [documentación de EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/event-types.html). 

 [Es posible detectar PII](https://docs.aws.amazon.com/comprehend/latest/dg/how-pii.html) en datos no estructurados, como correos electrónicos de clientes, tickets de soporte, reseñas de productos y redes sociales, [mediante Amazon Comprehend](https://aws.amazon.com/blogs/machine-learning/detecting-and-redacting-pii-using-amazon-comprehend/), que es un servicio de procesamiento de lenguaje natural (NLP) que utiliza machine learning (ML) para encontrar información y relaciones, como personas, lugares, sentimientos y temas en un texto no estructurado. Para obtener una lista de los servicios de AWS que pueden ayudar a identificar los datos, consulte [Common techniques to detect PHI and PII data using AWS services](https://aws.amazon.com/blogs/industries/common-techniques-to-detect-phi-and-pii-data-using-aws-services/) (Técnicas comunes para detectar datos PHI y PII utilizando los servicios de AWS). 

 Otro método que facilita la clasificación y protección de los datos es el [etiquetado de recursos de AWS](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). El etiquetado le permite asignar metadatos a sus recursos de AWS y puede utilizarlo para administrar, identificar, organizar, buscar y filtrar recursos. 

 En algunos casos, puede optar por etiquetar recursos enteros (como un bucket de S3), especialmente cuando se espera que una carga de trabajo o un servicio específico almacene procesos o transmisiones de una clasificación de datos ya conocida. 

 Cuando sea apropiado, puede etiquetar un bucket de S3 en lugar de objetos individuales para facilitar la administración y el mantenimiento de la seguridad. 

### Pasos para la implementación
<a name="implementation-steps"></a>

**Detecte datos confidenciales dentro de Amazon S3:**

1.  Antes de empezar, asegúrese de que dispone de los permisos adecuados para acceder a la consola de Amazon Macie y a las operaciones de la API. Para obtener más información, consulte [Getting started with Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/getting-started.html) (Introducción a Amazon Macie). 

1.  Utilice Amazon Macie para detectar automáticamente los datos cuando los datos confidenciales residan en [Amazon S3](https://aws.amazon.com/s3/). 
   +  Utilice la guía [Getting Started with Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/getting-started.html) (Introducción a Amazon Macie) para configurar un repositorio de resultados de detección de datos confidenciales y crear un trabajo de detección de datos confidenciales. 
   +  [Cómo utilizar Amazon Macie para previsualizar datos confidenciales en buckets de S3.](https://aws.amazon.com/blogs/security/how-to-use-amazon-macie-to-preview-sensitive-data-in-s3-buckets/) 

      De forma predeterminada, Macie analiza los objetos con el conjunto de identificadores de datos administrados que recomendamos para detectar automáticamente los datos confidenciales. Para adaptar el análisis, configure Macie para que utilice identificadores de datos administrados específicos, identificadores de datos personalizados y listas de permitidos cuando detecte automáticamente los datos confidenciales para su cuenta u organización. Para ajustar el alcance del análisis, puede excluir buckets específicos (por ejemplo, buckets de S3 que suelen almacenar datos de registro de AWS). 

1.  Para configurar y utilizar la detección automatizada de datos confidenciales, consulte [Performing automated sensitive data discovery with Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/discovery-asdd-account-manage.html) (Detección automática de datos confidenciales con Amazon Macie). 

1.  También puede consultar [Automated Data Discovery for Amazon Macie](https://aws.amazon.com/blogs/aws/automated-data-discovery-for-amazon-macie/) (Detección automática de datos para Amazon Macie). 

**Detecte datos confidenciales dentro de Amazon RDS:**

 Para obtener más información sobre la detección de datos en bases de datos de [Amazon Relational Database Service (Amazon RDS)](https://aws.amazon.com/rds/), consulte [Enabling data classification for Amazon RDS database with Macie](https://aws.amazon.com/blogs/security/enabling-data-classification-for-amazon-rds-database-with-amazon-macie/) (Habilitación de la clasificación de datos para bases de datos de Amazon RDS con Macie). 

**Detecte datos confidenciales dentro de DynamoDB:**
+  En [Detecting sensitive data in DynamoDB with Macie](https://aws.amazon.com/blogs/security/detecting-sensitive-data-in-dynamodb-with-macie/) (Detección de datos confidenciales en DynamoDB con Macie), se explica cómo utilizar Amazon Macie para detectar datos confidenciales en [tablas de Amazon DynamoDB](https://aws.amazon.com/dynamodb/) exportando los datos a Amazon S3 para analizarlos. 

**Soluciones de los socios de AWS**
+  Considere la posibilidad de utilizar nuestra amplia AWS Partner Network. Los socios de AWS disponen de exhaustivas herramientas y marcos de conformidad que se integran directamente con los servicios de AWS. Los socios pueden proporcionarle una solución de gobernanza y conformidad a medida para ayudarle a satisfacer sus necesidades organizativas. 
+  Para obtener soluciones personalizadas para la clasificación de datos, consulte [Data governance in the age of regulation and compliance requirements](https://aws.amazon.com/big-data/featured-partner-solutions-data-governance-compliance/) (Gobernanza de datos en la era de la regulación y los requisitos de conformidad). 

 Para aplicar automáticamente las normas de etiquetado que adopte su organización, puede crear y desplegar políticas mediante AWS Organizations. Las políticas de etiquetado le permiten especificar reglas que definen los nombres válidos de las claves y qué valores son válidos para cada clave. Puede optar por supervisarlas únicamente, lo que le ofrece la oportunidad de evaluar y limpiar sus etiquetas existentes. Una vez que sus etiquetas cumplan las normas elegidas, puede activar la aplicación de la norma en las políticas de etiquetas para evitar que se creen etiquetas que no las cumplan. Para obtener más información, consulte [Securing resource tags used for authorization using a service control policy in AWS Organizations](https://aws.amazon.com/blogs/security/securing-resource-tags-used-for-authorization-using-service-control-policy-in-aws-organizations/) (Proteger las etiquetas de recursos utilizadas para la autorización mediante una política de control de servicios en las organizaciones de AWS) y el ejemplo de política para [evitar que las etiquetas se modifiquen, excepto por las entidades principales autorizadas](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps_examples_tagging.html#example-require-restrict-tag-mods-to-admin). 
+  Para comenzar a utilizar las políticas de etiquetas en [AWS Organizations](https://aws.amazon.com/organizations/), se recomienda encarecidamente seguir el flujo de trabajo de [Introducción a las políticas de etiquetas](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies-getting-started.html) antes de pasar a políticas de etiquetas más avanzadas. Conocer el efecto que tiene asociar una simple política de etiquetas a una sola cuenta antes de extenderla a toda una unidad organizativa (OU) u organización le permite ver los efectos que tiene antes de imponer su cumplimiento. En [Introducción a las políticas de etiquetas](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies-getting-started.html), encontrará enlaces a instrucciones de tareas relacionadas con políticas más avanzadas. 
+  Considere la posibilidad de evaluar otros [servicios y características de AWS](https://docs.aws.amazon.com/whitepapers/latest/data-classification/using-aws-cloud-to-support-data-classification.html#aws-services-and-features) compatibles con la clasificación de datos, que se enumeran en el documento técnico [Data Classification](https://docs.aws.amazon.com/whitepapers/latest/data-classification/data-classification.html) (Clasificación de datos). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Getting Started with Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/getting-started.html) (Introducción a Amazon Macie) 
+  [Automated data discovery with Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/discovery-asdd.html) (Detección automática de datos con Amazon Macie) 
+  [Introducción a las políticas de etiquetas](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies-getting-started.html) 
+  [Detecting PII entities](https://docs.aws.amazon.com/comprehend/latest/dg/how-pii.html) (Detectar entidades PII) 

 **Blogs relacionados:** 
+  [Cómo utilizar Amazon Macie para previsualizar datos confidenciales en buckets de S3.](https://aws.amazon.com/blogs/security/how-to-use-amazon-macie-to-preview-sensitive-data-in-s3-buckets/) 
+  [Performing automated sensitive data discovery with Amazon Macie](https://aws.amazon.com/blogs/aws/automated-data-discovery-for-amazon-macie/) (Detección automática de datos confidenciales con Amazon Macie) 
+  [Common techniques to detect PHI and PII data using AWS Services](https://aws.amazon.com/blogs/industries/common-techniques-to-detect-phi-and-pii-data-using-aws-services/) (Técnicas comunes para detectar datos PHI y PII utilizando los servicios de AWS) 
+  [Detecting and redacting PII using Amazon Comprehend](https://aws.amazon.com/blogs/machine-learning/detecting-and-redacting-pii-using-amazon-comprehend/) (Detección y ocultación de PII utilizando Amazon Comprehend) 
+  [Securing resource tags used for authorization using a service control policy in AWS Organizations](https://aws.amazon.com/blogs/security/securing-resource-tags-used-for-authorization-using-service-control-policy-in-aws-organizations/) (Protección de las etiquetas de recursos utilizadas para la autorización mediante una política de control de servicios en AWS Organizations) 
+  [Enabling data classification for Amazon RDS database with Macie](https://aws.amazon.com/blogs/security/enabling-data-classification-for-amazon-rds-database-with-amazon-macie/) (Habilitación de la clasificación de datos para la base de datos de Amazon RDS con Macie) 
+  [Detecting sensitive data in DynamoDB with Macie](https://aws.amazon.com/blogs/security/detecting-sensitive-data-in-dynamodb-with-macie/) (Detección de datos confidenciales en DynamoDB con Macie) 

 **Vídeos relacionados: ** 
+  [Event-driven data security using Amazon Macie](https://www.youtube.com/watch?v=onqA7MJssoU) (Seguridad de datos basada en eventos utilizando Amazon Macie) 
+  [Amazon Macie for data protection and governance](https://www.youtube.com/watch?v=SmMSt0n6a4k) (Amazon Macie para la protección y gobernanza de datos) 
+  [Fine-tune sensitive data findings with allow lists](https://www.youtube.com/watch?v=JmQ_Hybh2KI) (Optimización de los hallazgos de datos confidenciales con listas de permitidos) 

# SEC07-BP02 Definir controles de protección de datos
<a name="sec_data_classification_define_protection"></a>

 Proteja los datos de acuerdo con su nivel de clasificación. Por ejemplo, proteja los datos clasificados como públicos utilizando recomendaciones relevantes a la vez que protege los datos confidenciales con controles adicionales. 

Mediante el uso de etiquetas de recursos, separando cuentas de AWS por nivel de confidencialidad (y potencialmente también según las reservas, enclaves o comunidades de intereses), políticas de IAM, SCP de AWS Organizations, AWS Key Management Service (AWS KMS) y AWS CloudHSM, puede definir e implementar sus políticas de clasificación y protección de datos con cifrado. Por ejemplo, si tiene un proyecto con buckets de S3 que contienen datos muy críticos o instancias de Amazon Elastic Compute Cloud (Amazon EC2) que procesen información confidencial, se les puede asignar la etiqueta `Project=ABC` . Solamente su equipo inmediato sabrá qué significa el código del proyecto; también proporciona una forma de utilizar el control de acceso basado en atributos. Puede definir los niveles de acceso a las claves de cifrado de AWS KMS con políticas y concesiones de claves para garantizar que los servicios adecuados tengan acceso al contenido confidencial a través de un mecanismo seguro. Si va a tomar decisiones de autorización en función de etiquetas, debería asegurarse de que los permisos de las etiquetas se definan convenientemente con políticas de etiquetas en AWS Organizations.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Definir el esquema de identificación y clasificación de datos: la identificación y clasificación de los datos se realiza para evaluar el impacto potencial, el tipo de datos que almacena y quién debe acceder a ellos. 
  +  [Documentación de AWS](https://docs.aws.amazon.com/) 
+  Detectar los controles de AWS disponibles: para los servicios de AWS que está utilizando o pretende utilizar, detecte los controles de seguridad. Muchos servicios tienen una sección de seguridad en su documentación. 
  +  [Documentación de AWS](https://docs.aws.amazon.com/) 
+  Identificar los recursos de cumplimiento de AWS: identifique los recursos que AWS tiene disponibles para ayudarle. 
  +  [https://aws.amazon.com/compliance/](https://aws.amazon.com/compliance/?ref=wellarchitected) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de AWS](https://docs.aws.amazon.com/) 
+  [Documento técnico sobre clasificación de datos](https://docs.aws.amazon.com/whitepapers/latest/data-classification/data-classification.html) 
+  [Introducción a Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/getting-started.html) 
+  [Falta el texto](https://aws.amazon.com/compliance/) 

 **Vídeos relacionados:** 
+  [Introducción al nuevo Amazon Macie](https://youtu.be/I-ewoQekdXE) 

# SEC07-BP03 Automatizar la identificación y la clasificación
<a name="sec_data_classification_auto_classification"></a>

 La automatización de la identificación y clasificación de datos puede ayudarle a implementar los controles correctos. El uso de la automatización para esto, en lugar del acceso directo de una persona, reduce el riesgo de error y exposición humanos. Debería valorar el uso de una herramienta como [Amazon Macie](https://aws.amazon.com/macie/), que usa el machine learning para detectar, clasificar y proteger automáticamente los datos confidenciales en AWS. Amazon Macie reconoce la información confidencial, como la información de identificación personal (PII) o la propiedad intelectual, y le proporciona paneles y alertas que le permiten visualizar cómo se desplazan estos datos o cómo se obtiene acceso a ellos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use el inventario de Amazon Simple Storage Service (Amazon S3): el inventario de Amazon S3 es una de las herramientas que puede utilizar para realizar una auditoría y elaborar informes sobre el estado de cifrado y replicación de los objetos. 
  +  [Inventario de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html) 
+  Plantéese usar Amazon Macie: Amazon Macie utiliza el aprendizaje automático para descubrir y clasificar automáticamente los datos almacenados en Amazon S3.
  +  [Amazon Macie](https://aws.amazon.com/macie/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon Macie](https://aws.amazon.com/macie/) 
+  [Inventario de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html) 
+  [Documento técnico sobre clasificación de datos](https://docs.aws.amazon.com/whitepapers/latest/data-classification/data-classification.html) 
+  [Introducción a Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/getting-started.html) 

 **Videos relacionados:** 
+  [Introducción al nuevo Amazon Macie](https://youtu.be/I-ewoQekdXE) 

# SEC07-BP04 Definir la administración del ciclo de vida de los datos
<a name="sec_data_classification_lifecycle_management"></a>

 Su estrategia de ciclo de vida definida debería basarse en el nivel de confidencialidad, además de en los requisitos jurídicos y organizativos. Debe tener en cuenta algunos aspectos, como la duración de retención, los procesos de destrucción, la administración del acceso, la transformación o el intercambio de los datos. Al seleccionar una metodología de clasificación de los datos, valore la facilidad de uso frente al acceso. También debería dar cabida a los distintos niveles de acceso y particularidades para implementar un enfoque seguro, pero utilizable, para cada nivel. Utilice siempre un enfoque de defensa en profundidad y reduzca el acceso humano a los datos y los mecanismos de transformación, eliminación o copia de los datos. Por ejemplo, exija a los usuarios que se autentiquen en una aplicación con métodos estrictos, y otorgue a la aplicación, en lugar de a los usuarios, el requisito de permiso de acceso para llevar a cabo una acción a distancia. Además, asegúrese de que los usuarios procedan de una ruta de red de confianza y requieran acceso a las claves de descifrado. Use herramientas como paneles e informes automáticos para proporcionar a los usuarios información de los datos en lugar de proporcionarles acceso directo a los datos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Identifique los tipos de datos: identifique los tipos de datos que almacena o procesa en su carga de trabajo. Esos datos podrían ser textos, imágenes, bases de datos binarias, etc. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documento técnico sobre clasificación de datos](https://docs.aws.amazon.com/whitepapers/latest/data-classification/data-classification.html) 
+  [Introducción a Amazon Macie](https://docs.aws.amazon.com/macie/latest/user/getting-started.html) 

 **Vídeos relacionados:** 
+  [Introducción al nuevo Amazon Macie](https://youtu.be/I-ewoQekdXE) 

# SEC 8 ¿Cómo protege los datos en reposo?
<a name="sec-08"></a>

Para proteger los datos en reposo debe implementar varios controles para reducir el riesgo de acceso no autorizado o mala gestión.

**Topics**
+ [SEC08-BP01 Implementar una administración de claves segura](sec_protect_data_rest_key_mgmt.md)
+ [SEC08-BP02 Aplicar el cifrado en reposo](sec_protect_data_rest_encrypt.md)
+ [SEC08-BP03 Automatizar la protección de los datos en reposo](sec_protect_data_rest_automate_protection.md)
+ [SEC08-BP04: Aplicación del control de acceso](sec_protect_data_rest_access_control.md)
+ [SEC08-BP05: Uso de mecanismos para mantener a las personas alejadas de los datos](sec_protect_data_rest_use_people_away.md)

# SEC08-BP01 Implementar una administración de claves segura
<a name="sec_protect_data_rest_key_mgmt"></a>

 Mediante la definición de un enfoque de cifrado que incluya el almacenamiento, la rotación y el control de acceso a las claves, puede ayudar a facilitar protección para su contenido ante el acceso de usuarios no autorizados y ante la exposición innecesaria a los usuarios autorizados. AWS Key Management Service (AWS KMS) le ayuda a administrar las claves de cifrado y se [integra con muchos servicios de AWS](https://aws.amazon.com/kms/details/#integration). Este servicio proporciona almacenamiento duradero, seguro y redundante para sus claves de AWS KMS. Puede definir los alias de clave y las políticas a nivel de clave. Las políticas le ayudan a definir los administradores y los usuarios de las claves. Además, AWS CloudHSM es un módulo de seguridad de hardware (HSM, por sus siglas en inglés) basado en la nube que le permite generar y usar fácilmente sus propias claves de cifrado en la Nube de AWS. Le ayuda a satisfacer los requisitos de conformidad corporativos, contractuales y normativos para la seguridad de los datos con HSM validados de nivel 3 FIPS 140-2. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implemente AWS KMS: AWS KMS facilita la creación y administración de claves y el control del uso del cifrado en una amplia gama de servicios de AWS y en sus aplicaciones. AWS KMS es un servicio seguro y resiliente que usa módulos de seguridad de hardware validados por FIPS 140-2 para proteger sus claves. 
  +  [Introducción: AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/getting-started.html) 
+  Plantéese el uso de SDK de cifrado de AWS: utilice el AWS SDK de cifrado con la integración de AWS KMS cuando la aplicación necesite cifrar datos en el lado del cliente. 
  +  [SDK de cifrado de AWS](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/introduction.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Key Management Service](https://aws.amazon.com/kms) 
+  [Herramientas y servicios criptográficos de AWS](https://docs.aws.amazon.com/crypto/latest/userguide/awscryp-overview.html) 
+  [Introducción: AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/getting-started.html) 
+  [Protección de datos de Amazon S3 mediante cifrado](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingEncryption.html) 

 **Videos relacionados:** 
+  [Cómo funciona el cifrado en AWS](https://youtu.be/plv7PQZICCM) 
+  [Protección del almacenamiento en bloque de AWS](https://youtu.be/Y1hE1Nkcxs8) 

# SEC08-BP02 Aplicar el cifrado en reposo
<a name="sec_protect_data_rest_encrypt"></a>

 Debe obligar a usar el cifrado de los datos en reposo. El cifrado mantiene la confidencialidad de los datos confidenciales en caso de que se produzca un acceso no autorizado o se divulguen de manera accidental. 

 **Resultado deseado:** los datos privados deben cifrarse de forma predeterminada cuando estén en reposo. El cifrado ayuda a mantener la confidencialidad de los datos y proporciona una capa adicional de protección contra la divulgación o exfiltración de datos intencionada o inadvertida. No es posible leer los datos cifrados ni acceder a ellos sin antes descifrarlos. Hay que hacer un inventario y controlar todos los datos almacenados sin cifrar. 

 **Antipatrones usuales:** 
+  No utilizar configuraciones para que el cifrado se realice de forma predeterminada. 
+  Proporcionar un acceso demasiado permisivo a las claves de descifrado. 
+  No supervisar el uso de las claves de cifrado y descifrado. 
+  Almacenar datos sin cifrar. 
+  Utilizar la misma clave de cifrado para todos los datos, independientemente de su uso, tipos y clasificación. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Asigne claves de cifrado a clasificaciones de datos en sus cargas de trabajo. Este enfoque ayuda a proteger contra un acceso excesivamente permisivo si utiliza una única clave de cifrado, o muy pocas, para sus datos (consulte [SEC07-BP01 Identificar los datos en su carga de trabajo](sec_data_classification_identify_data.md)). 

 AWS Key Management Service (AWS KMS) se integra con muchos servicios de AWS para facilitar el cifrado de sus datos en reposo. Por ejemplo, en Amazon Simple Storage Service (Amazon S3) puede establecer el [cifrado predeterminado](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html) en un bucket para que todos los objetos nuevos se cifren automáticamente. Cuando utilice AWS KMS, tenga en cuenta hasta qué punto es necesario restringir los datos. AWS administra y utiliza en su nombre las claves de AWS KMS predeterminadas y controladas por el servicio. En el caso de los datos confidenciales que requieren un acceso detallado a la clave de cifrado subyacente, considere la posibilidad de usar claves administradas por el cliente (CMK). Usted tiene el control total sobre las CMK, incluida la rotación y la administración del acceso mediante el uso de políticas de claves. 

 Además, [Amazon Elastic Compute Cloud (Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default) y [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-bucket-encryption.html) admiten la aplicación del cifrado mediante la configuración del cifrado predeterminado. Puede utilizar [Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) para comprobar automáticamente que está utilizando cifrado, por ejemplo, para volúmenes de [Amazon Elastic Block Store (Amazon EBS)](https://docs.aws.amazon.com/config/latest/developerguide/encrypted-volumes.html), [instancias de Amazon Relational Database Service (Amazon RDS)](https://docs.aws.amazon.com/config/latest/developerguide/rds-storage-encrypted.html) y [buckets de Amazon S3](https://docs.aws.amazon.com/config/latest/developerguide/s3-default-encryption-kms.html). 

 AWS también proporciona opciones para el cifrado del cliente, lo que le permite cifrar los datos antes de subirlos a la nube. AWS Encryption SDK proporciona una forma de cifrar sus datos mediante el [cifrado de sobre](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#enveloping). Usted proporciona la clave de encapsulado y AWS Encryption SDK genera una clave de datos única para cada objeto de datos que cifra. Considere la posibilidad de utilizar AWS CloudHSM si necesita un módulo de seguridad de hardware (HSM) administrado de un solo inquilino. AWS CloudHSM le permite generar, importar y administrar claves criptográficas en un HSM validado por FIPS 140-2 nivel 3. Entre los casos de uso de AWS CloudHSM, se incluye la protección de claves privadas para la emisión de una autoridad de certificación (CA) y la habilitación del cifrado de datos transparente (TDE) para bases de datos Oracle. El SDK de cliente de AWS CloudHSM proporciona software que le permite cifrar datos del cliente utilizando claves almacenadas dentro de AWS CloudHSM antes de subir sus datos a AWS. El Amazon DynamoDB Encryption Client también le permite cifrar y firmar elementos antes de subirlos a una tabla de DynamoDB. 

 **Pasos para la implementación** 
+  **Aplique el cifrado en reposo para Amazon S3:** implemente el [cifrado predeterminado de buckets de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-bucket-encryption.html). 

   **Configure el [cifrado predeterminado para los nuevos volúmenes de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html):** especifique que desea que todos los volúmenes de Amazon EBS recién creados se creen de forma cifrada, con la opción de utilizar la clave predeterminada que proporciona AWS o una clave que usted cree. 

   **Configure imágenes de máquina de Amazon (AMI) cifradas:** al copiar una AMI existente con cifrado habilitado, se cifran automáticamente las instantáneas y los volúmenes raíz. 

   **Configure el [cifrado de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Overview.Encryption.html):** configure el cifrado para sus clústeres de base de datos e instantáneas en reposo de Amazon RDS mediante la opción de cifrado. 

   **Cree y configure claves de AWS KMS con políticas que limiten el acceso a las entidades principales adecuadas para cada clasificación de datos:** por ejemplo, cree una clave de AWS KMS para cifrar los datos de producción y otra distinta para cifrar los datos de desarrollo o de prueba. También puede proporcionar acceso a la clave a otras Cuentas de AWS. Considere la posibilidad de tener cuentas diferentes para sus entornos de desarrollo y de producción. Si en su entorno de producción es necesario descifrar artefactos en la cuenta de desarrollo, puede editar la política de CMK que se utiliza para cifrar los artefactos de desarrollo para otorgar a la cuenta de producción la capacidad de descifrar dichos artefactos. Después, el entorno de producción puede ingerir los datos descifrados para usarlos en producción. 

   **Configure el cifrado en servicios de AWS adicionales:** para otros servicios de AWS que utilice, revise la [documentación de seguridad](https://docs.aws.amazon.com/security/) de ese servicio para determinar las opciones de cifrado del servicio. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Crypto Tools](https://docs.aws.amazon.com/aws-crypto-tools) 
+  [Documentación de AWS](https://docs.aws.amazon.com/) 
+  [AWS Encryption SDK](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/introduction.html) 
+  [Documento técnico Introducción a los detalles criptográficos de AWS KMS](https://docs.aws.amazon.com/kms/latest/cryptographic-details/intro.html) 
+  [AWS Key Management Service](https://aws.amazon.com/kms) 
+  [AWS cryptographic services and tools](https://docs.aws.amazon.com/crypto/latest/userguide/awscryp-overview.html) (Herramientas y servicios criptográficos de AWS) 
+  [Cifrado de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) 
+  [Cifrado predeterminado para volúmenes de Amazon EBS](https://aws.amazon.com/blogs/aws/new-opt-in-to-default-encryption-for-new-ebs-volumes/) 
+  [Cifrado de recursos de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Encryption.html) 
+  [Habilitación del cifrado predeterminado de bucket de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/default-bucket-encryption.html) 
+  [Protección de datos de Amazon S3 mediante cifrado](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingEncryption.html) 

 **Vídeos relacionados: ** 
+  [How Encryption Works in AWS](https://youtu.be/plv7PQZICCM) (Cómo funciona el cifrado en AWS) 
+  [Securing Your Block Storage on AWS](https://youtu.be/Y1hE1Nkcxs8) (Protección del almacenamiento en bloque de AWS) 

# SEC08-BP03 Automatizar la protección de los datos en reposo
<a name="sec_protect_data_rest_automate_protection"></a>

 Utilice herramientas automatizadas para validar y aplicar continuamente los controles de datos en reposo; por ejemplo, verifique que solo hay recursos de almacenamiento cifrados. Puede [automatizar la validación de que todos los volúmenes de EBS están cifrados](https://docs.aws.amazon.com/config/latest/developerguide/encrypted-volumes.html) con [Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html). [AWS Security Hub CSPM](http://aws.amazon.com/security-hub/) también puede verificar varios controles mediante comprobaciones automatizadas con respecto a los estándares de seguridad. Además, su Reglas de AWS Config puede [corregir recursos no conformes automáticamente](https://docs.aws.amazon.com/config/latest/developerguide/remediation.html#setup-autoremediation). 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation_guidance"></a>

 *Datos en reposo* representan los datos que se conservan en un almacenamiento no volátil durante cualquier periodo de tiempo en una carga de trabajo. Esto incluye el almacenamiento en bloque, el almacenamiento de objetos, las bases de datos, los archivos, los dispositivos IoT y todo tipo de forma de almacenamiento en la que se conserven los datos. La protección de los datos en reposo reduce el riesgo de acceso no autorizado si se implementan el cifrado y los controles de acceso adecuados. 

 Aplique el cifrado en reposo: debe asegurarse de que la única forma de almacenar los datos sea mediante el cifrado. AWS KMS se integra perfectamente con muchos servicios de AWS para facilitarle el cifrado de todos sus datos en reposo. Por ejemplo, en Amazon Simple Storage Service (Amazon S3), puede establecer el [cifrado predeterminado](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) en un bucket de modo que todos los objetos nuevos se cifran automáticamente. Además, [Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default) y [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/default-bucket-encryption.html) admiten la aplicación del cifrado mediante la configuración del cifrado predeterminado. Puede usar [las reglas de administradas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) para comprobar automáticamente que está utilizando el cifrado, por ejemplo, para [volúmenes de EBS](https://docs.aws.amazon.com/config/latest/developerguide/encrypted-volumes.html), [instancias de Amazon Relational Database Service (Amazon RDS)](https://docs.aws.amazon.com/config/latest/developerguide/rds-storage-encrypted.html)y [buckets de Amazon S3](https://docs.aws.amazon.com/config/latest/developerguide/s3-default-encryption-kms.html). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Crypto Tools](https://docs.aws.amazon.com/aws-crypto-tools) 
+  [SDK de cifrado de AWS](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/introduction.html) 

 **Vídeos relacionados:** 
+  [How Encryption Works in AWS (Cómo funciona el cifrado en AWS)](https://youtu.be/plv7PQZICCM) 
+  [Securing Your Block Storage on AWS (Protección del almacenamiento en bloque de AWS)](https://youtu.be/Y1hE1Nkcxs8) 

# SEC08-BP04: Aplicación del control de acceso
<a name="sec_protect_data_rest_access_control"></a>

 Para ayudarle a proteger sus datos en reposo, aplique el control de acceso mediante mecanismos como el aislamiento y el control de versiones, y utilice el principio del privilegio mínimo. Impida que se conceda acceso público a sus datos. 

**Resultado deseado:** verificar que solo los usuarios autorizados puedan acceder a los datos en función de su necesidad de utilizarlos. Proteja sus datos con copias de seguridad periódicas y el control de versiones para evitar que se modifiquen o eliminen de forma intencionada o involuntaria. Aísle los datos críticos de otros datos para proteger su confidencialidad e integridad. 

**Antipatrones usuales:**
+  Almacenar juntos datos con diferentes requisitos de confidencialidad o clasificación. 
+  Utilizar permisos demasiado permisivos en las claves de descifrado. 
+  Clasificar incorrectamente los datos. 
+  No conservar copias de seguridad detalladas de los datos importantes. 
+  Proporcionar acceso persistente a los datos de producción. 
+  No auditar el acceso a los datos ni revisar periódicamente los permisos. 

**Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Hay muchos controles que pueden ayudar a proteger sus datos en reposo, como el control de acceso (con el privilegio mínimo), el aislamiento y el control de versiones. El acceso a sus datos debe auditarse utilizando mecanismos de detección, como AWS CloudTrail, y registros de nivel de servicio, como los registros de acceso de Amazon Simple Storage Service (Amazon S3). Debe realizar un inventario de los datos a los que se puede acceder públicamente y crear un plan para reducir la cantidad de datos disponibles públicamente a lo largo del tiempo. 

 El bloqueo de almacenes de Amazon Glacier y el bloqueo de objetos de Amazon S3 proporcionan un control de acceso obligatorio para los objetos de Amazon S3: una vez bloqueada una política de almacenes con la opción de conformidad, ni siquiera el usuario raíz puede cambiarla hasta que venza el bloqueo. 

### Pasos para la implementación
<a name="implementation-steps"></a>
+  **Aplique el control de acceso**: aplique el control de acceso con privilegios mínimos, incluido el acceso a las claves de cifrado. 
+  **Separe los datos en función de diferentes niveles de clasificación**: utilice diferentes Cuentas de AWS para los niveles de clasificación de los datos y administre dichas cuentas mediante [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html). 
+  **Revise las políticas de AWS Key Management Service (AWS KMS)**: [revise el nivel de acceso](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) concedido en las políticas de AWS KMS. 
+  **Revise los permisos de los objetos y buckets de Amazon S3**: revise periódicamente el nivel de acceso otorgado por las políticas de buckets de S3. La práctica recomendada es evitar el uso de buckets de lectura o escritura pública. Plantéese utilizar [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) para detectar buckets que están disponibles al público y Amazon CloudFront para ofrecer contenido de Amazon S3. Verifique que los buckets que no deben permitir el acceso público estén configurados correctamente para impedirlo. De manera predeterminada, todos los buckets de S3 son privados y solo permiten el acceso a los usuarios que cuentan con una autorización explícita. 
+  **Habilite [AWS IAM Access Analyzer](https://docs.aws.amazon.com//latest/UserGuide/what-is-access-analyzer.html):** IAM Access Analyzer analiza los buckets de Amazon S3 y genera un hallazgo cuando una [política de S3 concede acceso a una entidad externa](https://docs.aws.amazon.com//latest/UserGuide/access-analyzer-resources.html#access-analyzer-s3). 
+  **Habilite el [control de versiones de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html) y el [bloqueo de objetos](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html)** cuando corresponda. 
+  **Utilice el [inventario de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html)**: el inventario de Amazon S3 puede utilizarse para auditar e informar sobre el estado de replicación y cifrado de sus objetos de S3. 
+  **Revise los permisos de uso compartido de [Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) y [https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharing-amis.html](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharing-amis.html)**: los permisos de uso compartido pueden permitir que las imágenes y los volúmenes se compartan con Cuentas de AWS externas a su carga de trabajo. 
+  **Revise periódicamente los [recursos compartidos de AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) para determinar si los recursos deben seguir compartiéndose.** Resource Access Manager le permite compartir recursos, como las políticas de AWS Network Firewall, las reglas de resolución de Amazon Route 53 y las subredes, dentro de sus Amazon VPC. Audite periódicamente los recursos compartidos y deje de compartir los recursos que ya no sea necesario. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [SEC03-BP01 Definir los requisitos de acceso](sec_permissions_define.md) 
+  [SEC03-BP02 Conceder acceso con privilegios mínimos](sec_permissions_least_privileges.md) 

 **Documentos relacionados:** 
+  [Documento técnico Introducción a los detalles criptográficos de AWS KMS](https://docs.aws.amazon.com/kms/latest/cryptographic-details/intro.html) 
+  [Introducción a la administración de permisos de acceso a los recursos de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-managing-access-s3-resources.html) 
+  [Información general sobre la administración de acceso a sus recursos de AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html) 
+  [Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) 
+  [Amazon S3 \$1 Amazon CloudFront: A Match Made in the Cloud](https://aws.amazon.com/blogs/networking-and-content-delivery/amazon-s3-amazon-cloudfront-a-match-made-in-the-cloud/) (Amazon S3 \$1 Amazon CloudFront: una combinación perfecta en la nube) 
+  [Uso del control de versiones](https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html) 
+  [Usar Bloqueo de objetos de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) 
+  [Compartir una instantánea de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) 
+  [AMI compartidas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharing-amis.html) 
+  [Hosting a single-page application on Amazon S3](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/deploy-a-react-based-single-page-application-to-amazon-s3-and-cloudfront.html) (Alojar una aplicación de una sola página en Amazon S3) 

 **Vídeos relacionados: ** 
+  [Securing Your Block Storage on AWS](https://youtu.be/Y1hE1Nkcxs8) (Protección del almacenamiento en bloque de AWS) 

# SEC08-BP05: Uso de mecanismos para mantener a las personas alejadas de los datos
<a name="sec_protect_data_rest_use_people_away"></a>

 Impida a todos los usuarios acceder directamente a sistemas e información confidenciales en circunstancias de funcionamiento normales. Por ejemplo, utilice un flujo de trabajo de administración de cambios para administrar instancias de Amazon Elastic Compute Cloud (Amazon EC2) con herramientas en lugar de permitir el acceso directo o un host bastión. Esto se puede lograr mediante la [automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html), que usa [documentos de automatización](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html) que incluyen los pasos que han de seguirse para realizar tareas. Estos documentos se pueden almacenar en el control de código fuente, otros compañeros pueden revisarlos antes de su publicación, y pueden probarse de forma exhaustiva para reducir al mínimo el riesgo en comparación con el acceso al shell. Los usuarios empresariales podrían tener un panel en lugar de acceso directo a un almacén de datos para ejecutar consultas. Allí donde no se utilicen canalizaciones de CI/CD, determine qué controles y procesos son necesarios para ofrecer correctamente un mecanismo de acceso instantáneo que suele estar deshabilitado. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implemente mecanismos para mantener a las personas alejadas de los datos: entre estos mecanismos se incluyen el uso de paneles, como Quick, para mostrar datos a los usuarios en lugar de realizar consultas directas. 
  +  [Quick](https://aws.amazon.com/quicksight/) 
+  Automatice la administración de la configuración: realice acciones a distancia, y aplique y valide configuraciones seguras de forma automática mediante el uso de un servicio o herramienta de administración de la configuración. Evite usar hosts bastión o acceder directamente a instancias de EC2. 
  +  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
  +  [AWS CloudFormation](https://aws.amazon.com/cloudformation/) 
  +  [Canalización de CI/CD para plantillas de AWS CloudFormation en AWS](https://aws.amazon.com/quickstart/architecture/cicd-taskcat/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documento técnico Detalles criptográficos de AWS KMS](https://docs.aws.amazon.com/kms/latest/cryptographic-details/intro.html) 

 **Vídeos relacionados:** 
+  [Cómo funciona el cifrado en AWS](https://youtu.be/plv7PQZICCM) 
+  [Protección del almacenamiento en bloque de AWS](https://youtu.be/Y1hE1Nkcxs8) 

# SEC 9 ¿Cómo protege sus datos en tránsito?
<a name="sec-09"></a>

Para proteger los datos en tránsito debe implementar varios controles para reducir el riesgo de acceso no autorizado o pérdida.

**Topics**
+ [SEC09-BP01: Implementación de la administración segura de claves y certificados](sec_protect_data_transit_key_cert_mgmt.md)
+ [SEC09-BP02 Aplicar el cifrado en tránsito](sec_protect_data_transit_encrypt.md)
+ [SEC09-BP03: Automatización de la detección del acceso involuntario a los datos](sec_protect_data_transit_auto_unintended_access.md)
+ [SEC09-BP04: Autenticación de las comunicaciones de red](sec_protect_data_transit_authentication.md)

# SEC09-BP01: Implementación de la administración segura de claves y certificados
<a name="sec_protect_data_transit_key_cert_mgmt"></a>

 Almacene certificados y claves de cifrado de forma segura y rótelos en intervalos de tiempo adecuados con un estricto control de acceso. La mejor forma de hacer esto es utilizar un servicio administrado, como, por ejemplo, [AWS Certificate Manager (ACM)](http://aws.amazon.com/certificate-manager). Le permite aprovisionar, administrar e implementar fácilmente certificados públicos y privados de seguridad de la capa de transporte (TLS) para utilizarlos con los servicios de AWS y sus recursos conectados internos. Los certificados de TLS se utilizan para proteger las comunicaciones de red y establecer la identidad de sitios web por Internet, así como de recursos en redes privadas. ACM se integra con los recursos de AWS, como, por ejemplo, los equilibradores de carga elásticos (ELB), las distribuciones de AWS y las API de API Gateway, además de gestionar renovaciones automáticas de certificados. Si utiliza ACM para implementar una CA raíz privada, esta puede proporcionar certificados y claves privadas para utilizarlos en instancias de Amazon Elastic Compute Cloud (Amazon EC2) contenedores, etc. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implementación de la administración segura de claves y certificados: implemente una solución de administración segura de claves y certificados. 
  + [AWS Certificate Manager ](https://aws.amazon.com/certificate-manager/)
  + [ Cómo alojar y administrar toda una infraestructura de certificados privados en AWS](https://aws.amazon.com/blogs/security/how-to-host-and-manage-an-entire-private-certificate-infrastructure-in-aws/)
+  Implementación de protocolos de seguridad: utilice protocolos seguros que ofrezcan autenticación y confidencialidad, como la seguridad de la capa de transporte (TLS) o IPsec, para reducir el riesgo de alteración o pérdida de datos. Consulte la documentación de AWS para obtener información sobre los protocolos y la seguridad pertinentes a los servicios que está utilizando. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de AWS](https://docs.aws.amazon.com/)

# SEC09-BP02 Aplicar el cifrado en tránsito
<a name="sec_protect_data_transit_encrypt"></a>

Aplique los requisitos de cifrado definidos en función de las políticas, las obligaciones reglamentarias y las normas de su organización para ayudar a cumplir los requisitos organizativos, legales y de conformidad. Utilice únicamente protocolos con cifrado cuando transmita datos confidenciales fuera de su nube virtual privada (VPC). El cifrado ayuda a mantener la confidencialidad de los datos incluso cuando transitan por redes que no son de confianza.

 **Resultado deseado**: todos los datos deben cifrarse en tránsito utilizando protocolos TLS seguros y conjuntos de cifrado. El tráfico de red entre sus recursos e Internet debe cifrarse para mitigar el acceso no autorizado a los datos. El tráfico de red de su entorno interno de AWS únicamente debe cifrarse utilizando TLS siempre que sea posible. La red interna de AWS se cifra de manera predeterminada y el tráfico de red dentro de una VPC no se puede suplantar ni espiar a menos que una parte no autorizada haya obtenido acceso a cualquier recurso que esté generando tráfico (como las instancias de Amazon EC2 y los contenedores de Amazon ECS). Considere la posibilidad de proteger el tráfico entre redes con una red privada virtual (VPN) IPsec. 

 **Antipatrones usuales:** 
+  Utilizar versiones de SSL, TLS y componentes del conjunto de cifrado obsoletos (por ejemplo, SSL v3.0, claves RSA de 1024 bits y cifrado RC4). 
+  Permitir tráfico no cifrado (HTTP) hacia o desde recursos destinados al público. 
+  No supervisar y sustituir los certificados X.509 antes de que caduquen. 
+  Utilizar certificados X.509 autofirmados para TLS. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los servicios de AWS facilitan puntos de conexión HTTPS con TLS para la comunicación, lo que proporciona cifrado en tránsito al comunicarse con las API de AWS. Los protocolos inseguros, como HTTP, se pueden auditar y bloquear en una VPC mediante el uso de grupos de seguridad. Las solicitudes HTTP también se pueden [redirigir automáticamente a HTTPS](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https-viewers-to-cloudfront.html) en Amazon CloudFront o en un [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#redirect-actions). Dispone de un control total sobre los recursos informáticos para implementar el cifrado en tránsito en los servicios. También puede usar la conectividad de VPN en la VPC desde una red externa o [AWS Direct Connect](https://aws.amazon.com/directconnect/) para facilitar el cifrado de tráfico. Compruebe que sus clientes realizan llamadas a las API de AWS utilizando al menos TLS 1.2, ya que [AWS va a dejar de utilizar TLS 1.0 y 1.1 en junio de 2023](https://aws.amazon.com/blogs/security/tls-1-2-required-for-aws-endpoints/). Hay soluciones de terceros disponibles en AWS Marketplace si tiene requisitos especiales. 

 **Pasos para la implementación** 
+  **Aplique el cifrado en tránsito**: los requisitos de cifrado definidos deben basarse en los últimos estándares y prácticas recomendadas, y solo permitir protocolos seguros. Por ejemplo, configure un grupo de seguridad para permitir solamente el protocolo HTTPS a una instancia del equilibrador de carga de aplicaciones o una instancia de Amazon EC2. 
+  **Configure protocolos seguros en los servicios de periferia:** [configure HTTPS con Amazon CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html) y utilice un [perfil de seguridad apropiado para su postura de seguridad y su caso de uso](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/secure-connections-supported-viewer-protocols-ciphers.html#secure-connections-supported-ciphers). 
+  **Utilice una [VPN para la conectividad externa](https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html):** considere la posibilidad de utilizar una VPN IPsec para proteger las conexiones punto a punto o de red a red para ofrecer tanto privacidad como integridad de los datos. 
+  **Configure protocolos seguros en los equilibradores de carga:** seleccione una política de seguridad que proporcione los conjuntos de cifrado más seguros que admitan los clientes que se conectarán al agente de escucha. [Cree un agente de escucha HTTPS para su Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html). 
+  **Configure protocolos seguros en Amazon Redshift:** configure su clúster para que requiera una [conexión de capa de sockets seguros (SSL) o de seguridad de la capa de transporte (TLS)](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html). 
+  **Configure protocolos seguros:** revise la documentación del servicio de AWS para determinar las capacidades de cifrado en tránsito. 
+  **Configure el acceso seguro al realizar subidas en los buckets de Amazon S3:** utilice los controles de políticas de buckets de Amazon S3 para [aplicar el acceso seguro](https://docs.aws.amazon.com/AmazonS3/latest/userguide/security-best-practices.html) a los datos. 
+  **Considere la posibilidad de utilizar [AWS Certificate Manager](https://aws.amazon.com/certificate-manager/): ** ACM le permite aprovisionar, administrar y desplegar certificados TLS públicos para utilizarlos con los servicios de AWS. 
+  **Considere la posibilidad de utilizar [AWS Private Certificate Authority](https://aws.amazon.com/private-ca/) para las necesidades de PKI privadas: ** AWS Private CA le permite crear jerarquías de autoridades de certificación (CA) privadas para emitir certificados X.509 de entidad final que pueden utilizarse para crear canales TLS cifrados. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Documentación de AWS](https://docs.aws.amazon.com/index.html)
+ [ Uso de HTTPS con CloudFront ](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/using-https.html)
+ [ Conectar la VPC a redes remotas mediante AWS Virtual Private Network](https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html)
+ [ Create an HTTPS listener for your Application Load Balancer ](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html) (Creación de un agente de escucha HTTPS para Application Load Balancer)
+ [Tutorial: configure SSL/TLS en Amazon Linux 2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/SSL-on-amazon-linux-2.html)
+ [Uso de SSL/TLS para cifrar una conexión a una instancia de base de datos](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html)
+ [ Configuración de las opciones de seguridad para las conexiones ](https://docs.aws.amazon.com/redshift/latest/mgmt/connecting-ssl-support.html)

# SEC09-BP03: Automatización de la detección del acceso involuntario a los datos
<a name="sec_protect_data_transit_auto_unintended_access"></a>

 Utilice herramientas, tales como Amazon GuardDuty, para detectar automáticamente actividades sospechosas o intentos de trasladar datos fuera de los límites definidos. Por ejemplo, GuardDuty puede detectar actividad de lectura de Amazon Simple Storage Service (Amazon S3) que sea inusual con la [búsqueda Exfiltration:S3/AnomalousBehavior](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_finding-types-s3.html#exfiltration-s3-objectreadunusual). Además de GuardDuty, [los registros de flujo de Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html), que capturan información sobre el tráfico de red, pueden utilizarse con Amazon EventBridge para desencadenar la detección de conexiones anómalas, tanto las que se han llegado a establecer como las denegadas. [El analizador de acceso de Amazon S3](http://aws.amazon.com/blogs/storage/protect-amazon-s3-buckets-using-access-analyzer-for-s3) puede ayudar a evaluar a qué datos pueden acceder ciertos usuarios en los buckets de Amazon S3. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatización de la detección del acceso involuntario a los datos: utilice una herramienta o mecanismo de detección para detectar automáticamente los intentos de trasladar datos fuera de los límites definidos; por ejemplo, para detectar un sistema de base de datos que esté copiando datos a un host desconocido. 
  + [ Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 
+  Plantéese utilizar Amazon Macie: Amazon Macie es un servicio de privacidad y seguridad de datos totalmente administrado que utiliza el machine learning y la coincidencia de patrones para detectar y proteger los datos confidenciales en AWS. 
  + [ Amazon Macie ](https://aws.amazon.com/macie/)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 
+ [ Amazon Macie ](https://aws.amazon.com/macie/)

# SEC09-BP04: Autenticación de las comunicaciones de red
<a name="sec_protect_data_transit_authentication"></a>

 Verifique la identidad de las comunicaciones mediante el uso de protocolos que admiten la autenticación, como la seguridad de la capa de transporte (TLS) o IPsec. 

El uso de protocolos de red que admiten la autenticación permite que se establezca una relación de confianza entre las partes. Esta ventaja se añade al cifrado utilizado en el protocolo para reducir el riesgo de que las comunicaciones se alteren o se intercepten. Entre los protocolos comunes que implementan la autenticación se incluyen la seguridad de la capa de transporte (TLS), que se utiliza en numerosos servicios de AWS, e IPsec, que se utiliza en [AWS Virtual Private Network (Site-to-Site VPN)](http://aws.amazon.com/vpn).

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implementación de protocolos de seguridad: utilice protocolos seguros que ofrezcan autenticación y confidencialidad, como TLS o IPsec, para reducir el riesgo de alteración o pérdida de datos. Consulte la [documentación de AWS](https://docs.aws.amazon.com/) para obtener información sobre los protocolos y la seguridad pertinentes a los servicios que está utilizando. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de AWS](https://docs.aws.amazon.com/) 

# Respuesta ante incidentes
<a name="a-incident-response"></a>

**Topics**
+ [SEC 10 ¿Cómo anticipa, responde a y se recupera de los incidentes?](sec-10.md)

# SEC 10 ¿Cómo anticipa, responde a y se recupera de los incidentes?
<a name="sec-10"></a>

La preparación es fundamental para investigar de forma oportuna y efectiva, dar respuesta a incidentes de seguridad, así como para minimizar posibles interrupciones en su organización.

**Topics**
+ [SEC10-BP01: Identificar el personal clave y los recursos externos](sec_incident_response_identify_personnel.md)
+ [SEC10-BP02: Desarrollar planes de administración de incidentes](sec_incident_response_develop_management_plans.md)
+ [SEC10-BP03: Preparar capacidades forenses](sec_incident_response_prepare_forensic.md)
+ [SEC10-BP04: Automatización de la capacidad de contención](sec_incident_response_auto_contain.md)
+ [SEC10-BP05: Aprovisionamiento previo del acceso](sec_incident_response_pre_provision_access.md)
+ [SEC10-BP06: Implementar previamente herramientas](sec_incident_response_pre_deploy_tools.md)
+ [SEC10-BP07 Ejecutar los días de juego](sec_incident_response_run_game_days.md)

# SEC10-BP01: Identificar el personal clave y los recursos externos
<a name="sec_incident_response_identify_personnel"></a>

 Identifique las obligaciones legales, el personal y los recursos internos y externos que ayudarían a su organización a responder ante un incidente. 

Al definir su enfoque a la hora de responder ante un incidente en la nube, de forma conjunta con otros equipos (como el consejo jurídico, el equipo directivo, las partes interesadas de la empresa, los servicios de asistencia de AWS, entre otros), debe identificar el personal clave, las partes interesadas y los contactos pertinentes. Con el fin de reducir la dependencia y el tiempo de respuesta, asegúrese de que su equipo, los equipos especializados en seguridad y los equipos de intervención cuenten con los conocimientos adecuados sobre los servicios que utiliza y que tengan la oportunidad de realizar una formación práctica.

Le animamos a identificar a socios de seguridad externos de AWS que puedan ofrecerle una experiencia externa y una perspectiva diferente para aumentar sus capacidades de respuesta. Sus socios de seguridad de confianza pueden ayudarle a identificar posibles riesgos o amenazas con los que podría no estar familiarizado.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Identificar al personal clave de la organización: mantenga una lista de contactos del personal de su organización al que tendría que involucrar para responder ante un incidente y recuperarse de él. 
+  Identificar a los socios externos: si es necesario, póngase en contacto con socios externos que puedan ayudarle a responder ante un incidente y recuperarse de él. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Guía de respuesta ante incidentes de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) 

 **Vídeos relacionados:** 
+  [Cómo prepararse y responder ante incidentes de seguridad en el entorno de AWS](https://youtu.be/8uiO0Z5meCs)

 **Ejemplos relacionados:** 

# SEC10-BP02: Desarrollar planes de administración de incidentes
<a name="sec_incident_response_develop_management_plans"></a>

El primer documento que se desarrolla para la respuesta a incidentes es el plan de respuesta a incidentes. El plan de respuesta a incidentes está diseñado para ser la base de su programa y estrategia de respuesta a incidentes. 

 **Beneficios de establecer esta práctica recomendada:** desarrollar procesos de respuesta a incidentes exhaustivos y claramente definidos es clave para que el programa de respuesta a incidentes sea satisfactorio y escalable. Cuando se produce un evento de seguridad, si tiene unos pasos y flujos de trabajo claros, podrá responder mejor de la manera oportuna. Es posible que ya tenga procesos de respuesta a incidentes. Independientemente de su estado actual, es importante actualizar, iterar y probar sus procesos de respuesta a incidentes con regularidad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Un plan de administración de incidentes es fundamental para responder y mitigar el impacto potencial de los incidentes de seguridad y recuperarse de él. Un plan de administración de incidentes es un proceso estructurado para identificar y solucionar los incidentes de seguridad y responder a ellos en el momento oportuno.

 La nube tiene muchos de los mismos roles y requisitos operativos que se encuentran en un entorno local. A la hora de crear un plan de administración de incidentes, es importante tener en cuenta las estrategias de respuesta y recuperación que mejor se ajusten al resultado empresarial y a los requisitos de conformidad. Por ejemplo, si trabaja con cargas de trabajo en AWS que cumplen con la normativa FedRAMP en Estados Unidos, es útil cumplir con la [guía de administración de seguridad informática NIST SP 800-61](https://nvlpubs.nist.gov/nistpubs/specialpublications/nist.sp.800-61r2.pdf). Del mismo modo, cuando opere con cargas de trabajo con datos de información de identificación personal (PII) de Europa, considere situaciones como la forma en que podría proteger y responder a los problemas relacionados con la residencia de datos según lo dispuesto por la [normativa del Reglamento General de Protección de Datos (RGPD)](https://ec.europa.eu/info/law/law-topic/data-protection/reform/what-does-general-data-protection-regulation-gdpr-govern_en). 

 Al crear un plan de administración de incidentes para sus cargas de trabajo que operan en AWS, empiece con el [modelo de responsabilidad compartida de AWS](https://aws.amazon.com/compliance/shared-responsibility-model/) para crear un enfoque de defensa en profundidad en la respuesta a incidentes. En este modelo, AWS administra la seguridad de la nube y usted es responsable de la seguridad en la nube. Esto significa que retiene el control y es responsable de los controles de seguridad que decida implementar. La [AWS Security Incident Response Guide (Guía de respuesta ante incidentes de seguridad de AWS)](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) expone en detalle los conceptos clave y las orientaciones básicas para crear un plan de administración de incidentes centrado en la nube.

 Un plan eficaz de administración de incidentes debe iterarse continuamente, manteniéndose al día con su objetivo de operaciones en la nube. Considere la posibilidad de utilizar los planes de implementación que se detallan a continuación cuando cree y haga evolucionar su plan de administración de incidentes. 

## Pasos para la implementación
<a name="implementation-steps"></a>

 **Definición de roles y responsabilidades** 

 La gestión de los eventos de seguridad requiere disciplina en toda la organización y una buena disposición a entrar en acción. Dentro de la estructura organizativa, debe haber muchas personas que tengan responsabilidades y obligaciones, que se consulten o que se mantengan informadas durante un incidente, como los representantes de Recursos Humanos (RR. HH.), el equipo directivo y el departamento legal. Tenga en cuenta estas funciones y responsabilidades y piense si debe participar algún tercero. Tenga en cuenta que, en muchas zonas geográficas, hay leyes locales que rigen lo que se debe y lo que no se debe hacer. Aunque parezca un mero trámite burocrático, elaborar un gráfico de las personas con responsabilidades y obligaciones, las personas que hay que consultar y las personas a las que hay que informar (RACI) para sus planes de respuesta en materia de seguridad facilita una comunicación rápida y directa y deja claro quiénes son los líderes en las diferentes etapas del evento. 

 Durante un incidente, es fundamental incluir a los propietarios y desarrolladores de las aplicaciones y los recursos afectados, ya que son los expertos en la materia (SME) que pueden proporcionar información y contexto para ayudar a medir el impacto. Asegúrese de establecer relaciones con los desarrolladores y propietarios de las aplicaciones antes de confiar en su experiencia para responder a los incidentes. Es posible que los propietarios de aplicaciones o SME, como los administradores o ingenieros de la nube, tengan que actuar en situaciones en las que el entorno no sea familiar o sea complejo, o a los que las personas encargadas de la respuesta no tengan acceso. 

 Por último, en la investigación o la respuesta pueden participar socios de confianza, ya que pueden proporcionar experiencia adicional y un control muy valioso. Si no dispone de estas habilidades en su propio equipo, tal vez sea conveniente contratar a una persona externa para que le ayude. 

 **Conozca a los equipos de asistencia y respuesta de AWS** 
+  **AWS Support** 
  +  [Soporte](https://aws.amazon.com/premiumsupport/) dispone de una amplia variedad de planes que ofrecen acceso a herramientas y experiencia que respalda el éxito y el buen estado operativo de sus soluciones de AWS. Si necesita asistencia técnica y más recursos para planificar, desplegar y optimizar su entorno de AWS, puede seleccionar el plan de asistencia que mejor se adapte a su caso de uso de AWS. 
  +  Utilice el [Centro de soporte](https://console.aws.amazon.com/support) de Consola de administración de AWS (es necesario iniciar sesión) como punto de contacto central para obtener asistencia en caso de problemas que afecten a sus recursos de AWS. El acceso a Soporte está controlado por AWS Identity and Access Management. Para obtener más información sobre el acceso a las características de Soporte, consulte [Getting started with Soporte](https://docs.aws.amazon.com/awssupport/latest/user/getting-started.html#accessing-support)(Introducción a AWS Support). 
+  **Equipo de respuesta a incidentes de clientes (CIRT) de AWS** 
  +  El equipo de respuesta a incidentes de clientes (CIRT) de AWS es un equipo global de AWS especializado que ofrece asistencia a los clientes las 24 horas del día y los 7 días de la semana durante eventos de seguridad activos en el lado del cliente del [modelo de responsabilidad compartida de AWS](https://aws.amazon.com/compliance/shared-responsibility-model/). 
  +  Cuando el CIRT de AWS le ofrece asistencia, le ayuda en la clasificación y la recuperación de un evento de seguridad activo en AWS. Puede ayudarle a analizar la causa raíz mediante el uso de registros de servicio de AWS y ofrecerle recomendaciones para la recuperación. También puede proporcionar recomendaciones de seguridad y mejores prácticas para ayudarle a evitar eventos de seguridad en el futuro. 
  +  Los clientes de AWS pueden interactuar con el CIRT de AWS a través de un [caso de Soporte](https://docs.aws.amazon.com/awssupport/latest/user/case-management.html). 
+  **Asistencia en respuestas a DDoS** 
  +  AWS ofrece [AWS Shield](https://aws.amazon.com/shield/), que proporciona un servicio de protección contra ataques de denegación de servicio distribuidos (DDoS) administrado que protege las aplicaciones web que se ejecutan en AWS. Shield ofrece detección permanente y mitigaciones automáticas en línea que pueden minimizar el tiempo de inactividad y la latencia de las aplicaciones, por lo que no es necesario utilizar Soporte para beneficiarse de la protección contra ataques DDoS. Hay dos niveles de Shield: AWS Shield Standard y AWS Shield Advanced. Para conocer las diferencias entre estos dos niveles, consulte [la documentación de características de Shield](https://aws.amazon.com/shield/features/). 
+  **AWS Managed Services (AMS)** 
  +  [AWS Managed Services (AMS)](https://aws.amazon.com/managed-services/) proporciona una administración continua de su infraestructura de AWS para que pueda centrarse en sus aplicaciones. Al implementar las prácticas recomendadas para mantener su infraestructura, AMS ayuda a reducir sus gastos y riesgos operativos. AMS automatiza actividades comunes, como solicitudes de cambios, monitorización, administración de parches, seguridad y servicios de copia de seguridad, y ofrece servicios de ciclo de vida completo para aprovisionar, ejecutar y ofrecer asistencia a su infraestructura. 
  +  AMS asume la responsabilidad de desplegar un conjunto de controles de detección de seguridad y proporciona una primera línea de respuesta a las alertas las 24 horas del día y los 7 días de la semana. Cuando se inicia una alerta, AMS sigue un conjunto estándar de guías automáticas y manuales para verificar una respuesta coherente. Estas guías de estrategias se comparten con los clientes de AMS durante la incorporación para que puedan desarrollar y coordinar una respuesta con AMS. 

 **Desarrolle el plan de respuesta a incidentes** 

 El plan de respuesta a incidentes está diseñado para ser la base de su programa y estrategia de respuesta a incidentes. El plan de respuesta a incidentes debe figurar en un documento formal. Un plan de respuesta a incidentes suele incluir las siguientes secciones: 
+  **Descripción general del equipo de respuesta a incidentes:** describe los objetivos y las funciones del equipo de respuesta a incidentes. 
+  **Funciones y responsabilidades:** enumera las partes interesadas de la respuesta a los incidentes y detalla sus funciones cuando se produce un incidente. 
+  **Un plan de comunicación:** detalla la información de contacto y cómo se comunicará durante un incidente. 
+  **Métodos de comunicación auxiliares:** se recomienda tener un método de comunicación auxiliar fuera de banda para informar de los incidentes. Un ejemplo de una aplicación que proporciona un canal de comunicaciones fuera de banda seguro es AWS Wickr. 
+  **Fases de la respuesta a un incidente y medidas a tomar:** se enumeran las fases de la respuesta a un incidente (por ejemplo, detección, análisis, erradicación, contención y recuperación), incluidas las medidas de alto nivel que se deben tomar en esas fases. 
+  **Definiciones de gravedad y priorización del incidente:** se detalla cómo clasificar la gravedad de un incidente, cómo priorizar el incidente y, a continuación, cómo las definiciones de gravedad afectan a los procedimientos de escalamiento. 

 Aunque estas secciones son comunes en empresas de diferentes tamaños y de diferentes sectores, el plan de respuesta a incidentes de cada organización es único. Deberá crear el plan de respuesta a incidentes más adecuado para su organización. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC04 (¿Cómo detecta e investiga los eventos de seguridad?)](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/detection.html) 

 **Documentos relacionados:** 
+  [AWS Security Incident Response Guide (Guía de respuesta ante incidentes de seguridad de AWS)](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) 
+ [ NIST: guía de administración de incidentes de seguridad informática ](https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-61r2.pdf)

# SEC10-BP03: Preparar capacidades forenses
<a name="sec_incident_response_prepare_forensic"></a>

 Es importante que los equipos de intervención de incidentes comprendan cuándo y cómo deben hacer uso de la investigación forense en su plan de respuesta. Su organización debe definir las pruebas que deben recopilarse y las herramientas que deben utilizarse en el proceso. Identifique y prepare las capacidades de investigación forense disponibles, como los especialistas externos, las herramientas y la automatización. Una decisión clave que debe tomar de forma anticipada es si recopilará datos de un sistema activo. Algunos datos, como el contenido de la memoria volátil o las conexiones de red activas, se perderán si el sistema se apaga o se reinicia. 

El equipo de respuesta puede combinar herramientas, tales como AWS Systems Manager, Amazon EventBridge y AWS Lambda, para ejecutar automáticamente herramientas forenses en un sistema operativo y en una creación de reflejo de tráfico de VPC para obtener una captura del paquete de red y recopilar pruebas no persistentes. Lleve a cabo otras actividades, como análisis de registros o de imágenes de disco, en una cuenta de seguridad dedicada con herramientas y estaciones de trabajo forenses personalizadas a las que pueden acceder los equipos de intervención.

Envíe periódicamente registros pertinentes a un almacén de datos con alta durabilidad e integridad. Los equipos de intervención deben tener acceso a estos registros. AWS ofrece varias herramientas que pueden facilitar la investigación de registros, como, por ejemplo, Amazon Athena, Amazon OpenSearch Service (OpenSearch Service) y Amazon CloudWatch Logs Insights. Asimismo, conserve las pruebas de forma segura mediante Amazon Simple Storage Service (Amazon S3) Object Lock. Este servicio sigue el modelo WORM (escribir una vez, leer muchas veces) e impide que se eliminen o se sobrescriban objetos durante un periodo definido. Dado que las técnicas de investigación forense requieren formación especializada, puede que tenga que interactuar con especialistas externos.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Identificar capacidades forenses: investigue las capacidades de investigación forense de su organización, las herramientas disponibles y los especialistas externos. 
+  [Automatización de la respuesta ante incidentes y el análisis forense ](https://youtu.be/f_EcwmmXkXk)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Cómo automatizar la recopilación de discos forenses en AWS](https://aws.amazon.com/blogs/security/how-to-automate-forensic-disk-collection-in-aws/) 

# SEC10-BP04: Automatización de la capacidad de contención
<a name="sec_incident_response_auto_contain"></a>

Automatice la contención y la recuperación de un incidente para reducir los tiempos de respuesta y el impacto en la organización. 

Una vez que haya creado y practicado los procesos y herramientas de las guías de estrategias, puede deconstruir la lógica en una solución basada en código, que numerosos equipos de intervención pueden usar como herramienta para automatizar la respuesta y eliminar la varianza o las conjeturas. Esto puede agilizar el ciclo de vida de una respuesta. El próximo objetivo es habilitar este código para que sea totalmente automatizado y que las propias alertas o eventos puedan invocarlo, en lugar de tener que recurrir a la intervención humana, para crear una respuesta basada en eventos. Estos procesos también deben añadir automáticamente datos relevantes para los sistemas de seguridad. Por ejemplo, un incidente relacionado con el tráfico de una dirección IP no deseada puede rellenar automáticamente una lista de direcciones IP bloqueadas WAF de AWS o un grupo de reglas de Network Firewall para evitar posibles actividades.

![\[Diagram showing AWS WAF WebACL logs flow through various services for processing and blocking.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/aws-waf-automate-block.png)


*Figura 3: Bloqueo automatizado por parte de AWS WAF de direcciones IP malintencionadas*

Con un sistema de respuesta basado en eventos, un mecanismo de detección desencadena un mecanismo de respuesta para corregir el evento de forma automática. Puede utilizar capacidades de respuesta basadas en eventos para reducir el tiempo entre los mecanismos de detección y los de respuesta. Para crear esta arquitectura basada en eventos, puede utilizar AWS Lambda, que es un servicio de computación sin servidor que ejecuta el código en respuesta a eventos y gestiona automáticamente los recursos de computación subyacentes. Por ejemplo, supongamos que tiene una cuenta de AWS con el servicio AWS CloudTrail habilitado. Si alguna vez se llega a deshabilitar AWS CloudTrail (a través de la llamada a la API `cloudtrail:StopLogging` ), podrá utilizar Amazon EventBridge para supervisar el evento específico de `cloudtrail:StopLogging` e invocar una función de AWS Lambda para llamar a `cloudtrail:StartLogging` con el fin de reiniciar el registro. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Automatice la capacidad de contención. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Guía de respuesta ante incidentes de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) 

 **Vídeos relacionados:** 
+  [Cómo prepararse y responder ante incidentes de seguridad en el entorno de AWS](https://youtu.be/8uiO0Z5meCs) 

# SEC10-BP05: Aprovisionamiento previo del acceso
<a name="sec_incident_response_pre_provision_access"></a>

Verifique que ha aprovisionado previamente el acceso correcto a los equipos de intervención de incidentes en AWS para reducir el tiempo necesario de investigación hasta la recuperación.

 **Patrones comunes de uso no recomendados:** 
+  Uso de la cuenta raíz para la respuesta ante incidentes. 
+  Alterar las cuentas de usuario existentes. 
+  Manipular los permisos de IAM directamente al proporcionar un aumento puntual de los privilegios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

AWS recomienda reducir o eliminar la dependencia de credenciales de larga duración siempre que sea posible, en favor de credenciales temporales y mecanismos de aumento *puntual* de escalada de privilegios. Las credenciales de larga duración están expuestas a riesgos de seguridad y aumentan la carga operativa. Para la mayoría de las tareas de administración, así como para las de respuesta ante incidentes, le recomendamos que implemente la [federación de identidades](https://docs.aws.amazon.com/identity/federation/) junto con el [escalado temporal del acceso administrativo](https://aws.amazon.com/blogs/security/managing-temporary-elevated-access-to-your-aws-environment/). En este modelo, un usuario solicita el aumento a un nivel superior de privilegios (como un rol de respuesta ante incidentes) y, siempre que el usuario reúna los requisitos para el aumento, se envía una solicitud a un aprobador. Si la solicitud es aprobada, el usuario recibe un conjunto de [credenciales de AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) temporales que puede usar para completar sus tareas. Una vez que caducan estas credenciales, el usuario debe enviar una nueva solicitud de aumento.

 Recomendamos el uso del escalado temporal de privilegios en la mayoría de las situaciones de respuesta ante incidentes. La forma correcta de hacerlo es utilizar el [AWS Security Token Service](https://docs.aws.amazon.com/STS/latest/APIReference/welcome.html) y [políticas de sesión](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session) para definir el alcance del acceso. 

 Hay situaciones en las que las identidades federadas no están disponibles; por ejemplo: 
+  Interrupción relacionada con un proveedor de identidades (IdP) comprometido. 
+  Una configuración deficiente o un error humano provocan la ruptura del sistema de administración de acceso federado. 
+  Actividad maliciosa como un evento de denegación de servicio distribuido (DDoS) o un sistema no disponible. 

 En los casos anteriores, debe haber un acceso *inmediato* de emergencia configurado para permitir la investigación y la reparación puntual de los incidentes. También le recomendamos que utilice un [usuario de IAM con los permisos adecuados](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#lock-away-credentials) para realizar tareas y acceder a los recursos de AWS. Utilice las credenciales del usuario raíz solo para [tareas que requieren el acceso del usuario raíz](https://docs.aws.amazon.com/accounts/latest/reference/root-user-tasks.html). Para verificar que los equipos de intervención de incidentes disponen del nivel correcto de acceso a AWS y otros sistemas pertinentes, recomendamos el aprovisionamiento previo de cuentas de usuario exclusivas. Las cuentas de usuario requieren un acceso con privilegios y se deben controlar y supervisar de forma estricta. Las cuentas deben crearse con el menor número de privilegios requeridos para realizar las tareas necesarias y el nivel de acceso debe basarse en las guías de estrategias creadas como parte del plan de administración de incidentes. 

 La práctica recomendada es crear usuarios y roles personalizados y exclusivos. El hecho de escalar temporalmente el acceso de los usuarios o de los roles mediante la incorporación de políticas de IAM provoca que no esté claro qué acceso tenían los usuarios durante el incidente y se corre el riesgo de que los privilegios escalados no se revoquen. 

 Es importante eliminar tantas dependencias como sea posible para verificar que se puede acceder en el mayor número posible de escenarios de error. Como medida de apoyo, cree una guía de estrategias para verificar que los usuarios de respuesta ante incidentes se crean como usuarios de AWS Identity and Access Management en una cuenta de seguridad exclusiva y no se administran a través de una federación existente o una solución de inicio de sesión único (SSO). Cada miembro del equipo de intervención debe tener su propia cuenta con nombre. La configuración de la cuenta debe aplicar una [política de contraseñas seguras](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html) y la autenticación multifactor (MFA). Si las guías de estrategias de respuesta ante incidentes solo requieren acceso a la Consola de administración de AWS, el usuario no debería tener configuradas las claves de acceso y se le debería prohibir explícitamente la creación de claves de acceso. Esto se puede configurar con políticas de IAM o políticas de control de servicios (SCP) como se menciona en las prácticas recomendadas de seguridad de AWS para [SCP de AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html). Los usuarios solo deben tener el privilegio de poder asumir roles de respuesta ante incidentes en otras cuentas. 

 Durante un incidente, podría ser necesario conceder acceso a otras personas internas o externas para respaldar las actividades de investigación, reparación o recuperación. En este caso, utilice el mecanismo de guía de estrategias mencionado anteriormente. Debe haber un proceso para verificar que cualquier acceso adicional se revoque inmediatamente después de que finalice el incidente. 

 Para verificar que el uso de los roles de respuesta ante incidentes se puede supervisar y auditar de forma adecuada, es esencial que las cuentas de usuario de IAM creadas para este fin no se compartan con otras personas y que el usuario raíz de Cuenta de AWS no se utilice a menos que [se requiera para una tarea específica](https://docs.aws.amazon.com/accounts/latest/reference/root-user-tasks.html). Si el usuario raíz es necesario (por ejemplo, no está disponible el acceso de IAM a una cuenta específica), utilice un proceso aparte con una guía de estrategias disponible para verificar la disponibilidad de la contraseña y el token MFA del usuario raíz. 

 Para configurar las políticas de IAM de los roles de respuesta ante incidentes, utilice [IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-policy-generation.html) para generar políticas basadas en los registros de AWS CloudTrail. Para ello, conceda acceso de administrador al rol de respuesta ante incidentes en una cuenta que no sea de producción y ejecute las guías de estrategias. Una vez completado, se puede crear una política que únicamente permita las acciones realizadas. Esta política se puede aplicar a los roles de respuesta ante incidentes en todas las cuentas. Es recomendable crear una política de IAM independiente para cada guía de estrategias a fin de facilitar la administración y la auditoría. Entre los ejemplos de guías de estrategias se podrían incluir planes de respuesta para ransomware, vulneraciones de datos, pérdida de acceso a la producción y otras situaciones. 

 Utilice las cuentas de usuario de respuesta ante incidentes para asumir los [roles de IAM de respuesta ante incidentes exclusivas en otras Cuentas de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_common-scenarios_aws-accounts.html). Estos roles se deben configurar para que solo puedan asumirlos los usuarios de la cuenta de seguridad. La relación de confianza debe requerir que la entidad principal de llamada se haya autenticado mediante MFA. Los roles deben utilizar políticas de IAM de ámbito estricto para controlar el acceso. Asegúrese de que todas las solicitudes `AssumeRole` para estos roles estén registradas en CloudTrail y se haya alertado de ellas y que se registre cualquier acción realizada con estos roles. 

 Se recomienda que tanto las cuentas de usuario de IAM como los roles de IAM tengan nombres claros para poder encontrarlos fácilmente en los registros de CloudTrail. Un ejemplo sería asignar a las cuentas de IAM el nombre `<ID_USUARIO>-BREAK-GLASS` y los roles de IAM `BREAK-GLASS-ROLE`. 

 [CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) se utiliza para registrar la actividad de API en sus cuentas de AWS y debe utilizarse para [configurar alertas sobre el uso de los roles de respuesta ante incidentes](https://aws.amazon.com/blogs/security/how-to-receive-notifications-when-your-aws-accounts-root-access-keys-are-used/). Consulte la publicación del blog sobre la configuración de alertas cuando se utilizan claves de usuario raíz. Las instrucciones se pueden modificar para configurar la métrica [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) filtro a filtro en los eventos `AssumeRole` relacionados con el rol IAM de respuesta ante incidentes: 

```
{ $.eventName = "AssumeRole" && $.requestParameters.roleArn = "<ARN_DE_ROL_DE_RESPUESTA_ANTE_INCIDENTES>" && $.userIdentity.invokedBy NOT EXISTS && $.eventType != "AwsServiceEvent" }
```

 Como es probable que los roles de respuesta ante incidentes tengan un nivel de acceso alto, es importante que estas alertas lleguen a un grupo amplio y se actúe con rapidez. 

 Durante un incidente, es posible que un miembro del equipo de intervención necesite acceder a sistemas que no están directamente protegidos por IAM. Pueden ser instancias de Amazon Elastic Compute Cloud, bases de datos de Amazon Relational Database Service o plataformas de software como servicio (SaaS). Se recomienda que en lugar de utilizar protocolos nativos como SSH o RDP, se use [AWS Systems Manager Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) para todos los accesos administrativos a las instancias de Amazon EC2. Este acceso se puede controlar mediante IAM, que es seguro y está auditado. También se podrían automatizar partes de sus guías de estrategias mediante [documentos de AWS Systems Manager Run Command](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html), lo que puede reducir los errores del usuario y mejorar el tiempo de recuperación. Para el acceso a las bases de datos y a las herramientas de terceros, recomendamos almacenar las credenciales de acceso en AWS Secrets Manager y conceder el acceso a los roles de equipos de intervención ante incidentes. 

 Por último, la administración de las cuentas de usuario de IAM de respuesta ante incidentes debe agregarse a sus [procesos de incorporación, traslado y abandono de los empleados](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/permissions-management.html) y revisarse y probarse periódicamente para verificar que solo se permite el acceso previsto. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Managing temporary elevated access to your AWS environment (Administrar el acceso de alto nivel temporal al entorno de AWS)](https://aws.amazon.com/blogs/security/managing-temporary-elevated-access-to-your-aws-environment/) 
+  [AWS Security Incident Response Guide (Guía de respuesta ante incidentes de seguridad de AWS) ](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html)
+  [AWS Elastic Disaster Recovery](https://aws.amazon.com/disaster-recovery/) 
+  [Administrador de incidentes de AWS Systems Manager](https://docs.aws.amazon.com/incident-manager/latest/userguide/what-is-incident-manager.html) 
+  [Setting an account password policy for IAM users (Establecer una política de contraseñas de cuenta para los usuarios de IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_passwords_account-policy.html) 
+  [Using multi-factor authentication (MFA) in AWS (Uso de la autenticación multifactor [MFA] en AWS)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa.html) 
+ [ Configuring Cross-Account Access with MFA (Configuración del acceso entre cuentas con MFA) ](https://aws.amazon.com/blogs/security/how-do-i-protect-cross-account-access-using-mfa-2/)
+ [ Using IAM Access Analyzer to generate IAM policies (Uso de IAM Access Analyzer para generar políticas de IAM) ](https://aws.amazon.com/blogs/security/use-iam-access-analyzer-to-generate-iam-policies-based-on-access-activity-found-in-your-organization-trail/)
+ [ Best Practices for AWS Organizations Service Control Policies in a Multi-Account Environment (Prácticas recomendadas para las políticas de control de servicios de AWS Organizations en un entorno de varias cuentas) ](https://aws.amazon.com/blogs/industries/best-practices-for-aws-organizations-service-control-policies-in-a-multi-account-environment/)
+ [ How to Receive Notifications When Your AWS Account’s Root Access Keys Are Used (Cómo recibir notificaciones cuando se utilizan las claves de acceso raíz de su cuenta de AWS) ](https://aws.amazon.com/blogs/security/how-to-receive-notifications-when-your-aws-accounts-root-access-keys-are-used/)
+ [ Create fine-grained session permissions using IAM managed policies (Crear permisos de sesión detallados mediante políticas administradas de IAM) ](https://aws.amazon.com/blogs/security/create-fine-grained-session-permissions-using-iam-managed-policies/)

 **Vídeos relacionados:** 
+ [ Automating Incident Response and Forensics in AWS (Automatización de la respuesta ante incidentes y el análisis forense en AWS) ](https://www.youtube.com/watch?v=f_EcwmmXkXk)
+  [DIY guide to runbooks, incident reports, and incident response (Guía paso a paso sobre runbooks, informes de incidentes y respuesta a incidentes)](https://youtu.be/E1NaYN_fJUo) 
+ [ Prepare for and respond to security incidents in your AWS environment (Cómo prepararse y responder ante incidentes de seguridad en el entorno de AWS) ](https://www.youtube.com/watch?v=8uiO0Z5meCs)

 **Ejemplos relacionados:** 
+ [ Laboratorio: Configuración de la cuenta y usuario raíz de AWS](https://www.wellarchitectedlabs.com/security/300_labs/300_incident_response_playbook_with_jupyter-aws_iam/)
+ [ Laboratorio: Respuesta ante incidentes con la consola de AWS y la CLI ](https://wellarchitectedlabs.com/security/300_labs/300_incident_response_with_aws_console_and_cli/)

# SEC10-BP06: Implementar previamente herramientas
<a name="sec_incident_response_pre_deploy_tools"></a>

 Asegúrese de que se hayan implementado previamente las herramientas correctas en AWS para que el personal de seguridad pueda reducir el tiempo de investigación hasta la recuperación. 

Con el fin de automatizar las funciones de operaciones e ingeniería de seguridad, puede utilizar un conjunto completo de API y herramientas de AWS. Puede automatizar totalmente las capacidades de administración de identidades, seguridad de red, protección de datos y supervisión, y ofrecerlas con métodos de desarrollo de software populares que ya tenga establecidos. Al crear procesos de automatización de seguridad, su sistema podrá supervisar, revisar e iniciar una respuesta en lugar de tener a empleados supervisando el nivel de seguridad y reaccionando manualmente ante eventos. Una forma eficaz de proporcionar automáticamente datos de registros que se pueden buscar y relevantes en los servicios de AWS a los equipos de intervención de incidentes es habilitar [Amazon Detective](https://aws.amazon.com/detective/).

Si los equipos de intervención de incidentes siguen respondiendo a alertas de la misma forma, corren el riesgo de sufrir fatiga causada por un número excesivo de alertas. Con el paso del tiempo, el equipo puede llegar a no reaccionar ante las alertas y puede incluso cometer errores durante la gestión de situaciones habituales o pasar por alto alertas inusuales. La automatización ayuda a evitar este problema mediante el uso de funciones que procesan alertas repetitivas y habituales, dejando a las personas que gestionen incidentes únicos y delicados. La integración de sistemas de detección de anomalías, como, por ejemplo, Amazon GuardDuty, AWS CloudTrail Insights y Amazon CloudWatch Anomaly Detection, puede reducir la carga de alertas comunes basadas en umbrales.

Puede mejorar los procesos manuales mediante la automatización en forma programática de los pasos del proceso. Después de definir el patrón de solución de un evento, puede descomponer dicho patrón en lógica procesable y escribir el código para llevar a cabo dicha lógica. A continuación, los equipos de intervención pueden ejecutar dicho código para solucionar el problema. Con el paso del tiempo, puede automatizar cada vez más pasos y, en última instancia, gestionar automáticamente todas las clases de incidentes comunes.

En el caso de las herramientas que se ejecutan en el sistema operativo de la instancia de Amazon Elastic Compute Cloud (Amazon EC2), debe realizar una evaluación con Run Command de AWS Systems Manager, lo que le permite administrar de forma remota y segura instancias con un agente que instale en el sistema operativo de la instancia de Amazon EC2. Requiere el uso de Systems Manager Agent (SSM Agent), que está instalado de forma predeterminada en numerosas imágenes de máquina de Amazon (AMI). No obstante, tenga en cuenta que una vez que una instancia se haya visto afectada, no se deben considerar fiables las respuestas de las herramientas o de los agentes que se ejecuten en ella.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implementar previamente las herramientas: asegúrese de que se hayan implementado previamente las herramientas correctas en AWS para que el personal de seguridad pueda dar una respuesta adecuada a un incidente. 
  +  [Laboratorio: Respuesta ante incidentes con Consola de administración de AWS y CLI ](https://wellarchitectedlabs.com/Security/300_Incident_Response_with_AWS_Console_and_CLI/README.html)
  + [ Guía de estrategias de respuesta ante incidentes con Jupyter (AWS IAM) ](https://wellarchitectedlabs.com/Security/300_Incident_Response_Playbook_with_Jupyter-AWS_IAM/README.html)
  +  [ Automatización de seguridad de AWS](https://github.com/awslabs/aws-security-automation)
+  Implementar el etiquetado de recursos: etiquete recursos con información, como un código para el recurso que se encuentra en proceso de investigación, para que pueda identificar recursos durante un incidente. 
  + [ Estrategias de etiquetado de AWS](https://aws.amazon.com/answers/account-management/aws-tagging-strategies/)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [ Guía de respuesta ante incidentes de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html)

 **Vídeos relacionados:** 
+  [ Guía autogestionada para runbooks, informes de incidentes y repuesta ante incidentes ](https://youtu.be/E1NaYN_fJUo)

# SEC10-BP07 Ejecutar los días de juego
<a name="sec_incident_response_run_game_days"></a>

 Las organizaciones crecen y evolucionan con el tiempo, pero también las amenazas, por lo que es importante que revise continuamente sus capacidades de respuesta a los incidentes. Realizar jornadas de juegos, o simulaciones, es un buen método para llevar a cabo esta evaluación. En las simulaciones, se utilizan escenarios de eventos de seguridad reales diseñados para imitar las tácticas, técnicas y procedimientos (TTP) del actor de una amenaza y permiten a la organización probar y evaluar sus capacidades de respuesta a los incidentes respondiendo a estos simulacros de ataques cibernéticos tal y como podría ocurrir en la realidad.

 **Beneficios de establecer esta práctica recomendada:** las simulaciones tienen una gran variedad de ventajas: 
+  Comprobar si se está preparado para un ataque cibernético y mejorar la confianza de los equipos de respuesta a los incidentes. 
+  Probar la precisión y la eficiencia de las herramientas y los flujos de trabajo. 
+  Perfeccionar los métodos de comunicación y escalamiento en consonancia con su plan de respuesta a incidentes. 
+  Ofrecer la oportunidad de responder a vectores menos comunes. 

**Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio

## Guía para la implementación
<a name="implementation-guidance"></a>

 Hay tres tipos principales de simulaciones: 
+  **Ejercicios prácticos:** el enfoque de los ejercicios prácticos consiste en realizar una sesión de debate en la que participen las diversas partes interesadas en la respuesta a los incidentes para practicar las funciones y responsabilidades y utilizar las herramientas de comunicación y los manuales de estrategia establecidos. Por lo general, este ejercicio se puede realizar durante un día completo en un lugar virtual o físico, o bien en una combinación de ambos. Como se trata de un debate, el ejercicio de simulación se centra en los procesos, las personas y la colaboración. La tecnología forma parte integral del debate, pero en este tipo de ejercicio no se hace un uso real de las herramientas o los guiones de respuesta a incidentes. 
+  **Ejercicios de equipo morado:** los ejercicios del equipo morado aumentan el nivel de colaboración entre las personas que se encargan de la respuesta a los incidentes (equipo azul) y los actores de las amenazas simuladas (equipo rojo). El equipo azul está compuesto por miembros del centro de operaciones de seguridad (SOC), pero también puede incluir a otras partes interesadas que participarían durante un ataque cibernético real. El equipo rojo está compuesto por un equipo de pruebas de penetración o partes interesadas clave que cuentan con formación en seguridad ofensiva. El equipo rojo trabaja en colaboración con los facilitadores del ejercicio para diseñar un escenario que sea preciso y factible. Durante los ejercicios del equipo morado, la atención se centra en los mecanismos de detección, las herramientas y los procedimientos operativos estándar (SOP) que facilitan las iniciativas de respuesta a los incidentes. 
+  **Ejercicios del equipo rojo:** durante un ejercicio del equipo rojo, el atacante (equipo rojo) realiza una simulación para lograr un determinado objetivo o conjunto de objetivos desde un ámbito predeterminado. Los defensores (equipo azul) no conocen necesariamente el ámbito y la duración del ejercicio; de esta manera, se consigue una evaluación más realista de cómo responderían ante un incidente real. Dado que los ejercicios de equipo rojo pueden ser pruebas invasivas, tenga cuidado e implemente controles para verificar que el ejercicio no produzca un daño real en su entorno. 

 Considere la posibilidad de realizar simulaciones de ataques cibernéticos con regularidad. Cada tipo de ejercicio puede aportar ventajas únicas para los participantes y la organización en su conjunto, por lo que puede optar por empezar con tipos de simulaciones menos complejos (como los ejercicios prácticos) y pasar luego a los más complejos (ejercicios de equipo rojo). El tipo de simulación se debe elegir en función de su nivel de madurez en seguridad, sus recursos y los resultados deseados. Es posible que algunos clientes opten por no realizar los ejercicios de equipo rojo por su complejidad y su coste. 

## Pasos para la implementación
<a name="implementation-steps"></a>

 Independientemente del tipo de simulación que elija, las simulaciones suelen tener estos pasos de implementación: 

1.  **Defina los elementos básicos del ejercicio:** defina el escenario de simulación y los objetivos de la simulación. Ambos deben contar con la aceptación de los directivos. 

1.  **Identifique a las partes interesadas clave:** como mínimo, en un ejercicio debe haber facilitadores y participantes. Dependiendo del escenario, podrían participar otras partes interesadas, como los directivos del departamento legal, de comunicaciones o ejecutivo. 

1.  **Cree y pruebe el escenario:** es posible que sea necesario redefinir el escenario a medida que se construye si algunos elementos específicos no son factibles. Se espera que, al final de esta etapa, haya un escenario definitivo. 

1.  **Realice la simulación:** el tipo de simulación determina la forma de realizarla (un escenario en papel o un escenario simulado muy técnico). Los facilitadores deben adaptar sus tácticas de facilitación a los objetivos del ejercicio y, siempre que sea posible, involucrar a todos los participantes del ejercicio para obtener la mayor ventaja. 

1.  **Elabore el informe posterior a la acción (AAR):** identifique las áreas que han ido bien, las que pueden mejorarse y las posibles carencias. El AAR debe medir la eficacia de la simulación, así como la respuesta del equipo al evento simulado, de modo que se pueda seguir su progreso a lo largo del tiempo con futuras simulaciones. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [AWS Incident Response Guide (Guía de respuesta ante incidentes de AWS)](https://docs.aws.amazon.com/whitepapers/latest/aws-security-incident-response-guide/welcome.html) 

 **Vídeos relacionados:** 
+ [AWS GameDay - Security Edition (AWS GameDay: edición de seguridad)](https://www.youtube.com/watch?v=XnfDWID_OQs)

# Seguridad de las aplicaciones
<a name="a-appsec"></a>

**Topics**
+ [SEC 11 ¿Cómo incorpora y valida las propiedades de seguridad de las aplicaciones durante el ciclo de vida de diseño, desarrollo y despliegue?](sec-11.md)

# SEC 11 ¿Cómo incorpora y valida las propiedades de seguridad de las aplicaciones durante el ciclo de vida de diseño, desarrollo y despliegue?
<a name="sec-11"></a>

La formación de los usuarios, las pruebas mediante automatización, el conocimiento de las dependencias y la validación de las propiedades de seguridad de herramientas y aplicaciones contribuyen a reducir la probabilidad de que se produzcan problemas de seguridad en las cargas de trabajo de producción.

**Topics**
+ [SEC11-BP01 Formar en seguridad de las aplicaciones](sec_appsec_train_for_application_security.md)
+ [SEC11-BP02 Automatizar las pruebas a lo largo del ciclo de vida de desarrollo y lanzamiento](sec_appsec_automate_testing_throughout_lifecycle.md)
+ [SEC11-BP03 Realizar pruebas de penetración periódicas](sec_appsec_perform_regular_penetration_testing.md)
+ [SEC11-BP04 Revisiones manuales del código](sec_appsec_manual_code_reviews.md)
+ [SEC11-BP05 Centralizar los servicios para paquetes y dependencias](sec_appsec_centralize_services_for_packages_and_dependencies.md)
+ [SEC11-BP06 Desplegar software mediante programación](sec_appsec_deploy_software_programmatically.md)
+ [SEC11-BP07 Evaluar periódicamente las propiedades de seguridad de las canalizaciones](sec_appsec_regularly_assess_security_properties_of_pipelines.md)
+ [SEC11-BP08 Crear un programa que integre la propiedad de la seguridad en los equipos de la carga de trabajo](sec_appsec_build_program_that_embeds_security_ownership_in_teams.md)

# SEC11-BP01 Formar en seguridad de las aplicaciones
<a name="sec_appsec_train_for_application_security"></a>

 Ofrezca formación a los creadores de su organización sobre las prácticas habituales para el desarrollo y el funcionamiento seguros de las aplicaciones. La adopción de prácticas de desarrollo centradas en la seguridad contribuye a reducir la probabilidad de que surjan problemas que solo se detectan en la fase de revisión de la seguridad. 

**Resultado deseado:** El software debe diseñarse y crearse teniendo en cuenta la seguridad. Cuando los creadores de una organización reciben formación sobre prácticas de desarrollo seguras que parten de un modelo de amenazas, mejora la calidad y la seguridad general del software producido. Este planteamiento puede acortar el tiempo hasta la entrega del software o de las características, ya que se reduce la necesidad de tener que volver a repetir los procesos tras la fase de revisión de la seguridad. 

 A efectos de esta práctica recomendada, el *desarrollo seguro* se refiere al software que se está escribiendo y a las herramientas o sistemas que prestan soporte al ciclo de vida de desarrollo del software (SDLC). 

**Patrones comunes de uso no recomendados:**
+  Esperar a una revisión de seguridad para estudiar las propiedades de seguridad de un sistema. 
+  Dejar todas las decisiones de seguridad en manos del equipo de seguridad. 
+  No comunicar claramente cómo se relacionan las decisiones tomadas en el SDLC con las expectativas o políticas generales de seguridad de la organización. 
+  Intervenir demasiado tarde en el proceso de revisión de la seguridad. 

**Beneficios de establecer esta práctica recomendada:**
+  Entender mejor los requisitos de la organización en materia de seguridad en una fase temprana del ciclo de desarrollo. 
+  Poder identificar y corregir más rápidamente los posibles problemas de seguridad, lo que se traduce en una entrega más rápida de las características. 
+  Mejora de la calidad del software y los sistemas. 

**Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Proporcione formación a los creadores de su organización. Una buena base para iniciar la formación sobre seguridad es empezar con un curso sobre [modelado de amenazas](https://catalog.workshops.aws/threatmodel/en-US). Lo ideal sería que los creadores pudieran acceder por sí mismos a la información relevante para sus cargas de trabajo. Este acceso les ayuda a tomar decisiones informadas sobre las propiedades de seguridad de los sistemas que crean sin necesidad de preguntar a otro equipo. El proceso de solicitud de revisiones al equipo de seguridad debe estar claramente definido y ser fácil de seguir. Los pasos del proceso de revisión deben incluirse en la formación sobre seguridad. Cuando se disponga de patrones o plantillas de implementación, deben ser fáciles de encontrar y vincular a los requisitos generales de seguridad. Plantéese el uso de [AWS CloudFormation,](https://aws.amazon.com/cloudformation/) [Componentes de AWS Cloud Development Kit (AWS CDK)](https://docs.aws.amazon.com/cdk/v2/guide/constructs.html), [Service Catalog](https://aws.amazon.com/servicecatalog/) u otras herramientas basadas en plantillas para reducir la necesidad de configuración personalizada. 

### Pasos para la aplicación
<a name="implementation-steps"></a>
+  Empiece por ofrecer a los creadores un curso sobre [modelado de amenazas](https://catalog.workshops.aws/threatmodel/en-US) para sentar una buena base y ayudarles a formarse en cómo pensar en la seguridad. 
+  Ofrezca acceso a formación para socios de AWS, sector o [Formación de AWS y Certification](https://www.aws.training/LearningLibrary?query=&filters=Language%3A1%20Domain%3A27&from=0&size=15&sort=_score&trk=el_a134p000007C9OtAAK&trkCampaign=GLBL-FY21-TRAINCERT-800-Security&sc_channel=el&sc_campaign=GLBL-FY21-TRAINCERT-800-Security-Blog&sc_outcome=Training_and_Certification&sc_geo=mult). 
+  Ofrezca formación sobre el proceso de revisión de la seguridad de su organización, que aclare el reparto de responsabilidades entre el equipo de seguridad, los equipos de carga de trabajo y otras partes interesadas. 
+  Publique guías de autoservicio sobre cómo cumplir sus requisitos de seguridad, incluidos ejemplos de código y plantillas, si están disponibles. 
+  Obtenga comentarios periódicamente de los equipos de creadores sobre su experiencia con el proceso de formación y revisión de la seguridad, y utilícelos para mejorar. 
+  Utilice días de juegos o campañas de detección de errores para reducir el número de problemas y mejorar las competencias de los creadores. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC11-BP08 Crear un programa que integre la propiedad de la seguridad en los equipos de la carga de trabajo](sec_appsec_build_program_that_embeds_security_ownership_in_teams.md) 

 **Documentos relacionados:** 
+  [Formación de AWS y Certification](https://www.aws.training/LearningLibrary?query=&filters=Language%3A1%20Domain%3A27&from=0&size=15&sort=_score&trk=el_a134p000007C9OtAAK&trkCampaign=GLBL-FY21-TRAINCERT-800-Security&sc_channel=el&sc_campaign=GLBL-FY21-TRAINCERT-800-Security-Blog&sc_outcome=Training_and_Certification&sc_geo=mult) 
+  [How to think about cloud security governance](https://aws.amazon.com/blogs/security/how-to-think-about-cloud-security-governance/) (Cómo concebir la gobernanza de la seguridad en la nube) 
+  [How to approach threat modeling](https://aws.amazon.com/blogs/security/how-to-approach-threat-modeling/) (Cómo abordar el modelado de amenazas) 
+  [Accelerating training – The AWS Skills Guild](https://docs.aws.amazon.com/whitepapers/latest/public-sector-cloud-transformation/accelerating-training-the-aws-skills-guild.html) (Acelere la formación: AWS Skills Guild) 

 **Vídeos relacionados: ** 
+  [Proactive security: Considerations and approaches](https://www.youtube.com/watch?v=CBrUE6Qwfag) (Seguridad proactiva: consideraciones y estrategias) 

 **Ejemplos relacionados:** 
+  [Workshop on threat modeling](https://catalog.workshops.aws/threatmodel) (Taller de modelado de amenazas) 
+  [Industry awareness for developers](https://owasp.org/www-project-top-ten/) (Concienciación del sector para desarrolladores) 

 **Servicios relacionados:** 
+  [AWS CloudFormation](https://aws.amazon.com/cloudformation/) 
+  [Componentes de AWS Cloud Development Kit (AWS CDK) (AWS CDK)](https://docs.aws.amazon.com/cdk/v2/guide/constructs.html) 
+  [Service Catalog](https://aws.amazon.com/servicecatalog/) 
+  [AWS BugBust](https://docs.aws.amazon.com/codeguru/latest/bugbust-ug/what-is-aws-bugbust.html) 

# SEC11-BP02 Automatizar las pruebas a lo largo del ciclo de vida de desarrollo y lanzamiento
<a name="sec_appsec_automate_testing_throughout_lifecycle"></a>

 Automatice las pruebas de las propiedades de seguridad a lo largo del ciclo de vida de desarrollo y lanzamiento. La automatización facilita la identificación coherente y repetible de posibles problemas en el software antes de su lanzamiento, lo que reduce el riesgo de problemas de seguridad en el software suministrado. 

**Resultado deseado:** El objetivo de las pruebas automatizadas es proporcionar una forma programática de detectar problemas de forma temprana y frecuente a lo largo del ciclo de vida de desarrollo. Al automatizar las pruebas de regresión, puede volver a ejecutar pruebas funcionales y no funcionales para verificar que el software probado previamente siga funcionando como se esperaba después de un cambio. Cuando se definen pruebas unitarias de seguridad para detectar errores de configuración habituales, como autenticación dañada o ausente, es posible identificar y solucionar estos problemas en una fase temprana del proceso de desarrollo. 

 La automatización de pruebas utiliza casos de prueba creados específicamente para la validación de aplicaciones, basados en los requisitos de la aplicación y la funcionalidad deseada. El resultado de las pruebas automatizadas se basa en la comparación de los resultados de las pruebas generados con los resultados esperados, lo que agiliza el ciclo de vida de las pruebas. Las metodologías de pruebas como las pruebas de regresión y los conjuntos de pruebas unitarias son las más adecuadas para la automatización. La automatización de las pruebas de las propiedades de seguridad permite a los creadores recibir información automatizada sin tener que esperar a una revisión de seguridad. Las pruebas automatizadas en forma de análisis de código estático o dinámico permiten aumentar la calidad del código y contribuyen a detectar posibles problemas de software en una fase temprana del ciclo de vida de desarrollo. 

**Patrones comunes de uso no recomendados:**
+  No comunicar los casos de prueba y los resultados de las pruebas automatizadas. 
+  Realizar las pruebas automatizadas solo justo antes del lanzamiento. 
+  Automatizar casos de prueba con requisitos que cambian con frecuencia. 
+  No proporcionar orientación sobre cómo abordar los resultados de las pruebas de seguridad. 

**Beneficios de establecer esta práctica recomendada:**
+  Menor dependencia de las personas que evalúan las propiedades de seguridad de los sistemas. 
+  La obtención de resultados coherentes en numerosos flujos de trabajo mejora la coherencia general. 
+  Menos probabilidades de que se introduzcan problemas de seguridad en el software de producción. 
+  Reducción del intervalo de tiempo entre la detección y la corrección gracias a la detección temprana de los problemas de software. 
+  Mayor visibilidad del comportamiento sistémico o repetido en numerosos flujos de trabajo, que puede servir para impulsar mejoras en toda la organización. 

**Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

A medida que crea el software, adopte diversos mecanismos de prueba de software para asegurarse de probar tanto los requisitos funcionales, basados en la lógica empresarial, como los requisitos no funcionales, que se centran en la fiabilidad, el rendimiento y la seguridad de su aplicación. 

 Las pruebas de seguridad de aplicaciones estáticas (SAST) analizan el código fuente para revelar patrones de seguridad anómalos y proporcionan indicios de código propenso a errores. Las pruebas SAST se basan en datos estáticos, como la documentación (especificación de requisitos, documentación de diseño y especificaciones de diseño) y el código fuente de la aplicación, con objeto de encontrar una serie de problemas de seguridad conocidos. Los analizadores de código estático pueden ayudar a agilizar el análisis de grandes volúmenes de código. El [NIST Quality Group](https://www.nist.gov/itl/ssd/software-quality-group) ofrece una comparación de [analizadores de seguridad del código fuente](https://www.nist.gov/itl/ssd/software-quality-group/source-code-security-analyzers), que abarca herramientas de código abierto para [analizadores de código de bytes](https://samate.nist.gov/index.php/Byte_Code_Scanners.html) y [analizadores de código binario](https://samate.nist.gov/index.php/Binary_Code_Scanners.html).

 Complemente las pruebas estáticas con metodologías de pruebas de seguridad de análisis dinámico (DAST), que efectúan pruebas de la aplicación en ejecución a fin de identificar comportamiento potencialmente inesperado. Las pruebas dinámicas pueden utilizarse para detectar problemas potenciales que no son evidentes mediante el análisis estático. Las pruebas en las etapas de repositorio de código, compilación y canalización le permiten comprobar si existen diferentes tipos de problemas potenciales que podrían introducirse en el código. [Amazon CodeWhisperer](https://aws.amazon.com/codewhisperer/) proporciona recomendaciones de código, incluido el análisis de seguridad, en el IDE del creador. [Amazon CodeGuru Reviewer](https://aws.amazon.com/codeguru/) puede identificar problemas cruciales, problemas de seguridad y errores difíciles de detectar durante el desarrollo de la aplicación, y proporciona recomendaciones para mejorar la calidad del código. 

 El [taller de seguridad para desarrolladores](https://catalog.workshops.aws/sec4devs) usa herramientas de desarrollo de AWS, como [AWS CodeBuild](https://aws.amazon.com/codebuild/), [AWS CodeCommit](https://aws.amazon.com/codecommit/) y [AWS CodePipeline](https://aws.amazon.com/codepipeline/), para la automatización de canalizaciones de lanzamiento que incluyen las metodologías de prueba SAST y DAST. 

 A medida que avance en el SDLC, establezca un proceso iterativo que incorpore revisiones periódicas de las aplicaciones con su equipo de seguridad. Los comentarios recogidos en estas revisiones de seguridad deben abordarse y validarse como parte de la revisión de la preparación para el lanzamiento. Estas revisiones establecen una sólida postura de seguridad de la aplicación y proporcionan a los desarrolladores información práctica para afrontar posibles problemas. 

### Pasos para la aplicación
<a name="implementation-steps"></a>
+  Implemente herramientas coherentes de IDE, revisión de código y CI/CD que incluyan pruebas de seguridad. 
+  Considere en qué momento del SDLC es apropiado bloquear las canalizaciones en lugar de limitarse a notificar a los creadores que es necesario solucionar los problemas. 
+  El [taller de seguridad para desarrolladores](https://catalog.workshops.aws/sec4devs) ofrece un ejemplo de integración de pruebas estáticas y dinámicas en un proceso de lanzamiento. 
+  La realización de pruebas o análisis de código mediante herramientas automatizadas, como [Amazon CodeWhisperer](https://aws.amazon.com/codewhisperer/) integrado con los IDE de los desarrolladores y [Amazon CodeGuru Reviewer](https://aws.amazon.com/codeguru/) para escanear código al confirmar, ayuda a los desarrolladores a obtener información en el momento adecuado. 
+  Si usa AWS Lambda para la compilación, puede utilizar [Amazon Inspector](https://aws.amazon.com/about-aws/whats-new/2023/02/code-scans-lambda-functions-amazon-inspector-preview/) para analizar el código de la aplicación en sus funciones. 
+  El [taller de CI/CD de AWS](https://catalog.us-east-1.prod.workshops.aws/workshops/ef1c179d-8097-4f34-8dc3-0e9eb381b6eb/en-US/) proporciona un punto de partida la crear canalizaciones de CI/CD en AWS. 
+  Cuando se incluyen pruebas automatizadas en las canalizaciones de CI/CD, es preciso utilizar un sistema de tickets para realizar un seguimiento de la notificación y corrección de problemas de software. 
+  En el caso de las pruebas de seguridad que puedan generar hallazgos, la vinculación a orientaciones para la corrección ayuda a los creadores a mejorar la calidad del código. 
+  Analice periódicamente los resultados de las herramientas automatizadas para dar prioridad a la siguiente automatización, la formación de los creadores o la campaña de concienciación. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Entrega continua e implementación continua](https://aws.amazon.com/devops/continuous-delivery/) 
+  [Socios con competencias en DevOps de AWS](https://aws.amazon.com/devops/partner-solutions/?blog-posts-cards.sort-by=item.additionalFields.createdDate&blog-posts-cards.sort-order=desc&partner-solutions-cards.sort-by=item.additionalFields.partnerNameLower&partner-solutions-cards.sort-order=asc&awsf.partner-solutions-filter-partner-type=partner-type%23technology&awsf.Filter%20Name%3A%20partner-solutions-filter-partner-location=*all&awsf.partner-solutions-filter-partner-location=*all&partner-case-studies-cards.sort-by=item.additionalFields.sortDate&partner-case-studies-cards.sort-order=desc&awsm.page-partner-solutions-cards=1) 
+  [Socios con competencia en seguridad de AWS](https://aws.amazon.com/security/partner-solutions/?blog-posts-cards.sort-by=item.additionalFields.createdDate&blog-posts-cards.sort-order=desc&partner-solutions-cards.sort-by=item.additionalFields.partnerNameLower&partner-solutions-cards.sort-order=asc&awsf.partner-solutions-filter-partner-type=*all&awsf.Filter%20Name%3A%20partner-solutions-filter-partner-categories=use-case%23app-security&awsf.partner-solutions-filter-partner-location=*all&partner-case-studies-cards.sort-by=item.additionalFields.sortDate&partner-case-studies-cards.sort-order=desc&events-master-partner-webinars.sort-by=item.additionalFields.startDateTime&events-master-partner-webinars.sort-order=asc) para la seguridad de las aplicaciones 
+  [Choosing a Well-Architected CI/CD approach](https://aws.amazon.com/blogs/devops/choosing-well-architected-ci-cd-open-source-software-aws-services/) (Elección de un enfoque CI/CD bien diseñado) 
+  [Monitoring CodeCommit events in Amazon EventBridge and Amazon CloudWatch Events](https://docs.aws.amazon.com/codecommit/latest/userguide/monitoring-events.html) (Supervisión de eventos de CodeCommit en Amazon EventBridge y Amazon CloudWatch Events) 
+  [Secrets detection in Amazon CodeGuru Review](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/recommendations.html#secrets-detection) (Revisión de la detección de secretos en Amazon CodeGuru) 
+  [Accelerate deployments on AWS with effective governance](https://aws.amazon.com/blogs/architecture/accelerate-deployments-on-aws-with-effective-governance/) (Acelerar los despliegues en AWS con una gobernanza eficaz) 
+  [How AWS approaches automating safe, hands-off deployments](https://aws.amazon.com/builders-library/automating-safe-hands-off-deployments/) (Cómo AWS aborda la automatización de despliegues seguros y sin intervención) 

 **Vídeos relacionados: **
+  [Hands-off: Automating continuous delivery pipelines at Amazon](https://www.youtube.com/watch?v=ngnMj1zbMPY) (Sin intervención: automatización de canalizaciones de entrega continua en Amazon) 
+  [Automating cross-account CI/CD pipelines](https://www.youtube.com/watch?v=AF-pSRSGNks) (Automatización de canalizaciones CI/CD entre cuentas) 

 **Ejemplos relacionados:**
+  [Industry awareness for developers](https://owasp.org/www-project-top-ten/) (Concienciación del sector para desarrolladores) 
+  [AWS CodePipeline Governance](https://github.com/awslabs/aws-codepipeline-governance) (Gobernanza de AWS CodePipeline) (GitHub) 
+  [Security for Developers workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/66275888-6bab-4872-8c6e-ed2fe132a362/en-US) (Taller de seguridad para desarrolladores) 
+  [AWS CI/CD Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/ef1c179d-8097-4f34-8dc3-0e9eb381b6eb/en-US/) (Taller de CI/CD de AWS) 

# SEC11-BP03 Realizar pruebas de penetración periódicas
<a name="sec_appsec_perform_regular_penetration_testing"></a>

Realice pruebas de penetración periódicas de su software. Este mecanismo ayuda a identificar posibles problemas de software que no pueden detectarse mediante pruebas automatizadas o una revisión manual del código. También puede ayudarle a comprender la eficacia de sus controles de detección. Las pruebas de penetración deben tratar de determinar si se puede hacer que el software realice operaciones inesperadas, como exponer datos que deberían estar protegidos o conceder permisos más amplios de lo esperado.

 

**Resultado deseado:** Las pruebas de penetración se utilizan para detectar, remediar y validar las propiedades de seguridad de la aplicación. Las pruebas de penetración periódicas y programadas deben formar parte del ciclo de vida de desarrollo de software (SDLC). Los hallazgos de las pruebas de penetración deben resolverse antes del lanzamiento del software. Debe analizar los resultados de las pruebas de penetración para identificar si hay problemas que podrían detectarse mediante la automatización. El uso de un proceso de pruebas de penetración periódicas y repetibles que incluya un mecanismo de retroalimentación activo ayuda a orientar a los creadores y mejora la calidad del software. 

**Patrones comunes de uso no recomendados:**
+  Hacer pruebas de penetración solo para problemas de seguridad conocidos o frecuentes. 
+  Hacer pruebas de penetración de aplicaciones sin herramientas ni bibliotecas de terceros dependientes. 
+  Hacer pruebas de penetración solo para problemas de seguridad de paquete, sin evaluar la lógica empresarial implementada. 

**Beneficios de establecer esta práctica recomendada:**
+  Mayor confianza en las propiedades de seguridad del software antes de su lanzamiento. 
+  Oportunidad de identificar los patrones de aplicación preferidos, lo que conduce a una mayor calidad del software. 
+  Un ciclo de retroalimentación que identifica en una fase más temprana del ciclo de desarrollo dónde la automatización o la formación adicional podrían mejorar las propiedades de seguridad del software. 

**Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Las pruebas de penetración son un ejercicio estructurado de pruebas de seguridad en el que se ejecutan escenarios planificados de violación de la seguridad para detectar, remediar y validar los controles de seguridad. Las pruebas de penetración comienzan con el reconocimiento, durante el cual se recopilan datos basados en el diseño actual de la aplicación y sus dependencias. Luego, se elabora y ejecuta una lista seleccionada de escenarios de pruebas de seguridad. El objetivo principal de estas pruebas es descubrir problemas de seguridad en la aplicación, que podrían aprovecharse para obtener acceso no deseado a su entorno o acceso no autorizado a los datos. Debe llevar a cabo pruebas de penetración cuando lance nuevas características, o siempre que la aplicación haya sufrido cambios importantes en su funcionamiento o implementación técnica. 

 Debe identificar la etapa más apropiada del ciclo de vida de desarrollo en el que realizar las pruebas de penetración. Estas pruebas deben hacerse lo bastante tarde como para que la funcionalidad del sistema se aproxime al estado de lanzamiento previsto, pero con tiempo suficiente para solucionar cualquier problema. 

### Pasos para la aplicación
<a name="implementation-steps"></a>
+  Tenga un proceso estructurado para determinar el alcance de las pruebas de penetración. Basar este proceso en el [modelo de amenazas](https://aws.amazon.com/blogs/security/how-to-approach-threat-modeling/) es una buena forma de mantener el contexto. 
+  Identifique la etapa más apropiada del ciclo de desarrollo en el que realizar las pruebas de penetración. Debería ser cuando se espera un cambio mínimo en la aplicación, pero con tiempo suficiente para llevar a cabo la corrección. 
+  Forme a sus creadores sobre qué esperar de los resultados de las pruebas de penetración y cómo obtener información sobre la corrección. 
+  Utilice herramientas para acelerar el proceso de las pruebas de penetración mediante la automatización de pruebas habituales o repetibles. 
+  Analice los resultados de las pruebas de penetración con vistas a identificar problemas de seguridad sistémicos y utilice estos datos para efectuar pruebas automatizadas adicionales y para la formación continua de los creadores. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC11-BP01 Formar en seguridad de las aplicaciones](sec_appsec_train_for_application_security.md) 
+ [SEC11-BP02 Automatizar las pruebas a lo largo del ciclo de vida de desarrollo y lanzamiento](sec_appsec_automate_testing_throughout_lifecycle.md)

 **Documentos relacionados:** 
+  Las [pruebas de penetración de AWS](https://aws.amazon.com/security/penetration-testing/) ofrecen orientación detallada sobre las pruebas de penetración en AWS 
+  [Accelerate deployments on AWS with effective governance](https://aws.amazon.com/blogs/architecture/accelerate-deployments-on-aws-with-effective-governance/) (Acelerar los despliegues en AWS con una gobernanza eficaz) 
+  [Socios con competencia en seguridad de AWS](https://aws.amazon.com/security/partner-solutions/?blog-posts-cards.sort-by=item.additionalFields.createdDate&blog-posts-cards.sort-order=desc&partner-solutions-cards.sort-by=item.additionalFields.partnerNameLower&partner-solutions-cards.sort-order=asc&awsf.partner-solutions-filter-partner-type=*all&awsf.Filter%20Name%3A%20partner-solutions-filter-partner-categories=*all&awsf.partner-solutions-filter-partner-location=*all&partner-case-studies-cards.sort-by=item.additionalFields.sortDate&partner-case-studies-cards.sort-order=desc&events-master-partner-webinars.sort-by=item.additionalFields.startDateTime&events-master-partner-webinars.sort-order=asc) 
+  [Modernize your penetration testing architecture on AWS Fargate](https://aws.amazon.com/blogs/architecture/modernize-your-penetration-testing-architecture-on-aws-fargate/) (Modernice su arquitectura de pruebas de penetración en AWS Fargate) 
+  [AWS Fault injection Simulator](https://aws.amazon.com/fis/) 

 **Ejemplos relacionados:** 
+  [Automate API testing with AWS CodePipeline](https://github.com/aws-samples/aws-codepipeline-codebuild-with-postman) (Automatización de las pruebas de API con AWS CodePipeline) (GitHub) 
+  [Automated security helper](https://github.com/aws-samples/automated-security-helper) (Ayudante de seguridad automatizado) (GitHub) 

# SEC11-BP04 Revisiones manuales del código
<a name="sec_appsec_manual_code_reviews"></a>

Realice una revisión manual del código del software que produce. Este proceso ayuda a verificar que la persona que ha escrito el código no es la única que comprueba su calidad.

**Resultado deseado:** La inclusión de un paso de revisión manual del código durante el desarrollo aumenta la calidad del software que se está escribiendo, ayuda a mejorar las competencias de los miembros con menos experiencia del equipo y da la oportunidad de identificar los puntos en los que se puede utilizar la automatización. Las revisiones manuales del código pueden apoyarse en herramientas y pruebas automatizadas. 

**Patrones comunes de uso no recomendados:**
+  No revisar el código antes del despliegue. 
+  Tener una misma persona que escriba y revise el código. 
+  No utilizar la automatización para ayudar u organizar las revisiones del código. 
+  No formar a los creadores sobre la seguridad de las aplicaciones antes de que revisen el código. 

**Beneficios de establecer esta práctica recomendada:**
+  Mayor calidad del código. 
+  Mayor coherencia en el desarrollo del código gracias a la reutilización de estrategias comunes. 
+  Reducción del número de problemas revelados durante las pruebas de penetración y etapas posteriores. 
+  Mejora de la transferencia de conocimientos dentro del equipo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La etapa de revisión debe implementarse como parte del flujo general de gestión del código. Los pormenores dependen del planteamiento utilizado para la bifurcación, las solicitudes de incorporación de cambios y la fusión. Utilice AWS CodeCommit o soluciones de terceros como GitHub, GitLab o Bitbucket. Sea cual sea el método que utilice, es importante verificar que sus procesos requieren la revisión del código antes de desplegarlo en un entorno de producción. El uso de herramientas como [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) puede facilitar la organización del proceso de revisión del código. 

### Pasos para la aplicación
<a name="implementation-steps-required-field"></a>
+  Implemente un paso de revisión manual como parte del flujo de administración de código y realice esta revisión antes de continuar. 
+  Considere [Amazon CodeGuru Reviewer](https://aws.amazon.com/codeguru/) para administrar y ayudar en las revisiones de código. 
+  Implemente un flujo de aprobación que exija que se complete una revisión del código antes de que este pueda pasar a la siguiente etapa. 
+  Compruebe que existe un proceso para identificar los problemas encontrados durante las revisiones manuales del código que podrían detectarse automáticamente. 
+  Integre el paso de revisión manual del código de forma que se ajuste a sus prácticas de desarrollo de código. 

## Recursos
<a name="resources-required-field"></a>

 **Prácticas recomendadas relacionadas:**
+  [SEC11-BP02 Automatizar las pruebas a lo largo del ciclo de vida de desarrollo y lanzamiento](sec_appsec_automate_testing_throughout_lifecycle.md) 

 **Documentos relacionados:**
+  [Working with pull requests in AWS CodeCommit repositories](https://docs.aws.amazon.com/codecommit/latest/userguide/pull-requests.html) (Trabajo con solicitudes de incorporación de cambios en repositorios de AWS CodeCommit) 
+  [Working with approval rule templates in AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/approval-rule-templates.html) (Trabajar con plantillas de reglas de aprobación en AWS CodeCommit) 
+  [About pull requests in GitHub](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) (Acerca de las solicitudes de incorporación de cambios en GitHub) 
+  [ Automate code reviews with Amazon CodeGuru Reviewer ](https://aws.amazon.com/blogs/devops/automate-code-reviews-with-amazon-codeguru-reviewer/)(Revisiones automáticas de código con Amazon CodeGuru Reviewer) 
+  [Automating detection of security vulnerabilities and bugs in CI/CD pipelines using Amazon CodeGuru Reviewer CLI](https://aws.amazon.com/blogs/devops/automating-detection-of-security-vulnerabilities-and-bugs-in-ci-cd-pipelines-using-amazon-codeguru-reviewer-cli/) (Automatización de la detección de vulnerabilidades y errores de seguridad en los procesos CI/CD mediante la CLI de Amazon CodeGuru Reviewer) 

 **Vídeos relacionados: **
+  [Continuous improvement of code quality with Amazon CodeGuru](https://www.youtube.com/watch?v=iX1i35H1OVw) (Mejora continua de la calidad del código con Amazon CodeGuru) 

 **Ejemplos relacionados:** 
+  [Security for Developers workshop](https://catalog.workshops.aws/sec4devs) (Taller de seguridad para desarrolladores) 

# SEC11-BP05 Centralizar los servicios para paquetes y dependencias
<a name="sec_appsec_centralize_services_for_packages_and_dependencies"></a>

Proporcione servicios centralizados para que los equipos de creadores obtengan paquetes de software y otras dependencias. De este modo, se podrán validar los paquetes antes de incluirlos en el software que escriba y se dispondrá de un origen de datos para el análisis del software que se utiliza en su organización.

**Resultado deseado:** El software se compone de un conjunto de otros paquetes de software además del código que se escribe. Esto facilita el consumo de implementaciones de funcionalidades que se utilizan repetidamente, como un analizador JSON o una biblioteca de cifrado. La centralización lógica de los orígenes de estos paquetes y dependencias proporciona un mecanismo para que los equipos de seguridad validen las propiedades de los paquetes antes de utilizarlos. Este planteamiento también reduce el riesgo de que se produzca un problema inesperado debido a un cambio en un paquete existente o a la inclusión por equipos de creadores de paquetes arbitrarios directamente desde Internet. Utilice este planteamiento junto con los flujos de pruebas manuales y automatizadas para aumentar la confianza en la calidad del software que desarrolla. 

**Patrones comunes de uso no recomendados:**
+  Obtener paquetes de repositorios arbitrarios de Internet. 
+  No probar nuevos paquetes antes de ponerlos a disposición de los desarrolladores. 

**Beneficios de establecer esta práctica recomendada:**
+  Mejor comprensión de los paquetes que se utilizan en el software que se crea. 
+  Poder notificar a los equipos de carga de trabajo cuándo es necesario actualizar un paquete basándose en la comprensión de quién utiliza qué. 
+  Reducción del riesgo de que se incluya en el software un paquete con problemas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Proporcione servicios centralizados para paquetes y dependencias de una manera que resulte sencilla de consumir a los creadores. Los servicios centralizados pueden ser lógicamente centrales en lugar de implementarse como un sistema monolítico. Este método le permite proporcionar servicios de una manera que satisfaga las necesidades de los creadores. Debe implementar una forma eficaz de añadir paquetes al repositorio cuando se produzcan actualizaciones o surjan nuevos requisitos. Los servicios de AWS como [AWS CodeArtifact](https://aws.amazon.com/codeartifact/) o soluciones similares de socios de AWS son una forma de ofrecer esta capacidad. 

### Pasos para la aplicación:
<a name="implementation-steps"></a>
+ Implemente un servicio de repositorio lógicamente centralizado que esté disponible en todos los entornos en los que se desarrolla software. 
+ Incluya el acceso al repositorio como parte del proceso de aprovisionamiento de cuentas de Cuenta de AWS.
+ Consolide la automatización para probar paquetes antes de que se publiquen en un repositorio.
+ Mantenga métricas de los paquetes, lenguajes y equipos más utilizados y con mayor cantidad de cambios.
+  Proporcione un mecanismo automatizado para que los equipos de creación soliciten nuevos paquetes y proporcionen comentarios. 
+  Analice periódicamente los paquetes del repositorio para identificar la posible repercusión de los problemas que se acaban de detectar. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC11-BP02 Automatizar las pruebas a lo largo del ciclo de vida de desarrollo y lanzamiento](sec_appsec_automate_testing_throughout_lifecycle.md) 

 **Documentos relacionados:** 
+  [Accelerate deployments on AWS with effective governance](https://aws.amazon.com/blogs/architecture/accelerate-deployments-on-aws-with-effective-governance/) (Acelerar los despliegues en AWS con una gobernanza eficaz) 
+  [Tighten your package security with CodeArtifact Package Origin Control toolkit](https://aws.amazon.com/blogs/devops/tighten-your-package-security-with-codeartifact-package-origin-control-toolkit/) (Refuerce la seguridad de sus paquetes con el kit de herramientas de control de origen de paquetes de CodeArtifact) 
+  [Detecting security issues in logging with Amazon CodeGuru Reviewer](https://aws.amazon.com/blogs/devops/detecting-security-issues-in-logging-with-amazon-codeguru-reviewer/) (Detección de problemas de seguridad en el registro con Amazon CodeGuru Reviewer) 
+  [Supply chain Levels for Software Artifacts (SLSA)](https://slsa.dev/) (Niveles de la cadena de suministro de artefactos de software [SLSA]) 

 **Vídeos relacionados: ** 
+  [Proactive security: Considerations and approaches](https://www.youtube.com/watch?v=CBrUE6Qwfag) (Seguridad proactiva: consideraciones y estrategias) 
+  [The AWS Philosophy of Security (re:Invent 2017)](https://www.youtube.com/watch?v=KJiCfPXOW-U) (La filosofía de seguridad de AWS [re:Invent 2017]) 
+  [When security, safety, and urgency all matter: Handling Log4Shell](https://www.youtube.com/watch?v=pkPkm7W6rGg) (Cuando la seguridad, la protección y la urgencia son importantes: gestión de Log4Shell) 

 **Ejemplos relacionados:** 
+  [Multi Region Package Publishing Pipeline](https://github.com/aws-samples/multi-region-python-package-publishing-pipeline) (Canalización de publicación de paquetes multirregión) [GitHub] ) 
+  [Publishing Node.js Modules on AWS CodeArtifact using AWS CodePipeline](https://github.com/aws-samples/aws-codepipeline-publish-nodejs-modules) (Publicación de módulos Node.js en AWS CodeArtifact con AWS CodePipeline) (GitHub) 
+  [AWS CDK Java CodeArtifact Pipeline Sample](https://github.com/aws-samples/aws-cdk-codeartifact-pipeline-sample) (Ejemplo de canalización de CodeArtifact en Java en AWS CDK) (GitHub) 
+  [Distribute private .NET NuGet packages with AWS CodeArtifact](https://github.com/aws-samples/aws-codeartifact-nuget-dotnet-pipelines) (Distribuir paquetes NuGet .NET privados con AWS CodeArtifact) (GitHub) 

# SEC11-BP06 Desplegar software mediante programación
<a name="sec_appsec_deploy_software_programmatically"></a>

Siempre que sea posible, realice los despliegues de software mediante programación. Con este enfoque se reduce la probabilidad de que se produzca un error en el despliegue o de que surja un problema inesperado debido a un error humano.

**Resultado deseado:** Mantener a las personas alejadas de los datos es un principio clave para crear de forma segura en la Nube de AWS. Este principio incluye la forma de desplegar el software. 

 La ventaja de no depender de personas para desplegar el software es que tendrá mayor confianza en que se ha probado lo que se despliega, y que el despliegue se realice siempre de forma coherente. No tendrá que modificar el software para que funcione en distintos entornos. El uso de los principios del desarrollo de aplicaciones de doce factores, en concreto la externalización de la configuración, le permite desplegar el mismo código en varios entornos sin necesidad de realizar cambios. La firma criptográfica de los paquetes de software es una buena forma de verificar que no ha cambiado nada entre entornos. El resultado general de este método es que se reduce el riesgo en el proceso de cambio y mejorar la coherencia de las versiones de software. 

**Patrones comunes de uso no recomendados:**
+  Despliegue manual del software en producción. 
+  Realización manual de cambios en el software para adaptarlo a distintos entornos. 

**Beneficios de establecer esta práctica recomendada:**
+  Mayor confianza en el proceso de lanzamiento de software. 
+  Reducción del riesgo de que un cambio erróneo afecte a las funciones de la empresa. 
+  Aumento de la cadencia de lanzamiento debido al menor riesgo del cambio. 
+  Capacidad de reversión automática en caso de imprevistos durante el despliegue. 
+  Capacidad para demostrar criptográficamente que el software probado es el software desplegado. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Cree su estructura de cuenta de Cuenta de AWS de forma que elimine el acceso humano persistente desde los entornos y utilice herramientas de CI/CD para realizar los despliegues. Diseñe las aplicaciones de manera que los datos de configuración específicos del entorno se obtengan de un origen externo, como el [Parameter Store de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html). Firme los paquetes después de probarlos y valide estas firmas durante el despliegue. Configure las canalizaciones de CI/CD para que envíen el código de la aplicación y utilice valores controlados para confirmar que el despliegue ha tenido lugar como corresponde. Utilice herramientas como [AWS CloudFormation](https://aws.amazon.com/cloudformation/) o [AWS CDK](https://aws.amazon.com/cdk/) para definir su infraestructura y, a continuación, use [AWS CodeBuild](https://aws.amazon.com/codebuild/) y [AWS CodePipeline](https://aws.amazon.com/codepipeline/) para realizar las operaciones de CI/CD. 

### Pasos para la aplicación
<a name="implementation-steps"></a>
+  Cree canalizaciones de CI/CD bien definidas para agilizar el proceso de despliegue. 
+  Proporcione capacidad de CI/CD para simplificar la integración de las pruebas de seguridad en las canalizaciones con [AWS CodeBuild](https://aws.amazon.com/codebuild/) y [AWS Code Pipeline](https://aws.amazon.com/codepipeline/). 
+  Siga las directrices sobre separación de entornos del documento técnico [Organizing Your AWS Environment Using Multiple Accounts](https://docs.aws.amazon.com/whitepapers/latest/organizing-your-aws-environment/organizing-your-aws-environment.html) (Organización del entorno de AWS con varias cuentas). 
+  Verifique que no haya acceso humano persistente a los entornos donde se ejecutan las cargas de trabajo de producción. 
+  Diseñe las aplicaciones de modo que admitan la externalización de datos de configuración. 
+  Piense en la posibilidad de llevar a cabo el despliegue mediante un modelo de despliegue azul-verde. 
+  Implemente valores controlados para validar el despliegue correcto del software. 
+  Utilice herramientas criptográficas como [AWS Signer](https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html) o [AWS Key Management Service (AWS KMS)](https://aws.amazon.com/kms/) para firmar y verificar los paquetes de software que está desplegando. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC11-BP02 Automatizar las pruebas a lo largo del ciclo de vida de desarrollo y lanzamiento](sec_appsec_automate_testing_throughout_lifecycle.md) 

 **Documentos relacionados:** 
+  [AWS CI/CD Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/ef1c179d-8097-4f34-8dc3-0e9eb381b6eb/en-US/) (Taller de CI/CD de AWS) 
+  [Accelerate deployments on AWS with effective governance](https://aws.amazon.com/blogs/architecture/accelerate-deployments-on-aws-with-effective-governance/) (Acelerar los despliegues en AWS con una gobernanza eficaz) 
+  [Automatización de implementaciones seguras y sin intervención](https://aws.amazon.com/builders-library/automating-safe-hands-off-deployments/) 
+  [Code signing using AWS Certificate Manager Private CA and AWS Key Management Service asymmetric keys](https://aws.amazon.com/blogs/security/code-signing-aws-certificate-manager-private-ca-aws-key-management-service-asymmetric-keys/) (Firma de código mediante CA privada de AWS Certificate Manager y claves asimétricas deAWS Key Management Service) 
+  [Code Signing, a Trust and Integrity Control for AWS Lambda](https://aws.amazon.com/blogs/aws/new-code-signing-a-trust-and-integrity-control-for-aws-lambda/) (Firma de código, un control de confianza e integridad para AWS Lambda) 

 **Vídeos relacionados: ** 
+  [Hands-off: Automating continuous delivery pipelines at Amazon](https://www.youtube.com/watch?v=ngnMj1zbMPY) (Sin intervención: automatización de canalizaciones de entrega continua en Amazon) 

 **Ejemplos relacionados:** 
+  [Blue/Green deployments with AWS Fargate](https://catalog.us-east-1.prod.workshops.aws/workshops/954a35ee-c878-4c22-93ce-b30b25918d89/en-US) Despliegues azul-verde AWS Fargate) 

# SEC11-BP07 Evaluar periódicamente las propiedades de seguridad de las canalizaciones
<a name="sec_appsec_regularly_assess_security_properties_of_pipelines"></a>

 Aplique los principios del pilar de seguridad de Well-Architected a sus canalizaciones, prestando especial atención a la separación de permisos. Evalúe periódicamente las propiedades de seguridad de su infraestructura de canalización. La administración eficaz de la seguridad *de* las canalizaciones le permite garantizar la seguridad del software que pasa *por* ellas. 

**Resultado deseado:** Las canalizaciones utilizadas para crear y desplegar el software deben seguir las mismas prácticas recomendadas que cualquier otra carga de trabajo en su entorno. Los desarrolladores no deben poder editar las pruebas que se implementan en las canalizaciones que utilizan. Las canalizaciones solo deben tener los permisos necesarios para los despliegues que están realizando y debe implementar salvaguardas para evitar que se desplieguen en los entornos equivocados. Las canalizaciones no deben depender de credenciales a largo plazo; además, deben estar configuradas para emitir estado de forma que se pueda validar la integridad de los entornos de compilación. 

**Patrones comunes de uso no recomendados:**
+  Pruebas de seguridad que los creadores pueden omitir. 
+  Permisos demasiado amplios para las canalizaciones de despliegue. 
+  Canalizaciones no configuradas para validar entradas. 
+  No revisar periódicamente los permisos asociados a la infraestructura de CI/CD. 
+  Uso de credenciales a largo plazo o codificadas. 

**Beneficios de establecer esta práctica recomendada:**
+  Mayor confianza en la integridad del software que se construye y despliega a través de las canalizaciones. 
+  Capacidad de detener un despliegue cuando hay actividades sospechosas. 

**Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Comience con servicios de CI/CD administrados que admiten roles de IAM para reducir el riesgo de fuga de credenciales. La aplicación de los principios del pilar de seguridad a la infraestructura de canalización de CI/CD puede ayudarle a determinar dónde es posible realizar mejoras de seguridad. Siga la [arquitectura de referencia de canalizaciones de despliegue de AWS](https://aws.amazon.com/blogs/aws/new_deployment_pipelines_reference_architecture_and_-reference_implementations/). Es un buen punto de partida para crear entornos de CI/CD. Revise a intervalos regulares la implementación de la canalización y analice los registros para detectar comportamientos inesperados; esto puede ayudarle a comprender los patrones de uso de las canalizaciones que se utilizan para desplegar software. 

### Pasos para la aplicación
<a name="implementation-steps"></a>
+  Empiece con la [arquitectura de referencia de canalizaciones de despliegue de AWS](https://aws.amazon.com/blogs/aws/new_deployment_pipelines_reference_architecture_and_-reference_implementations/). 
+  Plantéese la posibilidad de utilizar [AWS IAM Access Analyzer](https://docs.aws.amazon.com//latest/UserGuide/what-is-access-analyzer.html) para generar mediante programación políticas de IAM de privilegios mínimos para las canalizaciones. 
+  Integre las canalizaciones con monitorización y alertas para que recibir notificaciones de actividad inesperada o anómala. Para los servicios administrados de AWS, [Amazon EventBridge](https://aws.amazon.com/eventbridge/) le permite enrutar datos a destinos como [AWS Lambda](https://aws.amazon.com/lambda/) o [Amazon Simple Notification Service](https://aws.amazon.com/sns/) (Amazon SNS). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Deployment Pipelines Reference Architecture](https://aws.amazon.com/blogs/aws/new_deployment_pipelines_reference_architecture_and_-reference_implementations/) (Arquitectura de referencia de canalizaciones de despliegue de AWS) 
+  [Monitoring AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/monitoring.html) (Monitorización de AWS CodePipeline) 
+  [Security best practices for AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/security-best-practices.html) (Prácticas recomendadas de seguridad de AWS CodePipeline) 

 **Ejemplos relacionados:** 
+  [DevOps monitoring dashboard](https://github.com/aws-solutions/aws-devops-monitoring-dashboard) (Panel de monitorización de DevOps) (GitHub) 

# SEC11-BP08 Crear un programa que integre la propiedad de la seguridad en los equipos de la carga de trabajo
<a name="sec_appsec_build_program_that_embeds_security_ownership_in_teams"></a>

Elabore un programa o un mecanismo que permita a los equipos de creadores tomar decisiones de seguridad sobre el software que crean. Aún así, su equipo de seguridad debe validar estas decisiones durante una revisión, pero integrar la propiedad de la seguridad en los equipos de creadores permite crear cargas de trabajo más rápidas y seguras. Este mecanismo también fomenta una cultura de propiedad que repercute positivamente en el funcionamiento de los sistemas que se crean.

 

**Resultado deseado:** Para integrar la propiedad de la seguridad y la toma de decisiones en los equipos de creación, puede formar a los creadores sobre cómo pensar en la seguridad o puede mejorar su formación con personal de seguridad integrado o asociado a los equipos de creación. Cualquiera de las dos estrategias es válida y permite al equipo tomar decisiones de seguridad de mayor calidad en una fase más temprana del ciclo de desarrollo. Este modelo de propiedad se basa en la formación para lograr la seguridad de las aplicaciones. Empiece con el modelo de amenazas para la carga de trabajo concreta, lo que ayudará a dirigir el enfoque de diseño al contexto apropiado. Otra ventaja de contar con una comunidad de desarrolladores centrados en la seguridad, o con un grupo de ingenieros de seguridad que trabajen con equipos de creadores, es que es posible comprender más a fondo cómo se escribe el software. Esta comprensión le ayuda a determinar las próximas áreas de mejora en su capacidad de automatización. 

**Patrones comunes de uso no recomendados:**
+  Dejar todas las decisiones del diseño de la seguridad en manos del equipo de seguridad. 
+  No hacer frente a los requisitos de seguridad con suficiente antelación en el proceso de desarrollo. 
+  No obtener comentarios de los creadores y del personal de seguridad sobre el funcionamiento del programa. 

**Beneficios de establecer esta práctica recomendada:**
+  Reducción del tiempo necesario para completar las revisiones de seguridad. 
+  Reducción de los problemas de seguridad que solo se detectan en la fase de revisión de la seguridad. 
+  Mejora de la calidad general del software que se escribe. 
+  Oportunidad de identificar y comprender problemas sistémicos o áreas de mejora de alto valor. 
+  Reducción de la cantidad de tareas que es necesario repetir debido a los hallazgos de la revisión de seguridad. 
+  Mejora de la percepción de la función de seguridad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Empiece con la orientación de [SEC11-BP01 Formar en seguridad de las aplicaciones](sec_appsec_train_for_application_security.md). A continuación, identifique el modelo operativo para el programa que crea que puede funcionar mejor para su organización. Los dos modelos principales son formar a los desarrolladores o integrar al personal de seguridad en los equipos de creadores. Una vez que haya decidido el abordaje inicial, deberá realizar una prueba piloto con uno o un pequeño grupo de equipos de carga de trabajo para comprobar que el modelo funciona en su organización. El apoyo de los líderes de los departamentos de creación y seguridad de la organización contribuye a la implantación y al éxito del programa. A medida que cree este programa, es importante elegir métricas que sirvan para mostrar el valor del programa. Aprender de cómo AWS ha tratado este problema es una buena experiencia de aprendizaje. Esta práctica recomendada se centra en gran medida en la cultura y el cambio organizativo. Las herramientas que emplee deben apoyar la colaboración entre las comunidades de creadores y de seguridad. 

### Pasos para la aplicación
<a name="implementation-steps"></a>
+  Empiece por formar a los desarrolladores en la seguridad para las aplicaciones. 
+  Cree una comunidad y un programa de incorporación para educar a los creadores. 
+  Elija un nombre para el programa. Los más utilizados son «Guardians», «Champions» o «Advocates». 
+  Identifique el modelo a utilizar: formar a los desarrolladores, incorporar ingenieros de seguridad o tener roles de seguridad afines. 
+  Identifique a los patrocinadores del proyecto entre los encargados de la seguridad, los creadores y, quizá, otros grupos pertinentes. 
+  Haga un seguimiento del número de personas que participan en el programa, el tiempo necesario para las revisiones y los comentarios de los creadores y el personal de seguridad. Utilice estas métricas para acometer mejoras. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC11-BP01 Formar en seguridad de las aplicaciones](sec_appsec_train_for_application_security.md) 
+  [SEC11-BP02 Automatizar las pruebas a lo largo del ciclo de vida de desarrollo y lanzamiento](sec_appsec_automate_testing_throughout_lifecycle.md) 

 **Documentos relacionados:** 
+  [How to approach threat modeling](https://aws.amazon.com/blogs/security/how-to-approach-threat-modeling/) (Cómo abordar el modelado de amenazas) 
+  [How to think about cloud security governance](https://aws.amazon.com/blogs/security/how-to-think-about-cloud-security-governance/) (Cómo concebir la gobernanza de la seguridad en la nube) 

 **Vídeos relacionados: ** 
+  [Proactive security: Considerations and approaches](https://www.youtube.com/watch?v=CBrUE6Qwfag) (Seguridad proactiva: consideraciones y estrategias) 

# Fiabilidad
<a name="a-reliability"></a>

El pilar de fiabilidad abarca la capacidad de una carga de trabajo para realizar su función prevista de forma correcta y coherente cuando se espera que lo haga. Encontrará una guía prescriptiva sobre implementación en el [documento técnico Pilar de fiabilidad](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/welcome.html?ref=wellarchitected-wp).

**Topics**
+ [Fundamentos](a-foundations.md)
+ [Arquitectura de la carga de trabajo](a-workload-architecture.md)
+ [Administración de cambios](a-change-management.md)
+ [Administración de errores](a-failure-management.md)

# Fundamentos
<a name="a-foundations"></a>

**Topics**
+ [REL 1 ¿Cómo administra las cuotas de servicio y las restricciones?](rel-01.md)
+ [REL 2 ¿Cómo planifica la topología de la red?](rel-02.md)

# REL 1 ¿Cómo administra las cuotas de servicio y las restricciones?
<a name="rel-01"></a>

Para las arquitecturas de carga de trabajo basadas en la nube, existen cuotas de servicio (que también se denominan límites de servicio). Estas cuotas existen para evitar aprovisionar por accidente más recursos de los necesarios y para limitar las tasas de solicitud en las operaciones de la API, de modo que los servicios queden protegidos ante posibles abusos. También existen restricciones de recursos, por ejemplo, la velocidad a la que se pueden introducir bits en un cable de fibra óptica o la cantidad de almacenamiento de un disco físico. 

**Topics**
+ [REL01-BP01 Conocimiento de las cuotas y restricciones del servicio](rel_manage_service_limits_aware_quotas_and_constraints.md)
+ [REL01-BP02 Administrar cuotas de servicio en cuentas y regiones](rel_manage_service_limits_limits_considered.md)
+ [REL01-BP03 Adaptar las cuotas de servicio fijas y las restricciones a través de la arquitectura](rel_manage_service_limits_aware_fixed_limits.md)
+ [REL01-BP04 Supervisar y administrar cuotas](rel_manage_service_limits_monitor_manage_limits.md)
+ [REL01-BP05 Automatizar la administración de cuotas](rel_manage_service_limits_automated_monitor_limits.md)
+ [REL01-BP06 Garantizar que exista una diferencia suficiente entre las cuotas actuales y el uso máximo para permitir la conmutación por error](rel_manage_service_limits_suff_buffer_limits.md)

# REL01-BP01 Conocimiento de las cuotas y restricciones del servicio
<a name="rel_manage_service_limits_aware_quotas_and_constraints"></a>

 Conozca las cuotas predeterminadas y administre las solicitudes de aumento de cuota para su arquitectura de carga de trabajo. Sepa qué restricciones de recursos en la nube, como el disco o la red, pueden causar impacto. 

 **Resultado deseado:** los clientes pueden evitar el deterioro o la interrupción del servicio en sus Cuentas de AWS mediante la implementación de directrices adecuadas para la supervisión de las métricas clave, las revisiones de la infraestructura y la automatización de los pasos de corrección, a fin de verificar que no se alcanzan las cuotas y restricciones de los servicios que podrían provocar el deterioro o la interrupción del servicio. 

 **Antipatrones usuales:** 
+ Desplegar una carga de trabajo sin conocer las cuotas estrictas o flexibles y sus límites para los servicios utilizados. 
+ Desplegar una carga de trabajo de reemplazo sin analizar ni volver a configurar las cuotas necesarias o sin contactar previamente con el servicio de asistencia. 
+ Suponer que los servicios en la nube no tienen límites y que los servicios pueden utilizarse sin tener en cuenta tarifas, límites, recuentos o cantidades.
+  Suponer que las cuotas se incrementarán automáticamente. 
+  Desconocer el proceso y la cronología de las solicitudes de cuotas. 
+  Suponer que la cuota de servicio predeterminada en la nube es la misma para todos los servicios en diferentes regiones. 
+  Suponer que se pueden incumplir las restricciones del servicio y que los sistemas se escalarán automáticamente o añadirán un aumento del límite más allá de las restricciones del recurso. 
+  No probar la aplicación en picos de tráfico para estresar el uso de sus recursos. 
+  Aprovisionar el recurso sin analizar el tamaño de recurso requerido. 
+  Sobreaprovisionar la capacidad mediante la elección de tipos de recursos que van mucho más allá de las necesidades reales o de los picos previstos. 
+  No evaluar las necesidades de capacidad para nuevos niveles de tráfico antes de que se produzca un nuevo evento con un cliente o de desplegar una nueva tecnología. 

 **Beneficios de establecer esta práctica recomendada:** la supervisión y la administración automatizada de las cuotas de servicio y las restricciones de recursos pueden reducir los errores de forma proactiva. Los cambios en los patrones de tráfico para el servicio de un cliente pueden provocar una interrupción o un deterioro si no se siguen las prácticas recomendadas. Con la supervisión y la administración de estos valores en todas las regiones y en todas las cuentas, las aplicaciones pueden tener una mayor resiliencia ante acontecimientos adversos o imprevistos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Service Quotas es un servicio de AWS que le ayuda a administrar sus cuotas para más de 250 servicios de AWS desde una sola ubicación. Además de consultar los valores de las cuotas, también puede solicitar y realizar un seguimiento de los aumentos de las cuotas desde la consola de Service Quotas o mediante el SDK de AWS. AWS Trusted Advisor ofrece una comprobación de las cuotas de servicio que muestra su uso y las cuotas para ciertos aspectos de algunos servicios. Las cuotas de servicio predeterminadas por servicio también están en la documentación de AWS del servicio respectivo (por ejemplo, consulte [Cuotas de Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html)). 

 Algunos límites de servicio, como los límites de velocidad en las API limitadas se establecen en Amazon API Gateway mediante la configuración de un plan de uso. Algunos límites que se establecen como configuración en sus respectivos servicios son las IOPS aprovisionadas, el almacenamiento de Amazon RDS asignado y las asignaciones de volumen Amazon EBS. Amazon Elastic Compute Cloud tiene su propio panel de límites de servicio que puede ayudarle a administrar sus límites de instancia, Amazon Elastic Block Store y de dirección IP elástica. Si tiene un caso de uso en el que las cuotas de servicio repercuten en el rendimiento de su aplicación y no se ajustan a sus necesidades, contacte con Soporte para ver si existen mitigaciones. 

 Las cuotas de servicio pueden ser específicas de una región o también pueden tener carácter global. El uso de un servicio de AWS que alcance su cuota no actuará del modo previsto en un uso normal y puede provocar la interrupción o el deterioro del servicio. Por ejemplo, una cuota de servicio limita el número de DL Amazon EC2 que pueden utilizarse en una región y ese límite puede alcanzarse durante un evento de escalamiento de tráfico mediante grupos de Auto Scaling (ASG). 

 Las cuotas de servicio de cada cuenta deben evaluarse periódicamente para determinar cuáles podrían ser los límites de servicio adecuados para esa cuenta. Estas cuotas de servicio existen como barreras de protección operativas para evitar aprovisionar por accidente más recursos de los necesarios. También sirven para limitar las tasas de solicitudes en las operaciones de API para proteger los servicios del abuso. 

 Las restricciones de servicio son diferentes de las cuotas de servicio. Las restricciones de servicio representan los límites de un recurso concreto, tal y como los define ese tipo de recurso. Pueden ser la capacidad de almacenamiento (por ejemplo, gp2 tiene un límite de tamaño de 1 GB - 16 TB) o el rendimiento del disco (10 0000 iops). Es esencial que las restricciones de un tipo de recurso se diseñen y evalúen constantemente para detectar un uso que pueda alcanzar su límite. Si se alcanza una restricción de forma inesperada, las aplicaciones o servicios de la cuenta pueden deteriorarse o interrumpirse. 

 Si existe un caso de uso en el que las cuotas de servicio repercuten en el rendimiento de una aplicación y no pueden ajustarse a las necesidades requeridas, contacte con Soporte para ver si existen mitigaciones. Para obtener más detalles sobre el ajuste de cuotas fijas, consulte [REL01-BP03 Adaptar las cuotas de servicio fijas y las restricciones a través de la arquitectura](rel_manage_service_limits_aware_fixed_limits.md). 

 Hay una serie de servicios y herramientas de AWS con las que se puede supervisar y administrar Service Quotas. El servicio y las herramientas se deben utilizar para proporcionar comprobaciones automatizadas o manuales de los niveles de cuota. 
+  AWS Trusted Advisor ofrece una comprobación de cuotas de servicio que muestra su uso y las cuotas para ciertos aspectos de algunos servicios. Puede ayudar a identificar los servicios que están cerca de la cuota. 
+  Consola de administración de AWS proporciona métodos para mostrar los valores de las cuotas de los servicios, administrar, solicitar nuevas cuotas, supervisar el estado de las solicitudes de cuotas y mostrar el historial de cuotas. 
+  AWS CLI y los CDK ofrecen métodos programáticos para administrar y supervisar automáticamente los niveles de cuota de servicio y el uso. 

 **Pasos para la implementación** 

 Para Service Quotas: 
+ [ Revise AWS Service Quotas. ](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)
+  Para conocer sus cuotas de servicio existentes, determine los servicios (como IAM Access Analyzer) que se utilizan. Hay aproximadamente 250 servicios de AWS controlados por cuotas de servicio. A continuación, determine el nombre específico de la cuota de servicio que podría utilizarse en cada cuenta y región. Hay aproximadamente 3000 nombres de cuotas de servicio por región. 
+  Aumente este análisis de cuotas con AWS Config para encontrar todos los [recursos de AWS](https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html) utilizados en sus Cuentas de AWS. 
+  Use los [datos de AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-view-stack-data-resources.html) para determinar los recursos de AWS utilizados. Examine los recursos que se han creado en la Consola de administración de AWS o con el comando [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-stack-resources.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-stack-resources.html) de la AWS CLI. También puede ver los recursos configurados para desplegarse en la propia plantilla. 
+  Consulte el código de despliegue para determinar todos los servicios que necesita su carga de trabajo. 
+  Determine las cuotas de servicio que se aplican. Use la información accesible mediante programación de Trusted Advisor y Service Quotas. 
+  Establezca un método de supervisión automatizado (consulte [REL01-BP02 Administrar cuotas de servicio en cuentas y regiones](rel_manage_service_limits_limits_considered.md) y [REL01-BP04 Supervisar y administrar cuotas](rel_manage_service_limits_monitor_manage_limits.md)) para alertar e informar si las cuotas de servicio están cerca de su límite o lo han alcanzado. 
+  Establezca un método automatizado y programático para comprobar si se ha modificado una cuota de servicio en una región pero no en otras regiones de la misma cuenta (consulte [REL01-BP02 Administrar cuotas de servicio en cuentas y regiones](rel_manage_service_limits_limits_considered.md) y [REL01-BP04 Supervisar y administrar cuotas](rel_manage_service_limits_monitor_manage_limits.md)). 
+  Automatice el análisis de los registros y las métricas de las aplicaciones para determinar si existen errores de cuotas o restricciones de servicio. Si se producen estos errores, envíe alertas al sistema de supervisión. 
+  Establezca procedimientos de ingeniería para calcular el cambio necesario en la cuota (consulte [REL01-BP05 Automatizar la administración de cuotas](rel_manage_service_limits_automated_monitor_limits.md)) una vez que se haya identificado que se necesitan cuotas mayores para servicios específicos. 
+  Cree un flujo de trabajo de aprovisionamiento y aprobación para solicitar cambios en la cuota de servicio. Debería incluir un flujo de trabajo de excepciones en caso de denegación de la solicitud o de aprobación parcial. 
+  Cree un método de ingeniería para efectuar una revisión de las cuotas de servicio previa al aprovisionamiento y el uso de nuevos servicios de AWS antes de desplegarlos en entornos de producción o de carga (por ejemplo, una cuenta de pruebas de carga). 

 Para las restricciones de servicio: 
+  Establezca métodos de supervisión y medición para alertar de la lectura de los recursos próximos a sus restricciones. Use CloudWatch según proceda para las métricas o la supervisión de registros. 
+  Establezca umbrales de alerta para cada recurso con una restricción significativa para la aplicación o el sistema. 
+  Cree procedimientos de administración de flujos de trabajo e infraestructuras para cambiar el tipo de recurso si la restricción está próxima a su uso. Como práctica recomendada, este flujo de trabajo debe incluir pruebas de carga para verificar que el nuevo tipo sea el tipo de recurso correcto con las nuevas restricciones. 
+  Migre el recurso identificado al nuevo tipo de recurso recomendado, mediante los procedimientos y los procesos existentes. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL01-BP02 Administrar cuotas de servicio en cuentas y regiones](rel_manage_service_limits_limits_considered.md) 
+  [REL01-BP03 Adaptar las cuotas de servicio fijas y las restricciones a través de la arquitectura](rel_manage_service_limits_aware_fixed_limits.md) 
+  [REL01-BP04 Supervisar y administrar cuotas](rel_manage_service_limits_monitor_manage_limits.md) 
+  [REL01-BP05 Automatizar la administración de cuotas](rel_manage_service_limits_automated_monitor_limits.md) 
+  [REL01-BP06 Garantizar que exista una diferencia suficiente entre las cuotas actuales y el uso máximo para permitir la conmutación por error](rel_manage_service_limits_suff_buffer_limits.md) 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 
+  [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md) 
+  [REL12-BP05 Probar la resiliencia mediante la ingeniería del caos](rel_testing_resiliency_failure_injection_resiliency.md) 

 **Documentos relacionados:** 
+ [ Pilar de fiabilidad de AWS Well-Architected Framework: disponibilidad ](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/availability.html)
+  [AWS Service Quotas (denominados anteriormente límites de servicio)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [Comprobaciones de prácticas recomendadas de AWS Trusted Advisor (consulte la sección Límites de servicio)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Limit Monitor en AWS Answers](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Límites de servicio de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [¿Qué es Service Quotas?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [ Cómo solicitar un aumento de cuota ](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html)
+ [ Puntos de conexión y cuotas de servicio ](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)
+  [Guía del usuario de Service Quotas](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [Supervisor de cuotas para AWS](https://aws.amazon.com/solutions/implementations/quota-monitor/)
+ [Límites de aislamiento de errores de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/abstract-and-introduction.html)
+ [ Disponibilidad con redundancia ](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/availability-with-redundancy.html)
+ [AWS para datos ](https://aws.amazon.com/data/)
+ [ ¿Qué es la integración continua? ](https://aws.amazon.com/devops/continuous-integration/)
+ [ ¿Qué es la entrega continua? ](https://aws.amazon.com/devops/continuous-delivery/)
+ [Socio de APN: socios que pueden ayudar con la administración de la configuración](https://partners.amazonaws.com/search/partners?keyword=Configuration+Management&ref=wellarchitected)
+ [ Managing the account lifecycle in account-per-tenant SaaS environments on AWS](https://aws.amazon.com/blogs/mt/managing-the-account-lifecycle-in-account-per-tenant-saas-environments-on-aws/)(Administración del ciclo de vida de las cuentas en entornos SaaS de cuenta por inquilino en AWS)
+ [ Managing and monitoring API throttling in your workloads ](https://aws.amazon.com/blogs/mt/managing-monitoring-api-throttling-in-workloads/)(Administrar y supervisar la limitación de las API en sus cargas de trabajo)
+ [ View AWS Trusted Advisor recommendations at scale with AWS Organizations](https://aws.amazon.com/blogs/mt/organizational-view-for-trusted-advisor/)(Ver recomendaciones de AWS Trusted Advisor a escala con AWS Organizations)
+ [ Automating Service Limit Increases and Enterprise Support with AWS Control Tower](https://aws.amazon.com/blogs/mt/automating-service-limit-increases-enterprise-support-aws-control-tower/)(Automatización de los aumentos del límite de servicio y asistencia a empresas con AWS Control Tower)

 **Vídeos relacionados: ** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 
+ [ View and Manage Quotas for AWS Services Using Service Quotas ](https://www.youtube.com/watch?v=ZTwfIIf35Wc)(Ver y administrar cuotas para AWS Services con Service Quotas)
+ [AWS IAM Quotas Demo ](https://www.youtube.com/watch?v=srJ4jr6M9YQ)(Demostración de las cuotas de AWS IAM)

 **Herramientas relacionadas:** 
+ [ Amazon CodeGuru Reviewer ](https://aws.amazon.com/codeguru/)
+ [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)
+ [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+ [ Amazon EventBridge ](https://aws.amazon.com/eventbridge/)
+ [ Amazon DevOps Guru ](https://aws.amazon.com/devops-guru/)
+ [AWS Config](https://aws.amazon.com/config/)
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+ [AWS CDK ](https://aws.amazon.com/cdk/)
+ [AWS Systems Manager](https://aws.amazon.com/systems-manager/)
+ [AWS Marketplace](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB)

# REL01-BP02 Administrar cuotas de servicio en cuentas y regiones
<a name="rel_manage_service_limits_limits_considered"></a>

 Si utiliza múltiples cuentas o regiones, solicite las cuotas pertinentes en todos los entornos en los que se ejecutan sus cargas de trabajo de producción. 

 **Resultado deseado:** los servicios y las aplicaciones no deberían verse afectados si se agota la cuota de servicio en las configuraciones que abarcan cuentas o regiones, o que tienen diseños de resiliencia mediante la conmutación por error de zonas, regiones o cuentas. 

 **Antipatrones usuales:** 
+ Permitir que aumente el uso de recursos en una región aislada sin ningún mecanismo para mantener la capacidad en las demás. 
+  Configurar manualmente todas las cuotas de forma independiente en regiones aisladas. 
+  No considerar el efecto de las arquitecturas de resiliencia (activa o pasiva) en las futuras necesidades de cuota durante un deterioro de la región no principal. 
+  No evaluar las cuotas periódicamente ni realizar los cambios necesarios en cada región y cuenta donde se ejecuta la carga de trabajo. 
+  No utilizar las [plantillas de solicitud de cuota](https://docs.aws.amazon.com/servicequotas/latest/userguide/organization-templates.html) para solicitar incrementos en varias regiones y cuentas. 
+  No actualizar las cuotas de servicio por pensar erróneamente que el aumento de las cuotas tiene implicaciones de coste, como las solicitudes de reserva de computación. 

 **Beneficios de establecer esta práctica recomendada:** verificar que puede gestionar su carga actual en regiones o cuentas secundarias si los servicios regionales dejan de estar disponibles. Esto puede reducir el número de errores o los niveles de deterioro que se producen durante la pérdida de una región. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El seguimiento de las cuotas de servicio se realiza por cuenta. A no ser que se especifique lo contrario, cada cuota es específica de una Región de AWS. Además de los entornos de producción, administre también las cuotas en todos los entornos que no sean de producción aplicables, de modo que las pruebas y el desarrollo no se vean limitados. El mantenimiento de un elevado nivel de resiliencia requiere que las cuotas de servicio se evalúen continuamente (ya sea de forma automatizada o manual). 

 Al haber más cargas de trabajo que abarcan regiones debido a la implementación de diseños que utilizan los enfoques *Activo/Activo*, *Activo/Pasivo - En caliente*, *Activo/Pasivo - En frío* y *Activo/Pasivo - Luz piloto*, es esencial comprender todos los niveles de cuotas de regiones y cuentas. Los patrones de tráfico anteriores no siempre son un buen indicador de si la cuota de servicio está configurada correctamente. 

 Igualmente importante es el hecho de que el límite de nombres de cuota de servicio no es siempre el mismo para todas las regiones. En una región, el valor podría ser cinco, y en otra, diez. La administración de estas cuotas debe abarcar los mismos servicios, cuentas y regiones para proporcionar una resiliencia coherente bajo carga. 

 Concilie todas las diferencias de cuota de servicio entre las distintas regiones (región activa o región pasiva) y cree procesos para conciliar continuamente estas diferencias. Los planes de prueba de las conmutaciones por error pasivas de las regiones en muy pocas ocasiones se escalan a la capacidad activa máxima, lo que significa que los ejercicios del día de juego o de mesa pueden no encontrar diferencias en las cuotas de servicio entre las regiones y tampoco mantener los límites correctos. 

 Es muy importante controlar y evaluar la *desviación de cuota de servicio*, la situación en la que los límites de la cuota de servicio para una determinada cuota con nombre se modifican en una región y no en todas las regiones. Debe considerarse la posibilidad de cambiar la cuota en las regiones con tráfico o con posibilidad de tener tráfico. 
+  Seleccione las cuentas y regiones que correspondan según sus requisitos de servicio, latencia, normativos y de recuperación de desastres (DR). 
+  Identifique las cuotas de servicio en todas las cuentas, regiones y zonas de disponibilidad pertinentes. Los límites se determinan por cuenta y región. Estos valores deben compararse para detectar diferencias. 

 **Pasos para la implementación** 
+  Revise los valores de Service Quotas que podrían haber superado el nivel de riesgo de uso. AWS Trusted Advisor proporciona alertas si superan los umbrales del 80 % y el 90 %. 
+  Revise los valores de las cuotas de servicio en cualquier región pasiva (en un diseño activo/pasivo). Verifique que la carga se ejecutará correctamente en las regiones secundarias si se produce un error en la región principal. 
+  Automatice la evaluación de si se ha producido alguna desviación de la cuota de servicio entre regiones de la misma cuenta y actúe en consecuencia para modificar los límites. 
+  Si las unidades organizativas (UO) del cliente están estructuradas de la forma admitida, las plantillas de cuotas de servicio deberán actualizarse para reflejar los cambios en las cuotas que deban aplicarse a varias regiones y cuentas. 
  +  Cree una plantilla y asocie regiones al cambio de cuota. 
  +  Revise todas las plantillas de cuota de servicio existentes por si fuera necesario realizar algún cambio (región, límites y cuentas). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL01-BP01 Conocimiento de las cuotas y restricciones del servicio](rel_manage_service_limits_aware_quotas_and_constraints.md) 
+  [REL01-BP03 Adaptar las cuotas de servicio fijas y las restricciones a través de la arquitectura](rel_manage_service_limits_aware_fixed_limits.md) 
+  [REL01-BP04 Supervisar y administrar cuotas](rel_manage_service_limits_monitor_manage_limits.md) 
+  [REL01-BP05 Automatizar la administración de cuotas](rel_manage_service_limits_automated_monitor_limits.md) 
+  [REL01-BP06 Garantizar que exista una diferencia suficiente entre las cuotas actuales y el uso máximo para permitir la conmutación por error](rel_manage_service_limits_suff_buffer_limits.md) 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 
+  [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md) 
+  [REL12-BP05 Probar la resiliencia mediante la ingeniería del caos](rel_testing_resiliency_failure_injection_resiliency.md) 

 **Documentos relacionados:** 
+ [ Pilar de fiabilidad de AWS Well-Architected Framework: disponibilidad ](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/availability.html)
+  [AWS Service Quotas (denominados anteriormente límites de servicio)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [Comprobaciones de prácticas recomendadas de AWS Trusted Advisor (consulte la sección Límites de servicio)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Limit Monitor en AWS Answers](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Límites de servicio de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [¿Qué es Service Quotas?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [ Cómo solicitar un aumento de cuota ](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html)
+ [ Puntos de conexión y cuotas de servicio ](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)
+  [Guía del usuario de Service Quotas](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [Supervisor de cuotas para AWS](https://aws.amazon.com/solutions/implementations/quota-monitor/)
+ [Límites de aislamiento de errores de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/abstract-and-introduction.html)
+ [ Disponibilidad con redundancia ](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/availability-with-redundancy.html)
+ [AWS para datos ](https://aws.amazon.com/data/)
+ [ ¿Qué es la integración continua? ](https://aws.amazon.com/devops/continuous-integration/)
+ [ ¿Qué es la entrega continua? ](https://aws.amazon.com/devops/continuous-delivery/)
+ [Socio de APN: socios que pueden ayudar con la administración de la configuración](https://partners.amazonaws.com/search/partners?keyword=Configuration+Management&ref=wellarchitected)
+ [ Managing the account lifecycle in account-per-tenant SaaS environments on AWS](https://aws.amazon.com/blogs/mt/managing-the-account-lifecycle-in-account-per-tenant-saas-environments-on-aws/)(Administración del ciclo de vida de las cuentas en entornos SaaS de cuenta por inquilino en AWS)
+ [ Managing and monitoring API throttling in your workloads ](https://aws.amazon.com/blogs/mt/managing-monitoring-api-throttling-in-workloads/)(Administrar y supervisar la limitación de las API en sus cargas de trabajo)
+ [ View AWS Trusted Advisor recommendations at scale with AWS Organizations](https://aws.amazon.com/blogs/mt/organizational-view-for-trusted-advisor/)(Ver recomendaciones de AWS Trusted Advisor a escala con AWS Organizations)
+ [ Automating Service Limit Increases and Enterprise Support with AWS Control Tower](https://aws.amazon.com/blogs/mt/automating-service-limit-increases-enterprise-support-aws-control-tower/)(Automatización de los aumentos del límite de servicio y asistencia a empresas con AWS Control Tower)

 **Vídeos relacionados: ** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 
+ [ View and Manage Quotas for AWS Services Using Service Quotas ](https://www.youtube.com/watch?v=ZTwfIIf35Wc)(Ver y administrar cuotas para AWS Services con Service Quotas)
+ [AWS IAM Quotas Demo ](https://www.youtube.com/watch?v=srJ4jr6M9YQ)(Demostración de las cuotas de AWS IAM)

 **Servicios relacionados:** 
+ [ Amazon CodeGuru Reviewer ](https://aws.amazon.com/codeguru/)
+ [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)
+ [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+ [ Amazon EventBridge ](https://aws.amazon.com/eventbridge/)
+ [ Amazon DevOps Guru ](https://aws.amazon.com/devops-guru/)
+ [AWS Config](https://aws.amazon.com/config/)
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+ [AWS CDK ](https://aws.amazon.com/cdk/)
+ [AWS Systems Manager](https://aws.amazon.com/systems-manager/)
+ [AWS Marketplace](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB)

# REL01-BP03 Adaptar las cuotas de servicio fijas y las restricciones a través de la arquitectura
<a name="rel_manage_service_limits_aware_fixed_limits"></a>

Sea consciente de las cuotas de servicio inalterables, las restricciones de servicio y los límites de recursos físicos. Diseñe arquitecturas para aplicaciones y servicios que eviten que estos límites afecten a la fiabilidad.

Algunos ejemplos son el ancho de banda de la red, el tamaño de la carga útil de la invocación de funciones sin servidor, la tasa de ráfagas de aceleración para una puerta de enlace de API y las conexiones simultáneas de usuarios a una base de datos.

 **Resultado deseado:** la aplicación o servicio funciona como se espera en condiciones normales y de alto tráfico. Se han diseñado para funcionar dentro de las limitaciones fijadas para ese recurso o cuotas de servicio. 

 **Antipatrones usuales:** 
+ Elegir un diseño que utilice un recurso de un servicio, sin saber que existen restricciones de diseño que provocarán que este diseño producirá un error en el escalado.
+ Realizar una evaluación comparativa que no es realista y que alcanzará las cuotas fijas del servicio durante la evaluación. Por ejemplo, ejecutar pruebas con un límite de ráfagas, pero durante un período prolongado.
+  Elegir un diseño que no pueda escalarse ni modificarse si se van a superar las cuotas de servicio fijas. Por ejemplo, un tamaño de carga útil SQS de 256 KB. 
+  No diseña ni implementa la observabilidad para supervisar y avisar sobre umbrales de cuotas de servicio que podrían estar en riesgo durante eventos de alto tráfico. 

 **Beneficios de establecer esta práctica recomendada:** verificación de que la aplicación funcionará bajo todos los niveles de carga de servicios previstos sin interrupciones ni degradaciones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 A diferencia de las cuotas de servicio blandas o los recursos que pueden sustituirse por unidades de mayor capacidad, las cuotas fijas de los servicios de AWS no pueden modificarse. Esto significa que todos estos tipos de servicios de AWS deben evaluarse para detectar posibles límites estrictos de capacidad cuando se utilizan en el diseño de una aplicación. 

 Los límites estrictos se muestran en la consola de Service Quotas. Si las columnas muestran `AJUSTABLE = No`, el servicio tiene un límite estricto. Los límites estrictos también se muestran en algunas páginas de configuración de recursos. Por ejemplo, Lambda tiene límites estrictos específicos que no se pueden ajustar. 

 Por ejemplo, cuando se diseña una aplicación python para que se ejecute en una función Lambda, es necesario evaluar la aplicación para determinar si existe alguna posibilidad de que Lambda se ejecute durante más de 15 minutos. Si el código puede ejecutarse durante más tiempo de este límite de cuota de servicio, deben considerarse tecnologías o diseños alternativos. Si se alcanza el límite después del despliegue en producción, la aplicación sufrirá degradación e interrupciones hasta que pueda remediarse. A diferencia de las cuotas flexibles, no existe ningún método para cambiar estos límites, ni siquiera en caso de eventos de emergencia de gravedad 1. 

 Una vez que la aplicación se ha desplegado en un entorno de pruebas, se deben utilizar estrategias para averiguar si se puede alcanzar algún límite estricto. Las pruebas de estrés, las pruebas de carga y las pruebas de caos deben formar parte del plan de pruebas de introducción. 

 **Pasos para la implementación** 
+  Revise la lista completa de servicios de AWS que podrían utilizarse en la fase de diseño de la aplicación. 
+  Revise los límites de cuotas flexibles y estrictos para todos estos servicios. En la consola de Service Quotas no se muestran todos los límites. Algunos servicios [describen estos límites en ubicaciones alternativas](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html). 
+  Al diseñar su aplicación, revise los impulsores empresariales y tecnológicos de la carga de trabajo, como los resultados empresariales, el caso de uso, los sistemas dependientes, los objetivos de disponibilidad y los objetos de recuperación de desastres. Permita que sus impulsores empresariales y tecnológicos guíen el proceso para identificar el sistema distribuido adecuado para su carga de trabajo. 
+  Analice la carga de servicio en todas las regiones y cuentas. Muchos límites estrictos se basan en la región para los servicios. Sin embargo, algunos límites se basan en las cuentas. 
+  Analice el uso de recursos de las arquitecturas de resistencia durante un error zonal y un error regional. En la progresión de los diseños multirregión que utilizan enfoques activo/activo, activo/pasivo: en caliente, activo/pasivo: en frío y activo/pasivo: luz piloto, estos casos de error provocarán un mayor uso. Esto crea un caso de uso potencial para alcanzar límites estrictos. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL01-BP01 Conocimiento de las cuotas y restricciones del servicio](rel_manage_service_limits_aware_quotas_and_constraints.md) 
+  [REL01-BP02 Administrar cuotas de servicio en cuentas y regiones](rel_manage_service_limits_limits_considered.md) 
+  [REL01-BP04 Supervisar y administrar cuotas](rel_manage_service_limits_monitor_manage_limits.md) 
+  [REL01-BP05 Automatizar la administración de cuotas](rel_manage_service_limits_automated_monitor_limits.md) 
+  [REL01-BP06 Garantizar que exista una diferencia suficiente entre las cuotas actuales y el uso máximo para permitir la conmutación por error](rel_manage_service_limits_suff_buffer_limits.md) 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 
+  [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md) 
+  [REL12-BP05 Probar la resiliencia mediante la ingeniería del caos](rel_testing_resiliency_failure_injection_resiliency.md) 

 **Documentos relacionados:** 
+ [ Pilar de fiabilidad de AWS Well-Architected Framework: disponibilidad ](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/availability.html)
+  [AWS Service Quotas (denominados anteriormente límites de servicio)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [Comprobaciones de prácticas recomendadas de AWS Trusted Advisor (consulte la sección Límites de servicio)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Limit Monitor en AWS Answers](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Límites de servicio de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [¿Qué es Service Quotas?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [ Cómo solicitar un aumento de cuota ](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html)
+ [ Puntos de conexión y cuotas de servicio ](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)
+  [Guía del usuario de Service Quotas](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [Supervisor de cuotas para AWS](https://aws.amazon.com/solutions/implementations/quota-monitor/)
+ [Límites de aislamiento de errores de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/abstract-and-introduction.html)
+ [ Disponibilidad con redundancia ](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/availability-with-redundancy.html)
+ [AWS para datos ](https://aws.amazon.com/data/)
+ [ ¿Qué es la integración continua? ](https://aws.amazon.com/devops/continuous-integration/)
+ [ ¿Qué es la entrega continua? ](https://aws.amazon.com/devops/continuous-delivery/)
+ [Socio de APN: socios que pueden ayudar con la administración de la configuración](https://partners.amazonaws.com/search/partners?keyword=Configuration+Management&ref=wellarchitected)
+ [ Managing the account lifecycle in account-per-tenant SaaS environments on AWS](https://aws.amazon.com/blogs/mt/managing-the-account-lifecycle-in-account-per-tenant-saas-environments-on-aws/)(Administración del ciclo de vida de las cuentas en entornos SaaS de cuenta por inquilino en AWS)
+ [ Managing and monitoring API throttling in your workloads ](https://aws.amazon.com/blogs/mt/managing-monitoring-api-throttling-in-workloads/)(Administrar y supervisar la limitación de las API en sus cargas de trabajo)
+ [ View AWS Trusted Advisor recommendations at scale with AWS Organizations](https://aws.amazon.com/blogs/mt/organizational-view-for-trusted-advisor/)(Ver recomendaciones de AWS Trusted Advisor a escala con AWS Organizations)
+ [ Automating Service Limit Increases and Enterprise Support with AWS Control Tower](https://aws.amazon.com/blogs/mt/automating-service-limit-increases-enterprise-support-aws-control-tower/)(Automatización de los aumentos del límite de servicio y asistencia a empresas con AWS Control Tower)
+ [ Acciones, recursos y claves de condición de los servicios de Service Quotas ](https://docs.aws.amazon.com/service-authorization/latest/reference/list_servicequotas.html)

 **Vídeos relacionados: ** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 
+ [ View and Manage Quotas for AWS Services Using Service Quotas ](https://www.youtube.com/watch?v=ZTwfIIf35Wc)(Ver y administrar cuotas para AWS Services con Service Quotas)
+ [AWS IAM Quotas Demo ](https://www.youtube.com/watch?v=srJ4jr6M9YQ)(Demostración de las cuotas de AWS IAM)
+ [AWS re:Invent 2018: Close Loops and Opening Minds: How to Take Control of Systems, Big and Small](https://www.youtube.com/watch?v=O8xLxNje30M) (AWS re:Invent 2018: Cerrar los bucles y abrir las mentes: cómo asumir el control de los sistemas grandes y pequeños)

 **Herramientas relacionadas:** 
+ [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)
+ [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+ [ Amazon EventBridge ](https://aws.amazon.com/eventbridge/)
+ [ Amazon DevOps Guru ](https://aws.amazon.com/devops-guru/)
+ [AWS Config](https://aws.amazon.com/config/)
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+ [AWS CDK ](https://aws.amazon.com/cdk/)
+ [AWS Systems Manager](https://aws.amazon.com/systems-manager/)
+ [AWS Marketplace](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB)

# REL01-BP04 Supervisar y administrar cuotas
<a name="rel_manage_service_limits_monitor_manage_limits"></a>

 Evalúe el uso potencial y aumente las cuotas pertinentemente, lo que permitirá un crecimiento planificado del uso. 

 **Resultado deseado:** se despliegan sistemas activos y automatizados que administran y supervisan. Estas soluciones operativas garantizan que los umbrales de uso de las cuotas están a punto de alcanzarse. Esto se solucionaría de forma proactiva solicitando cambios en las cuotas. 

 **Antipatrones usuales:** 
+ No se configura la supervisión para comprobar el umbral de cuota de servicio.
+ No se configura la supervisión de los límites estrictos, aunque esos valores no puedan modificarse.
+  Se supone que el tiempo necesario para solicitar y asegurar un cambio de cuota flexible es inmediato o un de corta duración. 
+  Se configuran alarmas de aproximación para cuotas de servicio sin contar con ningún proceso para responder a una alerta. 
+  Solo se configuran alarmas para servicios compatibles con AWS Service Quotas y no se supervisan otros servicios de AWS. 
+  No se considera la administración de cuotas para diseños de resiliencia multirregional, como los enfoques activo/activo, activo/pasivo: en caliente, activo/pasivo: en frío y activo/pasivo: luz piloto. 
+  No se evalúan las diferencias de cuota entre regiones. 
+  No se evalúan las necesidades de cada región para una solicitud específica de aumento de cuota. 
+  No se aprovechan las [plantillas de administración de cuotas multirregión](https://docs.aws.amazon.com/servicequotas/latest/userguide/organization-templates.html). 

 **Beneficios de establecer esta práctica recomendada:** el seguimiento automático de las cuotas de servicio de AWSService Quotas y la supervisión del uso en comparación con dichas cuotas le permitirá comprobar cuándo se acerca al límite de una cuota. También puede utilizar estos datos de supervisión para ayudar a limitar cualquier degradación debida al agotamiento de cuotas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Para los servicios admitidos, puede supervisar las cuotas por medio de la configuración de varios servicios diferentes que pueden evaluar y luego enviar alertas o alarmas. Esto puede ayudar a supervisar el uso y alertarle de que se aproxima a las cuotas. Estas alarmas se pueden desencadenar con AWS Config, las funciones de Lambda, Amazon CloudWatch o con AWS Trusted Advisor. También puede usar filtros de métricas en CloudWatch Logs para buscar y extraer patrones en registros para determinar si el uso se aproxima a los umbrales de las cuotas. 

 **Pasos para la implementación** 

 Para la supervisión: 
+  Capture el consumo de recursos actual (por ejemplo, buckets o instancias). Utilice operaciones de API de servicio, como la API `DescribeInstances` de Amazon EC2 para recopilar el consumo actual de recursos. 
+  Capture las cuotas actuales que son esenciales y aplicables a los servicios que utiliza: 
  +  AWS Service Quotas 
  +  AWS Trusted Advisor 
  +  Documentación de AWS 
  +  Páginas específicas de los servicios de AWS 
  +  AWS Command Line Interface (AWS CLI) 
  +  AWS Cloud Development Kit (AWS CDK) 
+  Utilice AWS Service Quotas, un servicio de AWS que le ayuda a administrar sus cuotas para más de 250 servicios de AWS desde una ubicación. 
+  Utilice los límites de servicio de Trusted Advisor para supervisar sus límites de servicio actuales en diversos umbrales. 
+  Utilice el historial de cuotas de servicio (consola o AWS CLI) para comprobar los aumentos regionales. 
+  Compare los cambios de cuota de servicio en cada región y cada cuenta para crear equivalencias, si es necesario. 

 Para la administración: 
+  Automatizada: configure una regla personalizada de AWS Config para analizar las cuotas de servicio en todas las regiones y comparar las diferencias. 
+  Automatizada: configure una función programada de Lambda para analizar las cuotas de servicio en todas las regiones y comparar las diferencias. 
+  Manual: analice la cuota de servicios a través de la AWS CLI, la API o la consola de AWS para analizar las cuotas de servicio en todas las regiones y comparar las diferencias. Informe de las diferencias. 
+  Si se identifican diferencias en las cuotas entre las regiones, solicite un cambio de cuota, si es necesario. 
+  Revise el resultado de todas las solicitudes. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL01-BP01 Conocimiento de las cuotas y restricciones del servicio](rel_manage_service_limits_aware_quotas_and_constraints.md) 
+  [REL01-BP02 Administrar cuotas de servicio en cuentas y regiones](rel_manage_service_limits_limits_considered.md) 
+  [REL01-BP03 Adaptar las cuotas de servicio fijas y las restricciones a través de la arquitectura](rel_manage_service_limits_aware_fixed_limits.md) 
+  [REL01-BP05 Automatizar la administración de cuotas](rel_manage_service_limits_automated_monitor_limits.md) 
+  [REL01-BP06 Garantizar que exista una diferencia suficiente entre las cuotas actuales y el uso máximo para permitir la conmutación por error](rel_manage_service_limits_suff_buffer_limits.md) 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 
+  [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md) 
+  [REL12-BP05 Probar la resiliencia mediante la ingeniería del caos](rel_testing_resiliency_failure_injection_resiliency.md) 

 **Documentos relacionados:** 
+ [ Pilar de fiabilidad de AWS Well-Architected Framework: disponibilidad ](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/availability.html)
+  [AWS Service Quotas (denominados anteriormente límites de servicio)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [Comprobaciones de prácticas recomendadas de AWS Trusted Advisor (consulte la sección Límites de servicio)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Limit Monitor en AWS Answers](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Límites de servicio de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [¿Qué es Service Quotas?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [ Cómo solicitar un aumento de cuota ](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html)
+ [ Puntos de conexión y cuotas de servicio ](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)
+  [Guía del usuario de Service Quotas](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [Supervisor de cuotas para AWS](https://aws.amazon.com/solutions/implementations/quota-monitor/)
+ [Límites de aislamiento de errores de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/abstract-and-introduction.html)
+ [ Disponibilidad con redundancia ](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/availability-with-redundancy.html)
+ [AWS para datos ](https://aws.amazon.com/data/)
+ [ ¿Qué es la integración continua? ](https://aws.amazon.com/devops/continuous-integration/)
+ [ ¿Qué es la entrega continua? ](https://aws.amazon.com/devops/continuous-delivery/)
+ [Socio de APN: socios que pueden ayudar con la administración de la configuración](https://partners.amazonaws.com/search/partners?keyword=Configuration+Management&ref=wellarchitected)
+ [ Managing the account lifecycle in account-per-tenant SaaS environments on AWS](https://aws.amazon.com/blogs/mt/managing-the-account-lifecycle-in-account-per-tenant-saas-environments-on-aws/)(Administración del ciclo de vida de las cuentas en entornos SaaS de cuenta por inquilino en AWS)
+ [ Managing and monitoring API throttling in your workloads ](https://aws.amazon.com/blogs/mt/managing-monitoring-api-throttling-in-workloads/)(Administrar y supervisar la limitación de las API en sus cargas de trabajo)
+ [ View AWS Trusted Advisor recommendations at scale with AWS Organizations](https://aws.amazon.com/blogs/mt/organizational-view-for-trusted-advisor/)(Ver recomendaciones de AWS Trusted Advisor a escala con AWS Organizations)
+ [ Automating Service Limit Increases and Enterprise Support with AWS Control Tower](https://aws.amazon.com/blogs/mt/automating-service-limit-increases-enterprise-support-aws-control-tower/)(Automatización de los aumentos del límite de servicio y asistencia a empresas con AWS Control Tower)
+ [ Acciones, recursos y claves de condición de los servicios de Service Quotas ](https://docs.aws.amazon.com/service-authorization/latest/reference/list_servicequotas.html)

 **Vídeos relacionados: ** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 
+ [ View and Manage Quotas for AWS Services Using Service Quotas ](https://www.youtube.com/watch?v=ZTwfIIf35Wc)(Ver y administrar cuotas para AWS Services con Service Quotas)
+ [AWS IAM Quotas Demo ](https://www.youtube.com/watch?v=srJ4jr6M9YQ)(Demostración de las cuotas de AWS IAM)
+ [AWS re:Invent 2018: Close Loops and Opening Minds: How to Take Control of Systems, Big and Small](https://www.youtube.com/watch?v=O8xLxNje30M) (AWS re:Invent 2018: Cerrar los bucles y abrir las mentes: cómo asumir el control de los sistemas grandes y pequeños)

 **Herramientas relacionadas:** 
+ [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)
+ [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+ [ Amazon EventBridge ](https://aws.amazon.com/eventbridge/)
+ [ Amazon DevOps Guru ](https://aws.amazon.com/devops-guru/)
+ [AWS Config](https://aws.amazon.com/config/)
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+ [AWS CDK ](https://aws.amazon.com/cdk/)
+ [AWS Systems Manager](https://aws.amazon.com/systems-manager/)
+ [AWS Marketplace](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB)

# REL01-BP05 Automatizar la administración de cuotas
<a name="rel_manage_service_limits_automated_monitor_limits"></a>

 Implemente herramientas para alertarle cuando se acerque a los límites. Puede automatizar las solicitudes de incremento de cuotas utilizando las API de AWS Service Quotas y automatizar las solicitudes de incremento de cuotas. 

 Si integra su base de datos de administración de configuraciones (CMDB) o su sistema de emisión de tiques con Service Quotas, puede automatizar el seguimiento de las solicitudes de aumento de cuotas y las cuotas actuales. Además del SDK de AWS, Service Quotas ofrece automatización utilizando AWS Command Line Interface (AWS CLI). 

 **Patrones de uso no recomendados comunes:** 
+  Realizar el seguimiento de las cuotas y el uso en hojas de cálculo. 
+  Ejecutar informes de uso cada día, semana o mes y después comparar el uso con las cuotas. 

 **Beneficios de establecer esta práctica recomendada:** El control automático de las cuotas de servicio de AWS y la supervisión del uso en comparación con dichas cuotas le permite comprobar cuándo se acerca a una cuota. Puede configurar la automatización para que le ayude a solicitar un aumento de cuota cuando resulte necesario. Es posible que quiera plantearse la reducción de algunas cuotas cuando su uso adopte una tendencia opuesta para materializar los beneficios de un menor riesgo (en caso de que sus credenciales se hayan visto comprometidas) y el ahorro de costes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Configure una supervisión automatizada. Implemente herramientas con SDK para alertarle cuando se acerque a los límites. 
  +  Utilice Service Quotas y potencie el servicio con una solución de supervisión de cuotas automatizada, como AWS Limit Monitor o una oferta de AWS Marketplace. 
    +  [¿Qué es Service Quotas?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
    +  [Supervisor de cuotas en AWS: solución de AWS](https://aws.amazon.com/answers/account-management/limit-monitor/) 
  +  Configure respuestas desencadenadas en función de umbrales de cuotas con las API de Amazon SNS y AWS Service Quotas. 
  +  Automatización de pruebas. 
    +  Configure umbrales de límites. 
    +  Integre con eventos de cambio de AWS Config, canalizaciones de despliegue, Amazon EventBridge o terceros. 
    +  Defina de forma artificial umbrales de cuota bajos para probar las respuestas. 
    +  Configure desencadenadores para realizar acciones pertinentes en las notificaciones y póngase en contacto con AWS Support cuando sea necesario. 
    +  Desencadene manualmente eventos de cambio. 
    +  Ejecute un día de juego para probar el proceso de cambio de aumento de cuotas. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudar con la administración de la configuración](https://aws.amazon.com/partners/find/results/?keyword=Configuration+Management) 
+  [AWS Marketplace: productos de CMDB que ayudan a hacer un seguimiento de los límites](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB) 
+  [AWS Service Quotas (denominadas anteriormente límites de servicio)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [Comprobaciones de prácticas recomendadas de AWS Trusted Advisor (consulte la sección Límites de servicio)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [Supervisor de cuotas en AWS: solución de AWS](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Límites de servicio de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [¿Qué es Service Quotas?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 

 **Vídeos relacionados:** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 

# REL01-BP06 Garantizar que exista una diferencia suficiente entre las cuotas actuales y el uso máximo para permitir la conmutación por error
<a name="rel_manage_service_limits_suff_buffer_limits"></a>

Cuando un recurso falla o es inaccesible, ese recurso puede seguir computando para una cuota dada hasta que se finalice correctamente. Compruebe que sus cuotas cubran el solapamiento de los recursos averiados o inaccesibles y sus sustitutos. A la hora de calcular esta brecha debe tener en cuenta casos de uso como errores de red, errores de la zona de disponibilidad o errores regionales.

 **Resultado deseado:** los errores pequeños o grandes en los recursos o en la accesibilidad de los recursos pueden cubrirse dentro de los umbrales de servicio actuales. En la planificación de recursos se tienen en cuenta los errores de zona, de red o, incluso, regionales. 

 **Antipatrones usuales:** 
+  Se establecen cuotas de servicio sobre la base de las necesidades actuales sin tener en cuenta los casos de conmutación por error. 
+  No se tienen en cuenta los principios de estabilidad estática al calcular la cuota máxima de un servicio. 
+  No se tiene en cuenta el potencial de recursos inaccesibles al calcular la cuota total necesaria para cada región. 
+  No se tienen en cuenta los límites de aislamiento de errores del servicio de AWS para algunos servicios y sus posibles patrones de uso anómalos. 

 **Beneficios de establecer esta práctica recomendada:** cuando un evento de interrupción del servicio afecta a la disponibilidad de la aplicación, la nube le permite implementar estrategias para mitigar o recuperarse de estos eventos. Estas estrategias suelen incluir la creación de recursos adicionales para sustituir aquellos que han experimentado algún error o a los que no se puede acceder. La estrategia de cuotas se adaptaría a estas condiciones de conmutación por error y no introduciría degradaciones adicionales debidas al agotamiento de los límites de servicio. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Al evaluar los límites de cuota, considere los casos de conmutación por error que podrían producirse debido a alguna degradación. Deben tenerse en cuenta los siguientes tipos de casos de conmutación por error: 
+  Una VPC interrumpida o inaccesible. 
+  Una subred inaccesible. 
+  Una zona de disponibilidad que se ha degradado lo suficiente como para afectar a la accesibilidad de muchos recursos. 
+  Varias rutas de red o puntos de entrada y salida bloqueados o modificados. 
+  Una región que se ha degradado lo suficiente como para afectar a la accesibilidad de muchos recursos. 
+  Hay numerosos recursos, pero no todos se ven afectados por un error en una región o zona de disponibilidad. 

 Los errores como los de la lista anterior podrían ser el detonante del inicio de un evento de conmutación por error. La decisión de conmutar por error es única para cada situación y cliente, ya que el efecto empresarial puede variar drásticamente. Sin embargo, cuando operacionalmente se decide conmutar por error aplicaciones o servicios, la planificación de la capacidad de los recursos en la ubicación de la conmutación por error y sus cuotas correspondientes deben abordarse antes del evento. 

 Revise las cuotas de servicio para cada servicio teniendo en cuenta los picos más altos de lo normal que puedan producirse. Estos picos pueden estar relacionados con recursos a los que no se puede acceder debido a la red o a los permisos, pero que siguen activos. Los recursos activos no finalizados seguirán contando para el límite de cuota de servicio. 

 **Pasos para la implementación** 
+  Asegúrese de que haya una diferencia suficiente entre la cuota de servicio y el uso máximo para permitir la conmutación por error o una pérdida de accesibilidad. 
+  Determine sus cuotas de servicio, teniendo en cuenta sus patrones de despliegue, los requisitos de disponibilidad y el crecimiento del consumo. 
+  Solicite aumentos de la cuota si fuera necesario. Planifique el tiempo necesario para que se cumplan las solicitudes de aumentos de cuotas. 
+  Determine sus requisitos de fiabilidad (también conocidos como «número de nueves»). 
+  Establezca sus escenarios de error (por ejemplo, la pérdida de componentes, una zona de disponibilidad o una región). 
+  Establezca su metodología de despliegue (por ejemplo, valor controlado, azul-verde, rojo-negro o continua). 
+  Incluya un búfer adecuado (por ejemplo, del 15 %) en el límite actual. 
+  Incluya cálculos de estabilidad estática (zonal y regional) cuando proceda. 
+  Planifique el crecimiento de consumo (por ejemplo, supervise sus tendencias de consumo). 
+  Considere la repercusión de la estabilidad estática para las cargas de trabajo más fundamentales. Evalúe los recursos conforme a un sistema estáticamente estable en todas las regiones y zonas de disponibilidad. 
+  Considere el uso de reservas de capacidad bajo demanda para programar la capacidad antes de que se produzca una conmutación por error. Puede ser una estrategia útil durante las programaciones comerciales más cruciales para reducir los riesgos potenciales de obtener la cantidad y el tipo correctos de recursos durante la conmutación por error. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL01-BP01 Conocimiento de las cuotas y restricciones del servicio](rel_manage_service_limits_aware_quotas_and_constraints.md) 
+  [REL01-BP02 Administrar cuotas de servicio en cuentas y regiones](rel_manage_service_limits_limits_considered.md) 
+  [REL01-BP03 Adaptar las cuotas de servicio fijas y las restricciones a través de la arquitectura](rel_manage_service_limits_aware_fixed_limits.md) 
+  [REL01-BP04 Supervisar y administrar cuotas](rel_manage_service_limits_monitor_manage_limits.md) 
+  [REL01-BP05 Automatizar la administración de cuotas](rel_manage_service_limits_automated_monitor_limits.md) 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 
+  [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md) 
+  [REL12-BP05 Probar la resiliencia mediante la ingeniería del caos](rel_testing_resiliency_failure_injection_resiliency.md) 

 **Documentos relacionados:** 
+ [ Pilar de fiabilidad de AWS Well-Architected Framework: disponibilidad ](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/availability.html)
+  [AWS Service Quotas (denominados anteriormente límites de servicio)](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) 
+  [Comprobaciones de prácticas recomendadas de AWS Trusted Advisor (consulte la sección Límites de servicio)](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/best-practice-checklist/) 
+  [AWS Limit Monitor en AWS Answers](https://aws.amazon.com/answers/account-management/limit-monitor/) 
+  [Límites de servicio de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-resource-limits.html) 
+  [¿Qué es Service Quotas?](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [ Cómo solicitar un aumento de cuota ](https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html)
+ [ Puntos de conexión y cuotas de servicio ](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html)
+  [Guía del usuario de Service Quotas](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) 
+ [Supervisor de cuotas para AWS](https://aws.amazon.com/solutions/implementations/quota-monitor/)
+ [Límites de aislamiento de errores de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/abstract-and-introduction.html)
+ [ Disponibilidad con redundancia ](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/availability-with-redundancy.html)
+ [AWS para datos ](https://aws.amazon.com/data/)
+ [ ¿Qué es la integración continua? ](https://aws.amazon.com/devops/continuous-integration/)
+ [ ¿Qué es la entrega continua? ](https://aws.amazon.com/devops/continuous-delivery/)
+ [Socio de APN: socios que pueden ayudar con la administración de la configuración](https://partners.amazonaws.com/search/partners?keyword=Configuration+Management&ref=wellarchitected)
+ [ Managing the account lifecycle in account-per-tenant SaaS environments on AWS](https://aws.amazon.com/blogs/mt/managing-the-account-lifecycle-in-account-per-tenant-saas-environments-on-aws/)(Administración del ciclo de vida de las cuentas en entornos SaaS de cuenta por inquilino en AWS)
+ [ Managing and monitoring API throttling in your workloads ](https://aws.amazon.com/blogs/mt/managing-monitoring-api-throttling-in-workloads/)(Administrar y supervisar la limitación de las API en sus cargas de trabajo)
+ [ View AWS Trusted Advisor recommendations at scale with AWS Organizations](https://aws.amazon.com/blogs/mt/organizational-view-for-trusted-advisor/)(Ver recomendaciones de AWS Trusted Advisor a escala con AWS Organizations)
+ [ Automating Service Limit Increases and Enterprise Support with AWS Control Tower](https://aws.amazon.com/blogs/mt/automating-service-limit-increases-enterprise-support-aws-control-tower/)(Automatización de los aumentos del límite de servicio y asistencia a empresas con AWS Control Tower)
+ [ Acciones, recursos y claves de condición de los servicios de Service Quotas ](https://docs.aws.amazon.com/service-authorization/latest/reference/list_servicequotas.html)

 **Vídeos relacionados: ** 
+  [AWS Live re:Inforce 2019 - Service Quotas](https://youtu.be/O9R5dWgtrVo) 
+ [ View and Manage Quotas for AWS Services Using Service Quotas ](https://www.youtube.com/watch?v=ZTwfIIf35Wc)(Ver y administrar cuotas para AWS Services con Service Quotas)
+ [AWS IAM Quotas Demo ](https://www.youtube.com/watch?v=srJ4jr6M9YQ)(Demostración de las cuotas de AWS IAM)
+ [AWS re:Invent 2018: Close Loops and Opening Minds: How to Take Control of Systems, Big and Small](https://www.youtube.com/watch?v=O8xLxNje30M) (AWS re:Invent 2018: Cerrar los bucles y abrir las mentes: cómo asumir el control de los sistemas grandes y pequeños)

 **Herramientas relacionadas:** 
+ [AWS CodeDeploy](https://aws.amazon.com/codedeploy/)
+ [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+ [ Amazon EventBridge ](https://aws.amazon.com/eventbridge/)
+ [ Amazon DevOps Guru ](https://aws.amazon.com/devops-guru/)
+ [AWS Config](https://aws.amazon.com/config/)
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+ [AWS CDK ](https://aws.amazon.com/cdk/)
+ [AWS Systems Manager](https://aws.amazon.com/systems-manager/)
+ [AWS Marketplace](https://aws.amazon.com/marketplace/search/results?searchTerms=CMDB)

# REL 2 ¿Cómo planifica la topología de la red?
<a name="rel-02"></a>

Suele haber cargas de trabajo en distintos entornos. Entre estos se incluyen los entornos de la nube (tanto públicamente accesibles como privados), y posiblemente la infraestructura del centro de datos existente. Los planes deben incluir consideraciones, como la conectividad dentro de los sistemas y entre ellos, la administración de las direcciones IP públicas, la administración de las direcciones IP privadas y la resolución de nombres de dominio.

**Topics**
+ [REL02-BP01 Usar conectividad de red de alta disponibilidad para los puntos de conexión públicos de la carga de trabajo](rel_planning_network_topology_ha_conn_users.md)
+ [REL02-BP02 Aprovisionar conectividad redundante entre las redes privadas en la nube y los entornos locales](rel_planning_network_topology_ha_conn_private_networks.md)
+ [REL02-BP03 Garantizar que la asignación de subredes IP tenga en cuenta la expansión y la disponibilidad](rel_planning_network_topology_ip_subnet_allocation.md)
+ [REL02-BP04 Preferir topologías radiales (hub-and-spoke) a una conexión en malla de varios a varios](rel_planning_network_topology_prefer_hub_and_spoke.md)
+ [REL02-BP05 Emplear intervalos no superpuestos de direcciones IP privadas en todos los espacios de direcciones privadas que estén conectados](rel_planning_network_topology_non_overlap_ip.md)

# REL02-BP01 Usar conectividad de red de alta disponibilidad para los puntos de conexión públicos de la carga de trabajo
<a name="rel_planning_network_topology_ha_conn_users"></a>

 La creación de una conectividad de red de alta disponibilidad para los puntos de conexión públicos de las cargas de trabajo puede ayudarle a reducir el tiempo de inactividad debido a la pérdida de conectividad y mejorar la disponibilidad y el SLA de su carga de trabajo. Para conseguirlo, use DNS, redes de entrega de contenido (CDN), puertas de enlace de API, un equilibrador de carga o proxies inversos altamente disponibles. 

 **Resultado deseado:** es fundamental planificar, construir y poner en funcionamiento una conectividad de red de alta disponibilidad para sus puntos de conexión públicos. Si la carga de trabajo resulta inaccesible debido a una pérdida de conectividad, incluso si la carga de trabajo está en funcionamiento y disponible, los clientes verán su sistema como caído. Al combinar una conectividad de red de alta disponibilidad y resistente para los puntos de conexión públicos de la carga de trabajo, junto con una arquitectura resistente para la propia carga de trabajo, puede proporcionar la mejor disponibilidad y nivel de servicio posibles a sus clientes. 

 AWS Global Accelerator, Amazon CloudFront, Amazon API Gateway, las URL de función de AWS Lambda, las API de AWS AppSync y Elastic Load Balancing (ELB) ofrecen puntos de conexión públicos de alta disponibilidad. Amazon Route 53 proporciona un servicio DNS de alta disponibilidad para la resolución de nombres de dominio con el fin de verificar que las direcciones de los puntos de conexión públicos se puedan resolver. 

 También puede evaluar las aplicaciones de software de AWS Marketplace que proporcionen equilibrio de carga o uso de proxies. 

 **Antipatrones usuales:** 
+ Diseñar una carga de trabajo de alta disponibilidad sin planificar el DNS y la conectividad de red para alta disponibilidad.
+  Usar direcciones de internet públicas en instancias o contenedores individuales y administrar la conectividad a ellas a con DNS.
+  Usar direcciones IP en lugar de nombres de dominio para localizar los servicios.
+  No hacer pruebas de escenarios en que se pierda la conectividad con sus puntos de conexión públicos. 
+  No analizar las necesidades de rendimiento de la red y los patrones de distribución. 
+  No hacer pruebas ni planificar escenarios en los que la conectividad de la red de internet a sus puntos de conexión públicos de la carga de trabajo pueda verse interrumpida. 
+  Proporcionar contenido (como páginas web, activos estáticos o archivos multimedia) a una gran área geográfica y no usar una red de entrega de contenido. 
+  No planificar en caso de que se produzcan ataques de denegación de servicio distribuido (DDoS). Los ataques DDoS corren el riesgo de cerrar el tráfico legítimo y reducir la disponibilidad para sus usuarios. 

 **Beneficios de establecer esta práctica recomendada:** se diseña una conectividad de red resistente y de alta disponibilidad que garantiza que la carga de trabajo esté accesible y disponible para los usuarios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El enrutamiento del tráfico es el núcleo de la creación de una conectividad de red de alta disponibilidad para sus puntos de conexión públicos. Para verificar que el tráfico puede llegar a los puntos de conexión, el DNS debe ser capaz de resolver los nombres de dominio en sus direcciones IP correspondientes. Utilice un [sistema de nombres de dominio (DNS)](https://aws.amazon.com/route53/what-is-dns/) escalable y de alta disponibilidad como Amazon Route 53 para administrar los registros DNS de su dominio. También puede utilizar las comprobaciones de estado proporcionadas por Amazon Route 53. Las comprobaciones de estado verifican que la aplicación sea accesible, esté disponible y funcione; se pueden configurar de manera que imiten el comportamiento de su usuario, como la solicitud de una página web o una URL concreta. En caso de error, Amazon Route 53 responde a las solicitudes de resolución de DNS y dirige el tráfico únicamente a los puntos de conexión de estado. También puede plantearse el uso de las capacidades de DNS geográfico y enrutamiento basado en la latencia que ofrece Amazon Route 53. 

 Para comprobar que la carga de trabajo en sí sea de alta disponibilidad, utilice Elastic Load Balancing (ELB). Amazon Route 53 se puede utilizar para dirigir el tráfico a ELB, que distribuye el tráfico a las instancias de computación de destino. También puede utilizar Amazon API Gateway junto con AWS Lambda para una solución sin servidor. Los clientes también pueden ejecutar cargas de trabajo en varias Regiones de AWS. Con el [patrón activo/activo multisitio](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-i-strategies-for-recovery-in-the-cloud/), la carga de trabajo puede atender tráfico de varias regiones. Con un patrón activo/pasivo multisitio, la carga de trabajo atiende tráfico desde la región activa, mientras que los datos se replican en la región secundaria y se activan en caso de error en la región principal. Las comprobaciones de estado de Route 53 se pueden utilizar para controlar la conmutación por error de DNS desde cualquier punto de conexión en una región principal y a un punto de conexión en una región secundaria, lo que verifica que la carga de trabajo esté accesible y disponible para los usuarios. 

 Amazon CloudFront proporciona una API sencilla para distribuir contenido con baja latencia y altas velocidades de transferencia de datos atendiendo las solicitudes mediante una red de ubicaciones periféricas en todo el mundo. Las redes de entrega de contenido (CDN) atienden a los clientes proporcionándoles contenido ubicado o almacenado en caché en una ubicación cercana al usuario. Esto también mejora la disponibilidad de su aplicación, ya que la carga de contenido se desplaza de sus servidores a las [ubicaciones periféricas](https://aws.amazon.com/products/networking/edge-networking/) de CloudFront. Las ubicaciones periféricas y las cachés periféricas regionales mantienen copias en caché de su contenido cerca de sus usuarios, lo que permite una recuperación rápida y aumenta la accesibilidad y la disponibilidad de su carga de trabajo. 

 Para cargas de trabajo con usuarios distribuidos geográficamente, AWS Global Accelerator ayuda a mejorar la disponibilidad y el rendimiento de las aplicaciones. AWS Global Accelerator proporciona direcciones IP estáticas de difusión por proximidad que sirven como punto de entrada fijo a su aplicación alojada en una o más Regiones de AWS. Esto permite que el tráfico entre en la red global de AWS lo más cerca posible de sus usuarios, lo que mejora la accesibilidad y disponibilidad de su carga de trabajo. AWS Global Accelerator también supervisa el estado de los puntos de conexión de su aplicación mediante comprobaciones de estado de TCP, HTTP y HTTPS. Cualquier cambio en el estado o la configuración de sus puntos de conexión activa el redireccionamiento del tráfico de usuario a puntos de conexión en buen estado que ofrezcan el mejor rendimiento y disponibilidad a los usuarios. Además, AWS Global Accelerator cuenta con un diseño de aislamiento de errores que utiliza dos direcciones IPv4 estáticas atendidas por zonas de red independientes que aumentan la disponibilidad de las aplicaciones. 

 Para ayudar a proteger a los clientes de ataques DDoS, AWS proporciona AWS Shield Standard. Shield Standard se activa automáticamente y protege de los ataques habituales a la infraestructura (capas 3 y 4), como las inundaciones de SYN/UDP y los ataques de reflexión, para respaldar la alta disponibilidad de sus aplicaciones en AWS. Para obtener protecciones adicionales contra ataques más sofisticados y grandes (como inundaciones de UDP) y ataques de agotamiento de estado (como inundaciones de TCP SYN), y para ayudar a proteger sus aplicaciones que se ejecutan en Amazon Elastic Compute Cloud (Amazon EC2), Elastic Load Balancing (ELB), Amazon CloudFront, AWS Global Accelerator y Route 53, puede considerar el uso de AWS Shield Advanced. Para la protección contra ataques en la capa de aplicación como HTTP POST o inundaciones de GET, utilice AWS WAF. AWS WAF puede utilizar condiciones de direcciones IP, encabezados HTTP, cuerpos HTTP, cadenas de URI, inyección de código SQL y scripting entre sitios para determinar si una solicitud debe bloquearse o permitirse. 

 **Pasos para la implementación** 

1.  Configure DNS de alta disponibilidad: Amazon Route 53 es un servicio web de [sistema de nombres de dominio (DNS) (DNS)](https://aws.amazon.com/route53/what-is-dns/) altamente disponible y escalable. Route 53 conecta las solicitudes de los usuarios con las aplicaciones de Internet que se ejecutan en AWS o localmente. Para obtener más información, consulte [Configuración de Amazon Route 53 como servicio DNS](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring.html). 

1.  Configure comprobaciones de estado: cuando utilice Route 53, verifique que solo se puedan resolver los destinos en buen estado. Empiece por [Creación de comprobaciones de estado de Route 53 y configuración de la conmutación por error a nivel de DNS](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html). Es importante tener en cuenta los siguientes aspectos a la hora de configurar las comprobaciones de estado: 

   1. [ Cómo determina Amazon Route 53 si la comprobación de estado es correcta](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-determining-health-of-endpoints.html)

   1. [ Creación, actualización y eliminación de comprobaciones de estado ](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-creating-deleting.html)

   1. [ Supervisar el estado de la comprobación de estado y recibir notificaciones ](https://docs.aws.amazon.com/)

   1. [ Prácticas recomendadas de DNS de Amazon Route 53 ](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/health-checks-monitor-view-status.html)

1. [ Conecte su servicio DNS a sus puntos de conexión. ](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/best-practices-dns.html)

   1.  Al utilizar Elastic Load Balancing como destino de su tráfico, cree un [registro de alias](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.html) mediante Amazon Route 53 que apunte al punto de conexión regional de su equilibrador de carga. Durante la creación del registro de alias, establezca la opción de evaluación de estado del destino a Sí. 

   1.  Para cargas de trabajo sin servidor o API privadas cuando se utilice API Gateway, utilice [Route 53 para dirigir el tráfico a API Gateway](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-api-gateway.html). 

1.  Decida la red de entrega de contenido. 

   1.  A la hora de entregar contenido mediante las ubicaciones periféricas más cercanas al usuario, comience por comprender [cómo CloudFront entrega el contenido](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/HowCloudFrontWorks.html). 

   1.  Empiece con una [distribución sencilla de CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/GettingStarted.SimpleDistribution.html). CloudFront sabrá entonces desde dónde desea que se entregue el contenido, así como los detalles sobre cómo realizar el seguimiento y administrar la entrega de contenido. Es importante comprender y tener en cuenta los siguientes aspectos al configurar la distribución de CloudFront: 

      1. [ Cómo funciona el almacenamiento en caché con ubicaciones periféricas de CloudFront ](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cache-hit-ratio-explained.html)

      1. [ Incrementar la proporción de solicitudes que se atienden directamente desde las cachés de CloudFront (tasa de aciertos de caché) ](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/cache-hit-ratio.html)

      1. [ Uso de Amazon CloudFront Origin Shield ](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/origin-shield.html)

      1. [ Optimización de alta disponibilidad con conmutación por error de origen de CloudFront ](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/high_availability_origin_failover.html)

1.  Configure la protección de la capa de aplicación: AWS WAF le ayuda a protegerse contra ataques web y bots habituales que pueden afectar a la disponibilidad, comprometer la seguridad o consumir demasiados recursos. Para obtener una comprensión más profunda, revise [cómo funciona AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/how-aws-waf-works.html) y, cuando esté listo para implementar protecciones contra inundaciones de HTTP POST Y GET en la capa de aplicación, revise [Introducción a AWS WAF](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started.html). También puede utilizar AWS WAF con CloudFront. Consulte la documentación sobre [cómo funciona AWS WAF con las características de Amazon CloudFront](https://docs.aws.amazon.com/waf/latest/developerguide/cloudfront-features.html). 

1.  Configure protección DDoS adicional: de forma predeterminada, todos los clientes de AWS reciben protección frente a los ataques DDoS más habituales y frecuentes de la capa de red y transporte dirigidos a su sitio web o aplicación con AWS Shield Standard y sin ningún cargo adicional. Para obtener protección adicional de las aplicaciones orientadas a Internet que se ejecutan en Amazon EC2, Elastic Load Balancing, Amazon CloudFront, AWS Global Accelerator y Amazon Route 53 considere [AWS Shield Advanced](https://docs.aws.amazon.com/waf/latest/developerguide/ddos-advanced-summary.html) y revise los [ejemplos de arquitecturas resistentes a DDoS](https://docs.aws.amazon.com/waf/latest/developerguide/ddos-resiliency.html). Para proteger su carga de trabajo y sus puntos de conexión públicos de ataques DDoS, consulte [Introducción a AWS Shield Advanced](https://docs.aws.amazon.com/waf/latest/developerguide/getting-started-ddos.html). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md) 
+  [REL10-BP02 Seleccionar las ubicaciones adecuadas para el despliegue en varias ubicaciones](rel_fault_isolation_select_location.md) 
+  [REL11-BP04 Confiar en el plano de datos y no en el plano de control durante la recuperación](rel_withstand_component_failures_avoid_control_plane.md) 
+  [REL11-BP06 Enviar notificaciones cuando los eventos afecten a la disponibilidad](rel_withstand_component_failures_notifications_sent_system.md) 

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a planificar sus redes](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [AWS Marketplace for Network Infrastructure](https://aws.amazon.com/marketplace/b/2649366011) (AWS Marketplace para la infraestructura de red) 
+  [¿Qué es AWS Global Accelerator?](https://docs.aws.amazon.com/global-accelerator/latest/dg/what-is-global-accelerator.html) 
+  [¿Qué es Amazon CloudFront?](https://docs.aws.amazon.com/Amazon/latest/DeveloperGuide/Introduction.html) 
+  [¿Qué es Amazon Route 53?](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) 
+  [¿Qué es Elastic Load Balancing?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html) 
+ [ Network Connectivity capability - Establishing Your Cloud Foundations](https://docs.aws.amazon.com/whitepapers/latest/establishing-your-cloud-foundation-on-aws/network-connectivity-capability.html) (Capacidad de conectividad de red: establecimiento de las bases de su nube)
+ [ What is Amazon API Gateway?](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html) (¿Qué es Amazon API Gateway?)
+ [ What are AWS WAF, AWS Shield, and AWS Firewall Manager?](https://docs.aws.amazon.com/waf/latest/developerguide/what-is-aws-waf.html) (¿Qué son AWS WAF, AWS Shield y AWS Firewall Manager?)
+ [ What is Amazon Route 53 Application Recovery Controller?](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) (¿Qué es el Controlador de recuperación de aplicaciones de Amazon Route 53?)
+ [ Configurar las comprobaciones de estado personalizadas para la conmutación por error de DNS ](https://docs.aws.amazon.com/apigateway/latest/developerguide/dns-failover.html)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2022 - Improve performance and availability with AWS Global Accelerator](https://www.youtube.com/watch?v=s5sjsdDC0Lg) (AWS re:Invent 2022: Mejorar el rendimiento y la disponibilidad con AWS Global Accelerator)
+ [AWS re:Invent 2020: Global traffic management with Amazon Route 53](https://www.youtube.com/watch?v=E33dA6n9O7I) (AWS re:Invent 2020: Administración de tráfico global con Amazon Route 53)
+ [AWS re:Invent 2022 - Operating highly available Multi-AZ applications ](https://www.youtube.com/watch?v=mwUV5skJJ0s) (AWS re:Invent 2022: Funcionamiento de aplicaciones multi-AZ de alta disponibilidad)
+ [AWS re:Invent 2022 - Dive deep on AWS networking infrastructure](https://www.youtube.com/watch?v=HJNR_dX8g8c) (AWS re:Invent 2022: Profundización en la infraestructura de red de AWS)
+ [AWS re:Invent 2022 - Building resilient networks](https://www.youtube.com/watch?v=u-qamiNgH7Q) (AWS re:Invent 2022: Creación de redes resistentes)

 **Ejemplos relacionados:** 
+ [ Disaster Recovery with Amazon Route 53 Application Recovery Controller (ARC)](https://catalog.us-east-1.prod.workshops.aws/workshops/4d9ab448-5083-4db7-bee8-85b58cd53158/en-US/) (Recuperación de desastres con el controlador de recuperación de aplicaciones [ARC] de Amazon Route 53)
+ [ Reliability Workshops](https://wellarchitectedlabs.com/reliability/) (Talleres de fiabilidad)
+ [AWS Global Accelerator Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/effb1517-b193-4c59-8da5-ce2abdb0b656/en-US) (Taller de AWS Global Accelerator)

# REL02-BP02 Aprovisionar conectividad redundante entre las redes privadas en la nube y los entornos locales
<a name="rel_planning_network_topology_ha_conn_private_networks"></a>

 Use varias conexiones de AWS Direct Connect o túneles VPN entre redes privadas desplegadas por separado. Use varias ubicaciones de Direct Connect para tener alta disponibilidad. Si utiliza varias Regiones de AWS, garantice la redundancia en al menos dos de ellas. Puede interesarle evaluar dispositivos de AWS Marketplace que terminen las VPN. Si utiliza dispositivos de AWS Marketplace, implemente instancias redundantes para obtener alta disponibilidad en diferentes zonas de disponibilidad. 

 AWS Direct Connect es una solución de servicios en la nube que facilita el establecimiento de una conexión de red dedicada desde su entorno local a AWS. Gracias a Direct Connect Gateway, su centro de datos local puede conectarse a varias VPC de AWS repartidas por varias Regiones de AWS. 

 Esta redundancia soluciona los posibles errores que afectan a la resiliencia de la conectividad: 
+  ¿Cómo puede resistir los errores su topología? 
+  ¿Qué pasa si no configuro correctamente algo y elimino la conectividad? 
+  ¿Podrá gestionar un aumento inesperado del tráfico o del uso de sus servicios? 
+  ¿Podrá absorber un intento de ataque de denegación de servicio distribuido (DDoS)? 

 Cuando conecte su VPC a su centro de datos local a través de una VPN, deberá tener en cuenta los requisitos de resiliencia y ancho de banda que necesita cuando seleccione el proveedor y el tamaño de la instancia en la que necesita ejecutar el dispositivo. Si usa un dispositivo VPN que no es resistente en su implementación, debe tener una conexión redundante mediante un segundo dispositivo. Para todas estas situaciones, debe definir un tiempo aceptable para la recuperación y hacer pruebas para asegurarse de que puede cumplir esos requisitos. 

 Si decide conectar su VPC a su centro de datos mediante una conexión de Direct Connect y necesita que esta conexión tenga una alta disponibilidad, disponga de conexiones de Direct Connect redundantes desde cada centro de datos. La conexión redundante debe utilizar una segunda conexión de Direct Connect desde una ubicación diferente a la primera. Si tiene varios centros de datos, asegúrese de que las conexiones terminen en diferentes ubicaciones. Use el [kit de herramientas de resiliencia de Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/resiliency_toolkit.html) como ayuda para su configuración. 

 Si decide conmutar por error a una VPN por Internet mediante Site-to-Site VPN, es importante entender que admite hasta 1,25 Gbps de rendimiento por túnel VPN, pero no admite rutas múltiples de igual coste (ECMP) para el tráfico de salida en el caso de múltiples túneles de AWS Managed VPN que terminen en el mismo VGW. No le recomendamos que utilice AWS Managed VPN como respaldo de las conexiones de Direct Connect, a menos que pueda tolerar velocidades inferiores a 1 Gbps durante la conmutación por error. 

 También puede utilizar los puntos de conexión de VPC para conectar de forma privada la VPC a los servicios de AWS admitidos y a los servicios de punto de conexión de VPC con tecnología de AWS PrivateLink sin atravesar la Internet pública. Los puntos de conexión son dispositivos virtuales. Son componentes de VPC escalados horizontalmente, redundantes y de alta disponibilidad. Permiten la comunicación entre las instancias de la VPC y los servicios sin que ello suponga riesgos de disponibilidad o restricciones de ancho de banda en el tráfico de su red. 

 **Patrones de uso no recomendados comunes:** 
+  Tener un solo proveedor de conectividad entre la red local y AWS. 
+  Usar las funciones de conectividad de la conexión de AWS Direct Connect, pero tener una sola conexión. 
+  Tener una sola ruta para su conectividad de VPN 

 **Beneficios de establecer esta práctica recomendada:** al implementar la conectividad redundante entre el entorno en la nube y su entorno corporativo o local, puede garantizar que los servicios dependientes entre los entornos se puedan comunicar sin problemas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Asegúrese de que tiene conectividad de alta disponibilidad entre AWS y el entorno local. Use varias conexiones de AWS Direct Connect o túneles VPN entre redes privadas desplegadas por separado. Use varias ubicaciones de Direct Connect para tener alta disponibilidad. Si utiliza varias Regiones de AWS, garantice la redundancia en al menos dos de ellas. Puede interesarle evaluar dispositivos de AWS Marketplace que terminen las VPN. Si utiliza dispositivos de AWS Marketplace, implemente instancias redundantes para obtener alta disponibilidad en diferentes zonas de disponibilidad. 
  +  Asegúrese de que dispone de una conexión redundante a su entorno local. Es posible que necesite conexiones redundantes a múltiples Regiones de AWS para lograr sus necesidades de disponibilidad. 
    +  [Recomendaciones sobre resiliencia de AWS Direct Connect](https://aws.amazon.com/directconnect/resiliency-recommendation/) 
    +  [Usar conexiones de VPN de sitio a sitio para proporcionar conmutación por error](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPNConnections.html) 
      +  Use operaciones de la API de servicio para identificar el uso correcto de los circuitos de AWS Direct Connect. 
        +  [DescribeConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnections.html) 
        +  [DescribeConnectionsOnInterconnect](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnectionsOnInterconnect.html) 
        +  [DescribeDirectConnectGatewayAssociations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAssociations.html) 
        +  [DescribeDirectConnectGatewayAttachments](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAttachments.htmll) 
        +  [DescribeDirectConnectGateways](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGateways.html) 
        +  [DescribeHostedConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeHostedConnections.html) 
        +  [DescribeInterconnects](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeInterconnects.html) 
      +  Si solo existe una conexión de Direct Connect o no existe ninguna, configure túneles VPN redundantes hacia sus puertas de enlace privadas virtuales. 
        +  [¿Qué es AWS Site-to-Site VPN?](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) 
  +  Capture su conectividad actual (por ejemplo, Direct Connect, puertas de enlace privadas virtuales, dispositivos de AWS Marketplace). 
    +  Use operaciones de la API de servicio para consultar la configuración de las conexiones de Direct Connect. 
      +  [DescribeConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnections.html) 
      +  [DescribeConnectionsOnInterconnect](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeConnectionsOnInterconnect.html) 
      +  [DescribeDirectConnectGatewayAssociations](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAssociations.html) 
      +  [DescribeDirectConnectGatewayAttachments](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGatewayAttachments.htmll) 
      +  [DescribeDirectConnectGateways](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeDirectConnectGateways.html) 
      +  [DescribeHostedConnections](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeHostedConnections.html) 
      +  [DescribeInterconnects](https://docs.aws.amazon.com/directconnect/latest/APIReference/API_DescribeInterconnects.html) 
    +  Utilice las operaciones de la API de servicios para recopilar las puertas de enlace privadas virtuales cuando las tablas de enrutamiento las utilicen. 
      +  [DescribeVpnGateways](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpnGateways.html) 
      +  [DescribeRouteTables](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) 
    +  Utilice las operaciones de la API de servicios para recopilar las aplicaciones de AWS Marketplace en las que las tablas de enrutamiento las usan. 
      +  [DescribeRouteTables](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeRouteTables.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a planificar sus redes](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [Recomendaciones sobre resiliencia de AWS Direct Connect](https://aws.amazon.com/directconnect/resiliency-recommendation/) 
+  [AWS Marketplace para la infraestructura de red](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Documento técnico sobre las opciones de conectividad de Amazon Virtual Private Cloud](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/introduction.html) 
+  [Conectividad de red de alta disponibilidad en varios centros de datos](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [Usar conexiones de VPN de sitio a sitio para proporcionar conmutación por error](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPNConnections.html) 
+  [Usar el kit de herramientas de resiliencia de Direct Connect para empezar](https://docs.aws.amazon.com/directconnect/latest/UserGuide/resilency_toolkit.html) 
+  [Puntos de conexión de VPC y servicios de punto de conexión de VPC (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html) 
+  [¿Qué es Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 
+  [¿Qué es una puerta de enlace de tránsito?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 
+  [¿Qué es AWS Site-to-Site VPN?](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_VPN.html) 
+  [Trabajar con puertas de enlace de Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/direct-connect-gateways.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2018: Advanced VPC Design and New Capabilities for Amazon VPC (Diseño avanzado de VPC y funciones nuevas de Amazon VPC) (NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: AWS Transit Gateway reference architectures for many VPCs (Arquitecturas de referencia de AWS Transit Gateway para muchas VPC) (NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# REL02-BP03 Garantizar que la asignación de subredes IP tenga en cuenta la expansión y la disponibilidad
<a name="rel_planning_network_topology_ip_subnet_allocation"></a>

 Los intervalos de direcciones IP de Amazon VPC deben ser lo suficientemente amplios como para dar cabida a los requisitos de las cargas de trabajo, como la posible expansión futura y la asignación de direcciones IP a las subredes de las zonas de disponibilidad. Esto incluye equilibradores de carga, instancias de EC2 y aplicaciones basadas en contenedores. 

 Cuando planifica la topología de su red, el primer paso es definir el espacio de la dirección IP. Se deben asignar rangos de direcciones IP privadas para cada VPC (siguiendo las directrices de la RFC 1918). Facilite los siguientes requisitos como parte de este proceso: 
+  Permita los espacios de direcciones IP para más de una VPC por región. 
+  En una VPC, deje espacio para múltiples subredes que abarquen varias zonas de disponibilidad. 
+  Deje siempre un espacio de bloque de CIDR sin usar en una VPC para posibles expansiones futuras.. 
+  Asegúrese de que haya espacio de direcciones IP suficiente como para satisfacer las necesidades de flotas transitorias de instancias EC2 que podría usar, como flotas de spot para el machine learning, clústeres de Amazon EMR o clústeres de Amazon Redshift. 
+  Tenga en cuenta que las primeras cuatro direcciones IP y las últimas direcciones IP de cada bloque CIDR de subred están reservadas y no están disponibles para usar. 
+  Debería planear la implementación de grandes bloques de CIDR de VPC. Tenga en cuenta que el bloque de CIDR de la VPC inicial asignado a su VPC no debe cambiar ni eliminarse, pero puede añadir bloques de CIDR adicionales que no se solapen a la VPC. Los CIDR IPv4 de subred no se pueden cambiar; sin embargo, los CIDR IPv6 sí. Tenga en cuenta que la implementación de la VPC más grande posible (/16) supone más de 65 000 direcciones IP. Solo en el espacio de la dirección IP 10.x.x.x base, puede aprovisionar 255 de estas VPC. Por tanto, de equivocarse, debería hacerlo por exceso y no por defecto, para que administrar sus VPC resulte más sencillo. 

 **Antipatrones usuales:** 
+  Crear VPC pequeñas 
+  Crear subredes pequeñas y tener que añadir subredes a las configuraciones conforme crezca 
+  Calcular incorrectamente cuántas direcciones IP puede usar un equilibrador de carga elástico 
+  Implementar muchos equilibradores carga de tráfico en las mismas subredes 

 **Beneficios de establecer esta práctica recomendada:** De esta forma, se asegurará de dar cabida al crecimiento de sus cargas de trabajo y seguir proporcionando disponibilidad cuando aumente la capacidad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Planificar su red para que se adapte al crecimiento, la conformidad normativa y la integración con otros. El crecimiento se puede subestimar, la conformidad normativa puede variar y las adquisiciones y conexiones de redes privadas pueden ser difíciles de realizar sin una planificación adecuada. 
  +  Seleccione las regiones y Cuentas de AWS que correspondan según sus requisitos de servicio, latencia, normativos y de recuperación de desastres (DR). 
  +  Identifique sus necesidades para implementaciones regionales de VPC. 
  +  Identifique el tamaño de las VPC. 
    +  Determine si va a implementar la conectividad de varias VPC. 
      +  [¿Qué es una puerta de enlace de tránsito?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 
      +  [Conectividad de varias VPC en una sola región](https://aws.amazon.com/answers/networking/aws-single-region-multi-vpc-connectivity/) 
    +  Determine si necesita una red segregada para los requisitos normativos. 
    +  Haga las VPC tan grandes como sea posible. El bloque de CIDR de la VPC inicial asignado a su VPC no debe cambiar ni eliminarse, pero puede añadir bloques de CIDR adicionales que no se solapen a la VPC. Sin embargo, esto podría fragmentar sus intervalos de direcciones. 
    +  Haga las VPC tan grandes como sea posible. El bloque de CIDR de la VPC inicial asignado a su VPC no debe cambiar ni eliminarse, pero puede añadir bloques de CIDR adicionales que no se solapen a la VPC. Sin embargo, esto podría fragmentar sus intervalos de direcciones. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a planificar sus redes](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [AWS Marketplace para la infraestructura de red](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Documento técnico sobre las opciones de conectividad de Amazon Virtual Private Cloud](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/introduction.html) 
+  [Conectividad de red de alta disponibilidad en varios centros de datos](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [Conectividad de varias VPC en una sola región](https://aws.amazon.com/answers/networking/aws-single-region-multi-vpc-connectivity/) 
+  [¿Qué es Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 

 **Videos relacionados:** 
+  [AWS re:Invent 2018: Diseño avanzado de VPC y funciones nuevas de Amazon VPC (NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: Arquitecturas de referencia de AWS Transit Gateway para muchas VPC (NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# REL02-BP04 Preferir topologías radiales (hub-and-spoke) a una conexión en malla de varios a varios
<a name="rel_planning_network_topology_prefer_hub_and_spoke"></a>

 Si se conectan más de dos espacios de direcciones de red (por ejemplo, VPC y redes locales) a través del emparejamiento de VPC, AWS Direct Connect o VPN, utilice un modelo radial hub-and-spoke como el proporcionado por AWS Transit Gateway. 

 Si tiene solo dos de esas subredes, puede conectarlas entre sí, pero si aumenta el número de redes, la complejidad de esas conexiones en malla se hace insostenible. AWS Transit Gateway proporciona una forma sencilla de mantener un modelo radial que permita el enrutamiento del tráfico entre sus distintas redes. 

![\[Diagrama que muestra un caso en el que no se usa AWS Transit Gateway\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/without-transit-gateway.png)


![\[Diagrama que muestra un caso en el que sí se usa AWS Transit Gateway\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/with-transit-gateway.png)


 **Patrones de uso no recomendados comunes:** 
+  Usar el emparejamiento de VPC para conectarse a más de dos VPC. 
+  Establecer varias sesiones de BGP para cada VPC para establecer conectividad que abarque las nubes virtuales privadas (VPC) repartidas entre las distintas Regiones de AWS. 

 **Beneficios de establecer esta práctica recomendada:** A medida que aumenta el número de redes, la complejidad de estas conexiones en malla se vuelve insostenible. AWS Transit Gateway proporciona una forma sencilla de mantener un modelo radial que permita el enrutamiento del tráfico entre sus distintas redes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Priorice las topologías radiales (hub-and-spoke) sobre las conexiones en malla de varios a varios. Si se conectan más de dos espacios de direcciones de red (VPC y redes locales) a través del emparejamiento de VPC, AWS Direct Connect o VPN, utilice un modelo radial hub-and-spoke como el proporcionado por AWS Transit Gateway. 
  +  En el caso de haber solo dos de esas subredes, puede conectarlas entre sí, pero si aumenta el número de redes, la complejidad de esas conexiones en malla se hace insostenible. AWS Transit Gateway proporciona una forma sencilla de mantener un modelo radial que permita el enrutamiento del tráfico entre sus distintas redes. 
    +  [¿Qué es una puerta de enlace de tránsito?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a planificar sus redes](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [AWS Marketplace para la infraestructura de red](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Conectividad de red de alta disponibilidad en varios centros de datos](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [Puntos de conexión de VPC y servicios de punto de conexión de VPC (AWS PrivateLink)](https://docs.aws.amazon.com/vpc/latest/userguide/endpoint-services-overview.html) 
+  [¿Qué es Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 
+  [¿Qué es una puerta de enlace de tránsito?](https://docs.aws.amazon.com/vpc/latest/tgw/what-is-transit-gateway.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2018: diseño avanzado de VPC y funciones nuevas de Amazon VPC (NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: arquitecturas de referencia de AWS Transit Gateway para muchas VPC (NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# REL02-BP05 Emplear intervalos no superpuestos de direcciones IP privadas en todos los espacios de direcciones privadas que estén conectados
<a name="rel_planning_network_topology_non_overlap_ip"></a>

 Los intervalos de direcciones IP de cada VPC no deben solaparse si se emparejan o conectan mediante VPN. Asimismo, debe evitar conflictos de direcciones IP entre una VPC y los entornos locales o con otros proveedores de servicios en la nube que utilice. También debe tener una forma de asignar intervalos de direcciones IP privadas cuando sea necesario. 

 Un sistema de administración de direcciones IP (IPAM) puede ayudar en este sentido. En AWS Marketplace hay disponibles varias IPAM. 

 **Patrones de uso no recomendados comunes:** 
+  Usar el mismo intervalo de direcciones IP en la VPC local o en la red corporativa 
+  No controlar los intervalos de direcciones IP de las VPC usadas para implementar sus cargas de trabajo 

 **Beneficios de establecer esta práctica recomendada:** La planificación activa de la red garantizará que no tenga varias instancias de la misma dirección IP en las redes interconectadas. Con esto evitará que se produzcan problemas de enrutamiento en las partes de la carga de trabajo que usan las diferentes aplicaciones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Supervise y administre el uso de CIDR. Evalúe su potencial de uso en AWS, añada intervalos de CIDR a las VPC existentes y cree VPC para permitir un crecimiento planificado del uso. 
  +  Capture el consumo actual de CIDR (por ejemplo, VPC o subredes). 
    +  Use operaciones de la API de servicio para recopilar el consumo actual de CIDR. 
  +  Capture su uso actual de las subredes. 
    +  Use operaciones de la API de servicio para recopilar subredes por VPC en cada región. 
      +  [DescribeSubnets](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeSubnets.html) 
    +  Registre el uso actual. 
    +  Determine si ha creado intervalos de IP superpuestos. 
    +  Calcule la capacidad de reserva. 
    +  Identifique los intervalos de IP superpuestos. Puede migrar a un intervalo de direcciones nuevo o usar dispositivos de traducción de redes y puertos (NAT) de AWS Marketplace si necesita conectar los intervalos superpuestos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a planificar sus redes](https://aws.amazon.com/partners/find/results/?keyword=network) 
+  [AWS Marketplace para la infraestructura de red](https://aws.amazon.com/marketplace/b/2649366011) 
+  [Documento técnico sobre las opciones de conectividad de Amazon Virtual Private Cloud](https://docs.aws.amazon.com/whitepapers/latest/aws-vpc-connectivity-options/introduction.html) 
+  [Conectividad de red de alta disponibilidad en varios centros de datos](https://aws.amazon.com/answers/networking/aws-multiple-data-center-ha-network-connectivity/) 
+  [¿Qué es Amazon VPC?](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) 
+  [¿Qué es la IPAM?](https://docs.aws.amazon.com/vpc/latest/ipam/what-it-is-ipam.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2018: Diseño avanzado de VPC y funciones nuevas de Amazon VPC (NET303)](https://youtu.be/fnxXNZdf6ew) 
+  [AWS re:Invent 2019: Arquitecturas de referencia de AWS Transit Gateway para muchas VPC (NET406-R1)](https://youtu.be/9Nikqn_02Oc) 

# Arquitectura de la carga de trabajo
<a name="a-workload-architecture"></a>

**Topics**
+ [REL 3 ¿Cómo diseña la arquitectura de servicio de su carga de trabajo?](rel-03.md)
+ [REL 4 ¿Cómo diseña las interacciones en un sistema distribuido para evitar errores?](rel-04.md)
+ [REL 5 ¿Cómo diseña las interacciones en un sistema distribuido para mitigar o tolerar errores?](rel-05.md)

# REL 3 ¿Cómo diseña la arquitectura de servicio de su carga de trabajo?
<a name="rel-03"></a>

Desarrolle cargas de trabajo escalables y fiables utilizando una arquitectura orientada a servicios (SOA) o una arquitectura de microservicios. La arquitectura orientada a servicios (SOA) es la práctica de hacer que los componentes de software se puedan reutilizar mediante interfaces de servicio. La arquitectura de microservicios va más allá, para hacer que los componentes sean más pequeños y sencillos.

**Topics**
+ [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md)
+ [REL03-BP02 Desarrollar servicios centrados en funcionalidades y dominios empresariales específicos](rel_service_architecture_business_domains.md)
+ [REL03-BP03 Facilitar contratos de servicio por cada API](rel_service_architecture_api_contracts.md)

# REL03-BP01 Elegir cómo segmentar su carga de trabajo
<a name="rel_service_architecture_monolith_soa_microservice"></a>

 La segmentación de la carga de trabajo es importante a la hora de determinar los requisitos de resiliencia de su aplicación. La arquitectura monolítica debe evitarse siempre que sea posible. En su lugar, considere detenidamente qué componentes de la aplicación pueden dividirse en microservicios. Según los requisitos de su aplicación, esto puede terminar siendo una combinación de una arquitectura orientada a servicios (SOA) con microservicios cuando sea posible. Las cargas de trabajo que son capaces de no tener estado son más capaces desplegarse como microservicios. 

 **Resultado deseado:** Las cargas de trabajo deben ser soportables, escalables y estar tan poco acopladas como sea posible. 

 A la hora de elegir cómo segmentar la carga de trabajo, hay que sopesar las ventajas frente a las complejidades. Lo que puede ser adecuado para un nuevo producto encaminado a su primer lanzamiento es diferente a lo que necesita una carga de trabajo creada para escalarse desde el principio. Al refactorizar un monolito existente, tendrá que considerar en qué medida soportará la aplicación una descomposición hacia la falta de estado. Dividir los servicios en partes más pequeñas permite que equipos pequeños y bien definidos los desarrollen y administren. No obstante, los servicios más pequeños pueden introducir complejidades que incluyen un aumento de la latencia, una depuración más compleja y un mayor lastre operativo. 

 **Patrones comunes de uso no recomendados:** 
+  El [microservicio *Death Star*](https://mrtortoise.github.io/architecture/lean/design/patterns/ddd/2018/03/18/deathstar-architecture.html) es una situación en la que los componentes atómicos son tan interdependientes que el error de uno de ellos provoca un error mucho mayor, haciendo que los componentes sean tan rígidos y frágiles como un monolito. 

 **Beneficios de establecer esta práctica:** 
+  Los segmentos más específicos conducen a una mayor agilidad, flexibilidad organizativa y escalabilidad. 
+  Reducción del impacto de las interrupciones del servicio. 
+  Los componentes de la aplicación pueden tener diferentes requisitos de disponibilidad, que pueden soportarse mediante una segmentación más atómica. 
+  Responsabilidades bien definidas para los equipos que apoyan la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Seleccione el tipo de arquitectura en función de cómo va a segmentar su carga de trabajo. Seleccione una SOA o una arquitectura de microservicios (o, en algunos casos raros, una arquitectura monolítica). Incluso si decide empezar con una arquitectura monolítica, debe asegurarse de que sea modular y de que pueda evolucionar hacia SOA o microservicios de forma definitiva, a medida que su producto escala con la adopción por parte de los usuarios. La SOA y los microservicios ofrecen respectivamente una segmentación más pequeña, lo que resulta preferible como arquitectura moderna escalable y confiable, pero existen compensaciones a tener en cuenta, especialmente al desplegar una arquitectura de microservicios. 

 Una compensación principal es que se dispone de una arquitectura de informática distribuida que puede dificultar el cumplimiento de los requisitos de latencia del usuario y existe una complejidad adicional en la depuración y el rastreo de las interacciones del usuario. Puede utilizar AWS X-Ray para ayudarle a resolver este problema. Otro efecto que hay que tener en cuenta es el aumento de la complejidad operativa a medida que aumenta el número de aplicaciones que se administran, lo que requiere el despliegue de componentes con varias independencias. 

![\[Diagrama que muestra una comparación entre las arquitecturas monolíticas, orientadas al servicio y de microservicios\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/monolith-soa-microservices-comparison.png)


## Pasos para la aplicación
<a name="implementation-steps"></a>
+  Determine la arquitectura adecuada para refactorizar o desarrollar su aplicación. La SOA y los microservicios ofrecen respectivamente una segmentación más pequeña, lo que resulta preferible como arquitectura moderna escalable y confiable. La SOA puede ofrecer un término intermedio ideal para conseguir una segmentación más pequeña y, a la vez, evitar algunas de las complejidades de los microservicios. Para obtener más información, consulte [Microservice Trade-Offs (Compensaciones de microservicios)](https://martinfowler.com/articles/microservice-trade-offs.html). 
+  Si su carga de trabajo lo admite y su organización puede permitírselo, debería usar una arquitectura de microservicios para conseguir la mejor agilidad y fiabilidad. Para obtener más información, consulte [Implementación de microservicios en AWS](https://docs.aws.amazon.com/whitepapers/latest/microservices-on-aws/introduction.html) 
+  Tenga en cuenta seguir el patrón de [*Strangler Fig* para](https://martinfowler.com/bliki/StranglerFigApplication.html) refactorizar un monolito en componentes más pequeños. Se trata de sustituir gradualmente componentes específicos de la aplicación por nuevas aplicaciones y servicios. [AWS Migration Hub Refactor Spaces](https://docs.aws.amazon.com/migrationhub-refactor-spaces/latest/userguide/what-is-mhub-refactor-spaces.html) actúa como punto de partida para la refactorización incremental. Para obtener más información, consulte [Seamlessly migrate on-premises legacy workloads using a strangler pattern (Migrar sin problemas las cargas de trabajo heredadas localmente utilizando un patrón estrangulador)](https://aws.amazon.com/blogs/architecture/seamlessly-migrate-on-premises-legacy-workloads-using-a-strangler-pattern/). 
+  La implementación de microservicios puede requerir un mecanismo de detección de servicios para permitir que estos servicios distribuidos se comuniquen entre sí. [AWS App Mesh](https://docs.aws.amazon.com/app-mesh/latest/userguide/what-is-app-mesh.html) se puede usar con arquitecturas orientadas a servicios para ofrecer una detección y un acceso confiable a los servicios. [AWS Cloud Map](https://aws.amazon.com/cloud-map/) también puede utilizarse para la detección dinámica de servicios basada en DNS. 
+  Si está migrando de un monolito a SOA, [Amazon MQ](https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/welcome.html) puede ayudar a salvar la brecha como un bus de servicio cuando se rediseñan las aplicaciones heredadas en la nube.
+  Para los monolitos existentes con una única base de datos compartida, elija cómo reorganizar los datos en segmentos más pequeños. Puede ser por unidad de negocio, patrón de acceso o estructura de datos. En este punto del proceso de refactorización, debe elegir entre una base de datos de tipo relacional o no relacional (NoSQL). Para obtener más información, consulte [From SQL to NoSQL (De SQL a NoSQL)](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SQLtoNoSQL.html). 

 **Nivel de esfuerzo para el plan de implementación:** Alto 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL03-BP02 Desarrollar servicios centrados en funcionalidades y dominios empresariales específicos](rel_service_architecture_business_domains.md) 

 **Documentos relacionados:** 
+  [Amazon API Gateway: Configuración de una API de REST con OpenAPI](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html) 
+  [¿Qué es la arquitectura orientada a servicios?](https://aws.amazon.com/what-is/service-oriented-architecture/) 
+  [Contexto limitado (un patrón central en un diseño basado en dominios)](https://martinfowler.com/bliki/BoundedContext.html) 
+  [Implementación de microservicios en AWS](https://docs.aws.amazon.com/whitepapers/latest/microservices-on-aws/introduction.html) 
+  [Microservice Trade-Offs (Compensaciones de microservicios)](https://martinfowler.com/articles/microservice-trade-offs.html) 
+  [Microservicios: definición de este nuevo término de arquitectura](https://www.martinfowler.com/articles/microservices.html) 
+  [Microservicios en AWS](https://aws.amazon.com/microservices/) 
+  [¿Qué es AWS App Mesh?](https://docs.aws.amazon.com/app-mesh/latest/userguide/what-is-app-mesh.html) 

 **Ejemplos relacionados:** 
+  [Taller de modernización de aplicaciones iterativas](https://catalog.us-east-1.prod.workshops.aws/workshops/f2c0706c-7192-495f-853c-fd3341db265a/en-US/intro) 

 **Vídeos relacionados:** 
+  [Delivering Excellence with Microservices on AWS (Proporcionar excelencia con microservicios en AWS)](https://www.youtube.com/watch?v=otADkIyugzY) 

# REL03-BP02 Desarrollar servicios centrados en funcionalidades y dominios empresariales específicos
<a name="rel_service_architecture_business_domains"></a>

La arquitectura orientada a servicios (SOA) define servicios con funciones bien delineadas que están determinadas por necesidades empresariales. Los microservicios utilizan modelos de dominio y contextos delimitados para trazar los límites de los servicios en los límites del contexto empresarial. Centrarse en los dominios y las funcionalidades empresariales ayuda a los equipos a definir requisitos de fiabilidad independientes para sus servicios. Los contextos delimitados aíslan y encapsulan la lógica empresarial, lo que permite a los equipos razonar mejor la forma de gestionar los errores.

 **Resultado deseado:** los ingenieros y las partes interesadas de la empresa definen conjuntamente los contextos delimitados y los utilizan para diseñar sistemas como servicios que cumplan funciones empresariales específicas. Estos equipos utilizan prácticas establecidas, como las tormentas de eventos, para definir los requisitos. Las nuevas aplicaciones se diseñan como límites bien definidos de servicios y con acoplamiento flexible. Los monolitos existentes se descomponen en [contextos delimitados](https://martinfowler.com/bliki/BoundedContext.html) y los diseños de sistemas se mueven a arquitecturas SOA o microservicios. Cuando los monolitos se refactorizan, se aplican enfoques establecidos, como contextos de burbujas y patrones de descomposición de monolitos. 

 Los servicios orientados al dominio se ejecutan como uno o más procesos que no comparten el estado. Responden de forma independiente a las fluctuaciones de la demanda y gestionan los escenarios de error teniendo en cuenta los requisitos específicos del dominio. 

 **Patrones comunes de uso no recomendados:** 
+  Se forman equipos en torno a dominios técnicos específicos, como la interfaz de usuario y la experiencia de usuario, el middleware o la base de datos, en lugar de formarse en torno a dominios empresariales específicos. 
+  Las aplicaciones abarcan las responsabilidades del dominio. Los servicios que abarcan contextos delimitados pueden ser más difíciles de mantener, exigen más pruebas y requieren la participación de equipos de varios dominios en las actualizaciones del software. 
+  Las dependencias de dominio, como las bibliotecas de entidades de dominio, se comparten entre los servicios, de modo que los cambios en un dominio de servicio requieren cambios en otros dominios de servicio. 
+  Los contratos de servicio y la lógica empresarial no expresan las entidades en un lenguaje de dominio común y coherente, lo que genera capas de traducción que complican los sistemas e incrementan los esfuerzos de depuración. 

 **Beneficios de establecer esta práctica recomendada:** las aplicaciones se diseñan como servicios independientes delimitados por dominios empresariales y utilizan un lenguaje empresarial común. Los servicios se pueden probar y desplegar de forma independiente. Los servicios cumplen los requisitos de resiliencia específicos del dominio implementado. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El enfoque de decisiones impulsadas por dominio (DDD) es el enfoque fundamental para diseñar y crear software en torno a los dominios empresariales. Resulta útil trabajar con un marco existente a la hora de crear servicios centrados en dominios empresariales. Si trabaja con aplicaciones monolíticas existentes, puede utilizar patrones de descomposición que proporcionan técnicas establecidas para modernizar las aplicaciones y convertirlas en servicios. 

![\[Diagrama de flujo que muestra el enfoque de decisiones impulsadas por dominio.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/domain-driven-decision.png)


 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Los equipos pueden realizar talleres [de tormentas de eventos](https://serverlessland.com/event-driven-architecture/visuals/event-storming) para identificar rápidamente eventos, comandos, agregados y dominios en un formato de notas adhesivas más ligero. 
+  Una vez que se hayan elaborado las entidades y funciones de dominio en el contexto de un dominio, puede dividir su dominio en servicios mediante un [contexto delimitado](https://martinfowler.com/bliki/BoundedContext.html), en el que se agrupan las entidades que comparten características y atributos similares. Si el modelo está dividido en contextos, tendrá una plantilla para limitar los microservicios. 
  +  Por ejemplo, las entidades del sitio web de Amazon.com podrían incluir el empaquetado, la entrega, la programación, el precio, el descuento y la divisa. 
  +  El empaquetado, la entrega y la programación se agrupan en el contexto del envío, mientras que el precio, el descuento y la divisa se agrupan en el contexto de los precios. 
+  [En Decomposing monoliths into microservices (Descomposición de monolitos en microservicios),](https://docs.aws.amazon.com/prescriptive-guidance/latest/modernization-decomposing-monoliths/welcome.html) se describen patrones para refactorizar microservicios. El uso de patrones de descomposición por capacidad empresarial, subdominio o transacción se ajusta bien a los enfoques basados en dominios. 
+  Existen técnicas estratégicas, como el [contexto de burbuja](https://www.domainlanguage.com/wp-content/uploads/2016/04/GettingStartedWithDDDWhenSurroundedByLegacySystemsV1.pdf) , que permiten introducir DDD en aplicaciones existentes o heredadas sin necesidad de reescrituras iniciales ni confirmaciones completas de las DDD. En un enfoque de contexto de burbujas, se establece un contexto pequeño y delimitado mediante la asignación y coordinación de servicios, o una [capa anticorrupción](https://serverlessland.com/event-driven-architecture/visuals/messages-between-bounded-context), que protege el modelo de dominio recién definido de las influencias externas. 

 Una vez que los equipos hayan analizado el dominio y hayan definido las entidades y los contratos de servicio, pueden utilizar los servicios de AWS para implementar su diseño basado en dominio como servicios basados en la nube. 
+  Para comenzar el desarrollo, defina pruebas en las que se utilicen las reglas empresariales de su dominio. El desarrollo basado en pruebas (TDD) y el desarrollo basado en comportamiento (BDD) ayudan a los equipos a mantener los servicios centrados en resolver problemas empresariales. 
+  Seleccione los [servicios de AWS](https://aws.amazon.com/microservices/) que mejor se ajusten a los requisitos de su dominio empresarial y [arquitectura de microservicios](https://docs.aws.amazon.com/whitepapers/latest/microservices-on-aws/microservices-on-aws.html): 
  +  [AWS sin servidor](https://aws.amazon.com/serverless/) permite a su equipo centrarse en una lógica de dominio específica en lugar de administrar servidores e infraestructuras. 
  +  [Los contenedores de AWS](https://aws.amazon.com/containers/) simplifican la administración de su infraestructura para que pueda centrarse en los requisitos de su dominio. 
  +  [Las bases de datos personalizadas](https://aws.amazon.com/products/databases/) le ayudan a adaptar los requisitos de su dominio al tipo de base de datos más adecuado. 
+  [En Building hexagonal architectures on AWS (Desarrollo de arquitecturas hexagonales en AWS),](https://docs.aws.amazon.com/prescriptive-guidance/latest/hexagonal-architectures/welcome.html) se describe un marco para integrar la lógica empresarial en los servicios que funcionan de manera inversa desde un dominio empresarial para cumplir los requisitos funcionales y, a continuación, asociar los adaptadores de integración. Los patrones que separan los detalles de la interfaz de la lógica empresarial con los servicios de AWS ayudan a los equipos a centrarse en la funcionalidad del dominio y a mejorar la calidad del software. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL03-BP03 Facilitar contratos de servicio por cada API](rel_service_architecture_api_contracts.md) 

 **Documentos relacionados:** 
+ [AWS Microservicios](https://aws.amazon.com/microservices/)
+  [Implementing Microservices on AWS (Implementación de microservicios en AWS)](https://docs.aws.amazon.com/whitepapers/latest/microservices-on-aws/introduction.html) 
+  [How to break a Monolith into Microservices (Cómo descomponer un sistema monolítico en microservicios)](https://martinfowler.com/articles/break-monolith-into-microservices.html) 
+  [Getting Started with DDD when Surrounded by Legacy Systems (Introducción al DDD en un ambiente lleno de sistemas heredados)](https://domainlanguage.com/wp-content/uploads/2016/04/GettingStartedWithDDDWhenSurroundedByLegacySystemsV1.pdf) 
+ [ Domain-Driven Design: Tackling Complexity in the Heart of Software (Diseño basado en dominios: abordar la complejidad en el corazón del software) ](https://www.amazon.com/gp/product/0321125215)
+ [ En Building hexagonal architectures on AWS (Desarrollo de arquitecturas hexagonales en AWS), ](https://docs.aws.amazon.com/prescriptive-guidance/latest/hexagonal-architectures/welcome.html)
+ [ Decomposing monoliths into microservices (Descomposición de monolitos en microservicios), ](https://docs.aws.amazon.com/prescriptive-guidance/latest/modernization-decomposing-monoliths/welcome.html)
+ [ Event Storming (Tormentas de eventos) ](https://serverlessland.com/event-driven-architecture/visuals/event-storming)
+ [ Messages Between Bounded Contexts (Mensajes entre contextos delimitados) ](https://serverlessland.com/event-driven-architecture/visuals/messages-between-bounded-context)
+ [ Microservicios ](https://www.martinfowler.com/articles/microservices.html)
+ [ Test-driven development (Desarrollo basado en pruebas) ](https://en.wikipedia.org/wiki/Test-driven_development)
+ [ Behavior-driven development (Desarrollo basado en comportamiento) ](https://en.wikipedia.org/wiki/Behavior-driven_development)

 **Ejemplos relacionados:** 
+ [ Enterprise Cloud Native Workshop (Taller sobre entornos nativos de la nube empresarial) ](https://catalog.us-east-1.prod.workshops.aws/workshops/0466c70e-4216-4352-98d9-5a8af59c86b2/en-US)
+ [ Designing Cloud Native Microservices on AWS (from DDD/EventStormingWorkshop) (Diseño de microservicios nativos en la nube en AWS [de DDD/EventStormingWorkshop]) ](https://github.com/aws-samples/designing-cloud-native-microservices-on-aws/tree/main)

 **Herramientas relacionadas:** 
+ [ Bases de datos en la Nube de AWS](https://aws.amazon.com/products/databases/)
+ [ Sin servidor en AWS](https://aws.amazon.com/serverless/)
+ [ Contenedores de AWS](https://aws.amazon.com/containers/)

# REL03-BP03 Facilitar contratos de servicio por cada API
<a name="rel_service_architecture_api_contracts"></a>

Los contratos de servicio son acuerdos documentados entre los productores y los consumidores de las API que se encuentran en una definición de API legible por máquina. Una estrategia de control de versiones permite a los clientes seguir usando la API existente y migrar sus aplicaciones a la nueva API cuando estén listas. El despliegue del productor puede realizarse en cualquier momento, siempre y cuando se cumpla el contrato. Los equipos del servicio pueden usar la pila tecnológica que prefieran para cumplir el contrato de la API. 

 **Resultado deseado:** 

 **Patrones comunes de uso no recomendados:** las aplicaciones creadas con arquitecturas orientadas a servicios o de microservicios pueden funcionar de forma independiente y, al mismo tiempo, tener integrada una dependencia de la versión ejecutable. Los cambios desplegados en un consumidor o productor de API no interrumpen la estabilidad del sistema general cuando ambas partes utilizan el mismo contrato de API. Los componentes que se comunican a través de las API de servicio pueden realizar lanzamientos funcionales independientes, actualizar las dependencias de versiones ejecutables o realizar conmutaciones por error a un sitio de recuperación de desastres (DR) con poco o ningún impacto entre sí. Además, los servicios discretos pueden escalarse de forma independiente y absorber la demanda de recursos sin que sea necesario que otros servicios se escalen al unísono. 
+  Crear API de servicio sin esquemas estrictamente asignados. Como consecuencia, las API no se pueden usar para generar enlaces de API y las cargas útiles no se pueden validar mediante programación. 
+  No adoptar una estrategia de control de versiones, lo que obliga a los usuarios de la API a actualizarla y lanzarla; de lo contrario, fallará cuando los contratos de servicio evolucionen. 
+  Mensajes de error que filtran detalles de la implementación del servicio subyacente en lugar de describir los errores de integración en el contexto y el lenguaje del dominio. 
+  No utilizar contratos de API para desarrollar casos de prueba ni simulaciones de implementaciones de API para probar de forma independiente los componentes del servicio. 

 **Beneficios de establecer esta práctica recomendada:** los sistemas distribuidos que constan de componentes que se comunican a través de contratos de servicio de API pueden mejorar la fiabilidad. Los desarrolladores pueden detectar posibles problemas al principio del proceso de desarrollo mediante la comprobación de tipos durante la compilación para comprobar que las solicitudes y las respuestas cumplen el contrato de la API y que los campos obligatorios están presentes. Los contratos de la API proporcionan una interfaz clara y autodocumentada para las API y mejoran la interoperabilidad entre diferentes sistemas y lenguajes de programación. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Una vez que hayan identificado los dominios empresariales y determinado la segmentación de la carga de trabajo, podrá desarrollar las API de sus servicios. Primero, defina contratos de servicio legibles por máquina para las API y, a continuación, implemente una estrategia de control de versiones de API. Cuando esté preparado para integrar servicios a través de protocolos comunes, como REST, GraphQL o eventos asíncronos, podrá incorporar servicios de AWS a su arquitectura para integrar sus componentes con contratos de API estrictamente asignados. 

 **Servicios de AWS para contratos de API de servicios** 

 Incorpore servicios de AWS, como [Amazon API Gateway](https://aws.amazon.com/api-gateway/), [AWS AppSync](https://aws.amazon.com/appsync/)y [Amazon EventBridge,](https://aws.amazon.com/eventbridge/) en su arquitectura para usar contratos de servicio de API en su aplicación. Amazon API Gateway le ayuda a integrarse directamente con servicios de AWS nativos y otros servicios web. API Gateway admite la [especificación de OpenAPI](https://github.com/OAI/OpenAPI-Specification) y el control de versiones. AWS AppSync es un [punto de conexión de GraphQL](https://graphql.org/) administrado que se configura definiendo un esquema de GraphQL para definir una interfaz de servicio para consultas, mutaciones y suscripciones. Amazon EventBridge usa esquemas de eventos para definir eventos y generar enlaces de código para sus eventos. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Primero, defina un contrato para su API. En un contrato, se expresan las capacidades de una API y se definen objetos y campos de datos estrictamente asignados para la entrada y la salida de la API. 
+  Cuando configure las API en API Gateway, puede importar y exportar las especificaciones de OpenAPI para sus puntos de conexión. 
  +  [La importación de una definición de OpenAPI](https://docs.aws.amazon.com/apigateway/latest/developerguide/import-edge-optimized-api.html) simplifica la creación de su API y se puede integrar con la infraestructura de AWS, como las herramientas de código [AWS Serverless Application Model](https://aws.amazon.com/serverless/sam/) y [AWS Cloud Development Kit (AWS CDK)](https://aws.amazon.com/cdk/). 
  +  [La exportación de una definición de API](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-export-api.html) simplifica la integración con las herramientas de prueba de API y proporciona a los consumidores de servicios una especificación de la integración. 
+  Puede definir y administrar las API de GraphQL con AWS AppSync [mediante la definición de un archivo de esquema de GraphQL](https://docs.aws.amazon.com/appsync/latest/devguide/designing-your-schema.html) para generar la interfaz del contrato y simplificar la interacción con modelos REST complejos, múltiples tablas de bases de datos o servicios heredados. 
+  [Los proyectos de AWS Amplify](https://aws.amazon.com/amplify/) que están integrados con AWS AppSync generan archivos de consulta de JavaScript estrictamente asignados para usarlos en su aplicación, así como una biblioteca de clientes de AWS AppSync GraphQL para tablas de [Amazon DynamoDB](https://aws.amazon.com/dynamodb/) . 
+  Cuando se consumen eventos de servicio de Amazon EventBridge, los eventos se ajustan a esquemas que ya existen en el registro de esquemas o que usted define con la especificación de OpenAPI. Si tiene un esquema definido en el registro, también puede generar enlaces de clientes desde el contrato de esquema para integrar el código con los eventos. 
+  Amplíe o realice un control de versiones de la API. Ampliar una API es la opción más sencilla cuando se añaden campos que se pueden configurar con campos opcionales o valores predeterminados para los campos obligatorios. 
  +  Los contratos basados en JSON para protocolos como REST y GraphQL pueden ser una buena opción para la ampliación del contrato. 
  +  Los contratos basados en XML para protocolos como SOAP deben probarse con los consumidores de servicios para determinar la viabilidad de la ampliación del contrato. 
+  Al realizar el control de versiones de una API, considere la posibilidad de implementar un control de versiones por proxy en el que se utilice una fachada para admitir las versiones, de modo que la lógica se pueda mantener en una única base de código. 
  +  Con API Gateway, puede usar [mapeos de solicitudes y respuestas](https://docs.aws.amazon.com/apigateway/latest/developerguide/request-response-data-mappings.html#transforming-request-response-body) para simplificar la absorción de los cambios en los contratos mediante el establecimiento de una fachada que proporcione valores predeterminados para los campos nuevos o para quitar los campos eliminados de una solicitud o respuesta. Con este enfoque, el servicio subyacente puede mantener una única base de código. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL03-BP02 Desarrollar servicios centrados en funcionalidades y dominios empresariales específicos](rel_service_architecture_business_domains.md) 
+  [REL04-BP02 Implementar dependencias con acoplamiento flexible](rel_prevent_interaction_failure_loosely_coupled_system.md) 
+  [REL05-BP03 Controlar y limitar las llamadas de reintento](rel_mitigate_interaction_failure_limit_retries.md) 
+  [REL05-BP05 Definir tiempos de espera del cliente](rel_mitigate_interaction_failure_client_timeouts.md) 

 **Documentos relacionados:** 
+ [ ¿Qué es una API? ](https://aws.amazon.com/what-is/api/)
+ [ Implementing Microservices on AWS (Implementación de microservicios en AWS) ](https://docs.aws.amazon.com/whitepapers/latest/microservices-on-aws/microservices-on-aws.html)
+ [ Microservice Trade-Offs (Compensaciones de microservicios) ](https://martinfowler.com/articles/microservice-trade-offs.html)
+ [ Microservicios: definición de este nuevo término de arquitectura ](https://www.martinfowler.com/articles/microservices.html)
+ [ Microservicios en AWS](https://aws.amazon.com/microservices/)
+ [ Trabajar con extensiones de API Gateway para OpenAPI ](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-swagger-extensions.html)
+ [ OpenAPI-Specification (Especificación de OpenAPI) ](https://github.com/OAI/OpenAPI-Specification)
+ [ GraphQL: Schemas and Types (GraphQL: esquemas y tipos) ](https:/graphql.org/learn/schema)
+ [ Amazon EventBridge code bindings (Enlaces de código de EventBridge) ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-schema-code-bindings.html)

 **Ejemplos relacionados:** 
+ [ Amazon API Gateway: Configuración de una API de REST con OpenAPI ](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html)
+ [ Amazon API Gateway to Amazon DynamoDB CRUD application using OpenAPI (Aplicación CRUD de Amazon API Gateway en Amazon DynamoDB mediante OpenAPI) ](https://serverlessland.com/patterns/apigw-ddb-openapi-crud?ref=search)
+ [ Modern application integration patterns in a serverless age: API Gateway Service Integration (Patrones de integración de aplicaciones modernos en una era sin servidores: integración de servicios de API Gateway) ](https://catalog.us-east-1.prod.workshops.aws/workshops/be7e1ee7-b91f-493d-93b0-8f7c5b002479/en-US/labs/asynchronous-request-response-poll/api-gateway-service-integration)
+ [ Implementing header-based API Gateway versioning with Amazon CloudFront (Implementación del control de versiones de API Gateway basado en encabezados con Amazon CloudFront) ](https://aws.amazon.com/blogs/compute/implementing-header-based-api-gateway-versioning-with-amazon-cloudfront/)
+ [AWS AppSync: Building a client application (Creación de una aplicación cliente) ](https://docs.aws.amazon.com/appsync/latest/devguide/building-a-client-app.html#aws-appsync-building-a-client-app)

 **Vídeos relacionados:** 
+ [ Using OpenAPI in AWS SAM to manage API Gateway (Uso de OpenAPI en AWS SAM para administrar API Gateway) ](https://www.youtube.com/watch?v=fet3bh0QA80)

 **Herramientas relacionadas:** 
+ [ Amazon API Gateway ](https://aws.amazon.com/api-gateway/)
+ [AWS AppSync](https://aws.amazon.com/appsync/)
+ [ Amazon EventBridge, ](https://aws.amazon.com/eventbridge/)

# REL 4 ¿Cómo diseña las interacciones en un sistema distribuido para evitar errores?
<a name="rel-04"></a>

Los sistemas distribuidos dependen de las redes de comunicaciones para interconectar componentes, como servidores o servicios. Su carga de trabajo debe funcionar de manera fiable aunque se pierdan datos o haya latencia en estas redes. Los componentes del sistema distribuido deben funcionar de forma que no repercutan negativamente en otros componentes ni en la carga de trabajo. Estas prácticas recomendadas evitan que se produzcan errores y mejoran el tiempo medio entre errores (MTBF).

**Topics**
+ [REL04-BP01 Identificar qué tipo de sistema distribuido se necesita](rel_prevent_interaction_failure_identify.md)
+ [REL04-BP02 Implementar dependencias con acoplamiento flexible](rel_prevent_interaction_failure_loosely_coupled_system.md)
+ [REL04-BP03 Realizar un trabajo constante](rel_prevent_interaction_failure_constant_work.md)
+ [REL04-BP04 Hacer que todas las respuestas sean idempotentes](rel_prevent_interaction_failure_idempotent.md)

# REL04-BP01 Identificar qué tipo de sistema distribuido se necesita
<a name="rel_prevent_interaction_failure_identify"></a>

 Los sistemas distribuidos en tiempo real estrictos requieren que las respuestas se proporcionen de forma sincrónica y rápidamente, mientras que los sistemas en tiempo real laxos cuentan con un plazo de tiempo más generoso, que se mide en minutos o más, para proporcionar una respuesta. Los sistemas sin conexión gestionan las respuestas a través del procesamiento por lotes o asincrónico. Los sistemas distribuidos en tiempo real estrictos tienen los requisitos de fiabilidad más exigentes. 

 Los desafíos más complicados [relacionados con los sistemas distribuidos](https://aws.amazon.com/builders-library/challenges-with-distributed-systems/) giran en torno a los sistemas distribuidos en tiempo real, conocidos también como servicios de solicitud/respuesta. Lo que hace que sean tan difíciles es que las solicitudes llegan de forma impredecible y las respuestas deben emitirse rápidamente (por ejemplo, si el cliente está esperando una respuesta de forma activa). Entre algunos ejemplos se incluyen los servidores web de front-end, la canalización de pedidos, las transacciones con tarjetas de crédito, todas las API de AWS y la telefonía. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Identifique qué tipo de sistema distribuido se necesita. Entre los problemas de los sistemas distribuidos se incluyen la latencia, el escalado, conocer las API de red, la serialización y deserialización de los datos, y la complejidad de algoritmos como Paxos. A medida que los sistemas crecen y se hacen más distribuidos, los casos extremos teóricos se convierten en sucesos habituales. 
  +  [La Amazon Builders' Library: Desafíos de los sistemas distribuidos](https://aws.amazon.com/builders-library/challenges-with-distributed-systems/) 
    +  Los sistemas distribuidos en tiempo real estrictos requieren que las respuestas se proporcionen de forma sincrónica y rápidamente. 
    +  Los sistemas en tiempo real laxos cuentan con un plazo más generoso, que se mide en minutos o más, para proporcionar una respuesta. 
    +  Los sistemas sin conexión gestionan las respuestas a través del procesamiento por lotes o asincrónico. 
    +  Los sistemas distribuidos en tiempo real estrictos tienen los requisitos de fiabilidad más exigentes. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon EC2: garantizar la idempotencia](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) 
+  [La Amazon Builders' Library: Desafíos de los sistemas distribuidos](https://aws.amazon.com/builders-library/challenges-with-distributed-systems/) 
+  [La Amazon Builders' Library: Fiabilidad, trabajo constante y una buena taza de café](https://aws.amazon.com/builders-library/reliability-and-constant-work/) 
+  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
+  [¿Qué es Amazon Simple Queue Service?](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html) 

 **Videos relacionados:** 
+  [Cumbre de AWS en Nueva York 2019: Introducción a las arquitecturas basadas en eventos y Amazon EventBridge (MAD205)](https://youtu.be/tvELVa9D9qU) 
+  [AWS re:Invent 2018: Bucles cerrados y mentes abiertas: cómo asumir el control de los sistemas grandes y pequeños ARC337 (incluye acoplamiento flexible, trabajo constante y estabilidad estática)](https://youtu.be/O8xLxNje30M) 
+  [AWS re:Invent 2019: Optar por arquitecturas basadas en eventos (SVS308)](https://youtu.be/h46IquqjF3E) 

# REL04-BP02 Implementar dependencias con acoplamiento flexible
<a name="rel_prevent_interaction_failure_loosely_coupled_system"></a>

 Las dependencias, como los sistemas de colas, los sistemas de transmisión, los flujos de trabajo y los equilibradores de carga, tienen un acoplamiento flexible. El acoplamiento flexible ayuda a aislar el comportamiento de un componente de otros componentes que dependen de él, lo que aumenta la resiliencia y la agilidad. 

 Si un cambio en un componente obliga a otros componentes que dependen de él a aplicar ese cambio, entonces los componentes tienen un *acoplamiento* estricto. *El acoplamiento* flexible elimina esta dependencia, de forma que los componentes dependientes solo necesitan conocer la nueva versión de la interfaz publicada. Al implementar un acoplamiento flexible entre dependencias, se aíslan los fallos que se puedan producir en una, de modo que no afecten a la otra. 

 El acoplamiento flexible le permite añadir código o funciones adicionales a un componente mientras se reduce al mínimo el riesgo para los componentes que dependen de él. Además, se mejora la escalabilidad, ya que puede escalar horizontalmente o incluso cambiar la implementación subyacente de la dependencia. 

 Para mejorar aún más la resiliencia mediante el acoplamiento flexible, haga que las interacciones entre componentes sean asíncronas siempre que sea posible. Este modelo es adecuado para cualquier interacción que no necesite una respuesta inmediata y en la que baste con el reconocimiento de que una solicitud se ha registrado. Consta de un componente que genera eventos y de otro que los consume. Ambos componentes no se integran mediante una interacción directa de punto a punto, sino que normalmente emplean una capa de almacenamiento duradera intermedia, como una cola SQS o una plataforma de retransmisión de datos como Amazon Kinesis o AWS Step Functions. 

![\[Diagrama que muestra el acoplamiento flexible de dependencias como sistemas de colas y equilibradores de carga\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/loosely-coupled-dependencies.png)


 Las colas de Amazon SQS y los equilibradores de carga elásticos son solo dos formas de añadir una capa intermedia para el acoplamiento flexible. Las arquitecturas basadas en eventos también pueden integrarse en Nube de AWS utilizando Amazon EventBridge, lo que puede abstraer a los clientes (productores de eventos) de los servicios en los que confían (consumidores de eventos). Amazon Simple Notification Service (Amazon SNS) es una solución eficaz cuando se necesita una mensajería de alto rendimiento, basada en push y de varios a varios. Utilizando temas de Amazon SNS, los sistemas de tu publicador pueden repartir mensajes por una gran cantidad de puntos de conexión de suscriptores para su procesamiento paralelo. 

 Aunque las colas ofrecen varias ventajas, en la mayoría de sistemas inflexibles en tiempo real, las solicitudes que superan un umbral temporal (que suele ser de segundos) se consideran obsoletas (el cliente ha desistido y ya no espera una respuesta), por lo que no se procesan. De esta manera, se pueden procesar las solicitudes más recientes (y probablemente aún válidas) en su lugar. 

 **Patrones de uso no recomendados comunes:** 
+  Implementar un singleton como parte de una carga de trabajo 
+  Invocar directamente las API entre capas de la carga de trabajo sin la capacidad de conmutar por error ni procesar asincrónicamente la solicitud 

 **Beneficios de establecer esta práctica recomendada:** El acoplamiento flexible ayuda a aislar el comportamiento de un componente de otros componentes que dependen de él, lo que aumenta la resiliencia y la agilidad. Un error en un componente está aislado de los demás componentes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implementar dependencias con acoplamiento flexible Las dependencias, como los sistemas de colas, los sistemas de transmisión, los flujos de trabajo y los equilibradores de carga, tienen un acoplamiento flexible. El acoplamiento flexible ayuda a aislar el comportamiento de un componente de otros componentes que dependen de él, lo que aumenta la resiliencia y la agilidad. 
  +  [AWS re:Invent 2019: Optar por arquitecturas basadas en eventos (SVS308)](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
  +  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
  +  [¿Qué es Amazon Simple Queue Service?](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html) 
    +  Amazon EventBridge le permite crear arquitecturas basadas en eventos, que tienen acoplamiento flexible y son arquitecturas distribuidas. 
      +  [Cumbre de AWS en Nueva York 2019: Introducción a las arquitecturas basadas en eventos y Amazon EventBridge (MAD205)](https://youtu.be/tvELVa9D9qU) 
    +  Si un cambio en un componente obliga a otros componentes que dependen de él a aplicar ese cambio, entonces los componentes tienen un acoplamiento estricto. El acoplamiento flexible elimina esta dependencia, de forma que los componentes dependientes solo necesitan conocer la nueva versión de la interfaz publicada. 
    +  Haga que las interacciones de los componentes sean asincrónicas siempre que sea posible. Este modelo es adecuado para cualquier interacción que no necesite una respuesta inmediata y en la que baste con el reconocimiento de que una solicitud se ha registrado. 
      +  [AWS re:Invent 2019: Aplicaciones escalables basadas en eventos sin servidor mediante Amazon SQS y Lambda (API304)](https://youtu.be/2rikdPIFc_Q) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS re:Invent 2019: Optar por arquitecturas basadas en eventos (SVS308)](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
+  [Amazon EC2: garantizar la idempotencia](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) 
+  [La Amazon Builders' Library: Desafíos de los sistemas distribuidos](https://aws.amazon.com/builders-library/challenges-with-distributed-systems/) 
+  [La Amazon Builders' Library: Fiabilidad, trabajo constante y una buena taza de café](https://aws.amazon.com/builders-library/reliability-and-constant-work/) 
+  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
+  [¿Qué es Amazon Simple Queue Service?](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html) 

 **Vídeos relacionados:** 
+  [Cumbre de AWS en Nueva York 2019: Introducción a las arquitecturas basadas en eventos y Amazon EventBridge (MAD205)](https://youtu.be/tvELVa9D9qU) 
+  [AWS re:Invent 2018: Bucles cerrados y mentes abiertas: cómo asumir el control de los sistemas grandes y pequeños ARC337 (incluye acoplamiento flexible, trabajo constante y estabilidad estática)](https://youtu.be/O8xLxNje30M) 
+  [AWS re:Invent 2019: Optar por arquitecturas basadas en eventos (SVS308)](https://youtu.be/h46IquqjF3E) 
+  [AWS re:Invent 2019: Aplicaciones escalables basadas en eventos sin servidor mediante Amazon SQS y Lambda (API304)](https://youtu.be/2rikdPIFc_Q) 

# REL04-BP03 Realizar un trabajo constante
<a name="rel_prevent_interaction_failure_constant_work"></a>

 Los sistemas pueden producir error cuando hay cambios rápidos grandes en la carga. Por ejemplo, si la carga de trabajo está realizando una comprobación de estado que supervisa el estado de miles de servidores, debería enviar siempre una carga del mismo tamaño (una instantánea completa del estado actual). Si no hay errores en ningún servidor, o hay errores en todos ellos, el sistema de comprobación de estado estará haciendo un trabajo constante sin rápidos cambios de gran tamaño. 

 Por ejemplo, si el sistema de comprobación de estado supervisa 100 000 servidores, la carga contenida en él es nominal con un porcentaje de errores del servidor normalmente bajo. Sin embargo, si un evento importante deja a la mitad de esos servidores en mal estado, el sistema de comprobación de estado se sobrecargaría intentando actualizar los sistemas de notificación y comunicar el estado a sus clientes. Por ello, el sistema de comprobación de estado debería enviar cada vez la instantánea completa del estado actual. 100 000 estados de servidor, cada uno representado por un bit, solo constituiría una carga de 12,5 KB. Si no hay errores en ningún servidor, o hay errores en todos ellos, el sistema de comprobación de estado estará haciendo un trabajo constante y los cambios rápidos de gran tamaño no pondrán en peligro la estabilidad del sistema. En realidad, así es como Amazon Route 53 gestiona las comprobaciones de estado de los puntos de conexión (como las direcciones IP) para determinar cómo se enruta a los usuarios finales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Realice un trabajo para que los sistemas no tengan errores cuando hay cambios grandes y rápidos en la carga. 
+  Implemente dependencias con acoplamiento flexible. Las dependencias, como los sistemas de colas, los sistemas de transmisión, los flujos de trabajo y los equilibradores de carga, tienen un acoplamiento flexible. El acoplamiento flexible ayuda a aislar el comportamiento de un componente de otros componentes que dependen de él, lo que aumenta la resiliencia y la agilidad. 
  +  [La Amazon Builders' Library: Fiabilidad, trabajo constante y una buena taza de café](https://aws.amazon.com/builders-library/reliability-and-constant-work/) 
  +  [AWS re:Invent 2018: Close Loops and Opening Minds: How to Take Control of Systems, Big and Small ARC337 (includes constant work) (Cerrar los bucles y abrir las mentes: cómo tomar el control de los sistemas, grandes y pequeños ARC337 [incluye trabajo constante])](https://youtu.be/O8xLxNje30M?t=2482) 
    +  En el ejemplo de una sistema de comprobación de estado que supervisa 100 000 servidores, diseñe las cargas de trabajo de forma que los tamaños de la carga útil sean iguales independientemente del número de éxitos o fracasos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon EC2: garantizar la idempotencia](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) 
+  [La Amazon Builders' Library: Desafíos de los sistemas distribuidos](https://aws.amazon.com/builders-library/challenges-with-distributed-systems/) 
+  [La Amazon Builders' Library: Fiabilidad, trabajo constante y una buena taza de café](https://aws.amazon.com/builders-library/reliability-and-constant-work/) 

 **Vídeos relacionados:** 
+  [AWS New York Summit 2019: Intro to Event-driven Architectures and Amazon EventBridge (Introducción a las arquitecturas basadas en eventos y Amazon EventBridge) (MAD205)](https://youtu.be/tvELVa9D9qU) 
+  [AWS re:Invent 2018: Close Loops and Opening Minds: How to Take Control of Systems, Big and Small ARC337 (includes constant work) (Cerrar los bucles y abrir las mentes: cómo asumir el control de los sistemas grandes y pequeños ARC337 [incluye trabajo constante])](https://youtu.be/O8xLxNje30M?t=2482) 
+  [AWS re:Invent 2018: Close Loops and Opening Minds: How to Take Control of Systems, Big and Small ARC337 (includes loose coupling, constant work, static stability) (Cerrar los bucles y abrir las mentes: cómo asumir el control de los sistemas grandes y pequeños ARC337 [incluye acoplamiento flexible, trabajo constante y estabilidad estática])](https://youtu.be/O8xLxNje30M) 
+  [AWS re:Invent 2019: Moving to event-driven architectures (Optar por arquitecturas basadas en eventos) (SVS308)](https://youtu.be/h46IquqjF3E) 

# REL04-BP04 Hacer que todas las respuestas sean idempotentes
<a name="rel_prevent_interaction_failure_idempotent"></a>

 Un servicio idempotente promete que cada solicitud se completará una y solo una vez, de tal forma que realizar varias solicitudes idénticas tiene el mismo efecto que realizar una sola solicitud. Un servicio idempotente permite que un cliente implemente fácilmente los reintentos sin el temor de que una solicitud se procese erróneamente varias veces. Para ello, los clientes pueden usar solicitudes de API con un token de idempotencia: se utiliza el mismo token siempre que se repite la solicitud. Una API de servicio idempotente usa el token para devolver una respuesta idéntica a la que se devolvió por primera vez cuando se completó la solicitud. 

 En un sistema distribuido, es fácil llevar a cabo una acción una vez como máximo (el cliente realiza solo una solicitud) o al menos una vez (sigue realizando la solicitud hasta que el cliente obtiene una confirmación del éxito). Sin embargo, es difícil garantizar que una acción es idempotente, lo que significa que se lleva a cabo *exactamente* una vez, de modo que realizar varias solicitudes idénticas tiene el mismo efecto que realizar una sola solicitud. Al usar tokens de idempotencia en las API, los servicios pueden recibir una solicitud de migración una o más veces sin crear registros duplicados ni efectos secundarios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Haga que todas las respuestas sean idempotentes. Un servicio idempotente promete que cada solicitud se completará una y solo una vez, de tal forma que realizar varias solicitudes idénticas tiene el mismo efecto que realizar una sola solicitud. 
  +  Los clientes pueden usar solicitudes de API con un token de idempotencia: se utiliza el mismo token siempre que se repite la solicitud. Una API de servicio idempotente usa el token para devolver una respuesta idéntica a la que se devolvió por primera vez cuando se completó la solicitud. 
    +  [Amazon EC2: garantizar la idempotencia](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon EC2: garantizar la idempotencia](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html) 
+  [La Amazon Builders' Library: Desafíos de los sistemas distribuidos](https://aws.amazon.com/builders-library/challenges-with-distributed-systems/) 
+  [La Amazon Builders' Library: Fiabilidad, trabajo constante y una buena taza de café](https://aws.amazon.com/builders-library/reliability-and-constant-work/) 

 **Videos relacionados:** 
+  [Cumbre de AWS en Nueva York 2019: Introducción a las arquitecturas basadas en eventos y Amazon EventBridge (MAD205)](https://youtu.be/tvELVa9D9qU) 
+  [AWS re:Invent 2018: Bucles cerrados y mentes abiertas: cómo asumir el control de los sistemas grandes y pequeños ARC337 (incluye acoplamiento flexible, trabajo constante y estabilidad estática)](https://youtu.be/O8xLxNje30M) 
+  [AWS re:Invent 2019: Optar por arquitecturas basadas en eventos (SVS308)](https://youtu.be/h46IquqjF3E) 

# REL 5 ¿Cómo diseña las interacciones en un sistema distribuido para mitigar o tolerar errores?
<a name="rel-05"></a>

Los sistemas distribuidos dependen de las redes de comunicaciones para interconectar componentes, como servidores o servicios. Su carga de trabajo debe funcionar de manera fiable aunque se pierdan datos o haya latencia en estas redes. Los componentes del sistema distribuido deben funcionar de forma que no repercutan negativamente en otros componentes ni en la carga de trabajo. Estas prácticas recomendadas permiten que las cargas de trabajo toleren el estrés o los errores, se recuperen más rápidamente de ellos y mitiguen el impacto de dichos errores. El resultado es un tiempo medio de recuperación (MTTR) mejor.

**Topics**
+ [REL05-BP01 Implementar una degradación estable para transformar las dependencias estrictas en flexibles](rel_mitigate_interaction_failure_graceful_degradation.md)
+ [REL05-BP02 Limitar las solicitudes](rel_mitigate_interaction_failure_throttle_requests.md)
+ [REL05-BP03 Controlar y limitar las llamadas de reintento](rel_mitigate_interaction_failure_limit_retries.md)
+ [REL05-BP04 Responder rápido a los errores y limitar las colas](rel_mitigate_interaction_failure_fail_fast.md)
+ [REL05-BP05 Definir tiempos de espera del cliente](rel_mitigate_interaction_failure_client_timeouts.md)
+ [REL05-BP06 Crear servicios sin estado cuando sea posible](rel_mitigate_interaction_failure_stateless.md)
+ [REL05-BP07 Implementar recursos de emergencia](rel_mitigate_interaction_failure_emergency_levers.md)

# REL05-BP01 Implementar una degradación estable para transformar las dependencias estrictas en flexibles
<a name="rel_mitigate_interaction_failure_graceful_degradation"></a>

Los componentes de la aplicación deben seguir desempeñando su función principal incluso si las dependencias dejan de estar disponibles. Es posible que proporcionen datos ligeramente obsoletos, datos alternativos o incluso ningún dato. Esto garantiza que los errores localizados solo impidan lo mínimo del funcionamiento general del sistema y, al mismo tiempo, se obtenga el valor empresarial central.

 **Resultado deseado:** Cuando las dependencias de un componente no están en buen estado, el propio componente puede seguir funcionando, aunque con la capacidad mermada. Los modos de errores de los componentes deben considerarse parte del funcionamiento normal. Los flujos de trabajo deben diseñarse de tal manera que dichos errores no produzcan un fallo total o, al menos, lleven a estados predecibles y recuperables. 

 **Patrones comunes de uso no recomendados:** 
+  No identificar la funcionalidad empresarial principal necesaria. No probar que los componentes funcionen, incluso durante los errores de dependencia. 
+  No proporcionar datos en caso de error o cuando solo una de las múltiples dependencias no está disponible y aún se pueden devolver resultados parciales. 
+  Crear un estado incoherente cuando una transacción falla parcialmente. 
+  No tener una forma alternativa de acceder a un almacén de parámetros central. 
+  Invalidar o vaciar un estado local como resultado de un fallo de actualización sin tener en cuenta las consecuencias. 

 **Beneficios de establecer esta práctica recomendada:** la degradación gradual mejora la disponibilidad del sistema en su conjunto y mantiene la funcionalidad de las funciones más importantes incluso cuando hay errores. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La implementación de una degradación gradual ayuda a minimizar el impacto de los errores de dependencia en la función de los componentes. Lo ideal sería que un componente detectara los errores de dependencia y siguiese funcionando de una forma que afectara lo mínimo a otros componentes o clientes. 

 Diseñar una arquitectura que permita una degradación gradual implica considerar los posibles modos de errores durante el diseño de las dependencias. Para cada modo de error, disponga de una forma de ofrecer la mayoría o, al menos la funcionalidad más crítica del componente, a las personas que llaman o a los clientes. Estos factores pueden convertirse en requisitos adicionales que se pueden probar y verificar. Lo ideal es que un componente pueda realizar su función principal de manera aceptable incluso cuando falla una o varias dependencias. 

 Se trata tanto de un tema empresarial como técnico. Todos los requisitos empresariales son importantes y deben cumplirse si es posible. Sin embargo, es lógico preguntarse qué debe suceder cuando no se puedan cumplir todos. Se puede diseñar un sistema para que esté disponible y sea coherente, pero en circunstancias en las que haya que eliminar un requisito, ¿cuál es más importante? En el caso del procesamiento de pagos, puede ser la coherencia. En una aplicación en tiempo real, puede ser la disponibilidad. En el caso de un sitio web orientado al cliente, la respuesta dependería de las expectativas del cliente. 

 Lo que esto significa depende de los requisitos del componente y de lo que deba considerarse su función principal. Por ejemplo: 
+  Un sitio web de comercio electrónico podría mostrar en su página de inicio los datos de varios sistemas diferentes, como las recomendaciones personalizadas, los productos mejor clasificados y el estado de los pedidos de los clientes. Cuando un sistema anterior falla, sigue siendo lógico mostrar todo lo demás en lugar de mostrar una página de error al cliente. 
+  Un componente que realiza escrituras por lotes puede seguir procesando un lote si se produce un error en una de las operaciones individuales. Implementar un mecanismo de reintento debería ser sencillo. Se puede hacer devolviendo a la persona que llama información sobre qué operaciones se han realizado correctamente, cuáles han fallado y por qué han fallado, o colocando las solicitudes que han fallado en una cola de mensajes fallidos para implementar reintentos asíncronos. También se debe registrar la información sobre las operaciones que han fallado. 
+  Un sistema que procese las transacciones debe verificar que se ejecuten todas o ninguna de las actualizaciones individuales. En el caso de las transacciones distribuidas, se puede usar el patrón Saga para revertir operaciones anteriores en caso de que falle una operación posterior de la misma transacción. En este caso, la función principal es mantener la coherencia. 
+  Los sistemas en los que el tiempo es crítico deberían poder gestionar de la manera oportuna las dependencias que no respondan. En estos casos, se puede utilizar el patrón del disyuntor. Cuando se agota el tiempo de espera de las respuestas de una dependencia, el sistema puede cambiar a un estado cerrado en el que no se realizan llamadas adicionales. 
+  Una aplicación puede leer parámetros de un almacén de parámetros. Puede resultar útil crear imágenes de contenedores con un conjunto predeterminado de parámetros y utilizarlos en caso de que ese almacén de parámetros no esté disponible. 

 Tenga en cuenta que las soluciones que se adopten en caso de fallo de un componente deben probarse y deben ser significativamente más sencillas que la solución principal. En general, [deben evitarse estrategias alternativas](https://aws.amazon.com/builders-library/avoiding-fallback-in-distributed-systems/). 

## Pasos para la implementación
<a name="implementation-steps"></a>

 Identifique las dependencias externas e internas. Considere qué tipos de errores pueden producirse en ellas. Piense en formas de minimizar el impacto negativo en los sistemas anteriores y posteriores y en los clientes durante esos errores. 

 A continuación, tenemos una lista de dependencias y cómo degradar correctamente cuando fallan: 

1.  **Fallo parcial de las dependencias:** un componente puede realizar varias solicitudes a los sistemas posteriores, ya sean varias solicitudes a un sistema o una sola solicitud destinada a varios sistemas. Dependiendo del contexto empresarial, es posible que haya diferentes formas apropiadas de gestionar este problema (para obtener más información, consulte los ejemplos anteriores en la Guía de implementación). 

1.  **Un sistema posterior no puede procesar las solicitudes debido a la alta carga:** si las solicitudes a un sistema posterior fallan constantemente, no tiene sentido seguir intentándolo. Esto puede suponer una carga adicional para un sistema ya sobrecargado y dificultar la recuperación. Aquí se puede utilizar el patrón de disyuntor, que monitoriza las llamadas que han fallado al enviarlas a un sistema posterior. Si falla un gran número de llamadas, dejará de enviar más solicitudes al sistema posterior y solo permitirá ocasionalmente el paso de las llamadas para comprobar si el sistema posterior vuelve a estar disponible. 

1.  **El almacén de parámetros no está disponible:** para transformar un almacén de parámetros, se puede utilizar el almacenamiento en caché de dependencia flexible o los valores predeterminados en buen estado que se incluyen en las imágenes de contenedores o máquinas. Tenga en cuenta que estos valores predeterminados deben mantenerse actualizados e incluirse en los conjuntos de pruebas. 

1.  **No hay disponible un servicio de monitorización u otra dependencia no funcional:** si un componente no puede enviar registros, métricas o rastros de forma intermitente a un servicio de monitorización central, suele ser mejor seguir ejecutando las funciones empresariales como de costumbre. No registrar ni subir métricas de forma silenciosa durante mucho tiempo no suele ser aceptable. Además, algunos casos de uso pueden requerir entradas de auditoría completas para satisfacer los requisitos de cumplimiento. 

1.  **Es posible que una instancia principal de una base de datos relacional no esté disponible:** Amazon Relational Database Service, como casi todas las bases de datos relacionales, solo puede tener una instancia de escritor principal. Esto crea un único punto de error para las cargas de trabajo de escritura y dificulta el escalamiento. Este problema se puede mitigar parcialmente mediante el uso de una configuración multi-AZ para alta disponibilidad o Amazon Aurora sin servidor para mejorar el escalamiento. Cuando los requisitos de disponibilidad son muy altos, podría ser conveniente no utiliza en absoluto el escritor principal. Para consultas que solo leen, se pueden utilizar réplicas de lectura, que proporcionan redundancia y capacidad de escalamiento horizontal, no solo vertical. Las escrituras se pueden almacenar en búfer, por ejemplo, en una cola de Amazon Simple Queue Service, de modo que las solicitudes de escritura de los clientes puedan seguir aceptándose incluso si la principal no está disponible temporalmente. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon API Gateway: Limitar las solicitudes de la API para mejorar el rendimiento](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) 
+  [CircuitBreaker (resumen del patrón de interruptor del libro «Release It\$1»)](https://martinfowler.com/bliki/CircuitBreaker.html) 
+  [Error Retries and Exponential Backoff in AWS (Reintentos en caso de error y retroceso exponencial en AWS)](https://docs.aws.amazon.com/general/latest/gr/api-retries.html) 
+  [Michael Nygard «Release It\$1 Design and Deploy Production-Ready Software»](https://pragprog.com/titles/mnee2/release-it-second-edition/) 
+  [La Amazon Builders' Library: Evitar el retroceso en sistemas distribuidos](https://aws.amazon.com/builders-library/avoiding-fallback-in-distributed-systems) 
+  [La Amazon Builders' Library: Evitar trabajos pendientes en colas insalvables](https://aws.amazon.com/builders-library/avoiding-insurmountable-queue-backlogs) 
+  [La Amazon Builders' Library: Desafíos y estrategias del almacenamiento en caché](https://aws.amazon.com/builders-library/caching-challenges-and-strategies/) 
+  [La Amazon Builders' Library: Tiempos de espera, reintentos y retroceso con alteración](https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/) 

 **Vídeos relacionados:** 
+  [Retry, backoff, and jitter: AWS re:Invent 2019: Introducing The Amazon Builders’ Library (DOP328) (Reintento, retroceso y fluctuación: AWS re:Invent 2019: Presentación de Amazon Builders’ Library [DOP328])](https://youtu.be/sKRdemSirDM?t=1884) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: Nivel 300: Implementación de comprobaciones de estado y administración de dependencias para mejorar la fiabilidad](https://wellarchitectedlabs.com/Reliability/300_Health_Checks_and_Dependencies/README.html) 

# REL05-BP02 Limitar las solicitudes
<a name="rel_mitigate_interaction_failure_throttle_requests"></a>

Limite las solicitudes para mitigar el agotamiento de los recursos debido a aumentos inesperados de la demanda. Las solicitudes por debajo de los índices de limitación se procesan, pero las que superan el límite definido se rechazan y se envía un mensaje que indica que la solicitud no se ha procesado a causa de la limitación. 

 **Resultado deseado:** la limitación de las solicitudes mitiga los grandes picos de volumen, ya sea debido a un aumento repentino del tráfico de clientes, a ataques por desbordamiento o a tormentas de reintentos, lo que permite que las cargas de trabajo sigan procesando de manera normal el volumen de solicitudes admitido. 

 **Patrones comunes de uso no recomendados:** 
+  Las limitaciones de puntos de conexión de la API no se implementan o se mantienen en los valores predeterminados sin tener en cuenta los volúmenes esperados. 
+  Los puntos de conexión de la API no se someten a pruebas de carga ni se prueban las limitaciones. 
+  Los índices de solicitudes se reducen sin tener en cuenta el tamaño o la complejidad de las solicitudes. 
+  Los índices o el tamaño máximos de las solicitudes se prueban, pero por separado. 
+  Los recursos no se aprovisionan con los mismos límites establecidos en las pruebas. 
+  No se han configurado ni considerado planes de uso para los consumidores de API de aplicación a aplicación (A2A). 
+  Los consumidores de cola que escalan horizontalmente no tienen configurado un valor máximo de simultaneidad. 
+  No se ha implementado la limitación de índices por dirección IP. 

 **Beneficios de establecer esta práctica recomendada:** las cargas de trabajo que establecen límites pueden funcionar con normalidad y procesar correctamente la carga de solicitudes aceptada en caso de que se produzcan picos de volumen inesperados. Los picos repentinos o sostenidos de solicitudes a las API y las colas se limitan y no agotan los recursos de procesamiento de solicitudes. Hay límites de índices que limitan a solicitantes individuales para que un gran volumen de tráfico desde una sola dirección IP o un único consumidor de API no agote los recursos y afecte a otros consumidores. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los servicios deben diseñarse para procesar una capacidad de solicitudes conocida; esta capacidad se puede establecer mediante pruebas de carga. Si los índices de llegada de solicitudes superan los límites, se emite la respuesta correspondiente que indica que la solicitud no se ha procesado a causa de las limitaciones. Esto permite al consumidor gestionar el error y volver a intentarlo más tarde. 

 Cuando su servicio requiera la implementación de limitaciones, considere la posibilidad de implementar el algoritmo del bucket de tokens, en el que un token se refiere a una solicitud. Los tokens se recargan a un índice de limitación por segundo y se vacían de forma asíncrona a un ritmo de un token por solicitud. 

![\[Diagrama que describe el algoritmo del bucket de tokens.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/token-bucket-algorithm.png)


 

 [Amazon API Gateway](https://aws.amazon.com/api-gateway/) implementa el algoritmo del bucket de tokens de acuerdo con los límites de la cuenta y la región, y se puede configurar por cliente con planes de uso. Además, [Amazon Simple Queue Service (Amazon SQS)](https://aws.amazon.com/sqs/) y [Amazon Kinesis](https://aws.amazon.com/kinesis/) pueden almacenar en búfer las solicitudes para aliviar el índice de solicitudes y permitir índices de limitaciones más altos para las solicitudes que se pueden atender. Por último, puede implementar la limitación de índices con [AWS WAF](https://aws.amazon.com/waf/) para limitar a consumidores de API específicos que generan una carga inusualmente alta. 

## Pasos para la implementación
<a name="implementation-steps"></a>

 Puede configurar API Gateway con limitaciones para sus API y devolver errores `429 Demasiadas solicitudes` cuando se superan los límites. Puede utilizar AWS WAF con sus puntos de conexión AWS AppSync y API Gateway para habilitar la limitación de índices por dirección IP. Además, si su sistema tolera el procesamiento asíncrono, puede colocar los mensajes en una cola o secuencia para acelerar las respuestas a los clientes del servicio, lo que le permite ampliar los índices de limitación más altos. 

 Con el procesamiento asíncrono, cuando se haya configurado Amazon SQS como origen de eventos para AWS Lambda, puede [configurar la simultaneidad máxima](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-max-concurrency) para evitar que los altos índices de eventos consuman la cuota de ejecución simultánea de la cuenta disponible que necesitan otros servicios de su carga de trabajo o cuenta. 

 Si bien API Gateway proporciona una implementación administrada del bucket de tokens, en los casos en que no pueda usar API Gateway, puede utilizar las implementaciones de código abierto específicas de cada lenguaje (consulte los ejemplos relacionados en Recursos) del bucket de tokens para sus servicios. 
+  Comprenda y configure [limitaciones de API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) a nivel de cuenta por región, API por etapa y clave de API por niveles de planes de uso. 
+  Utilice [reglas de limitación de índices de AWS WAF](https://aws.amazon.com/blogs/security/three-most-important-aws-waf-rate-based-rules/) para puntos de conexión de API Gateway y AWS AppSync para protegerse contra ataques de desbordamiento y bloquear las IP malintencionadas. Las reglas de limitación de índices también se pueden configurar en las claves de API de AWS AppSync para los consumidores de A2A. 
+  Analice si necesita un control de limitación superior a la limitación de índices para las API de AWS AppSync y, de ser así, configure una API Gateway enfrente de su punto de conexión de AWS AppSync. 
+  Si las colas de Amazon SQS están configuradas como disparadores para los consumidores de colas de Lambda, defina la [simultaneidad máxima](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-max-concurrency) en un valor que procese lo suficiente para cumplir los objetivos de nivel de servicio, pero que no consuma límites de simultaneidad que afecten a otras funciones Lambda. Considere la posibilidad de configurar la simultaneidad reservada en otras funciones Lambda de la misma cuenta y región cuando consuma colas con Lambda. 
+  Utilice API Gateway con integraciones de servicios nativos para Amazon SQS o Kinesis para almacenar en búfer las solicitudes. 
+  Si no puede utilizar API Gateway, consulte las bibliotecas específicas del lenguaje para implementar el algoritmo del bucket de tokens para su carga de trabajo. Consulte la sección de ejemplos e investigue por su cuenta para encontrar una biblioteca adecuada. 
+  Pruebe los límites que tiene pensado establecer o que va a permitir que se aumenten, y documente los límites probados. 
+  No aumente los límites por encima de lo que establezca en las pruebas. Cuando aumente un límite, antes de aplicar ese aumento, compruebe que los recursos aprovisionados son equivalentes o superiores a los de los escenarios de prueba. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL04-BP03 Realizar un trabajo constante](rel_prevent_interaction_failure_constant_work.md) 
+  [REL05-BP03 Controlar y limitar las llamadas de reintento](rel_mitigate_interaction_failure_limit_retries.md) 

 **Documentos relacionados:** 
+  [Amazon API Gateway: Limitar las solicitudes de la API para mejorar el rendimiento](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html) 
+ [AWS WAF: Rate-based rule statement (Declaración de la regla basada en índices) ](https://docs.aws.amazon.com/waf/latest/developerguide/waf-rule-statement-type-rate-based.html)
+ [ Introducing maximum concurrency of AWS Lambda when using Amazon SQS as an event source (Introducción a la simultaneidad máxima de funciones AWS Lambda cuando Amazon SQS se utiliza como origen de los eventos) ](https://aws.amazon.com/blogs/compute/introducing-maximum-concurrency-of-aws-lambda-functions-when-using-amazon-sqs-as-an-event-source/)
+ [AWS Lambda: Simultaneidad máxima ](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#events-sqs-max-concurrency)

 **Ejemplos relacionados:** 
+ [ The three most important AWS WAF rate-based rules (Las tres reglas más importantes basadas en índices de AWS WAF) ](https://aws.amazon.com/blogs/security/three-most-important-aws-waf-rate-based-rules/)
+ [ Java Bucket4j ](https://github.com/bucket4j/bucket4j)
+ [ Python token-bucket (Bucket de tokens de Python) ](https://pypi.org/project/token-bucket/)
+ [ Node token-bucket (Bucket de tokens de nodos) ](https://www.npmjs.com/package/tokenbucket)
+ [ .NET System Threading Rate Limiting (Limitación de índices de subprocesos del sistema .NET) ](https://www.nuget.org/packages/System.Threading.RateLimiting)

 **Vídeos relacionados:** 
+ [ Implementing GraphQL API security best practices with AWS AppSync (Implementación de prácticas recomendadas de seguridad de la API GraphQL con AWS AppSync) ](https://www.youtube.com/watch?v=1ASMLeJ_15U)

 **Herramientas relacionadas:** 
+ [ Amazon API Gateway ](https://aws.amazon.com/api-gateway/)
+ [AWS AppSync](https://aws.amazon.com/appsync/)
+ [ Amazon SQS ](https://aws.amazon.com/sqs/)
+ [ Amazon Kinesis ](https://aws.amazon.com/kinesis/)
+ [AWS WAF](https://aws.amazon.com/waf/)

# REL05-BP03 Controlar y limitar las llamadas de reintento
<a name="rel_mitigate_interaction_failure_limit_retries"></a>

Utilice un retroceso exponencial para reintentar las solicitudes a intervalos progresivamente más largos entre cada reintento. Introduzca una fluctuación entre reintentos para aleatorizar los intervalos de reintentos. Limite el número máximo de reintentos.

 **Resultado deseado:** entre los componentes típicos de un sistema de software distribuido se incluyen servidores, equilibradores de carga, bases de datos y servidores DNS. Durante el funcionamiento normal, estos componentes pueden responder a las solicitudes con errores temporales o limitados, y también con errores que serían persistentes independientemente de los reintentos. Cuando los clientes realizan solicitudes a los servicios, esas solicitudes consumen recursos, como memoria, subprocesos, conexiones, puertos o cualquier otro recurso limitado. Controlar y limitar los reintentos es una estrategia para liberar y minimizar el consumo de recursos, de modo que los componentes del sistema sometidos a presión no se sobrecarguen. 

 Cuando se agota el tiempo de espera de las solicitudes del cliente o se reciben respuestas de error, deben determinar si deben volver a intentarlo o no. Si lo vuelven a intentar, lo hacen con un retroceso exponencial con fluctuaciones y un valor de reintento máximo. Como resultado, los servicios y procesos de backend tienen menos carga y más tiempo para recuperarse automáticamente, lo que se traduce en una recuperación más rápida y una tramitación satisfactoria de las solicitudes. 

 **Patrones comunes de uso no recomendados:** 
+  Implementar los reintentos sin añadir valores de retroceso exponencial, fluctuación y reintentos máximos. El retroceso y la fluctuación ayudan a evitar picos de tráfico artificiales debidos a reintentos coordinados involuntariamente a intervalos comunes. 
+  Implementar reintentos sin probar sus efectos o asumir que los reintentos ya están integrados en un SDK sin probar los escenarios de reintento. 
+  No entender los códigos de error publicados de las dependencias, lo que lleva a volver a intentar todos los errores, incluidos los que tienen una causa clara que indica una falta de permisos, un error de configuración u otro problema que es de esperar que no se pueda resolver sin una intervención manual. 
+  No utilizar prácticas de observabilidad, como monitorización y alertas en caso de errores de servicio repetidos, para conocer problemas subyacentes y poder solucionarlos. 
+  Desarrollar mecanismos de reintento personalizados cuando son suficientes las capacidades de reintento integradas o de terceros. 
+  Realizar reintentos en varias capas de la pila de aplicaciones de una forma que se acumulen, lo que consume aún más recursos en una tormenta de reintentos. Asegúrese de entender cómo afectan estos errores a las dependencias en las que se basa y, a continuación, implemente los reintentos en un solo nivel. 
+  Reintentar llamadas de servicio que no son idempotentes, lo que provoca efectos secundarios inesperados, como resultados duplicados. 

 **Beneficios de establecer esta práctica recomendada:** los reintentos ayudan a los clientes a obtener los resultados deseados cuando las solicitudes fallan, pero también consumen más tiempo del servidor para obtener las respuestas satisfactorias que desean. Cuando los errores son poco frecuentes o transitorios, los reintentos funcionan bien. Cuando los errores se deben a una sobrecarga de recursos, los reintentos pueden empeorar las cosas. Añadir un retroceso exponencial con fluctuaciones para los reintentos de los clientes permite que los servidores se recuperen cuando los errores se deben a una sobrecarga de recursos. La fluctuación evita que haya picos de solicitudes y el retroceso disminuye el escalamiento de la carga provocado por la adición de reintentos a la carga normal de solicitudes. Por último, es importante configurar un número de reintentos máximo o un tiempo transcurrido máximo para evitar que se acumulen tareas pendientes que generen errores metaestables. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Controle y limite las llamadas de reintento. Use el retroceso exponencial para los reintentos tras intervalos cada vez más largos. Introduzca una fluctuación para aleatorizar los intervalos de reintento y limite el número máximo de reintentos. 

 Algunos SDK de AWS implementan los reintentos y el retroceso exponencial de forma predeterminada. Utilice estas implementaciones de AWS integradas cuando corresponda en su carga de trabajo. Implemente una lógica similar en su carga de trabajo cuando llame a servicios que sean idempotentes y en los que los reintentos mejoren la disponibilidad de sus clientes. Decida cuáles son los tiempos de espera y cuándo dejar de reintentar según su caso de uso. Cree y realice escenarios de prueba para esos casos de uso de reintentos. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Determine la capa óptima de la pila de aplicaciones para implementar los reintentos de los servicios de los que depende su aplicación. 
+  Tenga en cuenta que los SDK existentes implementan estrategias de reintento probadas con retroceso exponencial y fluctuaciones para el lenguaje que elija, y dé preferencia a estas estrategias en lugar de escribir sus propias implementaciones de reintentos. 
+  Verifique que [los servicios sean idempotentes](https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/) antes de implementar los reintentos. Una vez implementados, asegúrese de que se prueben y se utilicen regularmente en producción. 
+  Al llamar a las API del servicio de AWS, utilice los [SDK de AWS](https://docs.aws.amazon.com/sdkref/latest/guide/feature-retry-behavior.html) y [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-retries.html) y comprenda las opciones de configuración de reintentos. Determine si los valores predeterminados funcionan para su caso de uso, pruébelos y ajústelos según sea necesario. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+   
+  [REL05-BP02 Limitar las solicitudes](rel_mitigate_interaction_failure_throttle_requests.md) 
+  [REL05-BP04 Responder rápido a los errores y limitar las colas](rel_mitigate_interaction_failure_fail_fast.md) 
+  [REL05-BP05 Definir tiempos de espera del cliente](rel_mitigate_interaction_failure_client_timeouts.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 

 **Documentos relacionados:** 
+  [Error Retries and Exponential Backoff in AWS (Reintentos en caso de error y retroceso exponencial en AWS)](https://docs.aws.amazon.com/general/latest/gr/api-retries.html) 
+  [La Amazon Builders' Library: Tiempos de espera, reintentos y retroceso con alteración](https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/) 
+ [ Exponential backoff and jitter (Retroceso exponencial y fluctuación) ](https://aws.amazon.com/blogs/architecture/exponential-backoff-and-jitter/)
+ [ Making retries safe with idempotent APIs (Hacer que los reintentos sean seguros con API idempotentes) ](https://aws.amazon.com/builders-library/making-retries-safe-with-idempotent-APIs/)

 **Ejemplos relacionados:** 
+ [ Spring Retry (Reintento de Spring) ](https://github.com/spring-projects/spring-retry)
+ [ Resilience4j Retry (Reintento de Resilience4j) ](https://resilience4j.readme.io/docs/retry)

 **Vídeos relacionados:** 
+  [Retry, backoff, and jitter: AWS re:Invent 2019: Introducing The Amazon Builders’ Library (DOP328) (Reintento, retroceso y fluctuación: AWS re:Invent 2019: Presentación de Amazon Builders’ Library [DOP328])](https://youtu.be/sKRdemSirDM?t=1884) 

 **Herramientas relacionadas:** 
+ [AWS SDKs and Tools: Retry behavior (SDK y herramientas de AWS: comportamiento de reintento) ](https://docs.aws.amazon.com/sdkref/latest/guide/feature-retry-behavior.html)
+ [AWS Command Line Interface: Reintentos de AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-retries.html)

# REL05-BP04 Responder rápido a los errores y limitar las colas
<a name="rel_mitigate_interaction_failure_fail_fast"></a>

Cuando un servicio no pueda responder correctamente a una solicitud, responda rápido a los errores. Esto permite que se liberen los recursos asociados a una solicitud y que un servicio se recupere cuando se le agotan los recursos. La respuesta rápida a los errores es un patrón de diseño de software bien establecido que se puede utilizar para conseguir cargas de trabajo enormemente fiables en la nube. Las colas también son un patrón de integración empresarial bien establecido que puede suavizar la carga y permitir a los clientes liberar recursos cuando se pueda tolerar el procesamiento asíncrono. Cuando un servicio puede responder correctamente en condiciones normales, pero falla cuando el índice de solicitudes es demasiado alto, utilice una cola para almacenar en búfer las solicitudes. Sin embargo, no permita que se acumulen largas colas de tareas pendientes, ya que eso podría hacer que se procesaran solicitudes obsoletas a las que un cliente ya ha renunciado.

 **Resultado deseado:** cuando los sistemas sufren contención de recursos, tiempos de espera, excepciones o errores grises que hacen que los objetivos de nivel de servicio sean inalcanzables, las estrategias de respuesta rápida a los errores permiten recuperar el sistema más rápido. Los sistemas que deben absorber los picos de tráfico y pueden adaptarse al procesamiento asíncrono pueden mejorar la fiabilidad al permitir a los clientes liberar rápidamente las solicitudes mediante el uso de colas para almacenar en búfer las solicitudes a los servicios de backend. Cuando las solicitudes a las colas se almacenan en búfer, se implementan estrategias de administración de colas para evitar retrasos insuperables. 

 **Patrones comunes de uso no recomendados:** 
+  Implementar colas de mensajes, pero no configurar colas de mensajes fallidos (DLQ) ni alarmas en los volúmenes de DLQ para detectar cuándo está fallando un sistema. 
+  No medir la antigüedad de los mensajes de una cola, que es una medida de la latencia para saber cuándo los usuarios de la cola sufren retrasos o producen errores que dan lugar a reintentos. 
+  No borrar los mensajes pendientes de una cola cuando no sirve de nada procesar esos mensajes si la empresa ya no necesita hacerlo. 
+  Configurar colas de primero en entrar/primero en salir (FIFO) cuando las colas de último en entrar, primero en salir (LIFO) responderían mejor a las necesidades de los clientes, por ejemplo, cuando no se requieren pedidos estrictos y el procesamiento pendiente retrasa todas las solicitudes nuevas y urgentes, lo que hace que se infrinjan los niveles de servicio de todos los clientes. 
+  Exponer las colas internas a los clientes en lugar de exponer las API que administran la entrada de trabajo y colocan las solicitudes en colas internas. 
+  Combinar demasiados tipos de solicitudes de trabajo en una sola cola puede agravar las condiciones de las tareas pendientes al distribuir la demanda de recursos entre los tipos de solicitudes. 
+  Procesar solicitudes complejas y simples en la misma cola, a pesar de necesitar diferentes niveles de monitorización, tiempos de espera y asignaciones de recursos. 
+  No validar las entradas ni utilizar afirmaciones para implementar mecanismos de respuesta rápida a los errores en el software que envíen las excepciones a componentes de nivel superior que puedan gestionar los errores con facilidad. 
+  No eliminar los recursos que fallan del enrutamiento de solicitudes, especialmente cuando los errores grises emiten tanto éxitos como errores debido a bloqueos y reinicios, errores de dependencia intermitentes, una reducción de la capacidad o la pérdida de paquetes de red. 

 **Beneficios de establecer esta práctica recomendada:** los sistemas que responden rápido a los errores son más fáciles de depurar y corregir y, a menudo, revelan problemas de codificación y configuración antes de que las versiones se publiquen en producción. Los sistemas que incorporan estrategias de puesta en cola eficaces tienen una mayor resiliencia y fiabilidad a los picos de tráfico y a las condiciones de errores intermitentes del sistema. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Las estrategias de respuesta rápida a los errores pueden codificarse en soluciones de software y también configurarse en la infraestructura. Además de la respuesta rápida a los errores, las colas son una técnica arquitectónica sencilla pero potente para desacoplar los componentes del sistema sin problemas de carga. [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) proporciona capacidades para monitorizar los errores y alertar en caso de que existan. Una vez que se sabe que un sistema está fallando, se pueden invocar estrategias de mitigación, como el alejamiento de los recursos deteriorados. Cuando los sistemas implementan colas con [Amazon SQS](https://aws.amazon.com/sqs/) y otras tecnologías de cola para facilitar la carga, deben considerar cómo administrar los atrasos en las colas, así como los errores en el consumo de mensajes. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Implemente afirmaciones programáticas o métricas específicas en su software y utilícelas para alertar explícitamente sobre problemas del sistema. Amazon CloudWatch le ayuda a crear métricas y alarmas basadas en el patrón de registro de la aplicación y la instrumentación del SDK. 
+  Utilice métricas y alarmas de CloudWatch para alejarse de los recursos deteriorados que aumentan la latencia del procesamiento o que no procesan las solicitudes de forma reiterada. 
+  Utilice el procesamiento asíncrono diseñando API que acepten solicitudes y las anexen a las colas internas mediante Amazon SQS y luego respondan al cliente que produce los mensajes con un mensaje de éxito, de modo que el cliente pueda liberar recursos y continuar con otras tareas mientras los consumidores de la cola del backend procesan las solicitudes. 
+  Mida y monitorice la latencia de procesamiento de las colas generando una métrica de CloudWatch cada vez que se retire un mensaje de una cola comparándolo en ese momento con la marca de tiempo del mensaje. 
+  Cuando los errores impidan procesar correctamente los mensajes o los picos de tráfico en los volúmenes que no se pueden procesar dentro de los acuerdos de nivel de servicio, aparte el tráfico antiguo o excesivo y colóquelo en una cola secundaria. Esto permite procesar de forma prioritaria los trabajos nuevos y dejar los antiguos para cuando haya capacidad disponible. Esta técnica es una aproximación al procesamiento LIFO y permite que el sistema procese normalmente todos los trabajos nuevos. 
+  Utilice colas de mensajes fallidos o redireccione las colas para sacar de la lista de espera los mensajes que no se puedan procesar y colocarlos en una ubicación que pueda investigarse y resolverse más adelante 
+  Vuelva a intentarlo o, cuando sea tolerable, elimine los mensajes antiguos comparándolos en ese momento con la marca de tiempo del mensaje y descartando los mensajes que ya no sean relevantes para el cliente que los ha solicitado. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL04-BP02 Implementar dependencias con acoplamiento flexible](rel_prevent_interaction_failure_loosely_coupled_system.md) 
+  [REL05-BP02 Limitar las solicitudes](rel_mitigate_interaction_failure_throttle_requests.md) 
+  [REL05-BP03 Controlar y limitar las llamadas de reintento](rel_mitigate_interaction_failure_limit_retries.md) 
+  [REL06-BP02 Definir y calcular métricas (agregación)](rel_monitor_aws_resources_notification_aggregation.md) 
+  [REL06-BP07 Supervisar el seguimiento de las solicitudes de principio a fin en todo el sistema](rel_monitor_aws_resources_end_to_end.md) 

 **Documentos relacionados:** 
+ [ Cómo evitar demoras de colas insuperables ](https://aws.amazon.com/builders-library/avoiding-insurmountable-queue-backlogs/)
+  [Respuesta rápida a errores](https://www.martinfowler.com/ieeeSoftware/failFast.pdf) 
+ [ How can I prevent an increasing backlog of messages in my Amazon SQS queue? (¿Cómo puedo evitar que se acumulen mensajes en mi cola de Amazon SQS? ](https://repost.aws/knowledge-center/sqs-message-backlog)
+ [ Elastic Load Balancing: Zonal Shift (Cambio de zona) ](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/zonal-shift.html)
+ [ Amazon Route 53 Application Recovery Controller: Routing control for traffic failover (Amazon Route 53 Application Recovery Controller: control de enrutamiento para conmutación por error del tráfico) ](https://docs.aws.amazon.com/r53recovery/latest/dg/getting-started-routing-controls.html)

 **Ejemplos relacionados:** 
+ [ Enterprise Integration Patterns: Dead Letter Channel (Patrones de integración empresarial: canal de mensajes fallidos) ](https://www.enterpriseintegrationpatterns.com/patterns/messaging/DeadLetterChannel.html)

 **Vídeos relacionados:** 
+  [AWS re:Invent 2022 - Operating highly available Multi-AZ applications (AWS re:Invent 2022: Funcionamiento de aplicaciones multi-AZ de alta disponibilidad)](https://www.youtube.com/watch?v=mwUV5skJJ0s) 

 **Herramientas relacionadas:** 
+ [ Amazon SQS ](https://aws.amazon.com/sqs/)
+ [ Amazon MQ ](https://aws.amazon.com/amazon-mq/)
+ [AWS IoT Core](https://aws.amazon.com/iot-core/)
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)

# REL05-BP05 Definir tiempos de espera del cliente
<a name="rel_mitigate_interaction_failure_client_timeouts"></a>

Defina tiempos de espera adecuados para las conexiones y las solicitudes, verifíquelos sistemáticamente y no use los valores predeterminados, ya que no tienen en cuenta las características específicas de la carga de trabajo.

 **Resultado deseado:** en los tiempos de espera de los clientes, se debe tener en cuenta el coste para el cliente, el servidor y la carga de trabajo asociados a la espera de las solicitudes que tardan un tiempo anormal en completarse. Dado que no es posible conocer la causa exacta de ningún tiempo de espera, los clientes deben utilizar el conocimiento de los servicios para fijar expectativas sobre las causas probables y los tiempos de espera adecuados. 

 El tiempo de espera de las conexiones del cliente se agota en función de los valores configurados. Cuando el tiempo de espera se agota, los clientes toman la decisión de dar marcha atrás y volver a intentarlo o abrir un [disyuntor](https://martinfowler.com/bliki/CircuitBreaker.html). Estos patrones evitan que se emitan solicitudes que puedan agravar una condición de error subyacente. 

 **Patrones comunes de uso no recomendados:** 
+  No estar al tanto de los tiempos de espera del sistema o de los tiempos de espera predeterminados. 
+  No estar al tanto del tiempo normal de finalización de las solicitudes. 
+  No conocer las posibles causas por las que las solicitudes tardan un tiempo anormalmente largo en completarse ni los costes para el rendimiento del cliente, el servicio o la carga de trabajo asociados a la espera a que se completen. 
+  No conocer la probabilidad de que la red deteriorada haga que una solicitud falle solo una vez que se haya agotado el tiempo de espera, ni de los costes que supone para el rendimiento del cliente y la carga de trabajo no utilizar un tiempo de espera más corto. 
+  No probar escenarios de tiempo de espera tanto para las conexiones como para las solicitudes. 
+  Definir tiempos de espera demasiado altos, lo que puede provocar tiempos de espera prolongados y aumentar la utilización de los recursos. 
+  Definir tiempos de espera demasiado bajos, lo que provoca errores artificiales. 
+  Pasar por alto los patrones para solucionar los errores de tiempo de espera de las llamadas remotas, como disyuntores y reintentos. 
+  No considerar la posibilidad de monitorizar los índices de errores de las llamadas de servicio, los objetivos de nivel de servicio referentes a la latencia y los valores atípicos de latencia. Estas métricas pueden proporcionar información sobre tiempos de espera agresivos o permisivos. 

 **Beneficios de establecer esta práctica recomendada:** los tiempos de espera de las llamadas remotas están configurados y los sistemas están diseñados para gestionar los tiempos de espera correctamente, de modo que los recursos se conserven cuando las llamadas remotas responden con una lentitud anormal y los clientes del servicio gestionan correctamente los errores de tiempo de espera. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Defina un tiempo de espera de conexión y un tiempo de espera de solicitud en cualquier llamada de dependencia del servicio y, normalmente, en todas las llamadas de los procesos. Muchos marcos integran capacidades de tiempo de espera, pero tenga cuidado, ya que algunos tienen valores predeterminados que son infinitos o superiores a lo aceptable para sus objetivos de servicio. Un valor demasiado alto reduce la utilidad del tiempo de espera porque se siguen consumiendo recursos mientras el cliente espera a que transcurra el tiempo de espera. Un valor demasiado bajo puede generar un aumento del tráfico en el backend y un aumento de la latencia debido a que las solicitudes realizan demasiados reintentos. En algunos casos, esto puede producir una interrupción completa si se reintentan todas las solicitudes. 

 Tenga en cuenta lo siguiente al determinar las estrategias de tiempo de espera: 
+  Las solicitudes pueden tardar más de lo normal en procesarse debido a su contenido, a deficiencias en un servicio de destino o a un error en la partición de la red. 
+  Las solicitudes con contenido anormalmente caro podrían consumir recursos innecesarios del servidor y del cliente. En este caso, si se agota el tiempo de espera de estas solicitudes y no se vuelven a intentar, se pueden conservar los recursos. Los servicios también deberían protegerse del contenido anormalmente caro con restricciones y tiempos de espera del lado del servidor. 
+  Se puede agotar el tiempo de espera y volver a intentar las solicitudes que tarden un tiempo anormalmente largo debido a una interrupción del servicio. Se deben tener en cuenta los costes del servicio de la solicitud y el reintento, pero si la causa es una deficiencia localizada, es probable que el reintento no sea caro y reduzca el consumo de recursos del cliente. El tiempo de espera también puede liberar recursos del servidor según la naturaleza de la deficiencia. 
+  Se puede agotar el tiempo de espera y volver a intentar las solicitudes que tarden mucho en completarse porque la red no ha podido entregar la solicitud o la respuesta. Como la solicitud o la respuesta no se han entregado, el resultado habría sido un error independientemente del tiempo de espera. En este caso, el tiempo de espera no liberará los recursos del servidor, pero sí liberará los recursos del cliente y mejorará el rendimiento de la carga de trabajo. 

 Aproveche patrones de diseño bien establecidos, como los reintentos y los disyuntores, para gestionar los tiempos de espera correctamente y ofrecer enfoques de respuesta rápida a los errores. [Los SDK de AWS](https://docs.aws.amazon.com/index.html#sdks) y [AWS CLI](https://aws.amazon.com/cli/) permiten configurar los tiempos de espera de las conexiones y las solicitudes y los reintentos con un retroceso exponencial y fluctuaciones. [Las funciones de AWS Lambda](https://aws.amazon.com/lambda/) admiten la configuración de tiempos de espera, y con [AWS Step Functions](https://aws.amazon.com/step-functions/), puede crear disyuntores de poco código que utilicen integraciones predefinidas con los servicios y los SDK de AWS. [AWS App Mesh](https://aws.amazon.com/app-mesh/) Envoy incluye capacidades de tiempo de espera y de disyuntor. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Configure tiempos de espera en las llamadas de servicio remotas y aproveche las características integradas de tiempo de espera del lenguaje o las bibliotecas de tiempo de espera de código abierto. 
+  Cuando su carga de trabajo realice llamadas con un SDK de AWS, consulte la documentación para ver la configuración del tiempo de espera específica de cada lenguaje. 
  + [ Python ](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html)
  + [ PHP ](https://docs.aws.amazon.com/aws-sdk-php/v3/api/class-Aws.DefaultsMode.Configuration.html)
  + [ .NET ](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/retries-timeouts.html)
  + [ Ruby ](https://docs.aws.amazon.com/sdk-for-ruby/v3/developer-guide/timeout-duration.html)
  + [ Java ](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/best-practices.html#bestpractice5)
  + [ Go ](https://aws.github.io/aws-sdk-go-v2/docs/configuring-sdk/retries-timeouts/#timeouts)
  + [ Node.js ](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Config.html)
  + [ C\$1\$1 ](https://docs.aws.amazon.com/sdk-for-cpp/v1/developer-guide/client-config.html)
+  Cuando utilice SDK de AWS o comandos de la AWS CLI en su carga de trabajo, defina los valores predeterminados de AWS [al configurar los valores de tiempo de espera predeterminados](https://docs.aws.amazon.com/sdkref/latest/guide/feature-smart-config-defaults.html) para `connectTimeoutInMillis` y `tlsNegotiationTimeoutInMillis`. 
+  Utilice [las opciones de línea de comandos](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-options.html) `cli-connect-timeout` y `cli-read-timeout` para controlar comandos de la AWS CLI puntuales de los servicios de AWS. 
+  Monitorice las llamadas de servicio remotas para comprobar si hay tiempos de espera y configure alarmas en caso de errores persistentes para poder gestionar los escenarios de error de forma proactiva. 
+  Implemente [Métricas de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) y [detección de anomalías de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Anomaly_Detection.html) en los índices de error de las llamadas, los objetivos de nivel de servicio en lo que se refiere a la latencia y los valores atípicos de latencia para proporcionar información sobre la administración de tiempos de espera demasiado agresivos o permisivos. 
+  Configure tiempos de espera en [funciones de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-timeout-console). 
+  Los clientes de API Gateway deben implementar sus propios reintentos al gestionar los tiempos de espera. API Gateway admite un [tiempo de espera de integración de 50 milisegundos a 29 segundos](https://docs.aws.amazon.com/apigateway/latest/developerguide/limits.html#api-gateway-execution-service-limits-table) para integraciones posteriores y no vuelve a intentarlo cuando se agota el tiempo de espera de las solicitudes de integración. 
+  Implemente el patrón de [disyuntor](https://martinfowler.com/bliki/CircuitBreaker.html) para que no se realicen llamadas remotas cuando se agote el tiempo de espera. Abra el circuito para evitar llamadas fallidas y ciérrelo cuando las llamadas respondan normalmente. 
+  Para cargas de trabajo basadas en contenedores, consulte las características de [App Mesh Envoy](https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy.html) para utilizar los tiempos de espera y los disyuntores integrados. 
+  Utilice AWS Step Functions para crear disyuntores de poco código para las llamadas de servicio remotas, especialmente cuando se utilizan SDK nativos de AWS e integraciones de Step Functions compatibles para simplificar la carga de trabajo. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL05-BP03 Controlar y limitar las llamadas de reintento](rel_mitigate_interaction_failure_limit_retries.md) 
+  [REL05-BP04 Responder rápido a los errores y limitar las colas](rel_mitigate_interaction_failure_fail_fast.md) 
+  [REL06-BP07 Supervisar el seguimiento de las solicitudes de principio a fin en todo el sistema](rel_monitor_aws_resources_end_to_end.md) 

 **Documentos relacionados:** 
+  [AWS SDK: Retries and Timeouts (SDK de AWS: reintentos y tiempos de espera)](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/retries-timeouts.html) 
+  [La Amazon Builders' Library: Tiempos de espera, reintentos y retroceso con alteración](https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/) 
+ [ Cuotas de Amazon API Gateway y notas importantes ](https://docs.aws.amazon.com/apigateway/latest/developerguide/limits.html)
+ [AWS Command Line Interface: Command line options (Opciones de línea de comandos) ](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-options.html)
+ [AWS SDK for Java 2.x: Configure API Timeouts (Configurar los tiempos de espera de la API) ](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/best-practices.html#bestpractice5)
+ [AWS Botocore using the config object and Config Reference (AWS Botocore: Uso del objeto config y referencia de configuración) ](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html#using-the-config-object)
+ [AWS SDK para .NET: Retries and Timeouts (Reintentos y tiempos de espera) ](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/retries-timeouts.html)
+ [AWS Lambda: Configuring Lambda function options (Configuración de las opciones de la función Lambda) ](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html)

 **Ejemplos relacionados:** 
+ [ Using the circuit breaker pattern with AWS Step Functions and Amazon DynamoDB (Uso del patrón del disyuntor con AWS Step Functions y Amazon DynamoDB) ](https://aws.amazon.com/blogs/compute/using-the-circuit-breaker-pattern-with-aws-step-functions-and-amazon-dynamodb/)
+ [ Martin Fowler: CircuitBreaker (Disyuntor) ](https://martinfowler.com/bliki/CircuitBreaker.html?ref=wellarchitected)

 **Herramientas relacionadas:** 
+ [ SDK de AWS](https://docs.aws.amazon.com/index.html#sdks)
+ [AWS Lambda](https://aws.amazon.com/lambda/)
+ [ Amazon SQS ](https://aws.amazon.com/sqs/)
+ [AWS Step Functions](https://aws.amazon.com/step-functions/)
+ [AWS Command Line Interface](https://aws.amazon.com/cli/)

# REL05-BP06 Crear servicios sin estado cuando sea posible
<a name="rel_mitigate_interaction_failure_stateless"></a>

 Los servicios deben o bien no requerir estado o bien descargar el estado, de forma que entre solicitudes de clientes distintos no haya dependencia en los datos almacenados localmente en disco y en memoria. Esto permite reemplazar los servidores a voluntad sin que la disponibilidad resulte afectada. Amazon ElastiCache y Amazon DynamoDB son buenos destinos para el estado descargado. 

![\[En esta aplicación web sin estado, el estado de la sesión se descarga en Amazon ElastiCache.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/stateless-webapp.png)


 Cuando los usuarios o los servicios interactúan con una aplicación, suelen realizar una serie de interacciones que constituyen una sesión. Una sesión es un dato único para los usuarios que persiste entre las solicitudes mientras utilizan la aplicación. Una aplicación sin estado es aquella que no necesita conocer las interacciones anteriores y no almacena la información de la sesión. 

 Una vez se ha diseñado para no tener estado, puede utilizar servicios de computación sin servidor, como AWS Lambda o AWS Fargate. 

 Además del reemplazo del servidor, otro beneficio de las aplicaciones sin estado es que pueden escalar horizontalmente porque cualquiera de los recursos de computación disponibles (como las instancias EC2 y funciones AWS Lambda) puede dar servicio a cualquier solicitud. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Haga que sus aplicaciones no tengan estado. Las aplicaciones sin estado permiten el escalado horizontal y toleran el error de un nodo individual. 
  +  Elimine el estado que realmente podría almacenarse en parámetros de solicitud. 
  +  Tras examinar si el estado es realmente necesario, mueva cualquier seguimiento de estado a una caché o un almacén de datos resilientes de varias zonas como Amazon ElastiCache, Amazon RDS, Amazon DynamoDB o una solución de datos distribuidos de terceros. Almacene el estado que no se pudo mover a almacenes de datos resilientes. 
    +  Algunos datos (como las cookies) se pueden pasar a encabezados o parámetros de consulta. 
    +  Refactorice para eliminar el estado que se puede pasar rápidamente a las solicitudes. 
    +  Algunos datos pueden no resultar realmente necesarios para la solicitud y pueden recuperarse bajo demanda. 
    +  Elimine los datos que se puedan recuperar asincrónicamente. 
    +  Elija un almacén de datos que cumpla los requisitos para el estado requerido. 
    +  Considere la posibilidad de usar una base de datos NoSQL para datos no relacionales. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [La Amazon Builders' Library: Evitar el retroceso en sistemas distribuidos](https://aws.amazon.com/builders-library/avoiding-fallback-in-distributed-systems) 
+  [La Amazon Builders' Library: Evitar trabajos pendientes en colas insalvables](https://aws.amazon.com/builders-library/avoiding-insurmountable-queue-backlogs) 
+  [La Amazon Builders' Library: Desafíos y estrategias del almacenamiento en caché](https://aws.amazon.com/builders-library/caching-challenges-and-strategies/) 

# REL05-BP07 Implementar recursos de emergencia
<a name="rel_mitigate_interaction_failure_emergency_levers"></a>

 Los recursos de emergencia son procesos rápidos que pueden mitigar el impacto en la disponibilidad en su carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Implemente recursos de emergencia. Se trata de procesos rápidos que pueden mitigar el impacto en la disponibilidad de su carga de trabajo. Se pueden operar en ausencia de una causa raíz. Un recurso de emergencia ideal reduciría la carga cognitiva de las personas encargadas de la resolución a cero al proporcionar criterios de activación y desactivación totalmente deterministas. Estos recursos de emergencia suelen ser manuales, pero también se pueden automatizar. 
  +  Entre los recursos de emergencia se incluyen: 
    +  Bloqueo de todo el tráfico robótico 
    +  Presentación de páginas estáticas en lugar de páginas dinámicas 
    +  Reducción de la frecuencia de llamadas a una dependencia 
    +  Limitación de llamadas desde dependencias 
  +  Consejos para implementar y usar recursos de emergencia 
    +  Al activar los recursos de emergencia, trabaje MENOS, no más. 
    +  Cree recursos sencillos y evite el comportamiento bimodal. 
    +  Pruébelos periódicamente. 
  +  Estos son ejemplos de acciones que NO son recursos de emergencia. 
    +  Añadir capacidad 
    +  Llamar a los propietarios de servicio que dependen del servicio y pedirles que reduzcan las llamadas 
    +  Realizar un cambio en el código y publicarlo 

# Administración de cambios
<a name="a-change-management"></a>

**Topics**
+ [REL 6 ¿Cómo supervisa los recursos de las cargas de trabajo?](rel-06.md)
+ [REL 7 ¿Cómo diseña su carga de trabajo para que se adapte a los cambios en la demanda?](rel-07.md)
+ [REL 8 ¿Cómo implementa los cambios?](rel-08.md)

# REL 6 ¿Cómo supervisa los recursos de las cargas de trabajo?
<a name="rel-06"></a>

Los registros y las métricas son una potente herramienta para obtener información sobre el estado de sus cargas de trabajo. Puede configurar su carga de trabajo de forma que supervise registros y métricas, y envíe notificaciones cuando se crucen ciertos umbrales o se produzcan eventos importantes. La supervisión permite que su carga de trabajo reconozca cuándo se cruzan umbrales de bajo rendimiento o se producen errores, para que pueda recuperarse de los errores rápidamente una vez recibida una respuesta.

**Topics**
+ [REL06-BP01 Supervisar todos los componentes de la carga de trabajo (generación)](rel_monitor_aws_resources_monitor_resources.md)
+ [REL06-BP02 Definir y calcular métricas (agregación)](rel_monitor_aws_resources_notification_aggregation.md)
+ [REL06-BP03 Enviar notificaciones (procesamiento y alarmas en tiempo real)](rel_monitor_aws_resources_notification_monitor.md)
+ [REL06-BP04 Automatizar las respuestas (procesamiento y alarmas en tiempo real)](rel_monitor_aws_resources_automate_response_monitor.md)
+ [REL06-BP05 Análisis](rel_monitor_aws_resources_storage_analytics.md)
+ [REL06-BP06 Realizar revisiones con frecuencia](rel_monitor_aws_resources_review_monitoring.md)
+ [REL06-BP07 Supervisar el seguimiento de las solicitudes de principio a fin en todo el sistema](rel_monitor_aws_resources_end_to_end.md)

# REL06-BP01 Supervisar todos los componentes de la carga de trabajo (generación)
<a name="rel_monitor_aws_resources_monitor_resources"></a>

 Supervise los componentes de la carga de trabajo con Amazon CloudWatch o herramientas de terceros. Supervise los servicios de AWS con el panel de AWS Health. 

 Debería supervisar todos los componentes de su carga de trabajo, incluidos los niveles del front-end, la lógica empresarial y el almacenamiento. Defina métricas claves, describa cómo extraerlas de los registros (si fuera necesario) y establezca umbrales para desencadenar los eventos de alarma correspondientes. Asegúrese de que las métricas sean pertinentes para los indicadores clave de rendimiento (KPI) de su carga de trabajo, y utilice métricas y registros para identificar signos de advertencia tempranos de degradación del servicio. Por ejemplo, una métrica relacionada con los resultados empresariales como el número de pedidos procesado satisfactoriamente por minuto, puede indicar problemas con la carga de trabajo más rápido que una métrica técnica, como el uso de la CPU. Utilice el panel de AWS Health para obtener una vista personalizada sobre el rendimiento y la disponibilidad de los servicios de AWS subyacentes a sus recursos de AWS. 

 La supervisión en la nube ofrece nuevas oportunidades. La mayoría de proveedores en la nube han desarrollado enlaces personalizables y pueden proporcionar conocimientos para ayudarle a supervisar varias capas de su carga de trabajo. Los servicios de AWS como Amazon CloudWatch aplican algoritmos estadísticos y de machine learning para analizar continuamente las métricas de los sistemas y aplicaciones, determinar las bases de referencia normales y hacer aflorar anomalías con una intervención mínima del usuario. Los algoritmos de detección de anomalías tienen en cuenta la estacionalidad y los cambios en las tendencias de las métricas. 

 AWS pone a disposición una gran cantidad de información de supervisión y registro para el consumo que se puede usar para definir métricas específicas de la carga de trabajo, procesos de cambio en la demanda y adoptar técnicas de machine learning independientemente de los conocimientos sobre ML. 

 Además, puede supervisar todos sus puntos de conexión externos para asegurarse de que sean independientes de su implementación base. Esta supervisión activa se puede llevar a cabo con transacciones sintéticas (a las que a veces se denomina *«canaries» de usuario*, y que no deben confundirse con los despliegues de valores controlados o «canary»), que ejecutan periódicamente varias tareas comunes que se ajustan a las acciones realizadas por los clientes de la carga de trabajo. Mantenga una duración breve para estas tareas y asegúrese de no sobrecargar sus cargas de trabajo durante las pruebas. Amazon CloudWatch Synthetics le permite: [crear pruebas de transacciones o «canaries» sintéticas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) para supervisar sus puntos de conexión y API. También puede combinar los nodos de cliente de la «canary» sintética con la consola de AWS X-Ray para detectar qué «canaries» sintéticas están teniendo problemas de errores, fallos o limitaciones para el periodo de tiempo seleccionado. 

 **Resultado deseado:** 

 Recopilar y usar métricas esenciales de todos los componentes de la carga de trabajo para garantizar la fiabilidad de la carga de trabajo y una experiencia de usuario óptima. Detectar que una carga de trabajo no consigue los resultados empresariales le permite declarar rápidamente una situación de desastre y recuperarse de un incidente. 

 **Patrones de uso no recomendados comunes:** 
+  Supervisar solamente las interfaces externas con su carga de trabajo 
+  No generar métricas específicas de una carga de trabajo y basarse solamente en las métricas que proporcionan los servicios de AWS que usa su carga de trabajo. 
+  Usar exclusivamente métricas técnicas en su carga de trabajo y no supervisar las métricas relacionadas con KPI no técnicos a los que contribuye la carga de trabajo. 
+  Basarse en el tráfico de producción y las comprobaciones de estado sencillas para supervisar y evaluar el estado de las cargas de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** La supervisión de todos los niveles de la carga de trabajo le permite prever y resolver los problemas rápidamente en los componentes de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

1.  **Habilite el registro cuando esté disponible.** La supervisión de los datos debe obtenerse a partir de todos los componentes de las cargas de trabajo. Active métodos de registro adicionales, como los registros de acceso de S3, y permita que su carga de trabajo registre datos específicos de la carga de trabajo. Recopile métricas para los promedios de CPU, E/S de red y E/S de disco de servicios como Amazon ECS, Amazon EKS, Amazon EC2, Elastic Load Balancing, AWS Auto Scaling y Amazon EMR. Consulte [Servicios de AWS que publican métricas de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) para consultar una lista de servicios de AWS que publican métricas en CloudWatch. 

1.  **Revise todas las métricas predeterminadas y explore las carencias en cuanto a recopilación de datos.** Todos los servicios generan métricas predeterminadas. La recopilación de métricas predeterminadas le permite comprender mejor las dependencias entre los componentes de la carga de trabajo, y cómo la fiabilidad y el rendimiento de los componentes afectan a la carga de trabajo. También puede crear y [publicar sus propias métricas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) en CloudWatch utilizando la AWS CLI o una API. Esto 

1.  **Evalúe todas las métricas para decidir sobre cuáles alertar en cada servicio de AWS en su carga de trabajo.** Puede decidir seleccionar un subconjunto de métricas que tenga un impacto importante en la fiabilidad de la carga de trabajo. Al centrarse en las métricas y umbrales críticos, podrá refinar el número de alertas [de emergencia](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) y contribuir a reducir al mínimo los falsos positivos. 

1.  **Defina las alertas y los procesos de recuperación para su carga de trabajo una vez que se active la alerta.** La definición de alertas le permite notificar, escalar y seguir los pasos necesarios rápidamente para recuperarse de un incidente y cumplir el objetivo de tiempo de recuperación (RTO) prescrito. Puede usar [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-actions](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html#alarms-and-actions) para invocar flujos de trabajo automatizados e iniciar procedimientos de recuperación basados en los umbrales definidos. 

1.  **Explore el uso de transacciones sintéticas para recopilar datos relevantes sobre el estado de las cargas de trabajo.** La supervisión sintética sigue las mismas rutas y lleva a cabo las mismas acciones que un cliente, lo que le permite verificar continuamente su experiencia de usuario incluso si no tiene tráfico de cliente en sus cargas de trabajo. Al usar [transacciones sintéticas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html), puede detectar los problemas antes de que lo hagan los clientes. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md)

 **Documentos relacionados:** 
+  [Introducción al panel de AWS Health: estado de su cuenta](https://docs.aws.amazon.com/health/latest/ug/getting-started-health-dashboard.html) 
+  [Servicios de AWS que publican métricas de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html) 
+  [Registros de acceso para su Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-access-logs.html) 
+  [Registros de acceso para su Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-access-logs.html) 
+  [Acceso a Amazon CloudWatch Logs para AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions-logs.html) 
+  [Registro de acceso al servidor de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html) 
+  [Habilitar los registros de acceso para su Classic Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/enable-access-logs.html) 
+  [Exportación de datos de registro a Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/S3Export.html) 
+  [Instalar el agente de CloudWatch en una instancia Amazon EC2](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-on-EC2-Instance.html) 
+  [Publicar métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
+  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
+  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 
+  [Uso de «canaries» (Amazon CloudWatch Synthetics)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [¿Qué son Amazon CloudWatch Logs?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) 

   **Guías del usuario:** 
+  [Cree un registro de seguimiento](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-a-trail-using-the-console-first-time.html) 
+  [Supervisión de memoria y métricas del disco para las instancias Linux de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/mon-scripts.html) 
+  [Uso de CloudWatch Logs con instancias de contenedor](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_cloudwatch_logs.html) 
+  [Registros de flujo de VPC](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/flow-logs.html) 
+  [¿Qué es Amazon DevOps Guru?](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) 
+  [¿Qué es AWS X-Ray?](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

 **Blogs relacionados:** 
+  [Depuración con Amazon CloudWatch Synthetics y AWS X-Ray](https://aws.amazon.com/blogs/devops/debugging-with-amazon-cloudwatch-synthetics-and-aws-x-ray/) 

 **Ejemplos relacionados y talleres:** 
+  [Laboratorios de AWS Well-Architected: excelencia operativa - supervisión de dependencias](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_dependency_monitoring/) 
+  [La Amazon Builders' Library: Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 
+  [Taller sobre observabilidad](https://catalog.workshops.aws/observability/en-US) 

# REL06-BP02 Definir y calcular métricas (agregación)
<a name="rel_monitor_aws_resources_notification_aggregation"></a>

 Almacene los datos de registro y aplique filtros cuando sea necesario para calcular métricas, como las veces que se produce un evento de registro específico o la latencia calculada a partir de las marcas temporales del evento de registro. 

 Amazon CloudWatch y Amazon S3 sirven como las capas principales de agregación y almacenamiento. En algunos servicios, como AWS Auto Scaling y Elastic Load Balancing, las métricas predeterminadas se proporcionan listas para usar para la carga de CPU o la latencia promedio de solicitudes en un clúster o instancia. En servicios de streaming, como VPC Flow Logs o AWS CloudTrail, los datos del evento se envían a CloudWatch Logs y debe definir y aplicar filtros para extraer las métricas de los datos del evento. Esto le presenta datos sobre las series temporales, que pueden servir como entradas para las alarmas de CloudWatch que defina para activar las alertas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Defina y calcule métricas (agregación). Almacene los datos de registro y aplique filtros cuando sea necesario para calcular métricas, como las veces que se produce un evento de registro específico o la latencia calculada de las marcas temporales del evento de registro. 
  +  Los filtros de métricas definen los términos y patrones que analizar en los datos de registro a medida que se envían a CloudWatch Logs. CloudWatch Logs usa estos filtros para convertir los datos de registro en métricas numéricas de CloudWatch que puede representar en gráficas o a partir de las cuales puede establecer alarmas. 
    +  [Buscar y filtrar datos de registro](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/MonitoringLogData.html) 
  +  Use un tercero de confianza para agregar registros. 
    +  Siga las instrucciones de la solución externa. La mayoría de los productos de terceros se integran con CloudWatch y Amazon S3. 
  +  Algunos servicios de AWS pueden publicar registros directamente en Amazon S3. Si su requisito principal para los registros es almacenarlos en Amazon S3, puede hacer que el servidor que crea los registros los envíe directamente a Amazon S3 sin instalar infraestructura adicional. 
    +  [Enviar registros directamente a Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Sending-Logs-Directly-To-S3.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Consultas de ejemplo de Amazon CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax-examples.html) 
+  [Depuración con Amazon CloudWatch Synthetics y AWS X-Ray](https://aws.amazon.com/blogs/devops/debugging-with-amazon-cloudwatch-synthetics-and-aws-x-ray/) 
+  [Taller sobre observabilidad](https://observability.workshop.aws/) 
+  [Buscar y filtrar datos de registro](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/MonitoringLogData.html) 
+  [Enviar registros directamente a Amazon S3](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Sending-Logs-Directly-To-S3.html) 
+  [La Amazon Builders' Library: Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 

# REL06-BP03 Enviar notificaciones (procesamiento y alarmas en tiempo real)
<a name="rel_monitor_aws_resources_notification_monitor"></a>

 Las organizaciones que deben estar informadas reciben notificaciones cuando ocurren eventos importantes. 

 Se pueden enviar alertas a los temas de Amazon Simple Notification Service (Amazon SNS) y luego enviárselas a cualquier número de suscriptores. Por ejemplo, Amazon SNS puede reenviar alertas a un alias de correo electrónico para que el personal técnico pueda responder. 

 **Patrones de uso no recomendados comunes:** 
+  Configurar alarmas con un umbral demasiado bajo, lo que causa que se envíen demasiadas notificaciones. 
+  No archivar las alarmas para su investigación futura. 

 **Beneficios de establecer esta práctica recomendada:** las notificaciones de los eventos (incluso aquellas que se pueden responder y resolver automáticamente) le permiten tener un registro de eventos y, potencialmente, abordarlos de distinta manera en un futuro. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Realice el procesamiento y envío de alarmas en tiempo real. Las organizaciones que deben estar informadas reciben notificaciones cuando ocurren eventos importantes. 
  +  Los paneles de Amazon CloudWatch son páginas de inicio personalizables de la consola de CloudWatch que puede usar para supervisar los recursos en una sola vista, incluso aquellos que están repartidos por diferentes regiones. 
    +  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
  +  Cree una alarma cuando la métrica supera un límite. 
    +  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Taller sobre observabilidad](https://observability.workshop.aws/) 
+  [La Amazon Builders' Library: Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 
+  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
+  [Uso de métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) 

# REL06-BP04 Automatizar las respuestas (procesamiento y alarmas en tiempo real)
<a name="rel_monitor_aws_resources_automate_response_monitor"></a>

 Use la automatización para actuar cuando se detecte un evento, por ejemplo, para sustituir componentes defectuosos. 

 Las alertas pueden desencadenar eventos de AWS Auto Scaling, por lo que los clústeres reaccionan a los cambios en la demanda. Las alertas se pueden enviar a Amazon Simple Queue Service (Amazon SQS), lo que puede servir como punto de integración para sistemas de tickets de terceros. AWS Lambda también puede suscribirse a alertas, lo que facilita a los usuarios un modelo sin servidor y asíncrono que reacciona a los cambios dinámicamente. AWS Config supervisa y registra continuamente sus configuraciones de recursos de AWS y puede activar [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) para corregir problemas. 

 Amazon DevOps Guru puede supervisar automáticamente los recursos de la aplicación en busca de un comportamiento anómalo y ofrecer recomendaciones específicas para reducir el tiempo de identificación y resolución de problemas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use Amazon DevOps Guru para llevar a cabo acciones automatizadas. Amazon DevOps Guru puede supervisar automáticamente los recursos de la aplicación en busca de un comportamiento anómalo y ofrecer recomendaciones específicas para reducir el tiempo de identificación y resolución de problemas. 
  +  [¿Qué es Amazon DevOps Guru?](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) 
+  Utilice AWS Systems Manager para llevar a cabo acciones automatizadas. AWS Config supervisa y registra continuamente sus configuraciones de recursos de AWS, y puede activar la automatización de AWS Systems Manager para corregir problemas. 
  +  [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
    +  Cree y use documentos de Systems Manager Automation. Estos documentos definen las acciones que Systems Manager realiza en sus instancias administradas y otros recursos de AWS cuando se ejecuta una automatización. 
    +  [Trabajar con documentos de automatización (guías de estrategias)](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html) 
+  Amazon CloudWatch envía eventos de cambio de estados de alarma a Amazon EventBridge. Cree reglas de EventBridge para automatizar las respuestas. 
  +  [Creación de una regla de EventBridge que se active cuando se produzca un evento desde un recurso de AWS](https://docs.aws.amazon.com/eventbridge/latest/userguide/create-eventbridge-rule.html) 
+  Cree y ejecute un plan para automatizar las respuestas. 
  +  Registre en un inventario todos los procedimientos de respuesta a alertas. Debe planificar las respuestas a las alertas antes de clasificar las tareas. 
  +  Registre en un inventario todas las tareas con acciones específicas que se deben realizar. La mayoría de estas acciones se documentan en runbooks. También debe tener guías de estrategias para alertas de eventos imprevistos. 
  +  Examinar los runbooks y las guías de estrategias para todas las acciones automatizables. En general, si una acción se puede definir, lo más probable es que se pueda automatizar. 
  +  Clasifique primero las actividades propensas a errores o que requieran mucho tiempo. Es más conveniente eliminar las fuentes de error y reducir el tiempo de resolución. 
  +  Establezca un plan para completar la automatización. Mantenga un plan activo para automatizar y actualizar la automatización. 
  +  Examine los requisitos manuales para identificar oportunidades de automatización. Revise el proceso manual en busca de oportunidades de automatización. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
+  [Creación de una regla de EventBridge que se active cuando se produzca un evento desde un recurso de AWS](https://docs.aws.amazon.com/eventbridge/latest/userguide/create-eventbridge-rule.html) 
+  [Taller sobre observabilidad](https://observability.workshop.aws/) 
+  [La Amazon Builders' Library: Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 
+  [¿Qué es Amazon DevOps Guru?](https://docs.aws.amazon.com/devops-guru/latest/userguide/welcome.html) 
+  [Trabajar con documentos de automatización (guías de estrategias)](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-documents.html) 

# REL06-BP05 Análisis
<a name="rel_monitor_aws_resources_storage_analytics"></a>

 Recopile archivos de registros e historiales de métricas y analícelos para identificar tendencias e información sobre las cargas de trabajo. 

 Amazon CloudWatch Logs Insights es compatible con un [lenguaje de consultas sencillo pero potente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html) que puede usar para analizar datos de registro. Amazon CloudWatch Logs también admite suscripciones que permiten a los datos dirigirse de forma fluida hacia Amazon S3, donde podrá usar Amazon Athena para consultar los datos. También es compatible con consultas en una gran variedad de formatos. Consulte [Formatos de SerDes y datos compatibles](https://docs.aws.amazon.com/athena/latest/ug/supported-format.html) en la Guía del usuario de Amazon Athena para obtener más información. Para los análisis de conjuntos de archivos de registro enormes, puede ejecutar un clúster de Amazon EMR para ejecutar análisis en la escala de los petabytes. 

 Hay una serie de herramientas proporcionadas por socios de AWS y terceros que permiten la agregación, procesamiento, almacenamiento y análisis. Entre estas herramientas se incluyen New Relic, Splunk, Loggly, Logstash, CloudHealth y Nagios. Sin embargo, la generación fuera de los registros del sistema y las aplicaciones es exclusiva de cada proveedor de la nube y, a menudo, exclusiva de cada servicio. 

 Una parte del proceso de monitoreo que a menudo se pasa por alto es la gestión de datos. Necesita determinar los requisitos de retención para supervisar los datos y, luego, aplicar las políticas del ciclo de vida correspondientemente. Amazon S3 permite la administración del ciclo de vida en el nivel del bucket de S3. Esta gestión del ciclo de vida se puede aplicar de manera diferente a diferentes rutas en el bucket. Hacia el final del ciclo de vida, puede realizar la transición de datos a Amazon Glacier para el almacenamiento a largo plazo y vencimiento, una vez alcanzado el final del periodo de retención. La clase de almacenamiento de S3 Intelligent-Tiering está diseñado para optimizar los costos trasladando automáticamente los datos al nivel de acceso más eficiente, sin que se vea afectado el rendimiento ni los gastos generales operativos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  CloudWatch Logs Insights le permite buscar y analizar de forma interactiva sus datos de registro en Amazon CloudWatch Logs. 
  +  [Análisis de los datos de registro con CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_cloudwatch_logs.html) 
  +  [Consultas de ejemplo de Amazon CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html) 
+  Use Amazon CloudWatch Logs para enviar registros a Amazon S3, donde puede usar Amazon Athena para consultar los datos. 
  +  [¿Cómo analizo mis registros de acceso al servidor de Amazon S3 mediante Athena?](https://aws.amazon.com/premiumsupport/knowledge-center/analyze-logs-athena/) 
    +  Cree una política de ciclo de vida de S3 para su bucket de registros de acceso al servidor. Configure la política de ciclo de vida para que se eliminen periódicamente los archivos de registros. De esta forma, reducirá la cantidad de datos que analiza Athena en cada consulta. 
      +  [¿Cómo creo una política de ciclo de vida para un bucket de S3?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Consultas de ejemplo de Amazon CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax-examples.html) 
+  [Análisis de los datos de registro con CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_cloudwatch_logs.html) 
+  [Depuración con Amazon CloudWatch Synthetics y AWS X-Ray](https://aws.amazon.com/blogs/devops/debugging-with-amazon-cloudwatch-synthetics-and-aws-x-ray/) 
+  [¿Cómo creo una política de ciclo de vida para un bucket de S3?](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-lifecycle.html) 
+  [¿Cómo analizo mis registros de acceso al servidor de Amazon S3 mediante Athena?](https://aws.amazon.com/premiumsupport/knowledge-center/analyze-logs-athena/) 
+  [Taller sobre observabilidad](https://observability.workshop.aws/) 
+  [La Amazon Builders' Library: Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 

# REL06-BP06 Realizar revisiones con frecuencia
<a name="rel_monitor_aws_resources_review_monitoring"></a>

 Revise frecuentemente cómo está implementada la supervisión de cargas de trabajo y actualícela en función de eventos y cambios importantes. 

 La supervisión efectiva se basa en métricas empresariales claves. Asegúrese de que estas métricas tengan cabida en su carga de trabajo a medida que cambien las prioridades empresariales. 

 La auditoría de su supervisión le permite asegurarse de que sabrá cuándo cumple una aplicación con sus objetivos de disponibilidad. El análisis de las causas raíces requiere la capacidad de descubrir qué ha ocurrido cuando se produce un error. AWS facilita servicios que le permiten realizar un seguimiento del estado de sus servicios durante un incidente: 
+  **Amazon CloudWatch Logs:** puede almacenar sus registros en este servicio e inspeccionar sus contenidos. 
+  **Amazon CloudWatch Logs Insights**: es un servicio totalmente administrado que le permite analizar registros inmensos en segundos. Le ofrece consultas y visualizaciones rápidas e interactivas.  
+  **AWS Config:** puede ver qué infraestructura de AWS se ha estado utilizando en diferentes momentos. 
+  **AWS CloudTrail:** puede ver qué API de AWS se invocaron en qué momento y desde qué entidad principal. 

 En AWS, realizamos una reunión semanal para [revisar el rendimiento operativo](https://docs.aws.amazon.com/wellarchitected/latest/operational-readiness-reviews/wa-operational-readiness-reviews.html) y compartir lo que hemos aprendido entre los equipos. Como hay tantos equipos en AWS, creamos [La rueda](https://aws.amazon.com/blogs/opensource/the-wheel/) para elegir al azar una carga de trabajo que revisar. El establecimiento de una cadencia regular para las revisiones de rendimiento operativo y el intercambio de conocimientos mejorará su capacidad para lograr un mayor rendimiento de sus equipos operativos. 

 **Patrones de uso no recomendados comunes:** 
+  Recopilar solo métricas predeterminadas 
+  Establecer una estrategia de supervisión y no revisarla nunca 
+  No considerar la supervisión cuando se implementan cambios importantes 

 **Beneficios de establecer esta práctica recomendada:** la revisión periódica de la supervisión le permite anticiparse a los posibles problemas en lugar de reaccionar a las notificaciones cuando se produzca un problema previsto. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Cree varios paneles para la carga de trabajo. Debe tener un panel general que contenga las principales métricas del negocio, así como las métricas técnicas que ha identificado como más relevantes para el estado previsto de la carga de trabajo conforme cambie su uso. También debe tener paneles para los distintos niveles y dependencias de la aplicación que puedan inspeccionarse. 
  +  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 
+  Programe y realice revisiones periódicas de los paneles de cargas de trabajo. Realice una inspección periódica de los paneles. Puede tener diferentes cadencias para el alcance de la inspección. 
  +  Inspeccione las tendencias en las métricas. Compare los valores de las métricas con los valores históricos para saber si hay tendencias que puedan indicar que algo necesita ser investigado. Algunos ejemplos son un aumento de la latencia, una reducción de la función empresarial principal y un aumento de las respuestas a los errores. 
  +  Inspeccione valores atípicos o anomalías en las métricas. Los promedios o las medianas pueden ocultar valores atípicos y anomalías. Examine los valores más altos y más bajos durante el período de tiempo e investigue las causas de los valores extremos. Mientras elimina estas causas, la relajación de la definición de «extremo» le permitirá seguir mejorando la sistematicidad del rendimiento de sus cargas de trabajo. 
  +  Busque cambios bruscos en el comportamiento. Un cambio inmediato en la cantidad o en la dirección de una métrica podría indicar que se ha producido un cambio en la aplicación o factores externos que podrían necesitar la inclusión de métricas adicionales para su seguimiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Consultas de ejemplo de Amazon CloudWatch Logs Insights](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax-examples.html) 
+  [Depuración con Amazon CloudWatch Synthetics y AWS X-Ray](https://aws.amazon.com/blogs/devops/debugging-with-amazon-cloudwatch-synthetics-and-aws-x-ray/) 
+  [Taller sobre observabilidad](https://observability.workshop.aws/) 
+  [La Amazon Builders' Library: Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 
+  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 

# REL06-BP07 Supervisar el seguimiento de las solicitudes de principio a fin en todo el sistema
<a name="rel_monitor_aws_resources_end_to_end"></a>

Realice un seguimiento de las solicitudes a medida que se procesan a través de los componentes del servicio para que los equipos de producto puedan analizar y depurar los problemas con mayor facilidad y mejorar el rendimiento.

 **Resultado deseado:** las cargas de trabajo con un rastreo exhaustivo en todos los componentes son fáciles de depurar, lo que mejora el [tiempo medio de resolución](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/reducing-mttr.html) (MTTR) de los errores y la latencia al simplificar la detección de la causa raíz. El rastreo integral reduce el tiempo necesario para descubrir los componentes afectados y analizar detalladamente las causas raíz de los errores o la latencia. 

 **Patrones comunes de uso no recomendados:** 
+  El rastreo se utiliza para algunos componentes, pero no para todos. Por ejemplo, si no se rastreara AWS Lambda, es posible que los equipos no entendieran con claridad la latencia que producen los arranques en frío en una carga de trabajo con picos. 
+  Los valores controlados sintéticos o la monitorización de usuarios reales (RUM) no tienen configurado el rastreo. Sin valores controlados ni RUM, la telemetría de interacción con el cliente se omite del análisis del rastreo, lo que da lugar a un perfil de rendimiento incompleto. 
+  Las cargas de trabajo híbridas incluyen herramientas de rastreo nativas en la nube y de terceros, pero no se han tomado medidas para integrar por completo una única solución de rastreo. En función de la solución de rastreo elegida, se deben utilizar SDK de rastreo nativos en la nube para instrumentar componentes que no sean nativos en la nube o se deben configurar herramientas de terceros para ingerir la telemetría de rastreo nativa en la nube. 

 **Beneficios de establecer esta práctica recomendada:** Cuando los equipos de desarrollo reciben alertas sobre los problemas, ven una imagen completa de las interacciones entre los componentes del sistema, incluida la correlación componente por componente con el registro, el rendimiento y los errores. Dado que el rastreo facilita la identificación visual de las causas raíz, se dedica menos tiempo a investigar estas causas. Los equipos que conocen bien las interacciones de los componentes toman decisiones mejores y más rápidas a la hora de resolver problemas. Las decisiones, como cuándo invocar una conmutación por error de recuperación de desastres (DR) o cuál es la mejor forma de implementar las estrategias de autorreparación, se pueden mejorar analizando los rastros de los sistemas y, en última instancia, puede mejorar la satisfacción del cliente con sus servicios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los equipos que utilizan aplicaciones distribuidas pueden utilizar herramientas de rastreo para establecer un identificador de correlación, recopilar rastros de las solicitudes y crear mapas de servicio de los componentes conectados. Todos los componentes de la aplicación deben incluirse en los rastros de solicitudes, como las puertas de enlace de middleware, los buses de eventos y los clientes del servicio, los componentes de computación y el almacenamiento, incluidos los almacenes de valores clave y las bases de datos. Incluya valores controlados sintéticos y la monitorización de usuarios reales en su configuración de rastreo integral para medir las interacciones y la latencia de los clientes remotos, de modo que pueda evaluar con precisión el rendimiento de sus sistemas en función de sus acuerdos y objetivos de nivel de servicio. 

 Puede usar los servicios de instrumentación de monitorización de aplicaciones [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) y [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html) para ofrecer una visión completa de las solicitudes a medida que pasan por su aplicación. X-Ray recopila la telemetría de las aplicaciones y le permite visualizarla y filtrarla en cargas útiles, funciones, rastros, servicios y API, y se puede activar para los componentes del sistema sin código o con poco código. La monitorización de aplicaciones de CloudWatch incluye ServiceLens para integrar sus rastros con métricas, registros y alarmas. La monitorización de aplicaciones de CloudWatch también incluye elementos sintéticos para monitorizar los puntos de conexión y las API, así como la monitorización de usuarios reales para instrumentar los clientes de sus aplicaciones web. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Use AWS X-Ray en todos los servicios nativos admitidos, como [Amazon S3, AWS Lambda y Amazon API Gateway](https://docs.aws.amazon.com/xray/latest/devguide/xray-services.html). Estos servicios de AWS habilitan X-Ray con conmutadores de configuración que utilizan la infraestructura como código, SDK de AWS o la Consola de administración de AWS. 
+  Aplicaciones de instrumentos [AWS Distro for Open Telemetry y X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-adot.html) o agentes de recopilación de terceros. 
+ Revise en la [Guía para desarrolladores de AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) la implementación específica del lenguaje de programación. En estas secciones de la documentación, se detalla cómo instrumentar las solicitudes HTTP, las consultas SQL y otros procesos específicos del lenguaje de programación de su aplicación.
+  Utilice el rastreo de X-Ray para [los valores controlados de Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) y [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) para analizar la ruta de la solicitud desde el cliente de su usuario final a través de su infraestructura posterior de AWS. 
+  Configure métricas y alarmas de CloudWatch en función del estado de los recursos y la telemetría de valores controlados para que los equipos reciban alertas de los problemas rápidamente y, a continuación, puedan analizar en profundidad los rastros y los mapas de servicio con ServiceLens. 
+  Habilite la integración de X-Ray con herramientas de rastreo de terceros, como [Datadog](https://docs.datadoghq.com/tracing/guide/serverless_enable_aws_xray/), [New Relic](https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-x-ray-monitoring-integration/)o [Dynatrace](https://www.dynatrace.com/support/help/setup-and-configuration/setup-on-cloud-platforms/amazon-web-services/amazon-web-services-integrations/aws-service-metrics) si utiliza herramientas de terceros para su solución de rastreo principal. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL06-BP01 Supervisar todos los componentes de la carga de trabajo (generación)](rel_monitor_aws_resources_monitor_resources.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 

 **Documentos relacionados:** 
+  [¿Qué es AWS X-Ray?](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+ [ Amazon CloudWatch: Application Monitoring (Monitorización de aplicaciones) ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html)
+  [Debugging with Amazon CloudWatch Synthetics and AWS X-Ray (Depuración con Amazon CloudWatch Synthetics y AWS X-Ray)](https://aws.amazon.com/blogs/devops/debugging-with-amazon-cloudwatch-synthetics-and-aws-x-ray/) 
+  [La Amazon Builders' Library: Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 
+ [ Integrating AWS X-Ray with other AWS services (Integración de AWS X-Ray con otros servicios de AWS) ](https://docs.aws.amazon.com/xray/latest/devguide/xray-services.html)
+ [AWS Distro for OpenTelemetry and AWS X-Ray (AWS Distro for OpenTelemetry y AWS X-Ray) ](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-adot.html)
+ [ Amazon CloudWatch: Using synthetic monitoring (Uso de la monitorización sintética) ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)
+ [ Amazon CloudWatch: Use CloudWatch RUM (Uso de CloudWatch RUM) ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html)
+ [ Set up Amazon CloudWatch synthetics canary and Amazon CloudWatch alarm (Configuración del valor controlado en Amazon CloudWatch Synthetics y la alarma de Amazon CloudWatch) ](https://docs.aws.amazon.com/solutions/latest/devops-monitoring-dashboard-on-aws/set-up-amazon-cloudwatch-synthetics-canary-and-amazon-cloudwatch-alarm.html)
+ [ Availability and Beyond: Understanding and Improving the Resilience of Distributed Systems on AWS (Disponibilidad y más allá: comprender y mejorar la resiliencia de sistemas distribuidos en AWS) ](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/reducing-mttr.html)

 **Ejemplos relacionados:** 
+ [ Taller sobre observabilidad ](https://catalog.workshops.aws/observability/en-US)

 **Vídeos relacionados:** 
+ [AWS re:Invent 2022 - How to monitor applications across multiple accounts (Cómo monitorizar aplicaciones en varias cuentas) ](https://www.youtube.com/watch?v=kFGOkywu-rw)
+ [ How to Monitor your AWS Applications (Cómo monitorizar sus aplicaciones de AWS) ](https://www.youtube.com/watch?v=UxWU9mrSbmA)

 **Herramientas relacionadas:** 
+ [AWS X-Ray](https://aws.amazon.com/xray/)
+ [ Amazon CloudWatch ](https://aws.amazon.com/pm/cloudwatch/)
+ [ Amazon Route 53 ](https://aws.amazon.com/route53/)

# REL 7 ¿Cómo diseña su carga de trabajo para que se adapte a los cambios en la demanda?
<a name="rel-07"></a>

Una carga de trabajo escalable proporciona elasticidad para agregar y eliminar recursos de forma automática a fin de que coincidan estrechamente con la demanda actual en cualquier momento dado.

**Topics**
+ [REL07-BP01 Usar la automatización al obtener o escalar recursos](rel_adapt_to_changes_autoscale_adapt.md)
+ [REL07-BP02 Obtener recursos tras detectar un impedimento en una carga de trabajo](rel_adapt_to_changes_reactive_adapt_auto.md)
+ [REL07-BP03 Obtener recursos tras detectar que se necesitan más recursos para una carga de trabajo](rel_adapt_to_changes_proactive_adapt_auto.md)
+ [REL07-BP04 Realizar pruebas de la carga de trabajo](rel_adapt_to_changes_load_tested_adapt.md)

# REL07-BP01 Usar la automatización al obtener o escalar recursos
<a name="rel_adapt_to_changes_autoscale_adapt"></a>

 Cuando reemplace recursos deteriorados o escale su carga de trabajo, automatice el proceso mediante el uso de servicios de AWS administrados, como Amazon S3 y AWS Auto Scaling. También puede utilizar herramientas de terceros y los SDK de AWS para automatizar el escalado. 

 Los servicios de AWS administrados incluyen Amazon S3, Amazon CloudFront, AWS Auto Scaling, AWS Lambda, Amazon DynamoDB, AWS Fargate y Amazon Route 53. 

 AWS Auto Scaling le permite detectar y reemplazar las instancias deterioradas. También le permite crear planes de escalado para los recursos, como instancias [Amazon EC2](https://aws.amazon.com/ec2/) y flotas de spot, tareas de [Amazon ECS](https://aws.amazon.com/ecs/) , tablas e índices de [Amazon DynamoDB](https://aws.amazon.com/dynamodb/) y réplicas de [Amazon Aurora](https://aws.amazon.com/aurora/) . 

 Al escalar las instancias EC2, asegúrese de que utiliza varias zonas de disponibilidad (preferiblemente tres como mínimo) y agregue o elimine capacidad para mantener el equilibrio entre estas zonas de disponibilidad. Las tareas de ECS o los pods de Kubernetes (cuando se utiliza Amazon Elastic Kubernetes Service) también se deben distribuir en varias zonas de disponibilidad. 

 Al utilizar AWS Lambda, las instancias se escalan automáticamente. Cada vez que se recibe una notificación de evento para su función, AWS Lambda localiza rápidamente la capacidad libre en su flota de computación y ejecuta su código hasta la simultaneidad asignada. Debe asegurarse de que la simultaneidad necesaria está configurada en Lambda específico y en su Service Quotas. 

 Amazon S3 se escala automáticamente para gestionar las altas tasas de solicitudes. Por ejemplo, su aplicación puede alcanzar al menos 3500 solicitudes PUT/COPY/POST/DELETE o 5500 solicitudes GET/HEAD por segundo y prefijo en un bucket. No hay límites en el número de prefijos de un bucket. Puede aumentar su rendimiento de lectura o escritura si ejecuta en paralelo las lecturas. Por ejemplo, si crea diez prefijos en un bucket de Amazon S3 para ejecutar en paralelo las lecturas, podría escalar su rendimiento de lectura a 55 000 solicitudes de lectura por segundo. 

 Configure y use Amazon CloudFront o una red de entrega de contenido (CDN) de confianza. Una CDN puede proporcionar tiempos de respuesta más rápidos al usuario final y puede servir solicitudes de contenido desde la caché, lo que reduce la necesidad de escalar su carga de trabajo. 

 **Patrones de uso no recomendados comunes:** 
+  Implementar grupos de escalado automático para la reparación automatizada, pero no implementar la elasticidad. 
+  Utilizar el escalado automático para responder a los grandes aumentos de tráfico. 
+  Desplegar aplicaciones con un alto nivel de estado, lo que elimina la opción de la elasticidad. 

 **Beneficios de establecer esta práctica recomendada:** la automatización elimina la posibilidad de cometer errores manuales al desplegar y retirar los recursos. La automatización elimina el riesgo de sobrecostes y de denegación de servicio debido a la lentitud de respuesta en las necesidades de despliegue o retirada. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Configure y use AWS Auto Scaling. Esto supervisa sus aplicaciones y ajusta automáticamente la capacidad para mantener un rendimiento constante y predecible al menor coste posible. Con AWS Auto Scaling, puede configurar el escalado de aplicaciones para múltiples recursos en varios servicios. 
  +  [¿Qué es AWS Auto Scaling?](https://docs.aws.amazon.com/autoscaling/plans/userguide/what-is-aws-auto-scaling.html) 
    +  Configure el escalado automático en sus instancias y flotas de spot de Amazon EC2, tareas de Amazon ECS, tablas e índices de Amazon DynamoDB, réplicas de Amazon Aurora y dispositivos de AWS Marketplace según corresponda. 
      +  [Administración automática de la capacidad de rendimiento con el escalado automático de DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/AutoScaling.html) 
        +  Use las operaciones de la API de servicio para especificar las alarmas, las políticas de escalado, los tiempos de calentamiento y los tiempos de enfriamiento. 
+  Use Elastic Load Balancing. Los equilibradores de carga pueden distribuir la carga por ruta o por conectividad de red. 
  +  [¿Qué es Elastic Load Balancing?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html) 
    +  Application Load Balancers puede distribuir la carga por ruta. 
      +  [¿Qué es un Application Load Balancer?](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) 
        +  Configure un Application Load Balancer para distribuir el tráfico entre diferentes cargas de trabajo en función de la ruta que corresponde al nombre de dominio. 
        +  Los Application Load Balancers se pueden utilizar para distribuir las cargas de manera que se integren con AWS Auto Scaling para administrar la demanda. 
          +  [Usar un equilibrador de carga con un grupo de escalado automático](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) 
    +  Los equilibradores de carga de red pueden distribuir la carga por conexión. 
      +  [¿Qué es un equilibrador de carga de red?](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) 
        +  Configure un equilibrador de carga de red para distribuir el tráfico entre diferentes cargas de trabajo mediante TCP o para tener un conjunto constante de direcciones IP para la carga de trabajo. 
        +  Los equilibradores de carga de red se pueden utilizar para distribuir la carga de manera que se integre con AWS Auto Scaling para administrar la demanda. 
+  Use un proveedor de DNS de alta disponibilidad. Los nombres DNS permiten a sus usuarios acceder a sus cargas de trabajo con nombres en lugar de direcciones IP. Esta información se distribuye en un ámbito definido, normalmente de forma global para los usuarios de la carga de trabajo. 
  +  Utilice Amazon Route 53 o un proveedor de DNS de confianza. 
    +  [¿Qué es Amazon Route 53?](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) 
  +  Use Route 53 para administrar las distribuciones de CloudFront y los equilibradores de carga. 
    +  Determine los dominios y subdominios que va a administrar. 
    +  Cree conjuntos de registros apropiados mediante registros ALIAS o CNAME. 
      +  [Trabajar con los registros](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/rrsets-working-with.html) 
+  Utilice la red global de AWS para optimizar la ruta desde sus usuarios a sus aplicaciones. AWS Global Accelerator supervisa continuamente el estado de los puntos de conexión de sus aplicaciones y redirige el tráfico a los puntos en estado correcto en menos de 30 segundos. 
  +  AWS Global Accelerator es un servicio que mejora la disponibilidad y el rendimiento de sus aplicaciones con usuarios locales o globales. Proporciona direcciones IP estáticas que actúan como punto de entrada fijo a los puntos de conexión de aplicaciones en una o varias Regiones de AWS, como sus Application Load Balancers, equilibradores de carga de red o instancias Amazon EC2. 
    +  [¿Qué es AWS Global Accelerator?](https://docs.aws.amazon.com/global-accelerator/latest/dg/what-is-global-accelerator.html) 
+  Configure y use Amazon CloudFront o una red de entrega de contenido (CDN) de confianza. Una red de entrega de contenido puede ofrecer tiempos de respuesta más rápidos a los usuarios finales y atender solicitudes de contenido que pueden provocar un escalado innecesario de las cargas de trabajo. 
  +  [¿Qué es Amazon CloudFront?](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html) 
    +  Configure distribuciones de Amazon CloudFront para sus cargas de trabajo o utilice una CDN de terceros. 
      +  Puede limitar el acceso a sus cargas de trabajo para que solo sean accesibles desde CloudFront mediante los intervalos de IP para CloudFront en sus grupos de seguridad de puntos de conexión o políticas de acceso. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a crear soluciones informáticas automatizadas](https://aws.amazon.com/partners/find/results/?facets=%27Product%20:%20Compute%27) 
+  [AWS Auto Scaling: cómo funcionan los planes de escalado](https://docs.aws.amazon.com/autoscaling/plans/userguide/how-it-works.html) 
+  [AWS Marketplace: productos que pueden usarse con escalo automático](https://aws.amazon.com/marketplace/search/results?searchTerms=Auto+Scaling) 
+  [Administración automática de la capacidad de rendimiento con el escalado automático de DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/AutoScaling.html) 
+  [Usar un equilibrador de carga con un grupo de escalado automático](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html) 
+  [¿Qué es AWS Global Accelerator?](https://docs.aws.amazon.com/global-accelerator/latest/dg/what-is-global-accelerator.html) 
+  [¿Qué es Amazon EC2 Auto Scaling?](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) 
+  [¿Qué es AWS Auto Scaling?](https://docs.aws.amazon.com/autoscaling/plans/userguide/what-is-aws-auto-scaling.html) 
+  [¿Qué es Amazon CloudFront?](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html?ref=wellarchitected) 
+  [¿Qué es Amazon Route 53?](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html) 
+  [¿Qué es Elastic Load Balancing?](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html) 
+  [¿Qué es un equilibrador de carga de red?](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) 
+  [¿Qué es un Application Load Balancer?](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) 
+  [Trabajar con los registros](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/rrsets-working-with.html) 

# REL07-BP02 Obtener recursos tras detectar un impedimento en una carga de trabajo
<a name="rel_adapt_to_changes_reactive_adapt_auto"></a>

 Escale recursos de forma retroactiva cuando sea necesario si la disponibilidad se ve afectada para restaurar la disponibilidad de la carga de trabajo. 

 Primero debe configurar las comprobaciones de estado y los criterios de dichas comprobaciones para indicar cuándo se ve afectada la disponibilidad por falta de recursos. A continuación, notifique al personal pertinente para que escale manualmente el recurso o active la automatización, a fin de que el escalado se realice de forma automática. 

 La escala puede ajustarse manualmente para su carga de trabajo; por ejemplo, se puede cambiar el número de instancias EC2 en un grupo de escalado automático o se puede modificar el rendimiento de una tabla de DynamoDB mediante la Consola de administración de AWS o la AWS CLI. Sin embargo, la automatización se debería usar siempre que sea posible (consulte **Usar la automatización al obtener o escalar recursos**). 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Obtenga recursos tras detectar un impedimento en una carga de trabajo. Escale recursos de forma retroactiva cuando sea necesario si la disponibilidad se ve afectada para restaurar la disponibilidad de la carga de trabajo. 
  +  Use planes de escalado, que son el componente principal de AWS Auto Scaling, para configurar un conjunto de instrucciones para escalar sus recursos. Si trabaja con AWS CloudFormation o agrega etiquetas a recursos de AWS, puede configurar planes de escalado para diferentes conjuntos de recursos y por aplicación. AWS Auto Scaling proporciona recomendaciones para estrategias de escalado personalizadas para cada recurso. Tras crear su plan de ajuste de escala, AWS Auto Scaling combina el ajuste dinámico y los métodos predictivos de escalado para ayudarle en su estrategia. 
    +  [AWS Auto Scaling: cómo funcionan los planes de escalado](https://docs.aws.amazon.com/autoscaling/plans/userguide/how-it-works.html) 
  +  Amazon EC2 Auto Scaling le ayuda a garantizar que tenga el número correcto de instancias Amazon EC2 disponibles para gestionar la carga de tu aplicación. Puede crear colecciones de instancias EC2 denominadas grupos de escalado automático. Puede especificar el número mínimo de instancias en cada grupo de escalado automático, y Amazon EC2 Auto Scaling asegura que su grupo nunca tenga un tamaño por debajo de este. Puede especificar el número máximo de instancias en cada grupo de escalado automático, y Amazon EC2 Auto Scaling asegura que su grupo nunca tenga un tamaño por encima de este. 
    +  [¿Qué es Amazon EC2 Auto Scaling?](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) 
  +  El escalado automático de Amazon DynamoDB usa el servicio de Auto Scaling de aplicaciones de AWS para ajustar dinámicamente la capacidad de rendimiento aprovisionada en su nombre como respuesta a los patrones de tráfico reales. Esto permite que una tabla o un índice secundario global aumente su capacidad de lectoescritura aprovisionada para afrontar los picos repentinos de tráfico sin limitación. 
    +  [Administrar automáticamente la capacidad de rendimiento con Auto Scaling de DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/AutoScaling.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a crear soluciones informáticas automatizadas](https://aws.amazon.com/partners/find/results/?facets=%27Product%20:%20Compute%27) 
+  [AWS Auto Scaling: cómo funcionan los planes de escalado](https://docs.aws.amazon.com/autoscaling/plans/userguide/how-it-works.html) 
+  [AWS Marketplace: productos que pueden usarse con Auto Scaling](https://aws.amazon.com/marketplace/search/results?searchTerms=Auto+Scaling) 
+  [Administrar automáticamente la capacidad de rendimiento con Auto Scaling de DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/AutoScaling.html) 
+  [¿Qué es Amazon EC2 Auto Scaling?](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) 

# REL07-BP03 Obtener recursos tras detectar que se necesitan más recursos para una carga de trabajo
<a name="rel_adapt_to_changes_proactive_adapt_auto"></a>

 Escale recursos de forma proactiva para satisfacer la demanda y evitar que la disponibilidad se vea impactada. 

 Muchos servicios de AWS se escalan automáticamente para satisfacer la demanda. Si usa instancias de Amazon EC2 o clústeres de Amazon ECS, puede configurar su escalado automático para que se lleve a cabo en función de métricas de uso que se correspondan con la demanda para su carga de trabajo. Para Amazon EC2, el uso medio de la CPU, el recuento de solicitudes al equilibrador de carga o el ancho de banda de la red se pueden usar para escalar (o desescalar) horizontalmente instancias de EC2. Para Amazon ECS, el uso medio de la CPU, el recuento de solicitudes al equilibrador de carga o el uso de memoria se pueden usar para escalar (o desescalar) horizontalmente tareas de ECS. Al utilizar el escalado automático por objetivos en AWS, el escalador automático actúa como un termostato doméstico y agrega o retira recursos para mantener el valor objetivo (por ejemplo, un uso de la CPU del 70 %) que haya especificado. 

 AWS Auto Scaling también puede llevar a cabo [escalado automático predictivo](https://aws.amazon.com/blogs/aws/new-predictive-scaling-for-ec2-powered-by-machine-learning/), que utiliza machine learning para analizar la carga de trabajo histórica de cada recurso y predice regularmente la carga futura para los próximos dos días. 

 La ley de Little ayuda a calcular cuántas instancias de computación (instancias de EC2, funciones Lambda simultáneas, etc.) necesitará. 

 *R* = *λW* 

 L = número de instancias (o simultaneidad media en el sistema) 

 λ = promedio de la tasa de llegada de solicitudes (solicitudes/s) 

 W = promedio del tiempo que pasa cada solicitud en el sistema (s) 

 Por ejemplo, a 100 sps, si cada solicitud tarda 0,5 segundos en procesarse, necesitará 50 instancias para satisfacer la demanda. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Obtenga recursos tras detectar que se necesitan más recursos para una carga de trabajo. Escale recursos de forma proactiva para satisfacer la demanda y evitar que la disponibilidad se vea impactada. 
  +  Calcule cuántos recursos de computación necesitará (simultaneidad de computación) para afrontar una tasa de solicitudes dada. 
    +  [Presentación de historias sobre la ley de Little](https://brooker.co.za/blog/2018/06/20/littles-law.html) 
  +  Cuando tenga un patrón de uso histórico, configure el escalado programado para el escalado automático de Amazon EC2. 
    +  [Escalado programado para Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/schedule_time.html) 
  +  Use el escalado predictivo de AWS. 
    +  [Predictive Scaling for EC2, Powered by Machine Learning](https://aws.amazon.com/blogs/aws/new-predictive-scaling-for-ec2-powered-by-machine-learning/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling: cómo funcionan los planes de escalado](https://docs.aws.amazon.com/autoscaling/plans/userguide/how-it-works.html) 
+  [AWS Marketplace: productos que pueden usarse con Auto Scaling](https://aws.amazon.com/marketplace/search/results?searchTerms=Auto+Scaling) 
+  [Administrar automáticamente la capacidad de rendimiento con Auto Scaling de DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/AutoScaling.html) 
+  [Predictive Scaling for EC2, Powered by Machine Learning](https://aws.amazon.com/blogs/aws/new-predictive-scaling-for-ec2-powered-by-machine-learning/) 
+  [Escalado programado para Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/schedule_time.html) 
+  [Presentación de historias sobre la ley de Little](https://brooker.co.za/blog/2018/06/20/littles-law.html) 
+  [¿Qué es Amazon EC2 Auto Scaling?](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) 

# REL07-BP04 Realizar pruebas de la carga de trabajo
<a name="rel_adapt_to_changes_load_tested_adapt"></a>

 Adopte una metodología de prueba de carga para medir si la actividad de escalado satisface los requisitos de la carga de trabajo. 

 Es importante realizar pruebas de carga sostenidas. Las pruebas de carga deben descubrir el punto de ruptura y probar el rendimiento de su carga de trabajo. AWS facilita la creación de entornos de prueba temporales que modelan la escala de su carga de trabajo de producción. En la nube, puede crear un entorno de prueba a escala de producción, completar sus pruebas y desmantelar los recursos. Debido a que solo paga por el entorno de prueba cuando se ejecuta, puede simular su entorno en directo por una fracción del coste de las pruebas en las instalaciones. 

 Las pruebas de carga en producción también deben considerarse como parte de los días de juego en los que se estresa el sistema de producción, durante las horas de menor uso por parte de los clientes, con todo el personal a mano para interpretar los resultados y abordar cualquier problema que surja. 

 **Patrones de uso no recomendados comunes:** 
+  Realizar pruebas de carga en despliegues que no tienen la misma configuración que su producción. 
+  Realizar pruebas de carga solo en elementos individuales de su carga de trabajo y no en toda ella. 
+  Realizar pruebas de carga con un subconjunto de solicitudes y no con un conjunto representativo de solicitudes reales. 
+  Realizar pruebas de carga con un pequeño factor de seguridad por encima de la carga prevista. 

 **Beneficios de establecer esta práctica recomendada:** sabrá qué componentes de su arquitectura presentan errores bajo carga y podrá identificar qué métricas se deben vigilar para indicar que se está acercando a esa carga a tiempo para solucionar el problema, con lo que se evitará el impacto de ese error. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Realice pruebas de carga para identificar qué aspecto de su carga de trabajo indica que debe agregar o eliminar capacidad. Las pruebas de carga deben tener un tráfico representativo similar al que se recibe en producción. Aumente la carga mientras vigila las métricas que ha instrumentado para determinar qué métrica indica cuándo debe agregar o eliminar recursos. 
  +  [Pruebas de carga distribuida en AWS: simular miles de usuarios conectados](https://aws.amazon.com/solutions/distributed-load-testing-on-aws/) 
    +  Identifique la combinación de solicitudes. Es posible que tenga una combinación variada de solicitudes, por lo que deberá tener en cuenta diversos periodos de tiempo a la hora de identificar la combinación de tráfico. 
    +  Implemente un controlador de carga. Puede utilizar software de código abierto o comercial para implementar un controlador de carga. 
    +  Realice la prueba de carga inicialmente con una capacidad pequeña. Se ven algunos efectos inmediatos al pasar la carga a una capacidad menor, posiblemente tan pequeña como una instancia o un contenedor. 
    +  Realice una prueba de carga con una capacidad mayor. Los efectos serán diferentes en una carga distribuida, por lo que debe realizar las pruebas en un entorno lo más parecido posible al del producto. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Pruebas de carga distribuida en AWS: simular miles de usuarios conectados](https://aws.amazon.com/solutions/distributed-load-testing-on-aws/) 

# REL 8 ¿Cómo implementa los cambios?
<a name="rel-08"></a>

Los cambios controlados son necesarios para implementar nueva funcionalidad y garantizar que las cargas de trabajo y el entorno operativo ejecuten software conocido y puedan recibir parches o reemplazos de manera predecible. Si estos cambios no se controlan, puede ser difícil prever su efecto o abordar los problemas que surjan a raíz de ellos. 

**Topics**
+ [REL08-BP01 Usar runbooks para actividades estándares como la implementación](rel_tracking_change_management_planned_changemgmt.md)
+ [REL08-BP02 Integrar las pruebas funcionales como parte de su despliegue](rel_tracking_change_management_functional_testing.md)
+ [REL08-BP03 Integrar las pruebas de resiliencia como parte de su despliegue](rel_tracking_change_management_resiliency_testing.md)
+ [REL08-BP04 Desplegar mediante infraestructura inmutable](rel_tracking_change_management_immutable_infrastructure.md)
+ [REL08-BP05 Desplegar cambios con automatización](rel_tracking_change_management_automated_changemgmt.md)

# REL08-BP01 Usar runbooks para actividades estándares como la implementación
<a name="rel_tracking_change_management_planned_changemgmt"></a>

 Los runbooks son procedimientos predefinidos para obtener resultados concretos. Use runbooks para realizar actividades estándar manuales o automáticas. Algunos ejemplos incluyen implementar una carga de trabajo, aplicarle un parche a dicha carga de trabajo o realizar modificaciones de DNS. 

 Por ejemplo, se pueden implementar procesos para [garantizar la seguridad de la restauración durante los despliegues](https://aws.amazon.com/builders-library/ensuring-rollback-safety-during-deployments). Tener la garantía de poder dar marcha atrás en un despliegue sin disrupciones para sus clientes es esencial a la hora de hacer que un servicio sea fiable. 

 Para los procedimientos de runbooks, empiece por un proceso manual efectivo válido, impleméntelo en el código y desencadene la ejecución automatizada cuando sea oportuno. 

 Incluso en el caso de cargas de trabajo sofisticadas con un alto nivel de automatización los runbooks siguen siendo útiles para [ejecutar días de juego](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/test-reliability.html#GameDays) o ajustarse a los exhaustivos requisitos de presentación de informes y auditoría. 

 Tenga en cuenta que las guías de estrategias se usan en respuesta a incidentes específicos y los runbooks se usan para conseguir resultados determinados. A menudo, los runbooks se usan para actividades rutinarias, mientras que las guías de estrategias se utilizan para responder a eventos no rutinarios. 

 **Patrones de uso no recomendados comunes:** 
+  Realizar cambios imprevistos en la configuración en producción 
+  Omitir pasos del plan para realizar una implementación más rápida, lo que da lugar a una implementación errónea. 
+  Realizar cambios sin probar la revocación del cambio 

 **Beneficios de establecer esta práctica recomendada:** La planificación eficaz de los cambios aumenta su capacidad de realizar correctamente el cambio, ya que sabrá qué sistemas resultarán afectados. Validar el cambio en los entornos de prueba aumenta la confianza. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Puede obtener respuestas sistemáticas e inmediatas a eventos conocidos si documenta los procedimientos en runbooks. 
  +  [Conceptos del AWS Well-Architected Framework: runbook](https://wa.aws.amazon.com/wat.concept.runbook.en.html) 
+  Use el principio de la infraestructura como código para definir la infraestructura. Si usa AWS CloudFormation (o un tercero de confianza) para definir su infraestructura, puede utilizar software de control de versiones para crear versiones y hacer seguimiento de los cambios. 
  +  Use AWS CloudFormation (o un proveedor tercero de confianza) para definir su infraestructura. 
    +  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
  +  Cree plantillas singulares y desacopladas, usando buenos principios de diseño de software. 
    +  Determine los permisos, las plantillas y las partes responsables de su implementación. 
      + [ Control de acceso con AWS Identity and Access Management](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html)
    +  Use herramientas de control de código, como AWS CodeCommit o las de terceros de confianza, para llevar un control de las versiones. 
      +  [¿Qué es AWS CodeCommit?](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a crear soluciones de implementación automatizadas](https://aws.amazon.com/partners/find/results/?keyword=devops) 
+  [AWS Marketplace: productos que pueden usarse para automatizar sus implementaciones](https://aws.amazon.com/marketplace/search/results?searchTerms=DevOps) 
+  [Conceptos del AWS Well-Architected Framework: runbook](https://wa.aws.amazon.com/wat.concept.runbook.en.html) 
+  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
+  [¿Qué es AWS CodeCommit?](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html) 

   **Ejemplos relacionados:** 
+  [Automatización de operaciones con guías de estrategias y runbooks](https://wellarchitectedlabs.com/operational-excellence/200_labs/200_automating_operations_with_playbooks_and_runbooks/) 

# REL08-BP02 Integrar las pruebas funcionales como parte de su despliegue
<a name="rel_tracking_change_management_functional_testing"></a>

 Las pruebas funcionales se ejecutan como parte de la implementación automatizada. Si no se satisfacen los criterios de éxito, la canalización se detiene o se revierte. 

 Estas pruebas se llevan a cabo en un entorno de preproducción, que se lleva a cabo antes de la producción en la canalización. Idealmente, esto se realiza como parte de una canalización de despliegue. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Integre las pruebas funcionales como parte de su despliegue. Las pruebas funcionales se ejecutan como parte de la implementación automatizada. Si no se satisfacen los criterios de éxito, la canalización se detiene o se revierte. 
  +  Invoque AWS CodeBuild durante la «acción de prueba» de sus canalizaciones de lanzamiento de software modeladas en AWS CodePipeline. Esta función le permite ejecutar fácilmente una gran variedad de pruebas en el código, como pruebas unitarias, análisis de código estático y pruebas de integración. 
    +  [En AWS CodePipeline ahora se pueden hacer pruebas unitarias y de integración personalizadas con AWS CodeBuild](https://aws.amazon.com/about-aws/whats-new/2017/03/aws-codepipeline-adds-support-for-unit-testing/) 
  +  Use soluciones de AWS Marketplace para ejecutar pruebas automatizadas como parte de su canalización de entrega de software. 
    +  [Automatización de pruebas de software](https://aws.amazon.com/marketplace/solutions/devops/software-test-automation) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [En AWS CodePipeline ahora se pueden hacer pruebas unitarias y de integración personalizadas con AWS CodeBuild](https://aws.amazon.com/about-aws/whats-new/2017/03/aws-codepipeline-adds-support-for-unit-testing/) 
+  [Automatización de pruebas de software](https://aws.amazon.com/marketplace/solutions/devops/software-test-automation) 
+  [¿Qué es AWS CodePipeline?](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) 

# REL08-BP03 Integrar las pruebas de resiliencia como parte de su despliegue
<a name="rel_tracking_change_management_resiliency_testing"></a>

 Las pruebas de resiliencia (mediante los [principios de la ingeniería del caos](https://principlesofchaos.org/)) se ejecutan como parte de la canalización de despliegue automatizada en un entorno previo a producción. 

 Estas pruebas se realizan por fases y se ejecutan en la canalización en un entorno previo a la producción. También deben ejecutarse en producción como parte de los [https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/test-reliability.html#GameDays](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/test-reliability.html#GameDays). 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Integre las pruebas de resiliencia como parte de su despliegue. Use la ingeniería del caos, la disciplina de poner a prueba una carga de trabajo para generar confianza en su capacidad de resistir condiciones adversas en producción. 
  +  Las pruebas de resiliencia introducen errores o degradación de los recursos para saber si la carga de trabajo responde con la resiliencia diseñada. 
    +  [Laboratorio de Well-Architected: Nivel 300: pruebas de resiliencia de EC2 RDS y S3](https://wellarchitectedlabs.com/Reliability/300_Testing_for_Resiliency_of_EC2_RDS_and_S3/README.html) 
  +  Estas pruebas se pueden ejecutar periódicamente en entornos previos a producción en canalizaciones de implementaciones automatizadas. 
  +  También deben ejecutarse en producción como parte de los días de juego programados. 
  +  Usando los principios de ingeniería del caos, proponga hipótesis sobre cómo funcionará la carga de trabajo con distintos errores y después pruebe sus hipótesis mediante pruebas de resiliencia. 
    +  [Principios de la ingeniería del caos](https://principlesofchaos.org/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Principios de la ingeniería del caos](https://principlesofchaos.org/) 
+  [¿Qué es AWS Fault Injection Simulator?](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: Nivel 300: pruebas de resiliencia de EC2 RDS y S3](https://wellarchitectedlabs.com/Reliability/300_Testing_for_Resiliency_of_EC2_RDS_and_S3/README.html) 

# REL08-BP04 Desplegar mediante infraestructura inmutable
<a name="rel_tracking_change_management_immutable_infrastructure"></a>

 La infraestructura inmutable es un modelo que exige que no haya actualizaciones, parches de seguridad ni cambios de configuración en las cargas de trabajo de producción. Cuando es necesario realizar un cambio, la arquitectura se integra en una nueva infraestructura y se implementa en producción. 

 La implementación más habitual del paradigma de infraestructura inmutable es el ***servidor inmutable***. Esto significa que si un servidor necesita una actualización o una reparación, se despliegan nuevos servidores en lugar de actualizar los que ya están en uso. Por tanto, en lugar de iniciar sesión en un servidor mediante SSH y de actualizar la versión de software, cada cambio en la aplicación se inicia con un push de software en el repositorio de código, por ejemplo, un git push. Dado que los cambios no se permiten en una infraestructura inmutable, puede estar seguro sobre el estado del sistema desplegado. Las infraestructuras inmutables son inherentemente más coherentes, fiables y predecibles, y simplifican muchos de los aspectos del desarrollo de software y las operaciones. 

 Use un despliegue de valores controlados o azul-verde al desplegar aplicaciones en infraestructuras inmutables. 

 [https://martinfowler.com/bliki/CanaryRelease.html](https://martinfowler.com/bliki/CanaryRelease.html) es la práctica de dirigir a una pequeña cantidad de sus clientes a la nueva versión, que normalmente se ejecuta en una instancia de servicio único (la de valor controlado). A continuación, puede analizar en profundidad los errores o los cambios en el comportamiento que puedan generarse. Puede eliminar el tráfico del valor controlado si encuentra problemas críticos y enviar a los usuarios de vuelta a la versión anterior. Si el despliegue se completa correctamente, puede seguir desplegando a la velocidad que desee, mientras supervisa los cambios en busca de errores, hasta completar el despliegue. AWS CodeDeploy puede configurarse con unos ajustes de despliegue que permitan un despliegue de valores controlados. 

 [https://martinfowler.com/bliki/BlueGreenDeployment.html](https://martinfowler.com/bliki/BlueGreenDeployment.html) es similar al despliegue de valores controlados, excepto que una flota completa de la aplicación se despliega en paralelo. Alterne sus implementaciones en las dos pilas (azul y verde). Una vez más, puede enviar tráfico a la nueva versión y volver a la versión anterior si observa problemas con el despliegue. Normalmente, todo el tráfico se conmuta de una vez. Sin embargo, también puede usar fracciones de tráfico para cada versión para acelerar la adopción de la nueva versión utilizando las capacidades de enrutamiento ponderado por DNS de Amazon Route 53. AWS CodeDeploy y AWS Elastic Beanstalk se pueden configurar con unos ajustes de despliegue que permitan un despliegue verde-azul. 

![\[Diagrama que muestra un despliegue azul-verde con AWS Elastic Beanstalk y Amazon Route 53\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/blue-green-deployment.png)


 Beneficios de la infraestructura inmutable: 
+  **Reducción de las alteraciones de configuración:** al sustituir con frecuencia los servidores desde una configuración básica conocida y con control de versiones, la infraestructura se **restablece** a un estado conocido, evitando así las alteraciones de configuración. 
+  **Despliegues simplificados**: los despliegues se simplifican porque no tienen que ser compatibles con las mejoras. Las mejoras son simplemente nuevos despliegues. 
+  **Despliegues atómicos fiables:** o los despliegues son completamente correctos o no se cambia nada. Esto aporta un mayor grado de confianza en el proceso de despliegue. 
+  **Despliegues más seguros con procesos de recuperación y restauración rápidos:** Los despliegues son más seguros porque la versión activa anterior no se cambia. Puede restaurarla si se detecta algún error. 
+  **Entornos de prueba y depuración coherentes:** dado que todos los servidores utilizan la misma imagen, no se presentan diferencias entre entornos. Una compilación se implementa en varios entornos. También evita la inconsistencia entre entornos y simplifica las pruebas y la depuración. 
+  **Mayor escalabilidad:** dado que los servidores emplean una imagen de base y son coherentes y repetibles, el escalado automático resulta trivial. 
+  **Cadena de herramientas simplificada**: la cadena de herramientas se simplifica, ya que puede librarse de las herramientas de administración de la configuración mediante la gestión de mejoras en el software de producción. No se instalan herramientas ni agentes adicionales en los servidores. Los cambios se llevan a cabo en la imagen de base, se prueban y se despliegan. 
+  **Mayor seguridad:** al denegar todos los cambios en los servidores, puede desactivar el SSH en las instancias y eliminar las claves. Esto reduce el vector de ataque y mejora la postura de seguridad de su organización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Haga despliegues mediante infraestructura inmutable. La infraestructura inmutable es un modelo en el que no se producen actualizaciones, no se aplican parches de seguridad ni se llevan a cabo cambios de configuración *in situ* en los sistemas de producción. Si es necesario realizar algún cambio, se crea una nueva versión de la arquitectura y se implementa en producción. 
  +  [Información general sobre una implementación azul/verde](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html#welcome-deployment-overview-blue-green) 
  +  [Implementar aplicaciones sin servidor gradualmente](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html) 
  +  [Infraestructura inmutable: fiabilidad, coherencia y confianza gracias a la inmutabilidad](https://medium.com/@adhorn/immutable-infrastructure-21f6613e7a23) 
  +  [CanaryRelease](https://martinfowler.com/bliki/CanaryRelease.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [CanaryRelease](https://martinfowler.com/bliki/CanaryRelease.html) 
+  [Implementar aplicaciones sin servidor gradualmente](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/automating-updates-to-serverless-apps.html) 
+  [Infraestructura inmutable: fiabilidad, coherencia y confianza gracias a la inmutabilidad](https://medium.com/@adhorn/immutable-infrastructure-21f6613e7a23) 
+  [Información general sobre una implementación azul/verde](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html#welcome-deployment-overview-blue-green) 
+  [La Amazon Builders' Library: Garantizar la seguridad de las reversiones durante las implementaciones](https://aws.amazon.com/builders-library/ensuring-rollback-safety-during-deployments) 

# REL08-BP05 Desplegar cambios con automatización
<a name="rel_tracking_change_management_automated_changemgmt"></a>

 Las implementaciones y la aplicación de parches se automatizan para eliminar su impacto negativo. 

 Los cambios en los sistemas de producción son una de las mayores áreas de riesgo para muchas organizaciones. Consideramos que los despliegues son un problema de primera clase que se debe resolver junto con los problemas comerciales que nuestro software aborda. Hoy en día, significa el uso de la automatización siempre que sea práctico en las operaciones, incluidas las pruebas y el despliegue de cambios, la adición o eliminación de capacidad y la migración de datos. AWS CodePipeline le permite administrar los pasos necesarios para lanzar su carga de trabajo. Esto incluye un estado de despliegue utilizando AWS CodeDeploy para automatizar el despliegue del código de la aplicación en instancias de Amazon EC2, instancias locales, funciones de Lambda sin servidor o servicios de Amazon ECS. 

**Recomendación**  
 Aunque la sabiduría convencional sugiere que mantenga a los humanos informados sobre los procedimientos operativos más difíciles, le sugerimos que automatice los procedimientos más difíciles por esa misma razón. 

 **Patrones de uso no recomendados comunes:** 
+  Realizar los cambios manualmente 
+  Omitir los pasos de la automatización a través de flujos de trabajo de emergencia 
+  No seguir los planes 

 **Beneficios de establecer esta práctica recomendada:** El uso de la automatización para implementar todos los cambios elimina la posibilidad de que se introduzcan errores humanos y proporciona la capacidad de probar los cambios antes de modificarlos en producción para garantizar que se cumplan los planes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatice su proceso de despliegue. Las canalizaciones de implementación le permiten invocar pruebas automatizadas, detectar anomalías y detener la canalización en un paso determinado antes de la implementación en producción o revertir automáticamente un cambio. 
  +  [La Amazon Builders' Library: Garantizar la seguridad de las reversiones durante las implementaciones](https://aws.amazon.com/builders-library/ensuring-rollback-safety-during-deployments) 
  +  [La Amazon Builders' Library: Agilizar el proceso con la entrega continua](https://aws.amazon.com/builders-library/going-faster-with-continuous-delivery/) 
    +  Use AWS CodePipeline o un producto de terceros de confianza para definir y ejecutar los procesos. 
      +  Configure la canalización para que se inicie cuando se confirme un cambio en su repositorio de código. 
        +  [¿Qué es AWS CodePipeline?](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) 
      +  Use Amazon Simple Notification Service (Amazon SNS) y Amazon Simple Email Service (Amazon SES) para enviar notificaciones sobre problemas en la canalización o integrar una herramienta de chat de equipo como Amazon Chime. 
        +  [¿Qué es Amazon Simple Notification Service?](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) 
        +  [¿Qué es Amazon SES?](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html) 
        +  [¿Qué es Amazon Chime?](https://docs.aws.amazon.com/chime/latest/ug/what-is-chime.html) 
        +  [Automatice los mensajes de chat con webhooks.](https://docs.aws.amazon.com/chime/latest/ug/webhooks.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudarle a crear soluciones de implementación automatizadas](https://aws.amazon.com/partners/find/results/?keyword=devops) 
+  [AWS Marketplace: productos que pueden usarse para automatizar sus despliegues](https://aws.amazon.com/marketplace/search/results?searchTerms=DevOps) 
+  [Automatice los mensajes de chat con webhooks.](https://docs.aws.amazon.com/chime/latest/ug/webhooks.html) 
+  [La Amazon Builders' Library: Garantizar la seguridad de las reversiones durante las implementaciones](https://aws.amazon.com/builders-library/ensuring-rollback-safety-during-deployments) 
+  [La Amazon Builders' Library: Agilizar el proceso con la entrega continua](https://aws.amazon.com/builders-library/going-faster-with-continuous-delivery/) 
+  [¿Qué es AWS CodePipeline?](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html) 
+  [¿Qué es CodeDeploy?](https://docs.aws.amazon.com/codedeploy/latest/userguide/welcome.html) 
+  [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 
+  [¿Qué es Amazon SES?](https://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html) 
+  [¿Qué es Amazon Simple Notification Service?](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) 

 **Vídeos relacionados:** 
+  [AWS Summit 2019: entrega e integración continuas en AWS](https://youtu.be/tQcF6SqWCoY) 

# Administración de errores
<a name="a-failure-management"></a>

**Topics**
+ [REL 9 ¿Cómo realiza una copia de seguridad de los datos?](rel-09.md)
+ [REL 10 ¿Cómo usa el aislamiento de errores para proteger su carga de trabajo?](rel-10.md)
+ [REL 11 ¿Cómo diseña su carga de trabajo para que soporte los errores de los componentes?](rel-11.md)
+ [REL 12 ¿Cómo pone a prueba la fiabilidad?](rel-12.md)
+ [REL 13 ¿Cómo planifica la recuperación de desastres (DR)?](rel-13.md)

# REL 9 ¿Cómo realiza una copia de seguridad de los datos?
<a name="rel-09"></a>

Realice una copia de seguridad de los datos, las aplicaciones y la configuración para satisfacer sus requisitos de objetivos de tiempo de recuperación (RTO) y objetivos de punto de recuperación (RPO).

**Topics**
+ [REL09-BP01 Identificar todos los datos de los que se debe hacer una copia de seguridad y crearla o reproducir los datos a partir de los orígenes](rel_backing_up_data_identified_backups_data.md)
+ [REL09-BP02 Proteger y cifrar copias de seguridad](rel_backing_up_data_secured_backups_data.md)
+ [REL09-BP03 Realizar copias de seguridad de los datos automáticamente](rel_backing_up_data_automated_backups_data.md)
+ [REL09-BP04 Realizar una recuperación periódica de los datos para verificar la integridad de la copia de seguridad y los procesos](rel_backing_up_data_periodic_recovery_testing_data.md)

# REL09-BP01 Identificar todos los datos de los que se debe hacer una copia de seguridad y crearla o reproducir los datos a partir de los orígenes
<a name="rel_backing_up_data_identified_backups_data"></a>

Conozca y use las funciones de copia de seguridad de los servicios y recursos de datos usados por su carga de trabajo. La mayoría de los servicios ofrecen capacidades para realizar copias de seguridad de los datos de la carga de trabajo. 

 **Resultado deseado:** los orígenes de datos se han identificado y clasificado en función del nivel de criticidad. A continuación, establece una estrategia de recuperación de datos basada en el RPO. Esta estrategia supone crear una copia de seguridad de estos orígenes de datos o tener la capacidad de reproducir datos desde otros orígenes. En el caso de la pérdida de datos, la estrategia implementada permite la recuperación o reproducción de datos dentro de los RPO y RTO definidos. 

 **Fase de madurez de la nube:** básica 

 **Antipatrones usuales:** 
+  No ser consciente de todos los orígenes de datos para la carga de trabajo y su nivel de criticidad. 
+  No realizar copias de seguridad de orígenes de datos críticos. 
+  Realizar copias de seguridad solamente de algunos orígenes de datos sin usar la criticidad como criterio. 
+  RPO sin definir, o una frecuencia de copias de seguridad que no puede ajustarse al RPO. 
+  No evaluar si una copia de seguridad es necesaria o si se pueden reproducir datos desde otros orígenes. 

 **Beneficios de establecer esta práctica recomendada:** identificar los lugares en los que las copias de seguridad son necesarias e implementar un mecanismo para crear copias de seguridad, o ser capaz de reproducir los datos desde una fuente externa mejora la capacidad de restaurar y recuperar datos durante una interrupción. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Todos los almacenes de datos de AWS ofrecen capacidades de copia de seguridad. En los servicios como Amazon RDS y Amazon DynamoDB también se pueden hacer copias de seguridad automatizadas, lo que facilita la recuperación a un momento dado (PITR). De este modo, podrá restaurar una copia de seguridad a cualquier momento hasta cinco minutos (o menos) antes del momento actual. Muchos servicios de AWS ofrecen la capacidad de copiar copias de seguridad en otra Región de AWS. AWS Backup es una herramienta que permite centralizar y automatizar la protección de datos entre servicios de AWS. [AWS Elastic Disaster Recovery](https://aws.amazon.com/disaster-recovery/) le permite copiar cargas de trabajo de servidor completas y mantener una protección de datos continua localmente o entre zonas de disponibilidad o regiones, con un objetivo de punto de recuperación (RPO) medido en segundos. 

 Amazon S3 puede usarse como destino de copias de seguridad para los orígenes de datos autoadministrados y administrados por AWS. Los servicios de AWS como Amazon EBS, Amazon RDS y Amazon DynamoDB tienen capacidades integradas para crear copias de seguridad. También se puede usar software de copias de seguridad de terceros. 

 Se pueden realizar copias de seguridad de los datos locales en Nube de AWS con [AWS Storage Gateway](https://docs.aws.amazon.com/storagegateway/latest/vgw/WhatIsStorageGateway.html) o [AWS DataSync](https://docs.aws.amazon.com/datasync/latest/userguide/what-is-datasync.html). Los buckets de Amazon S3 se pueden usar para almacenar estos datos en AWS. Amazon S3 ofrece varios niveles de almacenamiento, como [Amazon Glacier o Amazon Glacier Deep Archive](https://docs.aws.amazon.com/prescriptive-guidance/latest/backup-recovery/amazon-s3-glacier.html) para reducir el coste del almacenamiento de datos. 

 Es posible que pueda satisfacer las necesidades de recuperación de datos reproduciendo los datos desde otros orígenes. Por ejemplo, los nodos de réplicas de [Amazon ElastiCache ](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Replication.Redis.Groups.html) o bien las réplicas de lectura de [Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html) podrían usarse para reproducir datos si se pierde la principal. En casos en los que orígenes como este puedan usarse para cumplir su [objetivo de punto de recuperación (RPO) y su objetivo de tiempo de recuperación (RTO)](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/disaster-recovery-dr-objectives.html), puede que no necesite una copia de seguridad. Otro ejemplo: si trabaja con Amazon EMR, puede que no sea necesario crear copias de seguridad de sus almacenes de datos HDFS, en la medida en que puede [reproducir los datos enAmazon EMR desde Amazon S3](https://aws.amazon.com/premiumsupport/knowledge-center/copy-s3-hdfs-emr/). 

 Al seleccionar una estrategia de copia de seguridad, piense en el tiempo que se necesita para recuperar los datos. El tiempo necesario para recuperar datos depende del tipo de copia de seguridad (en el caso de una estrategia de copia de seguridad) o de la complejidad del mecanismo de reproducción de datos. Este tiempo debería ajustarse al RTO de la carga de trabajo. 

 **Pasos para la implementación** 

1.  **Identifique todos los orígenes de datos para la carga de trabajo**. Los datos se pueden almacenar en diversos recursos, como [bases de datos](https://aws.amazon.com/products/databases/), [volúmenes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html), [sistemas de archivos](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html), [sistemas de registro](https://docs.aws.amazon.com/Amazon/latest/logs/WhatIsLogs.html) y [almacenamiento de objetos](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html). Consulte la sección **Recursos** para encontrar **Documentos relacionados** sobre distintos servicios deAWS en los que se almacenan los datos y la capacidad de copia de seguridad que proporcionan estos servicios. 

1.  **Clasifique los orígenes de datos en función de su criticidad**. Los distintos conjuntos de datos tendrán diferentes niveles de criticidad para una carga de trabajo y, por tanto, distintos requisitos de resiliencia. Por ejemplo, algunos datos podrían ser críticos y requerir un RPO cercano a cero, mientras que otros datos podrían ser menos críticos y tolerar un RPO más alto y cierta pérdida de datos. Del mismo modo, los distintos conjuntos de datos podrían tener también diferentes requisitos en cuanto al RTO. 

1.  **Utilice AWS o servicios de terceros para crear copias de seguridad de los datos**. [AWS Backup](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html) es un servicio administrado que permite la creación de copias de seguridad de diferentes orígenes de datos en AWS. [AWS Elastic Disaster Recovery](https://aws.amazon.com/disaster-recovery/) administra la replicación automatizada de datos en menos de un segundo a una Región de AWS. La mayoría de los servicios de AWS también disponen de capacidades nativas para crear copias de seguridad. AWS Marketplace tiene muchas soluciones que ofrecen también estas capacidades. Consulte la sección **Recursos** que aparece a continuación para ver información sobre cómo crear copias de seguridad de datos desde distintos servicios de AWS. 

1.  **En el caso de los datos que no tengan copia de seguridad, establezca un mecanismo de reproducción de datos**. Puede decidir no crear una copia de seguridad de datos que puedan reproducirse desde otros orígenes y por distintos motivos. Podría darse una situación en la que sea más barato reproducir datos de orígenes cuando sea necesario en lugar de crear una copia de seguridad, ya que podría existir un coste asociado con el almacenamiento de copias de seguridad. Otro ejemplo es cuando la restauración desde una copia de seguridad tarda más tiempo que la reproducción de los datos desde el origen, lo que implica un incumplimiento del RTO. En tales situaciones, sopese los pros y los contras y establezca un proceso bien definido sobre cómo se pueden reproducir los datos desde estos orígenes cuando sea necesaria una recuperación de los datos. Por ejemplo, si ha cargado datos desde Amazon S3 en un almacenamiento de datos (como Amazon Redshift) o un clúster de MapReduce (como Amazon EMR) para analizar dichos datos, esto podría ser un ejemplo de datos que se pueden reproducir desde otros orígenes. Siempre y cuando los resultados de estos análisis se almacenen en algún lugar o sean reproducibles, no sufriría una pérdida de datos por un error en el almacenamiento de datos o el clúster de MapReduce. Otros ejemplos que se pueden reproducir desde el origen son las cachés (como Amazon ElastiCache) o las réplicas de lectura de RDS. 

1.  **Establezca una cadencia de copia de seguridad de los datos**. La creación de copias de seguridad de orígenes de datos es un proceso periódico y la frecuencia debería depender del RPO. 

 **Nivel de esfuerzo para el plan de implementación:** moderado. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 

[REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](rel_planning_for_recovery_objective_defined_recovery.md) 

[REL13-BP02 Usar estrategias de recuperación definidas para cumplir los objetivos de recuperación](rel_planning_for_recovery_disaster_recovery.md) 

 **Documentos relacionados:** 
+  [What Is AWS Backup?](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html) (¿Qué es AWS Backup?) 
+  [What is AWS DataSync?](https://docs.aws.amazon.com/datasync/latest/userguide/what-is-datasync.html) (¿Qué es AWS DataSync?) 
+  [What is Volume Gateway?](https://docs.aws.amazon.com/storagegateway/latest/vgw/WhatIsStorageGateway.html) (¿Qué es una puerta de enlace de volumen?) 
+  [Socio de APN: socios que pueden ayudar con la copia de seguridad](https://aws.amazon.com/partners/find/results/?keyword=Backup) 
+  [AWS Marketplace: products that can be used for backup](https://aws.amazon.com/marketplace/search/results?searchTerms=Backup) (AWS Marketplace: productos que pueden usarse para la copia de seguridad) 
+  [Instantáneas de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) 
+  [Backing Up Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/efs-backup-solutions.html) (Copia de seguridad de Amazon EFS) 
+  [Backing up Amazon FSx for Windows File Server](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-backups.html) (Copia de seguridad de Amazon FSx para Windows File Server) 
+  [Copia de seguridad y restauración de ElastiCache for Redis](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups.html) 
+  [Creating a DB Cluster Snapshot in Neptune](https://docs.aws.amazon.com/neptune/latest/userguide/backup-restore-create-snapshot.html) (Creación de una instantánea de base de datos en Neptune) 
+  [Crear una instantánea de base de datos](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateSnapshot.html) 
+  [Creating an EventBridge Rule That Triggers on a Schedule](https://docs.aws.amazon.com/eventbridge/latest/userguide/create-eventbridge-scheduled-rule.html) (Creación de una regla de EventBridge que se ejecuta según una programación) 
+  [Replicación entre regiones](https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) con Amazon S3 
+  [AWS Backup de EFS a EFS](https://aws.amazon.com/solutions/efs-to-efs-backup-solution/) 
+  [Exportación de datos de registro a Amazon S3](https://docs.aws.amazon.com/Amazon/latest/logs/S3Export.html) 
+  [Administración del ciclo de vida de los objetos](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) 
+  [On-Demand Backup and Restore for DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/backuprestore_HowItWorks.html) (Copia de seguridad y restauración bajo demanda para DynamoDB) 
+  [Recuperación a un momento dado en DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/PointInTimeRecovery.html) 
+  [Trabajo con instantáneas de índice en Amazon OpenSearch Service](https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains-snapshots.html) 
+ [ What is AWS Elastic Disaster Recovery?](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html) (¿Qué es AWS Elastic Disaster Recovery? 

 **Vídeos relacionados: ** 
+  [AWS re:Invent 2021 - Backup, disaster recovery, and ransomware protection with AWS](https://www.youtube.com/watch?v=Ru4jxh9qazc) (AWS re:Invent 2021: Copia de seguridad, recuperación de desastres y protección contra ransomware con AWS) 
+  [AWS Backup Demo: Cross-Account and Cross-Region Backup](https://www.youtube.com/watch?v=dCy7ixko3tE) (Demostración de AWS Backup: copia de seguridad entre cuentas y entre regiones) 
+  [AWS re:Invent 2019: Deep dive on AWS Backup, ft. Rackspace (STG341)](https://youtu.be/av8DpL0uFjc) (AWS re:Invent 2019: Análisis en profundidad en AWS Backup, ft. Rackspace) 

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Implementing Bi-Directional Cross-Region Replication (CRR) for Amazon S3](https://wellarchitectedlabs.com/reliability/200_labs/200_bidirectional_replication_for_s3/) (Laboratorio de Well-Architected: Implementación de la replicación bidireccional entre regiones (CRR) para Amazon S3) 
+  [Well-Architected Lab - Testing Backup and Restore of Data](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/) (Laboratorio de Well-Architected: Probar la copia de seguridad y restauración de los datos) 
+  [Well-Architected Lab - Backup and Restore with Failback for Analytics Workload](https://wellarchitectedlabs.com/reliability/200_labs/200_backup_restore_failback_analytics/) (Laboratorio de Well-Architected: Copia de seguridad y restauración con conmutación por recuperación para cargas de trabajo de análisis) 
+  [Well-Architected Lab - Disaster Recovery - Backup and Restore](https://wellarchitectedlabs.com/reliability/disaster-recovery/workshop_1/) (Laboratorio de Well-Architected: Recuperación de desastres, copia de seguridad y restauración) 

# REL09-BP02 Proteger y cifrar copias de seguridad
<a name="rel_backing_up_data_secured_backups_data"></a>

Controle y detecte el acceso a las copias de seguridad con autenticación y autorización. Evite que la integridad de los datos de las copias de seguridad se vea comprometida (y detecte los casos en los que así sea) mediante el cifrado.

 **Antipatrones usuales:** 
+  Tener el mismo acceso a las automatizaciones de las copias de seguridad y restauración que a los datos 
+  No cifrar las copias de seguridad 

 **Beneficios de establecer esta práctica recomendada:** proteger las copias de seguridad impide que se manipulen los datos y el cifrado de los datos impide el acceso a esos datos si se exponen por error. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Controle y detecte el acceso a las copias de seguridad con autenticación y autorización, como AWS Identity and Access Management (IAM). Evite que la integridad de los datos de las copias de seguridad se vea comprometida (y detecte los casos en los que así sea) mediante el cifrado. 

 Amazon S3 admite varios métodos de cifrado de los datos en reposo. Con el cifrado del lado del servidor, Amazon S3 acepta sus objetos como datos sin cifrar y después los cifra a medida que se almacenan. Utilizando el cifrado del cliente, su aplicación de carga de trabajo es la responsable de cifrar los datos antes de que se envíen a Amazon S3. Ambos métodos le permiten utilizar AWS Key Management Service (AWS KMS) para crear y almacenar la clave de los datos, o puede facilitar la suya propia, de la que será responsable. Con AWS KMS, puede establecer políticas utilizando IAM sobre quién puede acceder a sus claves de datos y datos descifrados y quién no. 

 Para Amazon RDS, si ha decidido cifrar las bases de datos, sus copias de seguridad estarán cifradas también. Las copias de seguridad de DynamoDB siempre están cifradas. Al usar AWS Elastic Disaster Recovery, todos los datos en tránsito y en reposo están cifrados. Con Elastic Disaster Recovery, los datos en reposo se pueden cifrar utilizando la clave de cifrado de volumen predeterminada de Amazon EBS o una clave personalizada administrada por el cliente. 

 **Pasos para la implementación** 

1.  Usar el cifrado en cada uno de los almacenes de datos. Si los datos de origen están cifrados, la copia de seguridad también estará cifrada. 
   + [Utilice el cifrado en Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Encryption.html). Puede configurar el cifrado en reposo mediante AWS Key Management Service al crear una instancia de RDS. 
   + [Utilice el cifrado en volúmenes de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html). Puede configurar el cifrado predeterminado o especificar una clave única al crear los volúmenes. 
   +  Utilice el [cifrado de Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EncryptionAtRest.html) requerido. DynamoDB cifra todos los datos en reposo. Puede utilizar una clave AWS propiedad de AWS KMS o una clave KMS administrada por AWS, especificando una clave que esté almacenada en su cuenta. 
   + [Cifre los datos almacenados en Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/encryption.html). Configure el cifrado cuando cree el sistema de archivos. 
   +  Configure el cifrado en las regiones de origen y destino. Puede configurar el cifrado en reposo en Amazon S3 con las claves almacenadas en KMS, pero las claves son específicas de la región. Puede especificar las claves de destino cuando configure la replicación. 
   +  Elija si desea utilizar el [cifrado de Amazon EBS para Elastic Disaster Recovery predeterminado o personalizado](https://docs.aws.amazon.com/drs/latest/userguide/volumes-drs.html#ebs-encryption). Esta opción cifrará sus datos replicados en reposo en los discos de la subred de la zona de preparación y en los discos replicados. 

1.  Implemente permisos de privilegios mínimos para acceder a las copias de seguridad. Siga las prácticas recomendadas para limitar el acceso a las copias de seguridad, instantáneas y réplicas de acuerdo con las [prácticas recomendadas de seguridad](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Marketplace: products that can be used for backup](https://aws.amazon.com/marketplace/search/results?searchTerms=Backup) (AWS Marketplace: productos que pueden usarse para la copia de seguridad) 
+  [Cifrado de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html) 
+  [Amazon S3: Protección de datos mediante cifrado](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingEncryption.html) 
+  [Configuración adicional de CRR: replicación de objetos creados con el cifrado del servidor (SSE) usando las claves de cifrado almacenadas en AWS KMS](https://docs.aws.amazon.com/AmazonS3/latest/dev/crr-replication-config-for-kms-objects.html) 
+  [Cifrado en reposo en DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/EncryptionAtRest.html) 
+  [Cifrado de recursos de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Overview.Encryption.html) 
+  [Cifrado de datos y metadatos en Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/encryption.html) 
+  [Cifrado para copias de seguridad en AWS](https://docs.aws.amazon.com/aws-backup/latest/devguide/encryption.html) 
+  [Administrar las tablas cifradas](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/encryption.tutorial.html) 
+  [Pilar de seguridad: AWS Well-Architected Framework](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html) 
+ [ What is AWS Elastic Disaster Recovery?](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html) (¿Qué es AWS Elastic Disaster Recovery? 

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Implementing Bi-Directional Cross-Region Replication (CRR) for Amazon S3](https://wellarchitectedlabs.com/reliability/200_labs/200_bidirectional_replication_for_s3/) (Laboratorio de Well-Architected: Implementación de la replicación bidireccional entre regiones (CRR) para Amazon S3) 

# REL09-BP03 Realizar copias de seguridad de los datos automáticamente
<a name="rel_backing_up_data_automated_backups_data"></a>

Configure las copias de seguridad para que se realicen automáticamente mediante el uso de un calendario periódico determinado por el objetivo de punto de recuperación (RPO) o cuando se produzcan cambios en el conjunto de datos. En el caso de los conjuntos de datos críticos con requisitos de pérdida de datos bajos, es necesario realizar una copia de seguridad automática con frecuencia, mientras que en el de los datos menos críticos para los que resultan aceptables ciertas pérdidas, las copias de seguridad pueden ser menos frecuentes.

 **Resultado deseado:** un proceso automatizado que crea copias de seguridad de los orígenes de datos a un ritmo establecido. 

 **Antipatrones usuales:** 
+  Realizar las copias de seguridad manualmente 
+  Usar recursos que tengan la función de copia de seguridad, pero no incluir la copia de seguridad en la automatización 

 **Beneficios de establecer esta práctica recomendada:** la automatización de las copias de seguridad verifica que se realicen con regularidad en función del RPO, y emite una alerta en caso contrario. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 AWS Backup se puede usar para crear copias de seguridad de los datos automatizadas para varios orígenes de datos de AWS. Es posible realizar copias de seguridad de las instancias de Amazon RDS casi de forma continua cada cinco minutos, y de los objetos de Amazon S3 cada quince minutos, lo que facilita una recuperación a un momento dado (PITR) en un punto específico del historial de copias de seguridad. Para otros orígenes de datos de AWS, como los volúmenes Amazon EBS, las tablas de Amazon DynamoDB o los sistemas de archivos de Amazon FSx, AWS Backup puede ejecutar una copia de seguridad automatizada con una frecuencia que puede llegar a ser de una hora. Estos servicios ofrecen también capacidades de copia de seguridad nativas. Entre los servicios de AWS que ofrecen copia de seguridad automatizada con recuperación a un momento dado se incluyen [Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/PointInTimeRecovery_Howitworks.html), [Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIT.html) y [Amazon Keyspaces (para Apache Cassandra)](https://docs.aws.amazon.com/keyspaces/latest/devguide/PointInTimeRecovery.html) —la restauración se puede realizar a un punto temporal específico dentro del historial de copias de seguridad—. La mayoría del resto de servicios de almacenamiento de datos de AWS ofrecen la capacidad de programar copias de seguridad periódicas, con una frecuencia que puede llegar a ser de una hora. 

 Amazon RDS y Amazon DynamoDB ofrecen copias de seguridad continuas con recuperación a un momento dado. El control de versiones de Amazon S3, una vez activado, es automático. [Amazon Data Lifecycle Manager](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshot-lifecycle.html) se puede utilizar para automatizar la creación, copia y eliminación de instantáneas de Amazon EBS. También puede automatizar la creación, copia, desuso y anulación de registro de imágenes de máquina de Amazon (AMI) basadas en Amazon EBS y sus instantáneas de Amazon EBS subyacentes. 

 AWS Elastic Disaster Recovery proporciona replicación continua a nivel de bloque desde el entorno de origen (local o AWS) a la región de recuperación de destino. El servicio crea y administra automáticamente instantáneas de Amazon EBS de un momento dado. 

 Para obtener una vista centralizada de la automatización y el historial de sus copias de seguridad, AWS Backup proporciona una solución de copia de seguridad totalmente administrada y basada en políticas. Centraliza y automatiza la copia de seguridad de datos entre varios servicios de AWS en la nube y en el entorno local utilizando AWS Storage Gateway. 

 De forma adicional al control de versiones, Amazon S3 incluye también replicación. Todo el bucket de S3 se puede replicar automáticamente en otro bucket de la misma Región de AWS o una diferente. 

 **Pasos para la implementación** 

1.  **Identifique los orígenes de datos** de los que, actualmente, se están haciendo copias de seguridad de forma manual. Para obtener más detalles, consulte [REL09-BP01 Identificar todos los datos de los que se debe hacer una copia de seguridad y crearla o reproducir los datos a partir de los orígenes](rel_backing_up_data_identified_backups_data.md). 

1.  **Determine el RPO** de la carga de trabajo. Para obtener más detalles, consulte [REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](rel_planning_for_recovery_objective_defined_recovery.md). 

1.  **Utilice una solución de copia de seguridad o un servicio administrado automatizados**. AWS Backup es un servicio totalmente administrado que facilita la [centralización y automatización de la protección de datos entre servicios de AWS, en la nube y en el entorno local](https://docs.aws.amazon.com/aws-backup/latest/devguide/creating-a-backup.html#creating-automatic-backups). Mediante el uso de planes de copia de seguridad en AWS Backup, cree reglas que definan de qué recursos se debe hacer copia de seguridad y con qué frecuencia deben crearse. Esta frecuencia debe determinarla el RPO establecido en el paso 2. Para obtener orientación práctica sobre cómo crear copias de seguridad automatizadas con AWS Backup, consulte [Testing Backup and Restore of Data](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/) (Pruebas de copia de seguridad y restauración de datos). La mayoría de servicios de AWS que almacenan datos ofrecen capacidades de copia de seguridad nativas. Por ejemplo, se puede utilizar RDS para realizar copias de seguridad automatizadas con recuperación a un momento dado (PITR). 

1.  **Para los orígenes de datos no compatibles** con un servicio administrado o solución de copia de seguridad automatizada, como los orígenes de datos o las colas de mensajes locales, considere el uso de una solución de terceros de confianza para crear copias de seguridad automatizadas. Como alternativa, puede crear una automatización que se encargue de esto con la AWS CLI o algún SDK. Puede usar AWS Lambda Functions o AWS Step Functions para definir la lógica implicada en la creación de una copia de seguridad de datos y utilizar Amazon EventBridge para ejecutarla a una frecuencia basada en su RPO. 

 **Nivel de esfuerzo para el plan de implementación:** bajo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudar con la copia de seguridad](https://aws.amazon.com/partners/find/results/?keyword=Backup) 
+  [AWS Marketplace: products that can be used for backup](https://aws.amazon.com/marketplace/search/results?searchTerms=Backup) (AWS Marketplace: productos que pueden usarse para la copia de seguridad) 
+  [Creating an EventBridge Rule That Triggers on a Schedule](https://docs.aws.amazon.com/eventbridge/latest/userguide/create-eventbridge-scheduled-rule.html) (Creación de una regla de EventBridge que se ejecuta según una programación) 
+  [What Is AWS Backup?](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html) (¿Qué es AWS Backup?) 
+  [¿Qué es AWS Step Functions?](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) 
+ [ What is AWS Elastic Disaster Recovery?](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html) (¿Qué es AWS Elastic Disaster Recovery? 

 **Vídeos relacionados: ** 
+  [AWS re:Invent 2019: Deep dive on AWS Backup, ft. Rackspace (STG341)](https://youtu.be/av8DpL0uFjc) (AWS re:Invent 2019: Análisis en profundidad en AWS Backup, ft. Rackspace) 

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Testing Backup and Restore of Data](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/) (Laboratorio de Well-Architected: Probar la copia de seguridad y restauración de los datos) 

# REL09-BP04 Realizar una recuperación periódica de los datos para verificar la integridad de la copia de seguridad y los procesos
<a name="rel_backing_up_data_periodic_recovery_testing_data"></a>

Valide que su implementación del proceso de copia de seguridad cumpla con los objetivos de tiempo de recuperación (RTO) y los objetivos de punto de recuperación (RPO) mediante una prueba de recuperación.

 **Resultado deseado:** los datos de las copias de seguridad se recuperan periódicamente utilizando mecanismos bien definidos para verificar que la recuperación sea posible dentro del objetivo de tiempo de recuperación (RTO) determinado para la carga de trabajo. Verifique que la restauración a partir de una copia de seguridad dé como resultado un recurso que contenga los datos originales sin que ninguno de ellos resulte dañado o inaccesible, y una pérdida de datos coherente con el objetivo de punto de recuperación (RPO). 

 **Antipatrones usuales:** 
+  Restaurar una copia de seguridad, pero no consultar ni recuperar ningún dato para comprobar que la restauración sea posible. 
+  Suponer que existe una copia de seguridad. 
+  Suponer que la copia de seguridad de un sistema está plenamente operativa y que es posible recuperar datos de ella. 
+  Suponer que el tiempo de restauración o recuperación de datos de una copia de seguridad entra dentro del RTO para la carga de trabajo. 
+  Suponer que los datos que contiene la copia de seguridad están dentro del RPO para la carga de trabajo. 
+  Restaurar cuando sea necesario, sin usar un runbook, o fuera de un procedimiento automatizado. 

 **Beneficios de establecer esta práctica recomendada:** comprobar la recuperación de las copias de seguridad verifica que los datos puedan restaurarse cuando sea necesario sin tener que preocuparse por si los datos faltan o están dañados, por si la restauración y la recuperación son o no posibles dentro del RTO para la carga de trabajo y por si la pérdida de datos se ajusta al RPO de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La comprobación de la capacidad de copia de seguridad y restauración aumenta la confianza en la capacidad de llevar a cabo estas acciones durante una interrupción. Restaure periódicamente las copias de seguridad en una nueva ubicación y lleve a cabo pruebas para verificar la integridad de los datos. Algunas de las pruebas habituales que deberían realizarse son la comprobación de si todos los datos están disponibles, no están dañados, son accesibles y si la pérdida de datos (si la hay) se ajusta al RPO de la carga de trabajo. Estas pruebas también pueden ayudar a determinar si los mecanismos de recuperación son lo suficientemente rápidos como para tener capacidad para el RTO de la carga de trabajo. 

 Con AWS, puede crear un entorno de prueba y restaurar sus copias de seguridad para evaluar a las capacidades en cuanto al RTO y al RPO y llevar a cabo pruebas sobre el contenido y la integridad de los datos. 

 Además, Amazon RDS y Amazon DynamoDB permiten la recuperación a un momento dado (PITR). Mediante la copia de seguridad continua, puede restaurar su conjunto de datos al estado en el que se encontrara en una fecha y hora específicas. 

 Si todos los datos están disponibles, no están dañados, son accesibles y si la pérdida de datos (si la hay) se ajusta al RPO de la carga de trabajo. Estas pruebas también pueden ayudar a determinar si los mecanismos de recuperación son lo suficientemente rápidos como para tener capacidad para el RTO de la carga de trabajo. 

 AWS Elastic Disaster Recovery ofrece instantáneas de recuperación a un momento dado continuas de volúmenes de Amazon EBS. A medida que se replican los servidores de origen, los estados de un momento dado se cronifican en el tiempo en función de la política configurada. Elastic Disaster Recovery ayuda a verificar la integridad de estas instantáneas lanzando instancias con fines de prueba y simulacro sin redirigir el tráfico. 

 **Pasos para la implementación** 

1.  **Identifique los orígenes de datos** de los que se estén haciendo copias de seguridad y dónde se están almacenando dichas copias. Guía para la implementación [REL09-BP01 Identificar todos los datos de los que se debe hacer una copia de seguridad y crearla o reproducir los datos a partir de los orígenes](rel_backing_up_data_identified_backups_data.md). 

1.  **Establezca criterios de validación de datos** para cada origen de datos. Los diferentes tipos de datos tendrán distintas propiedades, lo que podría requerir diferentes mecanismos de validación. Considere cómo se podrían validar estos datos antes de contar con la confianza suficiente para usarlos en producción. Algunas formas habituales de validar los datos son usar las propiedades de datos y copias de seguridad como el tipo de datos, el formato, la suma de comprobación, el tamaño o una combinación de ellas con lógica de validación personalizada. Por ejemplo, podría tratarse de una comparación de los valores de las sumas de comprobación entre el recurso restaurado y el origen de datos en el momento en que se creó la copia de seguridad. 

1.  **Establezca RTO y RPO** para restaurar los datos sobre la base de la importancia crítica de los datos. Guía para la implementación [REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](rel_planning_for_recovery_objective_defined_recovery.md). 

1.  **Evalúe su capacidad de recuperación**. Revise su estrategia de copia de seguridad y restauración para comprender si se ajusta a su RTO y RPO, y ajuste la estrategia según sea necesario. Con [AWSResilience Hub](https://docs.aws.amazon.com/resilience-hub/latest/userguide/create-policy.html), puede llevar a cabo una evaluación de su carga de trabajo. La evaluación compara la configuración de su aplicación con la política de resiliencia y notifica si se pueden cumplir los objetivos de RTO y RPO. 

1.  **Realice una restauración de prueba** con los procesos establecidos actualmente utilizados en producción para la restauración de datos. Estos procesos dependen de cómo se haya realizado la copia de seguridad del origen de datos, el formato y la ubicación del almacenamiento de la copia de seguridad, o de si los datos se reproducen desde otros orígenes. Por ejemplo, si utiliza un servicio administrado como [AWS Backup, podría ser tan sencillo como restaurar la copia de seguridad en un nuevo recurso](https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-a-backup.html). Si utilizó AWS Elastic Disaster Recovery puede [lanzar un simulacro de recuperación](https://docs.aws.amazon.com/drs/latest/userguide/failback-preparing.html). 

1.  **Valide la recuperación de datos** desde el recurso restaurado en función de los criterios que estableciera anteriormente para la validación de datos. ¿Los datos restaurados y recuperados contienen el registro o elemento más reciente en el momento de la copia de seguridad? ¿Estos datos se ajustan al RPO de la carga de trabajo? 

1.  **Mida el tiempo necesario** para la restauración y la recuperación y compárelo con el RTO establecido. ¿Este proceso se ajusta al RTO para la carga de trabajo? Por ejemplo, compare las marcas de tiempo del momento en que se inició el proceso de restauración y de cuando se completó la validación de la recuperación para calcular cuánto tarda este proceso. Todas las llamadas a la API de AWS llevan una marca de tiempo y esta información está disponible en [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html). Aunque esta información puede proporcionar detalles sobre cuándo se inició el proceso de restauración, la marca de tiempo final para el momento de finalización de la validación debería quedar registrada mediante su lógica de validación. Si se utiliza un proceso automatizado, se pueden usar servicios como [Amazon DynamoDB](https://aws.amazon.com/dynamodb/) para almacenar esta información. Además, muchos servicios de AWS proporcionan un historial de eventos que facilita información con marcas de tiempo cuando ocurren determinadas acciones. En AWS Backup, las acciones de copia de seguridad y restauración se denominan *trabajos* y estos trabajos contienen información con marca de tiempo como parte de estos metadatos, que se pueden utilizar para medir el tiempo necesario para la restauración y la recuperación. 

1.  **Notifique a las partes interesadas** si falla la validación de datos o si el tiempo necesario para la restauración y la recuperación supera el RTO establecido para la carga de trabajo. Al implementar la automatización para que haga esto, [como en este laboratorio](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/), se pueden usar servicios como Amazon Simple Notification Service (Amazon SNS) para enviar notificaciones push, por ejemplo, por correo electrónico o SMS, a los interesados. [Estos mensajes también se pueden publicar en aplicaciones de mensajería, como Amazon Chime, Slack o Microsoft Teams,](https://aws.amazon.com/premiumsupport/knowledge-center/sns-lambda-webhooks-chime-slack-teams/) o usarse para [crear tareas como OpsItems con AWS Systems Manager OpsCenter](https://docs.aws.amazon.com/systems-manager/latest/userguide/OpsCenter-creating-OpsItems.html). 

1.  **Automatice este proceso para que se ejecute periódicamente**. Por ejemplo, servicios como AWS Lambda o una máquina de estados en AWS Step Functions se pueden usar para automatizar los procesos de restauración y recuperación, y Amazon EventBridge se puede usar para desencadenar este flujo de trabajo de automatización periódicamente como se muestra en el siguiente diagrama de arquitectura. Descubra cómo [automatizar la validación de recuperación de datos con AWS Backup](https://aws.amazon.com/blogs/storage/automate-data-recovery-validation-with-aws-backup/). Además, [este laboratorio de Well-Architected](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/) contiene una experiencia práctica sobre una forma de llevar a cabo la automatización de varios de los pasos que aparecen aquí. 

![\[Diagrama que muestra un proceso de copia de seguridad y restauración automatizado\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/automated-backup-restore-process.png)


 **Nivel de esfuerzo para el plan de implementación:** de moderado a alto, en función de la complejidad de los criterios de validación. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Automate data recovery validation with AWS Backup](https://aws.amazon.com/blogs/storage/automate-data-recovery-validation-with-aws-backup/) (Automatizar la validación de recuperación de datos con AWS Backup) 
+  [Socio de APN: socios que pueden ayudar con la copia de seguridad](https://aws.amazon.com/partners/find/results/?keyword=Backup) 
+  [AWS Marketplace: products that can be used for backup](https://aws.amazon.com/marketplace/search/results?searchTerms=Backup) (AWS Marketplace: productos que pueden usarse para la copia de seguridad) 
+  [Creating an EventBridge Rule That Triggers on a Schedule](https://docs.aws.amazon.com/eventbridge/latest/userguide/create-eventbridge-scheduled-rule.html) (Creación de una regla de EventBridge que se ejecuta según una programación) 
+  [On-demand backup and restore for DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BackupRestore.html) (Copia de seguridad y restauración bajo demanda para DynamoDB) 
+  [What Is AWS Backup?](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html) (¿Qué es AWS Backup?) 
+  [¿Qué es AWS Step Functions?](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) 
+  [What is AWS Elastic Disaster Recovery](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html) (¿Qué es AWS Elastic Disaster Recovery?) 
+  [AWS Elastic Disaster Recovery](https://aws.amazon.com/disaster-recovery/) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: probar la copia de seguridad y restauración de los datos](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/) 

# REL 10 ¿Cómo usa el aislamiento de errores para proteger su carga de trabajo?
<a name="rel-10"></a>

Los límites aislados de los errores acotan el efecto de un error en una carga de trabajo a un número limitado de componentes. Los componentes fuera del límite no resultan afectados por el error. Mediante el uso de varios límites aislados de error, puede acotar el impacto en su carga de trabajo.

**Topics**
+ [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md)
+ [REL10-BP02 Seleccionar las ubicaciones adecuadas para el despliegue en varias ubicaciones](rel_fault_isolation_select_location.md)
+ [REL10-BP03 Automatizar la recuperación de los componentes restringidos a una sola ubicación](rel_fault_isolation_single_az_system.md)
+ [REL10-BP04 Usar arquitecturas herméticas para limitar el alcance del impacto](rel_fault_isolation_use_bulkhead.md)

# REL10-BP01 Implementar la carga de trabajo en varias ubicaciones
<a name="rel_fault_isolation_multiaz_region_system"></a>

 Distribuya los datos y los recursos de la carga de trabajo entre varias zonas de disponibilidad o, si es necesario, entre varias Regiones de AWS. Estas ubicaciones pueden ser tan diversas como sea necesario. 

 Uno de los principios fundamentales para el diseño de servicios en AWS es evitar puntos únicos de error en la infraestructura física subyacente. Esto nos motiva a desarrollar software y sistemas que utilizan múltiples zonas de disponibilidad y son resistentes a errores de una sola zona. Del mismo modo, los sistemas están diseñados para resistir los errores de un solo nodo de informática, un solo volumen de almacenamiento o una sola instancia de una base de datos. Cuando se desarrolla un sistema que depende de componentes redundantes, es importante asegurarse de que estos componentes funcionen de forma independiente y, en el caso de las Regiones de AWS, de forma autónoma. Los beneficios que se obtienen de los cálculos teóricos de disponibilidad con componentes redundantes solo son válidos si esto se cumple. 

 **Zonas de disponibilidad (AZ)** 

 Las Regiones de AWS tienen varias zonas de disponibilidad diseñadas para ser independientes entre sí. Cada zona de disponibilidad está separada por una distancia física significativa de otras zonas para evitar situaciones de error correlacionadas debido a peligros ambientales como incendios, inundaciones o tornados. Cada zona de disponibilidad también tiene una infraestructura física independiente: conexiones exclusivas para el suministro eléctrico, fuentes de energía de reserva independientes, servicios mecánicos independientes y conectividad de red independiente dentro y fuera de la zona de disponibilidad. Este diseño limita los errores en cualquiera de estos sistemas a la única AZ afectada. Pese a estar separadas geográficamente, las zonas de disponibilidad están situadas en la misma zona regional, lo que permite las redes de alto rendimiento y baja latencia. La totalidad de la Región de AWS (a través de todas las zonas de disponibilidad, que se componen de múltiples centros de datos físicamente independientes) se puede tratar como un único objetivo de despliegue lógico para su carga de trabajo, incluida la capacidad de replicar datos de forma síncrona (por ejemplo, entre bases de datos). De este modo, puede utilizar las zonas de disponibilidad en una configuración activa/activa o activa/en espera. 

 Las zonas de disponibilidad son independientes y, por lo tanto, la disponibilidad de la carga de trabajo se incrementa cuando esta se diseña para utilizar varias zonas. Algunos servicios de AWS (incluido el plano de datos de instancia Amazon EC2) se despliegan como servicios estrictamente zonales en los que tienen un destino compartido con la zona de disponibilidad en la que se encuentran. Las instancias Amazon EC2 de las demás AZ no se verán afectadas y seguirán funcionando. Del mismo modo, si un error en una zona de disponibilidad provoca el error de una base de datos de Amazon Aurora, es posible que una instancia de Aurora de réplica de lectura en una zona de disponibilidad no afectada se promueva automáticamente a principal. Los servicios de AWS regionales, como Amazon DynamoDB, utilizan internamente varias zonas de disponibilidad en una configuración activa/activa para alcanzar los objetivos de diseño de disponibilidad para ese servicio, sin que sea necesario configurar la ubicación AZ. 

![\[Diagrama que muestra la arquitectura de varios niveles desplegada en tres zonas de disponibilidad. Tenga en cuenta que Amazon S3 y Amazon DynamoDB son siempre Multi-AZ automáticamente. El ELB también se despliega en las tres zonas.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/multi-tier-architecture.png)


 Si bien los planos de control de AWS generalmente ofrecen la capacidad de administrar recursos en toda la región (múltiples zonas de disponibilidad), ciertos planos de control (incluidos Amazon EC2 y Amazon EBS) pueden filtrar los resultados en una única zona de disponibilidad. Al hacerlo, la solicitud se procesa solo en la zona de disponibilidad indicada, lo que reduce la exposición a interrupciones en otras zonas de disponibilidad. Este ejemplo de AWS CLI ilustra la obtención de información de instancias Amazon EC2 solo de la zona de disponibilidad us-east-2c: 

```
 AWS ec2 describe-instances --filters Name=availability-zone,Values=us-east-2c
```

 *Zonas locales de AWS* 

 Las zonas locales de AWS actúan de forma similar a las zonas de disponibilidad en su Región de AWS correspondiente en el sentido de que pueden seleccionarse como ubicación de recursos de AWS zonales, como subredes e instancias EC2. Lo que las hace especiales es que no están situadas en la Región de AWS asociada, sino cerca de los grandes centros de población, de la industria y de TI, donde no hay ninguna Región de AWS en la actualidad. Sin embargo, siguen reteniendo un gran ancho de banda y una conexión segura entre las cargas de trabajo de la zona local y las que se ejecutan en la Región de AWS. Debe utilizar las zonas locales de AWS para desplegar las cargas de trabajo más cerca de sus usuarios para cumplir los requisitos de baja latencia. 

 **Red periférica global de Amazon** 

 La red periférica global de Amazon consta de ubicaciones periféricas en ciudades de todo el mundo. Amazon CloudFront utiliza esta red para entregar contenido a los usuarios finales con una latencia menor. AWS Global Accelerator le permite crear sus puntos de conexión de la carga de trabajo en estas ubicaciones periféricas para proporcionar la incorporación a la red global de AWS cerca de sus usuarios. Amazon API Gateway permite que los puntos de conexión de la API optimizados para la periferia utilicen una distribución de CloudFront para facilitar el acceso de los clientes a través de la ubicación periférica más cercana. 

 *Regiones de AWS* 

 Las Regiones de AWS se han diseñado para ser autónomas, por lo que, para utilizar un enfoque multirregión, habría que desplegar copias dedicadas de los servicios en cada región. 

 Un enfoque multirregión es habitual en las estrategias de *recuperación de desastres* para cumplir los objetivos de recuperación cuando se producen eventos puntuales a gran escala. Consulte [https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/plan-for-disaster-recovery-dr.html](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/plan-for-disaster-recovery-dr.html) para obtener más información sobre estas estrategias. Sin embargo, aquí nos centramos en la *disponibilidad*, cuya finalidad es entregar un objetivo de tiempo de actividad medio a lo largo del tiempo. En el caso de los objetivos de alta disponibilidad, una arquitectura multirregión se diseñará generalmente para ser activa/activa, donde cada copia de servicio (en sus respectivas regiones) está activa (sirviendo solicitudes). 

**Recomendación**  
 Los objetivos de disponibilidad para la mayoría de las cargas de trabajo pueden satisfacerse mediante una estrategia Multi-AZ en una sola Región de AWS. Considere la posibilidad de usar arquitecturas multirregión solo cuando las cargas de trabajo tengan requisitos extremos de disponibilidad, u otros objetivos empresariales, que requieran una arquitectura multirregión. 

 AWS le proporciona las capacidades para utilizar los servicios entre regiones. Por ejemplo, AWS proporciona una replicación continua y asíncrona de datos mediante la replicación de Amazon Simple Storage Service (Amazon S3), réplicas de lectura de Amazon RDS (incluidas las réplicas de lectura de Aurora) y las tablas globales de Amazon DynamoDB. Con la replicación continua, las versiones de sus datos están disponibles para usarse casi inmediatamente en cada una de sus regiones activas. 

 Con AWS CloudFormation, puede definir su infraestructura y desplegarla de forma coherente en varias Cuentas de AWS y Regiones de AWS. Y AWS CloudFormation StackSets amplía esta funcionalidad al permitirle crear, actualizar o eliminar pilas de AWS CloudFormation en varias cuentas y regiones con una sola operación. En el caso de los despliegues de instancias Amazon EC2, se utiliza una AMI (imagen de máquina de Amazon) para suministrar información como la configuración del hardware y el software instalado. Puede implementar una canalización del generador de imágenes de Amazon EC2 que cree las ANU que necesita y copiarlas en sus regiones activas. Esto garantiza que estas *AMI doradas* tiene todo lo que necesita para desplegar y escalar su carga de trabajo en cada nueva región. 

 Para enrutar el tráfico, tanto Amazon Route 53 como AWS Global Accelerator permiten la definición de políticas que determinen qué usuarios van a cada punto de conexión regional activo. Con Global Accelerator se establece un regulador de tráfico para controlar el porcentaje de tráfico que se dirige a cada punto de conexión de la aplicación. Route 53 es compatible con este enfoque porcentual y también con varias políticas disponibles, incluidas las basadas en la geoproximidad y la latencia. Global Accelerator aprovecha automáticamente la amplia red de servidores periféricos de AWS, para integrar el tráfico en la estructura de red de AWS de lo antes posible, lo que se traduce en menores latencias de solicitudes. 

 El funcionamiento de todas estas capacidades permite preservar la autonomía de cada región. Existen muy pocas excepciones a este enfoque, incluidos nuestros servicios que proporcionan entrega periférica global (como Amazon CloudFront y Amazon Route 53), junto con el plano de control para el servicio AWS Identity and Access Management (IAM). La gran mayoría de los servicios funcionan completamente en una sola región. 

 **Centro de datos local** 

 En el caso de las cargas de trabajo que se ejecutan en un centro de datos local, diseñe una experiencia híbrida cuando sea posible. AWS Direct Connect proporciona una conexión de red dedicada desde su entorno local a AWS, lo que le permite la ejecución en ambos. 

 Otra opción es ejecutar la infraestructura y los servicios de AWS localmente mediante AWS Outposts. AWS Outposts es un servicio completamente administrado que extiende la infraestructura de AWS, los servicios de AWS, las API y las herramientas a su centro de datos. La misma infraestructura de hardware que se utiliza en la Nube de AWS se instala en su centro de datos. AWS Outposts se conectan a las Región de AWS. A continuación, puede usar AWS Outposts para respaldar las cargas de trabajo que tengan requisitos de baja latencia o de procesamiento local de datos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use varias zonas de disponibilidad y Regiones de AWS. Distribuya los datos y los recursos de la carga de trabajo entre varias zonas de disponibilidad o, si es necesario, entre varias Regiones de AWS. Estas ubicaciones pueden ser tan diversas como sea necesario. 
  +  Los servicios regionales se implementan en las zonas de disponibilidad. 
    +  Esto incluye Amazon S3, Amazon DynamoDB y AWS Lambda (cuando no está conectado a una VPC) 
  +  Implemente su contenedor, instancia y cargas de trabajo basadas en funciones en múltiples zonas de disponibilidad. Use los almacenes de datos multizona, incluidas las memorias caché. Use las características de EC2 Auto Scaling, ubicación de tareas de ECS, configuración de la función AWS Lambda cuando se ejecute en su VPC y clústeres ElastiCache. 
    +  Utilice subredes en zonas de disponibilidad distintas cuando implemente grupos de Auto Scaling. 
      +  [Ejemplo: distribución de instancias en zonas de disponibilidad](https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-benefits.html#arch-AutoScalingMultiAZ) 
      +  [Estrategias de asignación de tareas de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-strategies.html) 
      +  [Configurar una función AWS Lambda para obtener acceso a los recursos en una Amazon VPC](https://docs.aws.amazon.com/lambda/latest/dg/vpc.html) 
      +  [Elección de regiones y zonas de disponibilidad](https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/RegionsAndAZs.html) 
    +  Utilice subredes en zonas de disponibilidad distintas cuando implemente grupos de Auto Scaling. 
      +  [Ejemplo: distribución de instancias en zonas de disponibilidad](https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-benefits.html#arch-AutoScalingMultiAZ) 
    +  Utilice los parámetros de colocación de tareas de ECS, especificando grupos de subred de base de datos 
      +  [Estrategias de asignación de tareas de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-strategies.html) 
    +  Utilice subredes en múltiples zonas de disponibilidad cuando configure una función para que se ejecute en su VPC. 
      +  [Configurar una función AWS Lambda para obtener acceso a los recursos en una Amazon VPC](https://docs.aws.amazon.com/lambda/latest/dg/vpc.html) 
    +  Utilice múltiples zonas de disponibilidad con clústeres ElastiCache. 
      +  [Elección de regiones y zonas de disponibilidad](https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/RegionsAndAZs.html) 
+  Si la carga de trabajo se debe desplegar en varias regiones, elija una estrategia multirregión. La mayoría de los requisitos de fiabilidad se pueden satisfacer con una sola Región de AWS que use una estrategia de varias zonas de disponibilidad. Use una estrategia multirregión cuando sea necesario para satisfacer las necesidades del negocio. 
  +  [AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (Patrones de arquitectura para aplicaciones activas-activas en varias regiones) (ARC209-R2)](https://youtu.be/2e29I3dA8o4) 
    +  Contar con otra Región de AWS puede añadir otra capa de seguridad en cuanto a la disponibilidad de los datos. 
    +  Algunas cargas de trabajo tienen requisitos normativos que exigen una estrategia multirregión. 
+  Evalúe AWS Outposts para su carga de trabajo. Si su carga de trabajo requiere baja latencia en el centro de datos local o si tiene requisitos de procesamiento de datos locales, A continuación, ejecute la infraestructura de AWS y los servicios locales con AWS Outposts. 
  +  [¿Qué es AWS Outposts?](https://docs.aws.amazon.com/outposts/latest/userguide/what-is-outposts.html) 
+  Determine si las zonas locales de AWS le ayudan a prestar servicio a sus usuarios. Si tiene requisitos de baja latencia, compruebe si las zonas locales de AWS están cerca de sus usuarios. En caso afirmativo, úselas para implementar las cargas de trabajo más cerca de esos usuarios. 
  +  [Preguntas frecuentes sobre las zonas locales de AWS](https://aws.amazon.com/about-aws/global-infrastructure/localzones/faqs/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Infraestructura global de AWS](https://aws.amazon.com/about-aws/global-infrastructure) 
+  [Preguntas frecuentes sobre las zonas locales de AWS](https://aws.amazon.com/about-aws/global-infrastructure/localzones/faqs/) 
+  [Estrategias de asignación de tareas de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-strategies.html) 
+  [Elección de regiones y zonas de disponibilidad](https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/RegionsAndAZs.html) 
+  [Ejemplo: distribución de instancias en zonas de disponibilidad](https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-benefits.html#arch-AutoScalingMultiAZ) 
+  [Tablas globales: replicación multirregión con DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html) 
+  [Uso de las bases de datos globales de Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database.html) 
+  [Serie de blog Creating a Multi-Region Application with AWS Services blog series (Creación de una aplicación multirregión con servicios de AWS)](https://aws.amazon.com/blogs/architecture/tag/creating-a-multi-region-application-with-aws-services-series/) 
+  [¿Qué es AWS Outposts?](https://docs.aws.amazon.com/outposts/latest/userguide/what-is-outposts.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (Patrones de arquitectura para aplicaciones activas-activas en varias regiones) (ARC209-R2)](https://youtu.be/2e29I3dA8o4) 
+  [AWS re:Invent 2019: Innovation and operation of the AWS global network infrastructure (Innovación y funcionamiento de la infraestructura de red global de AWS) (NET339)](https://youtu.be/UObQZ3R9_4c) 

# REL10-BP02 Seleccionar las ubicaciones adecuadas para el despliegue en varias ubicaciones
<a name="rel_fault_isolation_select_location"></a>

## Resultado deseado
<a name="desired-outcome"></a>

 Para obtener una alta disponibilidad, despliegue siempre (cuando sea posible) sus componentes de carga de trabajo en varias zonas de disponibilidad (AZ), como se muestra en la figura 10. En el caso de cargas de trabajo con requisitos de resiliencia extremos, evalúe cuidadosamente las opciones de una arquitectura multirregión. 

![\[Diagrama que muestra un despliegue de base de datos multi-AZ resiliente con copia de seguridad en otra región de AWS\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/multi-az-architecture.png)


## Patrones de uso no recomendados comunes
<a name="common-anti-patterns"></a>
+  Elegir el diseño de una arquitectura multirregión cuando una arquitectura multi-AZ satisfaría los requisitos. 
+  No tener en cuenta las dependencias entre los componentes de la aplicación si los requisitos de resiliencia y multiubicación difieren entre esos componentes. 

## Beneficios de establecer esta práctica recomendada
<a name="benefits-of-establishing-this-best-practice"></a>

 Para obtener resiliencia, debe utilizar un enfoque que cree capas de defensa. Una capa protege de las interrupciones más pequeñas y comunes mediante la creación de una arquitectura de alta disponibilidad con múltiples AZ. Otra capa de defensa está pensada para proteger de eventos poco frecuentes como los desastres naturales generalizados y las interrupciones en el nivel de la región. Esta segunda capa implica la arquitectura de su aplicación para que abarque múltiples Regiones de AWS. 
+  La diferencia entre una disponibilidad del 99,5 % y del 99,99 % es de más de 3,5 horas al mes. La disponibilidad prevista de una carga de trabajo solo puede alcanzar los «cuatro nueves» si se encuentra en varias AZ. 
+  Al ejecutar su carga de trabajo en varias AZ, puede aislar las interrupciones de energía eléctrica, refrigeración y redes, y la mayoría de los desastres naturales como incendios e inundaciones. 
+  La implementación de una estrategia multirregión para su carga de trabajo le ayuda a protegerla de desastres naturales generalizados que afecten a una región geográfica amplia de un país o de errores técnicos de alcance regional. Tenga en cuenta que implementar una arquitectura multirregión puede ser significativamente complejo y no suele ser necesario para la mayoría de las cargas de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 En el caso de un evento de desastre provocado por la interrupción o pérdida parcial de una zona de disponibilidad, la implementación de una carga de trabajo con alta disponibilidad en varias zonas de disponibilidad en una sola Región de AWS contribuye a mitigar los desastres naturales o técnicos. Cada Región de AWS consta de varias zonas de disponibilidad, cada una aislada de los errores de las demás zonas y separadas por una distancia significativa. Sin embargo, en el caso de un evento de desastre que implique el riesgo de perder varios componentes de zona de disponibilidad que están alejados entre sí, debe implementar opciones de recuperación de desastres para mitigar los errores de alcance regional. Para las cargas de trabajo que requieren una resiliencia extrema (infraestructuras críticas, aplicaciones relacionadas con la sanidad, infraestructuras de sistemas financieros, etc.), puede ser necesaria una estrategia multirregión. 

## Pasos de implementación
<a name="implementation-steps"></a>

1.  Evalúe su carga de trabajo y determine si las necesidades de resiliencia se pueden satisface con un enfoque multi-AZ (una sola Región de AWS) o si requieren un enfoque multirregión. La implementación de una arquitectura de multirregión para satisfacer estos requisitos supondrá una complejidad adicional, por lo que deberá considerar detenidamente su caso de uso y sus requisitos. Los requisitos de resiliencia se pueden cumplir casi siempre con una sola Región de AWS. Tenga en cuenta los siguientes requisitos posibles a la hora de determinar si necesita utilizar varias regiones: 

   1.  **Recuperación de desastres (DR)**: en el caso de un evento de desastre provocado por la interrupción o pérdida parcial de una zona de disponibilidad, la implementación de una carga de trabajo con alta disponibilidad en varias zonas de disponibilidad en una sola Región de AWS contribuye a mitigar los desastres naturales o técnicos. En el caso de un evento de desastre que implique el riesgo de perder varios componentes de zona de disponibilidad que están alejados entre sí, debe implementar opciones de recuperación de desastres en varias regiones para mitigar los desastres naturales o los errores técnicos de alcance regional. 

   1.  **Alta disponibilidad**: se puede utilizar una arquitectura de multirregión (mediante varias AZ en cada región) para lograr una disponibilidad superior a cuatro nueves (> 99,99 %). 

   1.  **Localización de pilas**: al desplegar una carga de trabajo para una audiencia global, puede desplegar pilas localizadas en diferentes Regiones de AWS para atender a las audiencias de esas regiones. La localización puede incluir el idioma, la moneda y los tipos de datos almacenados. 

   1.  **Proximidad a los usuarios:** al desplegar una carga de trabajo para una audiencia global, puede reducir la latencia si despliega las pilas en Regiones de AWS cerca de donde están los usuarios finales. 

   1.  **Residencia de los datos**: algunas cargas de trabajo están sujetas a requisitos de residencia de datos, en los que los datos de ciertos usuarios deben permanecer dentro de las fronteras de un país específico. En función de la normativa en cuestión, puede optar por desplegar una pila completa, o solo los datos, en la Región de AWS en esas fronteras. 

1.  A continuación, se presentan algunos ejemplos de la funcionalidad multi-AZ proporcionada por los servicios de AWS: 

   1.  Para proteger las cargas de trabajo que utilizan EC2 o ECS, despliegue un equilibrador de carga elástico ante los recursos de computación. Elastic Load Balancing proporciona la solución para detectar las instancias en zonas con estado incorrecto y enrutar el tráfico a las que lo tienen correcto. 

      1.  [Introducción a Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancer-getting-started.html) 

      1.  [Introducción a los equilibradores de carga de red](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancer-getting-started.html) 

   1.  En el caso de las instancias EC2 que ejecutan software estándar comercial y que no admiten el equilibrio de carga, puede conseguir una forma de tolerancia a errores mediante la implementación de una metodología de recuperación de desastres multi-AZ. 

      1. [REL13-BP02 Usar estrategias de recuperación definidas para cumplir los objetivos de recuperación](rel_planning_for_recovery_disaster_recovery.md)

   1.  Para las tareas de Amazon ECS, despliegue su servicio de forma homogénea en tres zonas de disponibilidad para lograr un equilibrio entre la disponibilidad y el coste. 

      1.  [Amazon ECS availability best practices \$1 Containers (Prácticas recomendadas de disponibilidad de Amazon ECS \$1 Contenedores](https://aws.amazon.com/blogs/containers/amazon-ecs-availability-best-practices/) 

   1.  En el caso de Aurora Amazon RDS, puede elegir Multi-AZ como una opción de configuración. En caso de error de la instancia de la base de datos principal, Amazon RDS promociona automáticamente una base de datos en espera para recibir el tráfico en otra zona de disponibilidad. También se pueden crear réplicas de lectura multirregión para mejorar la resiliencia. 

      1.  [Despliegues multi-AZ de Amazon RDS](https://aws.amazon.com/rds/features/multi-az/) 

      1.  [Creación de una réplica de lectura en una Región de AWS diferente](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.XRgn.html) 

1.  A continuación, se presentan algunos ejemplos de la funcionalidad multirregión proporcionada por los servicios de AWS: 

   1.  Para las cargas de trabajo de Amazon S3, en las que la disponibilidad multi-AZ la proporciona automáticamente el servicio, considere la posibilidad de utilizar puntos de acceso multirregión si se necesita un despliegue multirregión. 

      1.  [Puntos de acceso multirregión en Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPoints.html) 

   1.  En el caso de las tablas de DynamoDB, en las que el servicio proporciona automáticamente la disponibilidad multi-AZ, puede convertir fácilmente las tablas existentes en tablas globales para aprovechar las ventajas de múltiples regiones. 

      1.  [Convert Your Single-Region Amazon DynamoDB Tables to Global Tables (Convierta sus tablas de Amazon DynamoDB de una sola región en tablas globales)](https://aws.amazon.com/blogs/aws/new-convert-your-single-region-amazon-dynamodb-tables-to-global-tables/) 

   1.  Si su carga de trabajo está encabezada por Application Load Balancers o equilibradores de carga de red, use AWS Global Accelerator para mejorar la disponibilidad de su aplicación mediante el direccionamiento del tráfico a varias regiones que contengan puntos de conexión con el estado correcto. 

      1.  [Endpoints for standard accelerators in AWS Global Accelerator - AWS Global Accelerator (Puntos de conexión para aceleradores estándar en AWS Global Accelerator - AWS Global Accelerator) (amazon.com)](https://docs.aws.amazon.com/global-accelerator/latest/dg/about-endpoints.html) 

   1.  En el caso de las aplicaciones que utilizan AWS EventBridge, considere la posibilidad de utilizar buses entre regiones para reenviar los eventos a otras Regiones que seleccione. 

      1.  [Sending and receiving Amazon EventBridge events between Regiones de AWS (Envío y recepción de eventos de Amazon EventBridge entre Regiones de AWS)](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-cross-region.html) 

   1.  En el caso de las bases de datos de Amazon Aurora, considere de usar bases de datos globales de Aurora, que abarcan varias regiones de AWS. Los clústeres existentes pueden modificarse para agregar también nuevas regiones. 

      1.  [Introducción a las bases de datos globales de Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-global-database-getting-started.html) 

   1.  Si su carga de trabajo incluye claves de cifrado de AWS Key Management Service (AWS KMS), considere si las claves multirregión son adecuadas para su aplicación. 

      1.  [Claves multirregión en AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) 

   1.  Para conocer otras características de servicios de AWS, consulte esta serie de blog en [Serie Creating a Multi-Region Application with AWS Services blog series (Creación de una aplicación multirregión con servicios de AWS)](https://aws.amazon.com/blogs/architecture/tag/creating-a-multi-region-application-with-aws-services-series/) 

 **Nivel de esfuerzo para el plan de implementación: **De moderado a alto 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Serie Creating a Multi-Region Application with AWS Services blog series (Creación de una aplicación multirregión con servicios de AWS)](https://aws.amazon.com/blogs/architecture/tag/creating-a-multi-region-application-with-aws-services-series/) 
+  [Disaster Recovery (DR) Architecture on AWS, Part IV: Multi-site Active/Active (Arquitectura de recuperación de desastres (DR) en AWS, parte IV: activa-activa multisitio)](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-iv-multi-site-active-active/) 
+  [Infraestructura global de AWS](https://aws.amazon.com/about-aws/global-infrastructure) 
+  [Preguntas frecuentes sobre las zonas locales de AWS](https://aws.amazon.com/about-aws/global-infrastructure/localzones/faqs/) 
+  [Disaster Recovery (DR) Architecture on AWS, Part I: Strategies for Recovery in the Cloud (Arquitectura de recuperación de desastres (DR) en AWS, parte I: estrategias de recuperación en la nube)](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-i-strategies-for-recovery-in-the-cloud/) 
+  [La recuperación de desastres es diferente en la nube](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-is-different-in-the-cloud.html) 
+  [Tablas globales: replicación multirregión con DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (Patrones de arquitectura para aplicaciones activas-activas en varias regiones) (ARC209-R2)](https://youtu.be/2e29I3dA8o4) 
+  [Auth0: arquitectura de alta disponibilidad en varias regiones que se amplía a más de 1500 millones de inicios de sesión en un mes con conmutación por error automatizada](https://www.youtube.com/watch?v=vGywoYc_sA8) 

   **Ejemplos relacionados:** 
+  [Disaster Recovery (DR) Architecture on AWS, Part I: Strategies for Recovery in the Cloud (Arquitectura de recuperación de desastres (DR) en AWS, parte I: estrategias de recuperación en la nube)](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-i-strategies-for-recovery-in-the-cloud/) 
+  [DTCC consigue un nivel de resiliencia mayor del que podría obtener localmente](https://aws.amazon.com/solutions/case-studies/DTCC/) 
+  [Expedia Group usa una arquitectura de varias regiones y varias zonas de disponibilidad con un servicio DNS propio para agregar resiliencia a las aplicaciones](https://aws.amazon.com/solutions/case-studies/expedia/) 
+  [Uber: recuperación de desastres para Kafka en varias regiones](https://eng.uber.com/kafka/) 
+  [Netflix: estrategia activa-activa para la resiliencia multirregional](https://netflixtechblog.com/active-active-for-multi-regional-resiliency-c47719f6685b) 
+  [Cómo creamos Data Residency for Atlassian Cloud](https://www.atlassian.com/engineering/how-we-build-data-residency-for-atlassian-cloud) 
+  [Intuit TurboTax se ejecuta en dos regiones](https://www.youtube.com/watch?v=286XyWx5xdQ) 

# REL10-BP03 Automatizar la recuperación de los componentes restringidos a una sola ubicación
<a name="rel_fault_isolation_single_az_system"></a>

Si los componentes de la carga de trabajo solo se pueden ejecutar en una zona de disponibilidad o en el centro de datos local, implemente la capacidad de volver a crear la carga de trabajo de acuerdo con los objetivos de recuperación definidos.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Si la práctica recomendada de desplegar la carga de trabajo en varias ubicaciones no es posible por limitaciones tecnológicas, debe implementar una ruta alternativa hacia la resiliencia. Debe automatizar la capacidad de recrear la infraestructura necesaria, reimplementar las aplicaciones y recrear los datos necesarios para estos casos. 

 Por ejemplo, Amazon EMR lanza todos los nodos para un clúster determinado en la misma zona de disponibilidad, porque la ejecución de un clúster en la misma zona mejora el rendimiento de los flujos de trabajo, ya que ofrece una velocidad de acceso a los datos más alta. Si este componente resulta necesario para la resiliencia de la carga de trabajo, debe tener una forma de volver a desplegar el clúster y sus datos. Además, para Amazon EMR, debería aprovisionar la redundancia de formas diferentes al uso de multi-AZ. Puede aprovisionar [varios nodos](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-ha-launch.html). Con el [sistema de archivos EMR (EMRFS)](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-fs.html), los datos en EMR se pueden almacenar en Amazon S3, lo que a su vez puede replicarse entre varias zonas de disponibilidad o Regiones de AWS. 

 De modo similar, en el caso de Amazon Redshift, aprovisiona de forma predeterminada el clúster en una zona de disponibilidad seleccionada al azar dentro de la Región de AWS que haya seleccionado. Todos los nodos del clúster se aprovisionan en la misma zona. 

 Para cargas de trabajo basadas en servidores con estado implementadas en un centro de datos local, puede utilizar AWS Elastic Disaster Recovery para proteger sus cargas de trabajo en AWS. Si ya está alojado en AWS, puede utilizar Elastic Disaster Recovery para proteger su carga de trabajo en una zona o región de disponibilidad alternativa. Elastic Disaster Recovery utiliza la replicación continua a nivel de bloque en un área de preparación ligera para proporcionar una recuperación rápida y fiable de las aplicaciones locales y basadas en la nube. 

 **Pasos para la implementación** 

1.  Implemente la autorrecuperación. Implemente sus instancias o contenedores con escalado automático siempre que sea posible. Si no puede usar el escalado automático, utilice la recuperación automática para instancias EC2 o implemente la automatización de autorrecuperación basada en eventos de ciclo de vida del contenedor de Amazon EC2 o ECS. 
   +  Utilice los [grupos de Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) para instancias y cargas de trabajo de contenedor que no tienen requisitos para una sola dirección IP de instancia, dirección IP privada, dirección IP elástica y metadatos de instancia. 
     +  Los datos de usuario de la plantilla de lanzamiento se pueden usar para implementar una automatización que pueda solucionar la mayoría de las cargas de trabajo. 
   +  Utilice la [recuperación de instancias Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html) automática para cargas de trabajo que requieren una única dirección ID de instancia, dirección IP privada, dirección IP elástica y metadatos de instancia. 
     +  La recuperación automática enviará alertas de estado de recuperación a un tema de SNS cuando se detecte un error en la instancia. 
   +  Utilice los [eventos del ciclo de vida de la instancia Amazon EC2](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) o los [eventos de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_cwe_events.html) para automatizar la autorrecuperación cuando no se pueda utilizar el escalado automático ni la recuperación EC2. 
     +  Utilice los eventos para invocar la automatización que reparará su componente de acuerdo con la lógica de proceso que necesita. 
   +  Proteja las cargas de trabajo con estado que se limitan a una única ubicación con [AWS Elastic Disaster Recovery](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon ECS events](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_cwe_events.html) (Eventos de Amazon ECS) 
+  [Amazon EC2 Auto Scaling lifecycle hooks](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html) (Enlaces de ciclo de vida de Amazon EC2 Auto Scaling) 
+  [Recupere la instancia.](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html) 
+  [Escalado automático del servicio](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-auto-scaling.html) 
+  [What Is Amazon EC2 Auto Scaling?](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html) (¿Qué es Amazon EC2 Auto Scaling?) 
+ [AWS Elastic Disaster Recovery](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html)

# REL10-BP04 Usar arquitecturas herméticas para limitar el alcance del impacto
<a name="rel_fault_isolation_use_bulkhead"></a>

La implementación de arquitecturas herméticas (también conocidas como arquitecturas basadas en celdas) restringe el efecto del fallo dentro de una carga de trabajo a un número limitado de componentes.

 **Resultado deseado:** una arquitectura basada en celdas utiliza numerosas instancias aisladas de una carga de trabajo, donde cada instancia se conoce como celda. Cada celda es independiente, no comparte estado con otras celdas y gestiona un subconjunto de las solicitudes de la carga de trabajo global. Esto reduce la posible repercusión de un error, como una actualización de software incorrecta, en una celda individual y en las solicitudes que está procesando. Si una carga de trabajo utiliza 10 celdas para atender 100 peticiones cuando se produce un error, el 90 % del total de las solicitudes no se verá afectado por el error. 

 **Antipatrones usuales:** 
+  Permitir que las celdas crezcan sin límites. 
+  Aplicar actualizaciones o despliegues de código a todas las celdas al mismo tiempo. 
+  Compartir estado o componentes entre celdas (a excepción de la capa de enrutador). 
+  Añadir lógica compleja de negocio o de enrutamiento a la capa de enrutador. 
+  No minimizar las interacciones entre celdas. 

 **Beneficios de establecer esta práctica recomendada:** con las arquitecturas basadas en celdas, muchos tipos habituales de errores están contenidos dentro de la propia celda, lo que proporciona un aislamiento adicional de los errores. Estos límites de errores pueden proporcionar resiliencia contra tipos de errores que, de otro modo, serían difíciles de contener, como despliegues de código infructuosos o solicitudes que se corrompen o activan un modo de error concreto (también conocidas como solicitudes de *píldora envenenada*). 

## Guía para la implementación
<a name="implementation-guidance"></a>

 En un barco, los mamparos garantizan que una brecha en el casco quede contenida en una sola sección del casco. En los sistemas complejos, este modelo de contención suele imitarse para facilitar el aislamiento de errores. Los límites aislados de los errores restringen el efecto de un error en una carga de trabajo a un número limitado de componentes. Los componentes fuera del límite no resultan afectados por el error. Mediante el uso de varios límites aislados de error, puede acotar el impacto en su carga de trabajo. En AWS, los clientes pueden utilizar varias zonas y regiones de disponibilidad para proporcionar aislamiento de errores, pero el concepto de aislamiento de errores también puede extenderse a la arquitectura de su carga de trabajo. 

 La carga de trabajo global se divide en celdas mediante una clave de partición. Esta clave tiene que alinearse con la *corriente* del servicio, o la forma natural en que la carga de trabajo de un servicio puede subdividirse con mínimas interacciones entre celdas. Algunos ejemplos de claves de partición son el ID de cliente, el ID de recurso o cualquier otro parámetro fácilmente accesible en la mayoría de las llamadas a la API. Una capa de enrutador de celdas distribuye las solicitudes a celdas individuales en función de la clave de partición, y presenta un único punto de conexión a los clientes. 

![\[Diagrama que muestra una arquitectura basada en celdas\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/cell-based-architecture.png)


 **Pasos para la implementación** 

 Al diseñar una arquitectura basada en celdas, hay que tener en cuenta varias consideraciones de diseño. 

1.  **Clave de partición**: debe prestarse especial atención a la hora de elegir la clave de partición. 
   +  Debe alinearse con la corriente del servicio o con la forma natural en que la carga de trabajo de un servicio puede subdividirse con mínimas interacciones entre celdas. Algunos ejemplos son: `ID de cliente` o bien `ID de recurso`. 
   +  La clave de partición debe estar disponible en todas las solicitudes, ya sea de modo directo o de una manera que se pueda inferir con facilidad de forma determinista por otros parámetros. 

1.  **Asignación persistente de celdas**: los servicios ascendentes solo deben interactuar con una única celda durante el ciclo de vida de sus recursos. 
   +  Según la carga de trabajo, puede ser necesaria una estrategia de migración de celda para migrar datos de una celda a otra. Un posible escenario en el que puede ser precisa una migración de celda es si un usuario o recurso concreto de la carga de trabajo crece demasiado y requiere una celda dedicada. 
   +  Las celdas no deben compartir estados ni componentes entre ellas. 
   +  En consecuencia, las interacciones entre celdas deben evitarse o mantenerse al mínimo, ya que dichas interacciones crean dependencias entre las celdas y, por lo tanto, disminuyen las ventajas en el aislamiento de errores. 

1.  **Capa de enrutador**: la capa de enrutador es un componente compartido entre celdas, lo que significa que no puede seguir la misma estrategia de compartimentación que las celdas. 
   +  Se recomienda que la capa de enrutador distribuya las solicitudes a las celdas individuales mediante un algoritmo de asignación de particiones de una manera eficiente a nivel computacional, como la combinación de funciones hash criptográficas y aritmética modular para asignar claves de partición a las celdas. 
   +  Para evitar impactos multicelda, la capa de enrutador debe ser lo más simple y escalable horizontalmente posible, lo que requiere evitar una lógica de negocio compleja dentro de esta capa. Esto tiene la ventaja añadida de facilitar la comprensión de su comportamiento esperado en todo momento, lo que permite una comprobabilidad exhaustiva. Como explica Colm MacCárthaigh en [Reliability, constant work, and a good cup of coffee](https://aws.amazon.com/builders-library/reliability-and-constant-work/) (Fiabilidad, trabajo constante y una buena taza de café), los diseños sencillos y los patrones de trabajo constantes producen sistemas fiables y reducen la antifragilidad. 

1.  **Tamaño de la celda**: las celdas deben tener un tamaño máximo y no debe permitirse que lo superen. 
   +  Para determinar el tamaño máximo, se deben llevar a cabo pruebas exhaustivas hasta que se alcancen puntos de ruptura y se establezcan márgenes de funcionamiento seguros. Para obtener más detalles sobre cómo implementar prácticas de prueba, consulte [REL07-BP04 Realizar pruebas de la carga de trabajo](rel_adapt_to_changes_load_tested_adapt.md) 
   +  La carga de trabajo global crecerá a medida que se añadan celdas adicionales, lo que permite escalar la carga de trabajo con los aumentos de la demanda. 

1.  **Estrategias multi-AZ o en varias regiones**: se deben aprovechar numerosas capas de resiliencia para ofrecer protección contra diferentes dominios de error. 
   +  Para obtener resiliencia, debe utilizar un enfoque que cree capas de defensa. Una capa protege de las interrupciones más pequeñas y frecuentes mediante la creación de una arquitectura de alta disponibilidad con múltiples AZ. Otra capa de defensa está pensada para proteger de eventos poco frecuentes, como las catástrofes naturales generalizadas y las interrupciones a nivel regional. Esta segunda capa implica la arquitectura de su aplicación para que abarque múltiples Regiones de AWS. La implementación de una estrategia multirregión para su carga de trabajo le ayuda a protegerla de catástrofes naturales generalizadas que afecten a una región geográfica amplia de un país o de errores técnicos de alcance regional. Tenga en cuenta que implementar una arquitectura multirregión puede ser significativamente complejo y no suele ser necesario para la mayoría de las cargas de trabajo. Para obtener más detalles, consulte [REL10-BP02 Seleccionar las ubicaciones adecuadas para el despliegue en varias ubicaciones](rel_fault_isolation_select_location.md). 

1.  **Despliegue de código**: se prefiere una estrategia de despliegue de código escalonado en lugar de desplegar los cambios de código en todas las celdas al mismo tiempo. 
   +  Esto ayudará a minimizar posibles errores en numerosas celdas provocados por un despliegue incorrecto o a un error humano. Para obtener más detalles, consulte [Automatización de implementaciones seguras y sin intervención](https://aws.amazon.com/builders-library/automating-safe-hands-off-deployments/). 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL07-BP04 Realizar pruebas de la carga de trabajo](rel_adapt_to_changes_load_tested_adapt.md) 
+  [REL10-BP02 Seleccionar las ubicaciones adecuadas para el despliegue en varias ubicaciones](rel_fault_isolation_select_location.md) 

 **Documentos relacionados:** 
+  [Reliability, constant work, and a good cup of coffee](https://aws.amazon.com/builders-library/reliability-and-constant-work/) (Fiabilidad, trabajo constante y una buena taza de café) 
+ [AWS and Compartmentalization](https://aws.amazon.com/blogs/architecture/aws-and-compartmentalization/) (AWS y compartimentalización)
+ [Aislamiento de las cargas de trabajo a través de la fragmentación aleatoria](https://aws.amazon.com/builders-library/workload-isolation-using-shuffle-sharding/)
+  [Automatización de implementaciones seguras y sin intervención](https://aws.amazon.com/builders-library/automating-safe-hands-off-deployments/) 

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2018: Close Loops and Opening Minds: How to Take Control of Systems, Big and Small](https://www.youtube.com/watch?v=O8xLxNje30M) (AWS re:Invent 2018: Cerrar los bucles y abrir las mentes: cómo asumir el control de los sistemas grandes y pequeños)
+  [AWS re:Invent 2018: How AWS Minimizes the Blast Radius of Failures (ARC338)](https://youtu.be/swQbA4zub20) (AWS re:Invent 2018: Cómo AWS minimiza el radio de efecto de los errores) 
+  [Shuffle-sharding: AWS re:Invent 2019: Introducing The Amazon Builders’ Library (DOP328)](https://youtu.be/sKRdemSirDM?t=1373) (Fragmentación aleatoria: AWS re:Invent 2019: Presentación de Amazon Builders' Library) 
+ [AWS Summit ANZ 2021 - Everything fails, all the time: Designing for resilience](https://www.youtube.com/watch?v=wUzSeSfu1XA) (AWS Summit ANZ 2021: Todo falla todo el tiempo: diseñar para la resiliencia)

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Fault isolation with shuffle sharding](https://wellarchitectedlabs.com/reliability/300_labs/300_fault_isolation_with_shuffle_sharding/) (Laboratorio de Well-Architected: Aislamiento de errores con fragmentación aleatoria) 

# REL 11 ¿Cómo diseña su carga de trabajo para que soporte los errores de los componentes?
<a name="rel-11"></a>

Las cargas de trabajo con un requisito de alta disponibilidad y un tiempo de recuperación (MTTR) bajo deben diseñarse para que sean resilientes.

**Topics**
+ [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md)
+ [REL11-BP02 Conmutar por error a recursos en estado correcto](rel_withstand_component_failures_failover2good.md)
+ [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md)
+ [REL11-BP04 Confiar en el plano de datos y no en el plano de control durante la recuperación](rel_withstand_component_failures_avoid_control_plane.md)
+ [REL11-BP05 Usar la estabilidad estática para evitar el comportamiento bimodal](rel_withstand_component_failures_static_stability.md)
+ [REL11-BP06 Enviar notificaciones cuando los eventos afecten a la disponibilidad](rel_withstand_component_failures_notifications_sent_system.md)
+ [REL11-BP07 Diseñar su producto para cumplir objetivos de disponibilidad y acuerdos de nivel de servicio (SLA) de tiempo de actividad](rel_withstand_component_failures_service_level_agreements.md)

# REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores
<a name="rel_withstand_component_failures_monitoring_health"></a>

 Supervise continuamente el estado de las cargas de trabajo para que usted y los sistemas automatizados sepan cuándo se produce una degradación o un error en cuanto ocurran. Supervise los indicadores clave de rendimiento (KPI) en función del valor empresarial. 

 Todos los mecanismos de recuperación y corrección deben comenzar por la capacidad de detectar problemas rápidamente. Los fallos técnicos deberían detectarse en primer lugar para poder resolverse. Sin embargo, la disponibilidad se basa en la capacidad de su carga de trabajo de ofrecer valor empresarial, de modo que los indicadores clave de rendimiento (KPI) que midan esto tengan que formar parte de su estrategia de detección y corrección. 

 **Patrones de uso no recomendados comunes:** 
+  No se han configurado alarmas, por lo que las interrupciones se producen sin notificación. 
+  Existen alarmas, pero en umbrales que no proporcionan el tiempo necesario para reaccionar. 
+  No se recopilan métricas con la suficiente regularidad para satisfacer el objetivo de tiempo de recuperación (RTO). 
+  Solo se supervisa activamente la capa de la carga de trabajo orientada a los clientes. 
+  Solo se recopilan métricas técnicas, no métricas de funciones empresariales. 
+  No hay métricas que midan la experiencia del usuario con la carga de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** Una supervisión adecuada de todas las capas le permite reducir el tiempo de recuperación al reducirse el tiempo de detección. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Determine el intervalo de recopilación de sus componentes en función de sus objetivos de recuperación. 
  +  Su intervalo de supervisión dependerá de la rapidez con la que deba recuperarse. El tiempo de recuperación depende del tiempo que tarde la recuperación, por lo que debe determinar la frecuencia de recopilación teniendo en cuenta este tiempo y el objetivo de tiempo de recuperación (RTO). 
+  Configure la supervisión detallada de los componentes. 
  +  Determine si es necesaria la supervisión detallada de las instancias de EC2 y Auto Scaling. La supervisión detallada proporciona métricas en intervalos de un minuto y la supervisión predeterminada proporciona métricas en intervalos de cinco minutos. 
    +  [Habilitar o deshabilitar la supervisión detallada de su instancia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-cloudwatch-new.html) 
    +  [Supervise los grupos de escalado automático y las instancias con Amazon CloudWatch.](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-monitoring.html) 
  +  Determine si se necesita la supervisión mejorada de RDS. La supervisión mejorada usa un agente en las instancias de RDS para obtener información útil sobre los diferentes procesos o subprocesos de una instancia de RDS. 
    +  [Enhanced Monitoring](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html) 
+  Cree métricas personalizadas para medir los indicadores clave de rendimiento (KPI) del negocio. Las cargas de trabajo implementan funciones empresariales clave. Estas funciones deben usarse como KPI para ayudar a identificar cuándo se produce un problema indirecto. 
  +  [Publicar métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
+  Supervise la experiencia del usuario para detectar errores mediante valores controlados de usuario. Las pruebas de transacciones sintéticas (denominadas pruebas de valores controlados, que no deben confundirse con las implementaciones de valores controlados) que puedan ejecutar y simular el comportamiento de los clientes son uno de los procesos de prueba más importantes. Ejecute estas pruebas constantemente en los puntos de conexión de las cargas de trabajo desde distintas ubicaciones remotas. 
  +  [Amazon CloudWatch Synthetics le permite crear pruebas de valores controlados de usuario.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  Cree métricas personalizadas que controlen la experiencia del usuario. Si puede instrumentar la experiencia del cliente, puede determinar cuándo se degrada la experiencia del cliente. 
  +  [Publicar métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
+  Defina alarmas para detectar cuándo alguna parte de la carga de trabajo no funciona correctamente y para indicar cuándo escalar automáticamente los recursos. Las alarmas se pueden mostrar visualmente en paneles, pueden enviar alertas a través de Amazon SNS o correo electrónico y funcionan con el escalado automático para escalar o desescalar verticalmente los recursos de una carga de trabajo. 
  +  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  Cree paneles para visualizar las métricas. Se pueden usar paneles para visualizar las tendencias, los valores atípicos y otros indicadores de problemas potenciales, o para proporcionar una indicación de problemas que tal vez le convenga investigar. 
  +  [Uso de paneles de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon CloudWatch Synthetics le permite crear pruebas de valores controlados de usuario.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [Habilitar o deshabilitar la supervisión detallada de su instancia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-cloudwatch-new.html) 
+  [Enhanced Monitoring](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html) 
+  [Supervise los grupos de escalado automático y las instancias con Amazon CloudWatch.](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-monitoring.html) 
+  [Publicar métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) 
+  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  [Uso de paneles de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: Nivel 300: Implementación de comprobaciones de estado y administración de dependencias para mejorar la fiabilidad](https://wellarchitectedlabs.com/Reliability/300_Health_Checks_and_Dependencies/README.html) 

# REL11-BP02 Conmutar por error a recursos en estado correcto
<a name="rel_withstand_component_failures_failover2good"></a>

 Asegúrese de que, si se produce un error en un recurso, los recursos en buen estado puedan seguir atendiendo las solicitudes. Para errores de ubicación (como zonas de disponibilidad o Región de AWS), asegúrese de que dispone de sistemas para conmutar por error a recursos en buen estado en ubicaciones sin problemas. 

 Los servicios de AWS, como Elastic Load Balancing y AWS Auto Scaling, ayudan a distribuir la carga entre los recursos y las zonas de disponibilidad. Por lo tanto, el error de un recurso individual (como una instancia EC2) o el deterioro de una zona de disponibilidad puede mitigarse si se desplaza el tráfico a los recursos restantes con estado correcto. Para las cargas de trabajo multirregión, esto es más complicado. Por ejemplo, las réplicas de lectura entre regiones le permiten desplegar los datos en varias Regiones de AWS, pero aun así debe promocionar la réplica de lectura a una réplica principal y dirigir el tráfico a ella si se produce una conmutación por error. Amazon Route 53 y AWS Global Accelerator pueden ayudar a enrutar el tráfico a través de Regiones de AWS. 

 Si su carga de trabajo usa servicios de AWS como Amazon S3 o Amazon DynamoDB, estos se implementan automáticamente en varias zonas de disponibilidad. En caso de error, el plano de control de AWS dirige automáticamente el tráfico a ubicaciones con estado correcto. Los datos se almacenan de forma redundante en varias zonas de disponibilidad y siguen estando disponibles. En Amazon RDS, debe elegir Multi-AZ como opción de configuración para que, en caso de error, AWS dirija automáticamente el tráfico a una instancia con estado correcto. Para las instancias Amazon EC2, las tareas de Amazon ECS o los pods de Amazon EKS, elija las zonas de disponibilidad en las que se realizará el despliegue. Elastic Load Balancing proporciona la solución para detectar las instancias en las zonas que no tienen un estado correcto y enrutar el tráfico a las que sí lo tienen. Elastic Load Balancing incluso puede enrutar el tráfico a los componentes de su centro de datos local. 

 Para los enfoques multirregión (que también pueden incluir centros de datos locales), Amazon Route 53 proporciona una forma de definir dominios de Internet y asignar políticas de enrutamiento, que pueden incluir comprobaciones de estado para garantizar que el tráfico se dirige a regiones con estado correcto. Por su lado, AWS Global Accelerator proporciona direcciones IP estáticas que actúan como un punto de entrada fijo a la aplicación y dirige el tráfico a puntos de conexión de las Regiones de AWS de su elección mediante la red global de AWS en lugar de Internet para proporcionar un mejor rendimiento y mayor fiabilidad. 

 AWS aborda el diseño de nuestros servicios teniendo en cuenta la recuperación de errores. Diseñamos servicios para minimizar el tiempo de recuperación de los errores y el impacto en los datos. Nuestros servicios utilizan principalmente almacenes de datos que confirman las solicitudes solo después de que se almacenan de forma duradera en múltiples réplicas en una región. Estos servicios y recursos incluyen Amazon Aurora, instancias de base de datos Multi-AZ de Amazon Relational Database Service (Amazon RDS), Amazon S3, Amazon DynamoDB, Amazon Simple Queue Service (Amazon SQS) y Amazon Elastic File System (Amazon EFS). Se han diseñado para utilizar el aislamiento basado en celdas y utilizar el aislamiento de errores que proporcionan las zonas de disponibilidad. Utilizamos ampliamente la automatización en nuestros procedimientos operativos. También optimizamos nuestra funcionalidad de reemplazo y reinicio para recuperarnos rápidamente de las interrupciones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Conmute por error a recursos en estado correcto. Asegúrese de que, si se produce un error en un recurso, los recursos en buen estado puedan seguir atendiendo las solicitudes. Para errores de ubicación (como zonas de disponibilidad o Región de AWS), asegúrese de que dispone de sistemas para conmutar por error a recursos en estado correcto en ubicaciones sin problemas. 
  +  Si su carga de trabajo usa servicios de AWS como Amazon S3 o Amazon DynamoDB, estos se implementan automáticamente en varias zonas de disponibilidad. En caso de error, el plano de control de AWS dirige automáticamente el tráfico a ubicaciones con estado correcto. 
  +  En Amazon RDS, debe elegir Multi-AZ como opción de configuración para que, en caso de error, AWS dirija automáticamente el tráfico a una instancia con estado correcto. 
    +  [Alta disponibilidad (Multi-AZ) de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.MultiAZ.html) 
  +  Para las instancias Amazon EC2 o las tareas de Amazon ECS, elija las zonas de disponibilidad en las que se realizará el despliegue. Elastic Load Balancing proporciona la solución para detectar las instancias en las zonas que no tienen un estado correcto y enrutar el tráfico a las que sí lo tienen. Elastic Load Balancing incluso puede enrutar el tráfico a los componentes de su centro de datos local. 
  +  Para los enfoques multirregión (que podrían incluir también centros de datos locales), asegúrese de que los datos y recursos de ubicaciones en buen estado puedan seguir atendiendo las solicitudes. 
    +  Por ejemplo, las réplicas de lectura entre regiones le permiten desplegar los datos en varias Regiones de AWS, pero aun así debe promocionar la réplica de lectura a una réplica maestra y dirigir el tráfico a ella si se produce un error de ubicación principal. 
      +  [Información general de las réplicas de lectura de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html) 
    +  Amazon Route 53 proporciona una forma de definir dominios de Internet y asignar políticas de enrutamiento, que pueden incluir comprobaciones de estado para garantizar que el tráfico se dirige a regiones en estado correcto. Por su lado, AWS Global Accelerator proporciona direcciones IP estáticas que actúan como un punto de entrada fijo a la aplicación y dirige el tráfico a puntos de conexión de las Regiones de AWS de su elección mediante la red global de AWS en lugar del Internet público para proporcionar un mejor rendimiento y mayor fiabilidad. 
      +  [Amazon Route 53: selección de una política de enrutamiento](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) 
      +  [¿Qué es AWS Global Accelerator?](https://docs.aws.amazon.com/global-accelerator/latest/dg/what-is-global-accelerator.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [APN Partner: socios que pueden ayudar con la automatización de su tolerancia a errores](https://aws.amazon.com/partners/find/results/?keyword=automation) 
+  [AWS Marketplace: productos que pueden usarse para tolerancia a errores](https://aws.amazon.com/marketplace/search/results?searchTerms=fault+tolerance) 
+  [AWS OpsWorks: uso de la autorreparación para reemplazar instancias en estado de error](https://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-autohealing.html) 
+  [Amazon Route 53: selección de una política de enrutamiento](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) 
+  [Alta disponibilidad (Multi-AZ) de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.MultiAZ.html) 
+  [Información general de las réplicas de lectura de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html) 
+  [Estrategias de asignación de tareas de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-strategies.html) 
+  [Creating Kubernetes Auto Scaling Groups for Multiple Availability Zones (Creación de grupos de escalado automático de Kubernetes para varias zonas de disponibilidad)](https://aws.amazon.com/blogs/containers/amazon-eks-cluster-multi-zone-auto-scaling-groups/) 
+  [¿Qué es AWS Global Accelerator?](https://docs.aws.amazon.com/global-accelerator/latest/dg/what-is-global-accelerator.html) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: Nivel 300: Implementación de comprobaciones de estado y administración de dependencias para mejorar la fiabilidad](https://wellarchitectedlabs.com/Reliability/300_Health_Checks_and_Dependencies/README.html) 

# REL11-BP03 Automatizar la reparación en todas las capas
<a name="rel_withstand_component_failures_auto_healing_system"></a>

 Cuando se detecte un error, utilice las funciones automatizadas para tomar medidas correctivas. 

 *La capacidad de reiniciar* es una herramienta importante para corregir errores. Como ya hablamos anteriormente en relación con los sistemas distribuidos, una práctica recomendada es hacer que los servicios no tengan estado cuando sea posible. Esto evita la pérdida de datos o disponibilidad tras el reinicio. En la nube, puede (y generalmente debería) sustituir todo el recurso (por ejemplo, la instancia de EC2 o la función Lambda) como parte del reinicio. El reinicio en sí es una forma sencilla y fiable de recuperarse de un error. En las cargas de trabajo ocurren muchos tipos de errores diferentes. Los errores pueden ocurrir en el hardware, el software, las comunicaciones y el funcionamiento. En lugar de construir nuevos mecanismos para encapsular, identificar y corregir cada uno de los distintos tipos de errores, asigne muchas categorías de errores diferentes a la misma estrategia de recuperación. Una instancia podría fallar debido a un error de hardware, un error del sistema operativo, una filtración en la memoria u otras causas. En lugar de aportar un remedio personalizado para cada situación, trátelas como si se tratase de errores de instancia. Finalice la instancia y permita que AWS Auto Scaling la sustituya. Posteriormente, lleve a cabo el análisis del recurso fallido fuera de banda. 

 Otro ejemplo es la capacidad de reiniciar una solicitud de red. Se aplica el mismo enfoque de recuperación tanto a un tiempo de espera de la red como a un error en la dependencia, en el que la dependencia devuelve un error. Ambos eventos tienen un efecto similar en el sistema, por lo que en lugar de intentar convertir cada uno en un «caso especial», se aplicaría una estrategia similar de reintento con retroceso exponencial y fluctuación. 

 *La capacidad de reiniciar* es un mecanismo de recuperación que aparece en la informática orientada a la recuperación y en las arquitecturas de clústeres de alta disponibilidad. 

 Se puede usar Amazon EventBridge para supervisar y filtrar los eventos, como las alarmas de CloudWatch o cambios en el estado en otros servicios de AWS. En función de la información de los eventos, se puede desencadenar AWS Lambda, AWS, Systems Manager Automation u otros destinos para ejecutar lógica de reparación personalizada en su carga de trabajo. 

 Amazon EC2 Auto Scaling se puede configurar para comprobar el estado de la instancia de EC2. Si la instancia está en un estado que no sea el de ejecución, o si el estado del sistema se ve impedido, Amazon EC2 Auto Scaling considera que la instancia no está en buen estado y lanza una instancia de sustitución. Con AWS OpsWorks, puede configurar la autorreparación de las instancias de EC2 en el nivel de la capa de Ops Works. 

 Para sustituciones a gran escala (como la pérdida de toda una zona de disponibilidad), se prefiere la estabilidad estática para la alta disponibilidad en lugar de intentar obtener varios recursos nuevos a la vez. 

 **Patrones de uso no recomendados comunes:** 
+  Desplegar las aplicaciones en instancias o contenedores individualmente. 
+  Implementar aplicaciones que no se pueden implementar en varias ubicaciones sin usar la recuperación automática 
+  Reparar manualmente las aplicaciones que el escalado automático y la recuperación automática no pueden reparar. 

 **Beneficios de establecer esta práctica recomendada:** La reparación automatizada, aunque la carga de trabajo solo esté implementada en una ubicación en un momento dado, reducirá el tiempo medio de recuperación y garantizará la disponibilidad de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use grupos de escalado automático para desplegar niveles en una carga de trabajo. El escalado automático puede realizar una autorreparación de aplicaciones sin estado, y añadir y eliminar capacidad. 
  +  [Cómo funciona AWS Auto Scaling](https://docs.aws.amazon.com/autoscaling/plans/userguide/how-it-works.html) 
+  Implemente la recuperación automática en instancias de EC2 que tengan aplicaciones implementadas que no se puedan implementar en varias ubicaciones y puedan tolerar el reinicio tras un error. La recuperación automática se puede usar para reemplazar hardware defectuoso y reiniciar la instancia cuando la aplicación no se puede implementar en varias ubicaciones. Los metadatos de la instancia y las direcciones IP asociadas se conservan, así como los volúmenes de Amazon EBS y los puntos de montaje en Elastic File Systems o File Systems para Lustre y Windows. 
  +  [Recuperación automática de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html) 
  +  [Amazon Elastic Block Store (Amazon EBS)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html) 
  +  [Amazon Elastic File System (Amazon EFS)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEFS.html) 
  +  [¿Qué es Amazon FSx para Lustre?](https://docs.aws.amazon.com/fsx/latest/LustreGuide/what-is.html) 
  +  [¿Qué es Amazon FSx para Windows File Server?](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/what-is.html) 
    +  Con AWS OpsWorks, puede configurar la autorreparación de las instancias de EC2 en el nivel de capa. 
      +  [AWS OpsWorks: uso de la autorreparación para reemplazar instancias en estado de error](https://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-autohealing.html) 
+  Implemente la recuperación automática mediante AWS Step Functions y AWS Lambda cuando no pueda usar el escalado automático ni la recuperación automática, o cuando la recuperación automática produzca un error. Cuando no pueda usar el escalado automático ni la recuperación automática, o esta produzca un error, puede automatizar la reparación con AWS Step Functions y AWS Lambda. 
  +  [¿Qué es AWS Step Functions?](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) 
  +  [¿Qué es AWS Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) 
    +  Se puede usar Amazon EventBridge para supervisar y filtrar los eventos, como las alarmas de CloudWatch o cambios en el estado en otros servicios de AWS. En función de la información de los eventos, se puede desencadenar AWS Lambda (u otros destinos) para ejecutar lógica de reparación personalizada en su carga de trabajo. 
      +  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
      +  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [APN Partner: socios que pueden ayudar con la automatización de su tolerancia a errores](https://aws.amazon.com/partners/find/results/?keyword=automation) 
+  [AWS Marketplace: productos que pueden usarse para tolerancia a errores](https://aws.amazon.com/marketplace/search/results?searchTerms=fault+tolerance) 
+  [AWS OpsWorks: uso de la autorreparación para reemplazar instancias en estado de error](https://docs.aws.amazon.com/opsworks/latest/userguide/workinginstances-autohealing.html) 
+  [Recuperación automática de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html) 
+  [Amazon Elastic Block Store (Amazon EBS)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html) 
+  [Amazon Elastic File System (Amazon EFS)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEFS.html) 
+  [Cómo funciona AWS Auto Scaling](https://docs.aws.amazon.com/autoscaling/plans/userguide/how-it-works.html) 
+  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
+  [¿Qué es AWS Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) 
+  [Automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
+  [¿Qué es AWS Step Functions?](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) 
+  [¿Qué es Amazon FSx para Lustre?](https://docs.aws.amazon.com/fsx/latest/LustreGuide/what-is.html) 
+  [¿Qué es Amazon FSx para Windows File Server?](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/what-is.html) 

 **Vídeos relacionados:** 
+  [Estabilidad estática en AWS: AWS re:Invent 2019: Presentación de la Amazon Builders’ Library (DOP328)](https://youtu.be/sKRdemSirDM?t=704) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: Nivel 300: Implementación de comprobaciones de estado y administración de dependencias para mejorar la fiabilidad](https://wellarchitectedlabs.com/Reliability/300_Health_Checks_and_Dependencies/README.html) 

# REL11-BP04 Confiar en el plano de datos y no en el plano de control durante la recuperación
<a name="rel_withstand_component_failures_avoid_control_plane"></a>

 El plano de control se usa para configurar recursos y el plano de datos proporciona servicios. Los planos de datos tienen normalmente objetivos de diseño de mayor disponibilidad que los planos de control y suelen ser menos complejos. Al implementar respuestas de recuperación o mitigación a eventos que puedan afectar a la resiliencia, el uso de operaciones del plano de control puede reducir la resiliencia general de su arquitectura. Por ejemplo, puede usar el plano de datos de Amazon Route 53 para enviar de manera fiable las consultas DNS basadas en las comprobaciones de estado, pero para actualizar las políticas de enrutamiento de Route 53 se usa el plano de control, por lo que no debe usarlo para la recuperación. 

 Los planos de datos de Route 53 responden a consultas de DNS y llevan a cabo y evalúan comprobaciones de estado. Están globalmente distribuidos y diseñados para un [acuerdo de nivel de servicio (SLA) del 100 % de disponibilidad.](https://aws.amazon.com/route53/sla/) Las API de administración de Route 53 y las consolas en las que se crean, actualizan y eliminan recursos de Route 53 se ejecutan en planos de control diseñados para priorizar la sólida coherencia y durabilidad que necesita al administrar DNS. Para conseguirlo, los planos de control se localizan en una única región, US East (N. Virginia). Aunque ambos sistemas se han diseñado para ser muy fiables, los planos de control no están incluidos en el SLA. Podría haber eventos poco comunes en los que el diseño resiliente del plano de datos permita mantener la disponibilidad mientras que los planos de control no lo permitan. Con los mecanismos de recuperación de desastres y conmutación por error, utilice las funciones del plano de datos para facilitar la mejor fiabilidad posible. 

 Para obtener más información sobre los planos de datos, los planos de control y cómo AWS crea servicios para cumplir los objetivos de alta disponibilidad, consulte el informe [Estabilidad estática con zonas de disponibilidad](https://aws.amazon.com/builders-library/static-stability-using-availability-zones) y la [Amazon Builders’ Library.](https://aws.amazon.com/builders-library/) 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use el plano de datos y no el plano de control cuando utilice Amazon Route 53 para la recuperación de desastres. Route 53 Application Recovery Controller le ayuda a administrar y coordinar la conmutación por error mediante comprobaciones de preparación y controles de enrutamiento. Estas características supervisan continuamente la capacidad de la aplicación de recuperarse de los errores y le permiten controlar la recuperación de la aplicación en las distintas Regiones de AWS, zonas de disponibilidad y localmente. 
  +  [¿Qué es Route 53 Application Recovery Controller?](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) 
  +  [Crear mecanismos de recuperación de desastres mediante Amazon Route 53](https://aws.amazon.com/blogs/networking-and-content-delivery/creating-disaster-recovery-mechanisms-using-amazon-route-53/) 
  +  [Crear aplicaciones altamente resilientes mediante Amazon Route 53 Application Recovery Controller, parte 1: pila de una sola región](https://aws.amazon.com/blogs/networking-and-content-delivery/building-highly-resilient-applications-using-amazon-route-53-application-recovery-controller-part-1-single-region-stack/) 
  +  [Crear aplicaciones altamente resilientes mediante Amazon Route 53 Application Recovery Controller, parte 2: pila de varias regiones](https://aws.amazon.com/blogs/networking-and-content-delivery/building-highly-resilient-applications-using-amazon-route-53-application-recovery-controller-part-2-multi-region-stack/) 
+  Saber qué operaciones están en el plano de datos y cuáles están en el plano de control. 
  +  [La Amazon Builders' Library: Evitar la sobrecarga de los sistemas distribuidos asumiendo el control del servicio más pequeño](https://aws.amazon.com/builders-library/avoiding-overload-in-distributed-systems-by-putting-the-smaller-service-in-control/) 
  +  [API de Amazon DynamoDB (plano de control y plano de datos)](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.API.html) 
  +  [Ejecuciones de AWS Lambda](https://docs.aws.amazon.com/whitepapers/latest/security-overview-aws-lambda/lambda-executions.html) (divididas entre el plano de control y el plano de datos) 
  +  [Ejecuciones de AWS Lambda](https://docs.aws.amazon.com/whitepapers/latest/security-overview-aws-lambda/lambda-executions.html) (divididas entre el plano de control y el plano de datos) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [APN Partner: socios que pueden ayudar con la automatización de su tolerancia a errores](https://aws.amazon.com/partners/find/results/?keyword=automation) 
+  [AWS Marketplace: productos que pueden usarse para tolerancia a errores](https://aws.amazon.com/marketplace/search/results?searchTerms=fault+tolerance) 
+  [La Amazon Builders' Library: Evitar la sobrecarga de los sistemas distribuidos asumiendo el control del servicio más pequeño](https://aws.amazon.com/builders-library/avoiding-overload-in-distributed-systems-by-putting-the-smaller-service-in-control/) 
+  [API de Amazon DynamoDB (plano de control y plano de datos)](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.API.html) 
+  [Ejecuciones de AWS Lambda](https://docs.aws.amazon.com/whitepapers/latest/security-overview-aws-lambda/lambda-executions.html) (divididas entre el plano de control y el plano de datos) 
+  [Plano de datos de AWS Elemental MediaStore](https://docs.aws.amazon.com/mediastore/latest/apireference/API_Operations_AWS_Elemental_MediaStore_Data_Plane.html) 
+  [Crear aplicaciones altamente resilientes mediante Amazon Route 53 Application Recovery Controller, parte 1: pila de una sola región](https://aws.amazon.com/blogs/networking-and-content-delivery/building-highly-resilient-applications-using-amazon-route-53-application-recovery-controller-part-1-single-region-stack/) 
+  [Crear aplicaciones altamente resilientes mediante Amazon Route 53 Application Recovery Controller, parte 2: pila de varias regiones](https://aws.amazon.com/blogs/networking-and-content-delivery/building-highly-resilient-applications-using-amazon-route-53-application-recovery-controller-part-2-multi-region-stack/) 
+  [Crear mecanismos de recuperación de desastres mediante Amazon Route 53](https://aws.amazon.com/blogs/networking-and-content-delivery/creating-disaster-recovery-mechanisms-using-amazon-route-53/) 
+  [¿Qué es Route 53 Application Recovery Controller?](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) 

 **Ejemplos relacionados:** 
+  [Introducción de Amazon Route 53 Application Recovery Controller](https://aws.amazon.com/blogs/aws/amazon-route-53-application-recovery-controller/) 

# REL11-BP05 Usar la estabilidad estática para evitar el comportamiento bimodal
<a name="rel_withstand_component_failures_static_stability"></a>

 El comportamiento bimodal es cuando la carga de trabajo exhibe diferentes comportamientos en los modos normal y de error, como confiar en el lanzamiento de nuevas instancias si se produce un error en una zona de disponibilidad. En lugar de ello, debe crear cargas de trabajo que sean estables estáticamente y operen en un solo modo. En este caso, aprovisione suficientes instancias en cada zona de disponibilidad para administrar la carga de trabajo si se elimina una zona de disponibilidad y, a continuación, use Elastic Load Balancing o las comprobaciones de estado de Amazon Route 53 para retirar la carga de las instancias en mal estado. 

 La estabilidad estática para despliegues de computación (como instancias EC2 o contenedores) dará como resultado la máxima fiabilidad. Deben evaluarse sus pros y sus contras teniendo en cuenta los costes. Resulta menos costoso aprovisionar una menor capacidad de computación y confiar en el lanzamiento de nuevas instancias en caso de error. Sin embargo, ante errores a gran escala (como los errores de zona de disponibilidad), este enfoque resulta menos efectivo porque depende de la reacción a los contratiempos a medida que se presentan, en lugar de plantear una preparación ante esos contratiempos antes de que ocurran. Su solución debería sopesar la fiabilidad en comparación con las necesidades de costes de su carga de trabajo. Al utilizar más zonas de disponibilidad, la cantidad de computación adicional que necesita para la estabilidad estática disminuye. 

![\[Diagrama que muestra la estabilidad estática de las instancias EC2 entre zonas de disponibilidad\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/static-stability.png)


 Una vez que el tráfico ha cambiado, use AWS Auto Scaling para sustituir de forma asíncrona las instancias de la zona con errores y lanzarlas en las zonas en buen estado. 

 Otro ejemplo de comportamiento bimodal sería un tiempo de espera agotado de la red que podría hacer que un sistema intente actualizar el estado de configuración de todo el sistema. Se agregaría una carga inesperada a otro componente, lo que podría hacer que falle y desencadene otras consecuencias inesperadas. Este bucle de retroalimentación negativa afecta a la disponibilidad de su carga de trabajo. En lugar de ello, debe crear cargas de trabajo que sean estables estáticamente y operen en un solo modo. Un diseño estáticamente estable supondría realizar un trabajo constante y actualizar continuamente el estado de configuración a una cadencia establecida. Cuando una llamada genera un error, la carga de trabajo utiliza el valor almacenado en caché anteriormente y activa una alarma. 

 Otro ejemplo de comportamiento bimodal es permitir que los clientes eludan la caché de la carga de trabajo si se produce un error. Esto podría parecer una solución para satisfacer las necesidades del cliente, pero no debe permitirse, ya que cambia notablemente la demanda de la carga de trabajo y es probable que produzca un error. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use la estabilidad estática para evitar el comportamiento bimodal. El comportamiento bimodal es cuando la carga de trabajo exhibe diferentes comportamientos en los modos normal y de error, como confiar en el lanzamiento de nuevas instancias si se produce un error en una zona de disponibilidad. 
  +  [Minimizar las dependencias en un plan de recuperación de desastres](https://aws.amazon.com/blogs/architecture/minimizing-dependencies-in-a-disaster-recovery-plan/) 
  +  [La Amazon Builders' Library: Estabilidad estática con zonas de disponibilidad](https://aws.amazon.com/builders-library/static-stability-using-availability-zones) 
  +  [Estabilidad estática en AWS: AWS re:Invent 2019: presentación de la Amazon Builders’ Library (DOP328)](https://youtu.be/sKRdemSirDM?t=704) 
    +  En lugar de ello, debe crear cargas de trabajo que sean estables estáticamente y operen en un solo modo. En este caso, aprovisione suficientes instancias en cada zona para administrar la carga de trabajo si se elimina una zona de disponibilidad y, a continuación, use Elastic Load Balancing o las comprobaciones de estado de Amazon Route 53 para retirar la carga de las instancias en mal estado. 
    +  Otro ejemplo de comportamiento bimodal es permitir que los clientes eludan la caché de la carga de trabajo si se produce un error. Esto podría parecer una solución para satisfacer las necesidades del cliente, pero no debe permitirse, ya que cambia notablemente la demanda de la carga de trabajo y es probable que produzca un error. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Minimizar las dependencias en un plan de recuperación de desastres](https://aws.amazon.com/blogs/architecture/minimizing-dependencies-in-a-disaster-recovery-plan/) 
+  [La Amazon Builders' Library: Estabilidad estática con zonas de disponibilidad](https://aws.amazon.com/builders-library/static-stability-using-availability-zones) 

 **Vídeos relacionados:** 
+  [Estabilidad estática en AWS: AWS re:Invent 2019: presentación de la Amazon Builders’ Library (DOP328)](https://youtu.be/sKRdemSirDM?t=704) 

# REL11-BP06 Enviar notificaciones cuando los eventos afecten a la disponibilidad
<a name="rel_withstand_component_failures_notifications_sent_system"></a>

 Las notificaciones se envían al detectar eventos importantes, incluso si el problema causado por el evento se solucionó automáticamente. 

 La corrección automática permite que la carga de trabajo sea fiable. Sin embargo, también puede disimular problemas subyacentes que deberían abordarse. Implemente una supervisión y unos eventos apropiados para poder detectar patrones de problemas, incluidos los que pueden abordarse mediante corrección automática, para que pueda resolver los problemas de la causa raíz. Las alarmas de Amazon CloudWatch se pueden activar sobre la base de los errores que se produzcan. También pueden activarse sobre la base de las acciones de corrección automática que se ejecuten. Las alarmas de CloudWatch se pueden configurar para enviar correos electrónicos o para registrar incidentes en sistemas de seguimiento de incidentes de terceros mediante la integración con Amazon SNS. 

 **Patrones de uso no recomendados comunes:** 
+  Enviar alarmas sobre las que nadie emprende medidas 
+  Realizar la automatización de la autorreparación, pero no notificar que se necesita una reparación 

 **Beneficios de establecer esta práctica recomendada:** Las notificaciones de eventos de recuperación garantizarán que no se omitan problemas que ocurren con poca frecuencia. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Alarmas sobre indicadores clave de rendimiento (KPI) empresariales cuando superen un umbral bajo. Al tener una alarma de umbral bajo en sus KPI empresariales, podrá detectar cuándo su carga de trabajo no está disponible o no es funcional. 
  +  [Crear una alarma de CloudWatch basada en un umbral estático](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html) 
+  Alarmas sobre eventos que invocan una automatización de corrección. Puede invocar directamente una API de SNS para enviar notificaciones con cualquier automatización que cree. 
  +  [¿Qué es Amazon Simple Notification Service?](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Crear una alarma de CloudWatch basada en un umbral estático](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/ConsoleAlarms.html) 
+  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
+  [¿Qué es Amazon Simple Notification Service?](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) 

# REL11-BP07 Diseñar su producto para cumplir objetivos de disponibilidad y acuerdos de nivel de servicio (SLA) de tiempo de actividad
<a name="rel_withstand_component_failures_service_level_agreements"></a>

Diseñe su producto para que cumpla objetivos de disponibilidad y acuerdos de nivel de servicio (SLA) de tiempo de actividad. Si publica o acuerda en privado objetivos de disponibilidad o SLA de tiempo de actividad, verifique que su arquitectura y procesos operativos están diseñados para darles cabida. 

 **Resultado deseado:** cada aplicación tiene un objetivo definido de disponibilidad y un SLA para las métricas de rendimiento, que pueden supervisarse y mantenerse para alcanzar los resultados empresariales. 

 **Antipatrones usuales:** 
+  Diseño y despliegue de cargas de trabajo sin establecer acuerdos de nivel de servicio. 
+  Las métricas de los SLA se fijan en niveles altos sin justificación ni requisitos empresariales. 
+  Establecimiento de SLA sin tener en cuenta las dependencias y sus SLA subyacentes. 
+  Los diseños de aplicaciones se crean sin tener en cuenta el modelo de responsabilidad compartida para la resiliencia. 

 **Beneficios de establecer esta práctica recomendada:** el diseño de aplicaciones basado en objetivos clave de resistencia ayuda a cumplir los objetivos empresariales y las expectativas de los clientes. Estos objetivos contribuyen a impulsar el proceso de diseño de aplicaciones que evalúa diferentes tecnologías y tiene en cuenta varios compromisos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El diseño de aplicaciones debe tener en cuenta una serie de requisitos derivados de objetivos empresariales, operativos y financieros. Dentro de los requisitos operativos, las cargas de trabajo deben tener objetivos concretos de métricas de resistencia para que se puedan supervisar y respaldar adecuadamente. Las métricas de resistencia no deben establecerse ni derivarse después de desplegar la carga de trabajo. En cambio, deben definirse durante la fase de diseño y ayudar a orientar diversas decisiones y compromisos. 
+  Cada carga de trabajo debe tener su propio conjunto de métricas de resistencia. Esas métricas pueden ser diferentes de las de otras aplicaciones empresariales. 
+  Reducir las dependencias puede tener un efecto positivo en la disponibilidad. Cada carga de trabajo debe considerar sus dependencias y sus SLA. En general, seleccione dependencias con objetivos de disponibilidad iguales o superiores a los objetivos de su carga de trabajo. 
+  Siempre que sea posible, examine diseños de acoplamiento flexible para que la carga de trabajo pueda funcionar correctamente a pesar del deterioro de las dependencias. 
+  Reduzca las dependencias del plano de control, especialmente durante la recuperación o una degradación. Evalúe diseños que sean estáticamente estables para las cargas de trabajo cruciales para la misión. Utilice el ahorro de recursos para aumentar la disponibilidad de esas dependencias en una carga de trabajo. 
+  La observabilidad y la instrumentación son fundamentales para alcanzar los SLA al reducir el tiempo medio de detección (MTTD) y el tiempo medio de reparación (MTTR). 
+  Los tres factores que se utilizan para mejorar la disponibilidad en los sistemas distribuidos son menos errores frecuentes (MTBF más largo), tiempos de detección de errores más cortos (MTTD más corto) y tiempos de reparación más cortos (MTTR más corto). 
+  Establecer y cumplir las métricas de resistencia para una carga de trabajo es un elemento imprescindible en todo diseño eficaz. Estos diseños deben tener en cuenta los compromisos de la complejidad del diseño, las dependencias de los servicios, el rendimiento, la escalabilidad y los costes. 

 **Pasos para la implementación** 
+  Revise y documente el diseño de la carga de trabajo teniendo presente las siguientes preguntas: 
  +  ¿Dónde se utilizan los planos de control en la carga de trabajo? 
  +  ¿Cómo implementa la carga de trabajo la tolerancia a errores? 
  +  ¿Cuáles son los patrones de diseño para el escalado, el escalado automático, la redundancia y los componentes de alta disponibilidad? 
  +  ¿Cuáles son los requisitos de coherencia y disponibilidad de los datos? 
  +  ¿Se tiene en cuenta el ahorro de recursos o la estabilidad estática de los recursos? 
  +  ¿Cuáles son las dependencias de los servicios? 
+  Defina las métricas de los SLA basándose en la arquitectura de la carga de trabajo mientras trabaja con las partes interesadas. Considere los SLA de todas las dependencias utilizadas por la carga de trabajo. 
+  Una vez establecido el objetivo del SLA, optimice la arquitectura para que cumpla el SLA. 
+  Una vez establecido el diseño que cumplirá el SLA, implemente cambios operativos, automatización de procesos y runbooks que también se centren en reducir el MTTD y el MTTR. 
+  Una vez desplegado, supervise y cree informes del SLA. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL03-BP01 Elegir cómo segmentar su carga de trabajo](rel_service_architecture_monolith_soa_microservice.md) 
+  [REL10-BP01 Implementar la carga de trabajo en varias ubicaciones](rel_fault_isolation_multiaz_region_system.md) 
+  [REL11-BP01 Supervisar todos los componentes de la carga de trabajo para detectar errores](rel_withstand_component_failures_monitoring_health.md) 
+  [REL11-BP03 Automatizar la reparación en todas las capas](rel_withstand_component_failures_auto_healing_system.md) 
+  [REL12-BP05 Probar la resiliencia mediante la ingeniería del caos](rel_testing_resiliency_failure_injection_resiliency.md) 
+  [REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](rel_planning_for_recovery_objective_defined_recovery.md) 
+ [ Comprender el estado de las cargas de trabajo ](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/understanding-workload-health.html)

 **Documentos relacionados:** 
+ [ Disponibilidad con redundancia ](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/availability-with-redundancy.html)
+ [ Pilar de fiabilidad: disponibilidad](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/availability.html)
+ [ Measuring availability](https://docs.aws.amazon.com/whitepapers/latest/availability-and-beyond-improving-resilience/measuring-availability.html) (Medición de la disponibilidad)
+ [Límites de aislamiento de errores de AWS](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/abstract-and-introduction.html)
+ [ Shared Responsibility Model for Resiliency](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/shared-responsibility-model-for-resiliency.html) (Modelo de responsabilidad compartida para la resiliencia)
+ [ Estabilidad estática con zonas de disponibilidad](https://aws.amazon.com/builders-library/static-stability-using-availability-zones/) 
+ [Acuerdos de nivel de servicios (SLA) de AWS](https://aws.amazon.com/legal/service-level-agreements/)
+ [ Guidance for Cell-based Architecture on AWS](https://aws.amazon.com/solutions/guidance/cell-based-architecture-on-aws/) (Guía para la arquitectura basada en celdas en AWS)
+ [AWS infrastructure](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/aws-infrastructure.html) (Infraestructura de AWS)
+ [ Advanced Multi-AZ Resiliance Patterns whitepaper](https://docs.aws.amazon.com/whitepapers/latest/advanced-multi-az-resilience-patterns/advanced-multi-az-resilience-patterns.html) (Documento técnico sobre patrones avanzados de resistencia multi-AZ)

 **Servicios relacionados:** 
+ [ Amazon CloudWatch ](https://aws.amazon.com/cloudwatch/)
+ [AWS Config](https://aws.amazon.com/config/)
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)

# REL 12 ¿Cómo pone a prueba la fiabilidad?
<a name="rel-12"></a>

Una vez diseñada la carga de trabajo para que sea resiliente al estrés de producción, las pruebas son la única forma de garantizar que funcionará según lo previsto y proporcionará la resiliencia esperada.

**Topics**
+ [REL12-BP01 Usar guías de estrategias para investigar los errores](rel_testing_resiliency_playbook_resiliency.md)
+ [REL12-BP02 Realizar un análisis después del incidente](rel_testing_resiliency_rca_resiliency.md)
+ [REL12-BP03 Comprobar los requisitos funcionales](rel_testing_resiliency_test_functional.md)
+ [REL12-BP04 Requisitos de escalado y rendimiento de las pruebas](rel_testing_resiliency_test_non_functional.md)
+ [REL12-BP05 Probar la resiliencia mediante la ingeniería del caos](rel_testing_resiliency_failure_injection_resiliency.md)
+ [REL12-BP06 Planificación regular de días de juego](rel_testing_resiliency_game_days_resiliency.md)

# REL12-BP01 Usar guías de estrategias para investigar los errores
<a name="rel_testing_resiliency_playbook_resiliency"></a>

 Puede obtener respuestas sistemáticas e inmediatas a escenarios de error que no se entiendan bien documentando el proceso de investigación en guías de estrategias. Las guías de estrategias son pasos predefinidos realizados para identificar los factores que contribuyen a un escenario de error. Los resultados de cualquier paso del proceso se utilizan para determinar los siguientes pasos, hasta que el problema se haya identificado o deba derivarse. 

 Las guías de estrategias implican una planificación proactiva que debe llevar a cabo para poder emprender acciones reactivas de forma eficaz. Cuando se encuentran en producción casos de error que no están contemplados en la guía de estrategias, primero debe solucionar el problema (apagar el fuego). Luego, deberá volver y analizar los pasos que ha seguido para abordar el problema y, sobre ellos, añadir una nueva entrada en la guía. 

 Tenga en cuenta que las guías de estrategias se usan en respuesta a incidentes específicos y los runbooks se usan para conseguir resultados determinados. A menudo, los runbooks se usan para actividades rutinarias, mientras que las guías de estrategias se utilizan para responder a eventos no rutinarios. 

 **Antipatrones usuales:** 
+  Planificar la implementación de una carga de trabajo sin conocer los procesos para diagnosticar los problemas o responder a los incidentes 
+  Decisiones no planificadas sobre de qué sistemas se recopilan registros y métricas cuando se investiga un evento 
+  No conservar las métricas y los eventos el tiempo suficiente para poder recuperar los datos 

 **Beneficios de establecer esta práctica recomendada:** La captura de esta información en guías de estrategias garantiza que el proceso pueda seguirse sistemáticamente. La creación de guías de estrategias limita la introducción de errores de la actividad manual. La automatización de guías de estrategias reduce el tiempo para responder a un evento al eliminar el requisito de intervención de un miembro del equipo o al disponer de información adicional al inicio de su intervención. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Use guías de estrategias para identificar problemas. Las guías de estrategias son procesos documentados para investigar problemas. Permita las respuestas sistemáticas e inmediatas a escenarios de error documentando los procesos en guías de estrategias. Las guías de estrategias deben contener la información y las instrucciones necesarias para que alguien con la formación adecuada reúna la información correspondiente, identifique las posibles fuentes de error, aísle los errores y determine los factores que han contribuido al problema (realizar un análisis después del incidente). 
  +  Implemente en código las guías de estrategias. Realice sus operaciones como código creando scripts de sus guías de estrategias para garantizar la sistematicidad y reducir los errores causados por los procesos manuales. Las guías de estrategias pueden constar de varios scripts que representen los diferentes pasos que podrían ser necesarios para identificar los factores que contribuyen a un problema. Se pueden programar o realizar actividades de runbook como parte de las actividades de una guía de estrategias, o se puede solicitar la ejecución de una guía de estrategias en respuesta a eventos identificados. 
    +  [Automatizar las guías de estrategias operativas con AWS Systems Manager](https://aws.amazon.com/about-aws/whats-new/2019/11/automate-your-operational-playbooks-with-aws-systems-manager/) 
    +  [AWS Systems Manager Run Command](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html) 
    +  [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
    +  [¿Qué es AWS Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) 
    +  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
    +  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
+  [AWS Systems Manager Run Command](https://docs.aws.amazon.com/systems-manager/latest/userguide/execute-remote-commands.html) 
+  [Automatizar las guías de estrategias operativas con AWS Systems Manager](https://aws.amazon.com/about-aws/whats-new/2019/11/automate-your-operational-playbooks-with-aws-systems-manager/) 
+  [Uso de alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html) 
+  [Uso de valores controlados (Amazon CloudWatch Synthetics)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 
+  [¿Qué es AWS Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) 

 **Ejemplos relacionados:** 
+  [Automatización de operaciones con guías de estrategias y runbooks](https://wellarchitectedlabs.com/operational-excellence/200_labs/200_automating_operations_with_playbooks_and_runbooks/) 

# REL12-BP02 Realizar un análisis después del incidente
<a name="rel_testing_resiliency_rca_resiliency"></a>

 Revise los eventos que afectan a los clientes e identifique los factores que contribuyen al evento y las medidas preventivas. Use esta información para desarrollar un plan de mitigación que limite o evite la reaparición del problema. Desarrolle procedimientos para proporcionar respuestas rápidas y eficaces. Comunique los factores que han contribuido al problema y las medidas correctivas según corresponda, adaptados al público de destino. Disponga de un método para comunicar estas causas a otros usuarios según sea necesario. 

 Evalúe por qué las pruebas existentes no han detectado el problema. Agregue pruebas para este caso si no hay pruebas ya establecidas. 

 **Patrones de uso no recomendados comunes:** 
+  Buscar los factores que han contribuido al problema, pero no seguir investigando si existen otros problemas potenciales o enfoques que mitigar 
+  Identificar solo los errores humanos y no proporcionar ninguna formación o automatización que pueda evitar estos errores 

 **Beneficios de establecer esta práctica recomendada:** Realizar análisis después de un incidente y compartir los resultados permite que el riesgo se mitigue en otras cargas de trabajo si estas tienen implementadas los mismos factores que han contribuido al problema, y permite también implementar la mitigación o la recuperación automatizada antes de que se produzca un incidente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Establezca un estándar para el análisis posterior a un incidente. Un buen análisis posterior a un incidente ofrece oportunidades de proponer soluciones comunes para problemas con patrones arquitectónicos que se utilizan en otros lugares de los sistemas. 
  +  Asegúrese de que los factores que han contribuido al problema son sinceros y están libres de reproches. 
  +  Si no documenta los problemas actuales, no podrá corregirlos. 
    +  Asegúrese de que el análisis después de un incidente se realice sin reproches para que las medidas correctivas propuestas sean imparciales y para fomentar la autoevaluación y colaboración honestas en sus equipos de aplicaciones. 
+  Use un proceso para determinar los factores que han contribuido al problema. Disponga de un proceso para identificar y documentar los factores que han contribuido al problema, de manera que se puedan elaborar medidas de mitigación para limitar o prevenir su repetición y se puedan desarrollar procedimientos para dar respuestas rápidas y eficaces. Comunique los factores que han contribuido al problema según corresponda, adaptados al público de destino. 
  +  [¿Qué es el análisis de registros?](https://aws.amazon.com/log-analytics/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es el análisis de registros?](https://aws.amazon.com/log-analytics/) 
+  [Por qué debería desarrollar una corrección de errores (COE)](https://aws.amazon.com/blogs/mt/why-you-should-develop-a-correction-of-error-coe/) 

# REL12-BP03 Comprobar los requisitos funcionales
<a name="rel_testing_resiliency_test_functional"></a>

 Use técnicas como pruebas unitarias y pruebas de integración que validen la funcionalidad necesaria. 

 Conseguirá los mejores resultados cuando estas pruebas se lleven a cabo automáticamente como parte de las acciones de compilación y despliegue. Por ejemplo, al utilizar AWS CodePipeline, los desarrolladores confirman los cambios en un repositorio de origen en el que CodePipeline detecta los cambios automáticamente. Esos cambios se incorporan y se realizan pruebas. Una vez completadas las pruebas, el código compilado se implementa en los servidores provisionales para comprobarlo. Desde el servidor provisional, CodePipeline ejecuta más pruebas, como pruebas de integración o carga. Una vez completadas correctamente esas pruebas, CodePipeline implementa el código comprobado y aprobado en instancias de producción. 

 Además, la experiencia demuestra que las pruebas de transacciones sintéticas (denominadas también *pruebas de valores controlados*, que no deben confundirse con las implementaciones de valores controlados) que puedan ejecutar y simular el comportamiento de los clientes son uno de los procesos de prueba más importantes. Ejecute estas pruebas constantemente en los puntos de conexión de las cargas de trabajo desde distintas ubicaciones remotas. Amazon CloudWatch Synthetics le permite [crear valores controlados](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) para supervisar sus puntos de conexión y API. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Compruebe los requisitos funcionales. Entre estas se incluyen las pruebas unitarias y las pruebas de integración que validan la funcionalidad necesaria. 
  +  [Use CodePipeline y AWS CodeBuild para probar el código y ejecutar compilaciones](https://docs.aws.amazon.com/codebuild/latest/userguide/how-to-create-pipeline.html) 
  +  [AWS CodePipeline añade compatibilidad a las pruebas unitarias y de integración personalizadas con AWS CodeBuild](https://aws.amazon.com/about-aws/whats-new/2017/03/aws-codepipeline-adds-support-for-unit-testing/) 
  +  [Entrega continua e integración continua](https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts-continuous-delivery-integration.html) 
  +  [Uso de valores controlados (Amazon CloudWatch Synthetics)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
  +  [Automatización de pruebas de software](https://aws.amazon.com/marketplace/solutions/devops/software-test-automation) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudar con la implementación de una canalización de integración continua](https://aws.amazon.com/partners/find/results/?keyword=Continuous+Integration) 
+  [AWS CodePipeline añade compatibilidad a las pruebas unitarias y de integración personalizadas con AWS CodeBuild](https://aws.amazon.com/about-aws/whats-new/2017/03/aws-codepipeline-adds-support-for-unit-testing/) 
+  [AWS Marketplace: productos que pueden usarse para la integración continua](https://aws.amazon.com/marketplace/search/results?searchTerms=Continuous+integration) 
+  [Entrega continua e integración continua](https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts-continuous-delivery-integration.html) 
+  [Automatización de pruebas de software](https://aws.amazon.com/marketplace/solutions/devops/software-test-automation) 
+  [Use CodePipeline y AWS CodeBuild para probar el código y ejecutar compilaciones](https://docs.aws.amazon.com/codebuild/latest/userguide/how-to-create-pipeline.html) 
+  [Uso de valores controlados (Amazon CloudWatch Synthetics)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 

# REL12-BP04 Requisitos de escalado y rendimiento de las pruebas
<a name="rel_testing_resiliency_test_non_functional"></a>

 Use técnicas como las pruebas de carga para validar que la carga de trabajo satisface los requisitos de escalado y rendimiento. 

 En la nube, puede crear un entorno de pruebas a escala de producción bajo demanda para su carga de trabajo. Si ejecuta estas pruebas en una infraestructura desescalada verticalmente, debe escalar los resultados observados a lo que cree que ocurrirá en producción. Las pruebas de carga y rendimiento también pueden realizarse en producción si se tiene cuidado de no afectar a los usuarios reales y se etiquetan los datos de prueba para que no se mezclen con los datos de usuarios reales y alteren las estadísticas de uso o los informes de producción. 

 Con las pruebas, asegúrese de que sus recursos base, la configuración de escalado, las cuotas de servicio y el diseño de resiliencia funcionan del modo esperado bajo carga. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Pruebe los requisitos de escalado y de rendimiento. Realice pruebas de carga para validar que la carga de trabajo satisface los requisitos de escalado y rendimiento. 
  +  [Pruebas de carga distribuida en AWS: simular miles de usuarios conectados](https://aws.amazon.com/solutions/distributed-load-testing-on-aws/) 
  +  [Apache JMeter](https://github.com/apache/jmeter?ref=wellarchitected) 
    +  Implemente la aplicación en un entorno idéntico al de producción y ejecute una prueba de carga. 
      +  Utilice conceptos de infraestructura como código para crear un entorno tan similar al entorno de producción como sea posible. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Pruebas de carga distribuida en AWS: simular miles de usuarios conectados](https://aws.amazon.com/solutions/distributed-load-testing-on-aws/) 
+  [Apache JMeter](https://github.com/apache/jmeter?ref=wellarchitected) 

# REL12-BP05 Probar la resiliencia mediante la ingeniería del caos
<a name="rel_testing_resiliency_failure_injection_resiliency"></a>

 Realice experimentos de caos con regularidad en entornos que estén en producción o lo más cerca posible de ella para entender cómo responde su sistema a condiciones adversas. 

 ** Resultado deseado: ** 

 La resiliencia de la carga de trabajo se verifica regularmente aplicando la ingeniería del caos en forma de experimentos de inyección de errores o inyección de carga inesperada, además de las pruebas de resiliencia que validan el comportamiento esperado conocido de su carga de trabajo durante un evento. Combine la ingeniería del caos y las pruebas de resiliencia para tener la seguridad de que su carga de trabajo puede sobrevivir a los errores de los componentes y puede recuperarse de las interrupciones inesperadas con un impacto mínimo o nulo. 

 ** Patrones comunes de uso no recomendados: ** 
+  Diseñar para lograr la resiliencia, pero no verificar cómo funciona la carga de trabajo en su conjunto cuando se producen errores. 
+  No experimentar nunca en condiciones reales y con la carga prevista. 
+  No tratar los experimentos como código ni mantenerlos durante el ciclo de desarrollo. 
+  No ejecutar experimentos de caos tanto como parte de su canalización de CI/CD, así como fuera de los despliegues. 
+  No utilizar los análisis posteriores a los incidentes a la hora de determinar los errores con los que experimentar. 

 ** Beneficios de establecer esta práctica recomendada:** Inyectar errores para verificar la resiliencia de la carga de trabajo permite ganar confianza sobre el hecho de que los procedimientos de recuperación de su diseño resiliente funcionarán en caso de un error real. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La ingeniería del caos proporciona a sus equipos capacidades para inyectar continuamente interrupciones del mundo real (simulaciones) de forma controlada a nivel de proveedor de servicios, infraestructura, carga de trabajo y componentes, con un impacto mínimo o nulo para sus clientes. Permite que sus equipos aprendan de los fallos y observen, midan y mejoren la resiliencia de sus cargas de trabajo, además de validar que las alertas se disparen y que los equipos reciban notificaciones en caso de algún evento. 

 Cuando se realiza de forma continua, la ingeniería del caos puede poner de manifiesto deficiencias en sus cargas de trabajo que, si no se abordan, podrían afectar negativamente la disponibilidad y al funcionamiento. 

**nota**  
La ingeniería del caos es la disciplina que consiste en experimentar en un sistema para generar confianza en la capacidad del sistema de resistir condiciones adversas en producción. [Principios de la ingeniería del caos](https://principlesofchaos.org/) 

 Si un sistema es capaz de soportar estas interrupciones, el experimento del caos debería mantenerse como una prueba de regresión automatizada. De este modo, los experimentos de caos deben realizarse como parte de su ciclo de vida de desarrollo de sistemas (SDLC) y como parte de su canalización de CI/CD. 

 Para asegurarse de que su carga de trabajo puede sobrevivir a los errores de los componentes, inyecte eventos del mundo real como parte de sus experimentos. Por ejemplo, experimente con la pérdida de instancias de Amazon EC2 o la conmutación por error de la instancia primaria de la base de datos de Amazon RDS y verifique que su carga de trabajo no se ve afectada (o solo mínimamente). Utilice una combinación de errores de componentes para simular los eventos que puede causar una interrupción en una zona de disponibilidad. 

 Para los errores a nivel de aplicación (como las caídas), se puede empezar con factores de estrés como el agotamiento de la memoria y la CPU. 

 Para validar [los mecanismos de recuperación o de conmutación por error](https://aws.amazon.com/builders-library/avoiding-fallback-in-distributed-systems/) para las dependencias externas debido a interrupciones intermitentes de la red, sus componentes deben simular un evento de este tipo bloqueando el acceso a los proveedores de terceros durante una duración especificada que puede durar desde segundos hasta horas. 

 Otros modos de degradación podrían provocar una funcionalidad reducida y respuestas lentas, lo que a menudo da como resultado una interrupción de sus servicios. Las fuentes comunes de esta degradación son una mayor latencia en los servicios críticos y una comunicación de red poco fiable (paquetes omitidos). Los experimentos con estos errores, que incluyen efectos de red como la latencia, los mensajes perdidos y los errores de DNS, podrían incluir la incapacidad de resolver un nombre, alcanzar el servicio DNS o establecer conexiones con servicios dependientes. 

 **Herramientas de ingeniería del caos:** 

 AWS Fault Injection Service (AWS FIS ) es un servicio completamente administrado para realizar experimentos de inserción de errores que puede utilizarse como parte de su canalización de CD. AWS FIS es una buena opción para usar durante los días de juego de ingeniería del caos. Admite la introducción simultánea de errores en diferentes tipos de recursos, como Amazon EC2, Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Kubernetes Service (Amazon EKS) y Amazon RDS. Estos errores incluyen la terminación de los recursos, forzado de conmutación por error, estrés de CPU o memoria, limitación, latencia y pérdida de paquetes. Al estar integrado con Amazon CloudWatch Alarms, puede configurar las condiciones de parada como barreras de protección para revertir un experimento si provoca un impacto inesperado. 

![\[Diagrama que muestra la integración de AWS Fault Injection Service con los recursos de AWS para permitirle ejecutar experimentos de inserción de errores para sus cargas de trabajo.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/fault-injection-simulator.png)


También hay varias opciones de terceros para los experimentos de inserción de errores. Incluyen herramientas de código abierto como [Chaos Toolkit](https://chaostoolkit.org/), [Chaos Mesh](https://chaos-mesh.org/) y [Litmus Chaos](https://litmuschaos.io/), además de opciones comerciales como Gremlin. Para ampliar el alcance de los errores que se pueden inyectar en AWS, AWS FIS [se integra con Chaos Mesh y Litmus Chaos](https://aws.amazon.com/about-aws/whats-new/2022/07/aws-fault-injection-simulator-supports-chaosmesh-litmus-experiments/), lo que le permite coordinar los flujos de trabajo de inyección de errores entre varias herramientas. Por ejemplo, puede ejecutar una prueba de estrés en la CPU de un pod utilizando errores de Chaos Mesh o Litmus mientras termina un porcentaje seleccionado al azar de nodos del clúster utilizando acciones de error de AWS FIS. 

## Pasos para la aplicación
<a name="implementation-steps"></a>
+  Determine qué errores se van a utilizar en los experimentos. 

   Evalúe el diseño de su carga de trabajo para la resiliencia. Estos diseños (creados utilizando las prácticas recomendadas del [Marco de buena arquitectura](https://docs.aws.amazon.com/wellarchitected/latest/framework/welcome.html)) tienen en cuenta los riesgos basados en las dependencias críticas, los eventos pasados, los problemas conocidos y los requisitos de cumplimiento. Enumere cada elemento del diseño destinado a mantener la resiliencia y los errores que pretende mitigar. Para obtener más información sobre la creación de estas listas, consulte el [documento técnico Revisión de la preparación operativa](https://docs.aws.amazon.com/wellarchitected/latest/operational-readiness-reviews/wa-operational-readiness-reviews.html) que le orienta sobre cómo crear un proceso para evitar que se repitan incidentes anteriores. El proceso de análisis de modos de error y efectos (AMFE) le proporciona un marco para realizar un análisis de los fallos a nivel de componente y cómo afectan a su carga de trabajo. Adrian Cockcroft describe con más detalle el AMFE en [Failure Modes and Continuous Resilience (Modos de error y resiliencia continua)](https://adrianco.medium.com/failure-modes-and-continuous-resilience-6553078caad5). 
+  Asigne una prioridad a cada error. 

   Comience con una categorización gruesa como alta, media o baja. Para evaluar la prioridad, hay que tener en cuenta la frecuencia del error y el impacto del mismo en la carga de trabajo global. 

   Al considerar la frecuencia de un determinado error, analice los datos anteriores de esta carga de trabajo cuando estén disponibles. Si no están disponibles, utilice datos de otras cargas de trabajo que se ejecuten en un entorno similar. 

   Cuando se considera el impacto de un error determinado, cuanto mayor sea el alcance del error, generalmente mayor será el impacto. También hay que tener en cuenta el diseño y la finalidad de la carga de trabajo. Por ejemplo, la capacidad de acceder a los almacenes de datos de origen es fundamental para una carga de trabajo que realice transformaciones y análisis de datos. En este caso, se daría prioridad a los experimentos de errores de acceso, así como al acceso limitado y a la inserción de latencia. 

   Los análisis posteriores a los incidentes son un buena fuente de datos para comprender tanto la frecuencia como el impacto de los modos de error. 

   Utilice la prioridad asignada para determinar con qué fallos experimentar primero y el orden con el que desarrollar nuevos experimentos de inyección de errores. 
+  En cada experimento que realice, siga la ingeniería del caos y el volante de resiliencia continua.   
![\[Diagrama del volante de ingeniería del caos y resiliencia continua, que muestra las fases de Mejora, Estado estable, Hipótesis, Ejecución del experimento y Verificación.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/chaos-engineering-flywheel.png)
  +  Defina el estado estable como un resultado medible de una carga de trabajo que indica un comportamiento normal. 

     Su carga de trabajo exhibe un estado estable si está operando de manera fiable y como se espera. Por tanto, valide que su carga de trabajo tenga un buen estado antes de definir el estado estable. El estado estable no significa necesariamente que no haya impacto en la carga de trabajo cuando se produce un error, ya que un cierto porcentaje en los errores podría estar dentro de los límites aceptables. El estado estable es la línea de base que observará durante el experimento, que pondrá de manifiesto las anomalías si su hipótesis definida en el siguiente paso no resulta de la forma esperada. 

     Por ejemplo, un estado estable de un sistema de pagos puede definirse como el procesamiento de 300 TPS con una tasa de éxito del 99 % y un tiempo de ida y vuelta de 500 ms. 
  +  Formule una hipótesis sobre cómo reaccionará la carga de trabajo ante el error. 

     Una buena hipótesis se basa en cómo se espera que la carga de trabajo mitigue el error para mantener el estado estable. La hipótesis establece que dado el error de un tipo específico, el sistema o la carga de trabajo continuará en estado estable, porque la carga de trabajo fue diseñada con mitigaciones específicas. En la hipótesis deben especificarse el tipo específico de error y las mitigaciones. 

     Se puede utilizar la siguiente plantilla para la hipótesis (pero también se acepta otra redacción): 
**nota**  
 Si se produce el *error específico* , la carga de trabajo *nombre de carga de trabajo* , *describirá los controles mitigantes* para mantener el *impacto de las métricas empresariales o técnicas*. 

     Por ejemplo: 
    +  Si el 20 % de los nodos del grupo de nodos de Amazon EKS se caen, la API de creación de transacciones sigue sirviendo el percentil 99 de peticiones en menos de 100 ms (estado estable). Los nodos de Amazon EKS se recuperarán en cinco minutos, y los pods se programarán y procesarán el tráfico en ocho minutos tras el inicio del experimento. Las alertas se disparan en tres minutos. 
    +  Si se produce un error de instancia de Amazon EC2, la comprobación de estado de Elastic Load Balancing del sistema de pedidos hará que Elastic Load Balancing solo envíe solicitudes a las instancias en buen estado restantes mientras Amazon EC2 Auto Scaling sustituye la instancia con error, manteniendo un aumento inferior al 0,01 % en los errores del lado del servidor (5xx) (estado estable). 
    +  Si la instancia de la base de datos primaria de Amazon RDS falla, la carga de trabajo de recopilación de datos de la cadena de suministro se conmutará por error y se conectará a la instancia de la base de datos de Amazon RDS en espera para mantener menos de 1 minuto de errores de lectura o escritura en la base de datos (estado estable). 
  +  Realiza el experimento inyectando el error. 

     Un experimento debería ser por defecto a prueba de errores y tolerado por la carga de trabajo. Si sabe que la carga de trabajo va a fallar, no realice el experimento. Debe utilizarse la ingeniería del caos para encontrar conocidos-desconocidos o desconocidos-desconocidos. *Conocidos-desconocidos* son cosas de las que es consciente pero no comprende del todo, y *desconocidos-desconocidos* son cosas de las que no es consciente ni comprende del todo. Experimentar con una carga de trabajo que sabe que está rota no proporcionará nuevas ideas. Su experimento debe estar cuidadosamente planificado, tener un alcance claro de impacto y proporcionar un mecanismo de retroceso que pueda aplicarse en caso de turbulencias inesperadas. Si su diligencia demuestra que su carga de trabajo debería sobrevivir al experimento, siga adelante con el mismo. Hay varias opciones para inyectar los errores. Para cargas de trabajo en AWS, [AWS FIS](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html) proporciona muchas simulaciones de errores predefinidas llamadas [acciones](https://docs.aws.amazon.com/fis/latest/userguide/actions.html). También puede definir acciones personalizadas que se ejecuten en AWS FIS utilizando [documentos de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-ssm-docs.html). 

     Desaconsejamos el uso de scripts personalizados para los experimentos de caos, a menos que los scripts tengan la capacidad de entender el estado actual de la carga de trabajo, sean capaces de emitir registros y proporcionen mecanismos para retrocesos y condiciones de parada cuando sea posible. 

     Un marco o conjunto de herramientas eficaz que apoye la ingeniería del caos debe hacer el seguimiento del estado actual de un experimento, emitir registros y proporcionar mecanismos de reversión para apoyar la ejecución controlada de un experimento. Comience con un servicio establecido como AWS FIS que permite realizar experimentos con un alcance claramente definido y mecanismos de seguridad que reviertan el experimento en el caso de que introduzca turbulencias inesperadas. Para conocer una mayor variedad de experimentos con AWS FIS, consulte también el [Laboratorio de Aplicaciones resilientes y bien diseñadas con ingeniería del caos](https://catalog.us-east-1.prod.workshops.aws/workshops/44e29d0c-6c38-4ef3-8ff3-6d95a51ce5ac/en-US). Además, [AWS Resilience Hub](https://docs.aws.amazon.com/resilience-hub/latest/userguide/what-is.html) analizará su carga de trabajo y creará experimentos que puede elegir para implementar y ejecutar en AWS FIS. 
**nota**  
 Para cada experimento, comprenda claramente el alcance y su impacto. Recomendamos que los fallos se simulen primero en un entorno no productivo antes de ejecutarlos en producción. 

     Los experimentos deben realizarse en producción bajo carga real utilizando [despliegue de valores controlados](https://medium.com/the-cloud-architect/chaos-engineering-q-a-how-to-safely-inject-failure-ced26e11b3db) que acelera tanto el despliegue de un sistema de control como el experimental, cuando es factible. Ejecutar los experimentos durante las horas de menor actividad es una buena práctica para mitigar el impacto potencial cuando se experimenta por primera vez en producción. Además, si utilizar el tráfico real del cliente supone demasiado riesgo, puede realizar experimentos utilizando tráfico sintético en la infraestructura de producción contra los despliegues de control y experimentales. Cuando no sea posible utilizar la producción, ejecute los experimentos en entornos de preproducción que sean lo más parecidos posible a la producción. 

     Debe establecer y supervisar las barreras de seguridad para garantizar que el experimento no afecte al tráfico de producción o a otros sistemas más allá de los límites aceptables. Establezca condiciones de parada para detener un experimento si alcanza un umbral en una métrica de barrera que defina. Esto debería incluir las métricas para el estado estable de la carga de trabajo, así como la métrica contra los componentes en los que está inyectando el error. Una [monitorización sintética](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) (también conocida como valor controlado) es una métrica que normalmente debería incluir como proxy de usuario. [Las condiciones de parada para AWS FIS](https://docs.aws.amazon.com/fis/latest/userguide/stop-conditions.html) se admiten como parte de la plantilla del experimento, permitiendo hasta cinco condiciones de parada por plantilla. 

     Uno de los principios del caos es minimizar el alcance del experimento y su impacto: 

     Aunque hay que tener en cuenta algún impacto negativo a corto plazo, es responsabilidad y obligación del ingeniero del caos garantizar que las consecuencias de los experimentos se minimicen y contengan. 

     Un método para verificar el alcance y el impacto potencial es realizar el experimento primero en un entorno de no producción, verificando que los umbrales para las condiciones de parada se activan como se espera durante un experimento y la observabilidad está implantada para detectar una excepción, en lugar de experimentar directamente en la producción. 

     Cuando se realicen experimentos de inyección de errores, verifique que todas las partes responsables estén bien informadas. Comuníquese con los equipos adecuados, como los equipos de operaciones, los equipos de fiabilidad del servicio y el servicio de atención al cliente, para informarles de cuándo se llevarán a cabo los experimentos y qué pueden esperar. Proporcione a estos equipos herramientas de comunicación para que informen a los que dirigen el experimento si observan algún efecto adverso. 

     Debe restablecer la carga de trabajo y sus sistemas subyacentes al estado bueno conocido original. A menudo, el diseño resistente de la carga de trabajo se autorrepara. Pero algunos diseños de errores o experimentos fallidos pueden dejar su carga de trabajo en un estado de error inesperado. Al final del experimento, debe ser consciente de ello y restablecer la carga de trabajo y los sistemas. Con AWS FIS puede establecer una configuración de reversión (también llamada acción posterior) dentro de los parámetros de la acción. Una acción posterior devuelve el objetivo al estado en el que se encontraba antes de ejecutar la acción. Ya sean automatizadas (como el uso de AWS FIS) o manuales, estas acciones posteriores deben formar parte de una guía de estrategias que describa cómo detectar y gestionar los errores. 
  +  Verifique la hipótesis. 

    [Principios de la ingeniería del caos](https://principlesofchaos.org/) ofrece estas directrices sobre cómo verificar el estado estable de su carga de trabajo: 

    Céntrese en los resultados medibles de un sistema, más que en los atributos internos del mismo. Las mediciones de esa producción durante un corto periodo de tiempo constituyen una aproximación al estado estable del sistema. El rendimiento global del sistema, las tasas de error y los percentiles de latencia podrían ser métricas de interés que representen el comportamiento en estado estable. Al centrarse en los patrones de comportamiento sistémico durante los experimentos, la ingeniería del caos verifica que el sistema funcione, en lugar de intentar validar cómo funciona.

     En nuestros dos ejemplos anteriores, incluimos las métricas de estado estable de menos del 0,01 % de aumento de errores del lado del servidor (5xx) y menos de un minuto de errores de lectura y escritura en la base de datos. 

     Los errores 5xx son una buena métrica porque son una consecuencia del modo de error que un cliente de la carga de trabajo experimentará directamente. La medición de los errores de la base de datos es buena como consecuencia directa del error, pero también debe complementarse con una medición del impacto en el cliente, como las solicitudes fallidas de los clientes o los errores que aparecen en el cliente. Además, incluya una monitorización sintética (también conocida como valor controlado) en cualquier API o URI al que acceda directamente el cliente de su carga de trabajo. 
  +  Mejore el diseño de la carga de trabajo para la resiliencia. 

     Si el estado estable no se mantuvo, entonces investigue cómo se puede mejorar el diseño de la carga de trabajo para mitigar el error, aplicando las mejores prácticas del [Pilar de fiabilidad de AWS Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/welcome.html). Se pueden encontrar orientaciones y recursos adicionales en la [AWS Builder’s Library](https://aws.amazon.com/builders-library/)que aloja artículos sobre cómo [mejorar las comprobaciones de estado](https://aws.amazon.com/builders-library/implementing-health-checks/) o bien [emplear reintentos con retroceso en el código de su aplicación](https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/), entre otros. 

     Una vez aplicados estos cambios, vuelva a realizar el experimento (mostrado por la línea de puntos en el volante de ingeniería del caos) para determinar su eficacia. Si el paso de verificación indica que la hipótesis es cierta, entonces la carga de trabajo estará en estado estable, y el ciclo continúa. 
+  Realice experimentos con regularidad. 

   Un experimento de caos es un ciclo, y los experimentos deben realizarse regularmente como parte de la ingeniería del caos. Después de que una carga de trabajo cumpla con la hipótesis del experimento, este debe automatizarse para ejecutarse continuamente como parte de la regresión de su canalización de CI/CD. Para saber cómo hacerlo, consulte este blog sobre [cómo ejecutar experimentos de AWS FIS con AWS CodePipeline](https://aws.amazon.com/blogs/architecture/chaos-testing-with-aws-fault-injection-simulator-and-aws-codepipeline/). Este laboratorio sobre [experimentos de AWS FIS periódicos en una canalización de CI/CD](https://chaos-engineering.workshop.aws/en/030_basic_content/080_cicd.html) le permite trabajar de forma práctica. 

   Los experimentos de inyección de errores también forman parte de los días de juego (consulte [REL12-BP06 Planificación regular de días de juego](rel_testing_resiliency_game_days_resiliency.md)). En los días de juego se simula un error o un evento para verificar los sistemas, los procesos y las respuestas de los equipos. El objetivo es, de hecho, realizar las acciones que llevaría a cabo el equipo si se produjera un evento excepcional. 
+  Capture y almacene los resultados de los experimentos. 

  Los resultados de los experimentos de inyección de errores deben capturarse y persistir. Incluya todos los datos necesarios (como el tiempo, la carga de trabajo y las condiciones) para poder analizar posteriormente los resultados y las tendencias del experimento. Algunos ejemplos de resultados pueden ser capturas de pantalla de paneles de control, volcados CSV de la base de datos de su métrica o un registro escrito a mano de los eventos y observaciones del experimento. [Experimentar el registro con AWS FIS](https://docs.aws.amazon.com/fis/latest/userguide/monitoring-logging.html) puede formar parte de esta captura de datos.

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL08-BP03 Integrar las pruebas de resiliencia como parte de su despliegue](rel_tracking_change_management_resiliency_testing.md) 
+  [REL13-BP03 Probar la implementación de recuperación de desastres para validarla](rel_planning_for_recovery_dr_tested.md) 

 **Documentos relacionados:** 
+  [¿Qué es AWS Fault Injection Service?](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html) 
+  [¿Qué es AWS Resilience Hub?](https://docs.aws.amazon.com/resilience-hub/latest/userguide/what-is.html) 
+  [Principios de la ingeniería del caos](https://principlesofchaos.org/) 
+  [Ingeniería del caos: Planificar su primer experimento](https://medium.com/the-cloud-architect/chaos-engineering-part-2-b9c78a9f3dde) 
+  [Ingeniería de resiliencia: aprender a asumir los errores](https://queue.acm.org/detail.cfm?id=2371297) 
+  [Historias de ingeniería del caos](https://github.com/ldomb/ChaosEngineeringPublicStories) 
+  [Evitar los planes alternativos en los sistemas distribuidos](https://aws.amazon.com/builders-library/avoiding-fallback-in-distributed-systems/) 
+  [Despliegue de valores controlados para experimentos de caos](https://medium.com/the-cloud-architect/chaos-engineering-q-a-how-to-safely-inject-failure-ced26e11b3db) 

 **Vídeos relacionados:** 
+ [AWS re:Invent 2020: Pruebas de resistencia mediante la ingeniería del caos (ARC316)](https://www.youtube.com/watch?v=OlobVYPkxgg) 
+  [AWS re:Invent 2019: Mejorar la resiliencia con la ingeniería del caos (DOP309-R1)](https://youtu.be/ztiPjey2rfY) 
+  [AWS re:Invent 2019: Realizar ingeniería del caos en un mundo sin servidores (CMY301)](https://www.youtube.com/watch?v=vbyjpMeYitA) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: Nivel 300: pruebas de resiliencia de Amazon EC2, Amazon RDS y Amazon S3](https://wellarchitectedlabs.com/reliability/300_labs/300_testing_for_resiliency_of_ec2_rds_and_s3/) 
+  [Laboratorio de ingeniería del caos en AWS](https://chaos-engineering.workshop.aws/en/) 
+  [Laboratorio de aplicaciones resilientes y bien diseñadas con ingeniería del caos](https://catalog.us-east-1.prod.workshops.aws/workshops/44e29d0c-6c38-4ef3-8ff3-6d95a51ce5ac/en-US) 
+  [Laboratorio de caos sin servidor](https://catalog.us-east-1.prod.workshops.aws/workshops/3015a19d-0e07-4493-9781-6c02a7626c65/en-US/serverless) 
+  [Medir y mejorar la resiliencia de sus aplicaciones con laboratorio de AWS Resilience Hub](https://catalog.us-east-1.prod.workshops.aws/workshops/2a54eaaf-51ee-4373-a3da-2bf4e8bb6dd3/en-US/200-labs/1wordpressapplab) 

 ** Herramientas relacionadas: ** 
+  [AWS Fault Injection Service](https://aws.amazon.com/fis/) 
+ AWS Marketplace: [Gremlin Chaos Engineering Platform (Plataforma de ingeniería del caos de Gremlin)](https://aws.amazon.com/marketplace/pp/prodview-tosyg6v5cyney) 
+  [Chaos Toolkit](https://chaostoolkit.org/) 
+  [Chaos Mesh](https://chaos-mesh.org/) 
+  [Litmus](https://litmuschaos.io/) 

# REL12-BP06 Planificación regular de días de juego
<a name="rel_testing_resiliency_game_days_resiliency"></a>

 Utilice días de juego para poner en práctica frecuentemente sus procedimientos para responder a los eventos y los errores lo más cerca de la fecha de lanzamiento a producción posible (incluidos los entornos de producción) con las personas que trabajarán en los escenarios de error reales. Los días de juego sirven para imponer medidas que garanticen que los eventos de producción no afecten a los usuarios. 

 En los días de juego se simula un error o un evento para probar los sistemas, los procesos y las respuestas de los equipos. El objetivo es, de hecho, realizar las acciones que llevaría a cabo el equipo si se produjera un evento excepcional. Esto ayudará a comprender dónde se pueden realizar mejoras y a desarrollar la experiencia organizacional en la gestión de eventos. Deberían hacerse habitualmente para que el equipo desarrolle *“memoria muscular”* sobre cómo responder. 

 Una vez que cuente con un diseño de resiliencia y que lo haya probado en entornos que no sean de producción, los días de juego son la fórmula ideal para garantizar que todo funcione según lo previsto en el entorno de producción. Un día de juego, especialmente el primero, es una actividad para todo el equipo en la que los ingenieros y el personal de operaciones están informados de cuándo ocurrirá y de qué pasará. Hay runbooks preparados. Se ejecutan eventos simulados, incluidos los posibles eventos de error, en los sistemas de producción y de la forma prescrita y, entonces, se evalúa el impacto. Si todos los sistemas funcionan según lo diseñado, la detección y la autocorrección se producirán con un impacto mínimo o inexistente. Sin embargo, si se observa algún impacto negativo, se da marcha atrás a la prueba y los problemas con la carga de trabajo se remedian, de forma manual si fuera necesario (utilizando el runbook). Dado que los días de juego suelen desarrollarse en el entorno de producción, deben tomarse todas las precauciones necesarias para garantizar que no haya ningún impacto sobre la disponibilidad para los clientes. 

 **Antipatrones usuales:** 
+  Documentar los procedimientos, pero no ponerlos nunca en práctica 
+  No incluir a los responsables de la toma de decisiones del negocio en los ejercicios de prueba 

 **Beneficios de establecer esta práctica recomendada:** Realizar días de juego periódicamente garantiza que todos los empleados sigan las políticas y los procedimientos cuando se produzca un incidente real y valida que esas políticas y procedimientos son apropiados. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Programe días de juego para practicar con las guías de estrategias y runbooks. Todo el mundo que pueda verse involucrado en un evento de producción debe participar en los días de juego: el propietario de la empresa, el personal de desarrollo, el personal de operaciones y los equipos de respuesta a incidentes. 
  +  Ejecute sus pruebas de carga o rendimiento y después su inyección de errores. 
  +  Busque anomalías en los runbooks y oportunidades para poner en práctica las guías de estrategias. 
    +  Si se desvía de los runbooks, mejórelos o corrija este comportamiento. Si utiliza la guía de estrategias, identifique el runbook que debería haberse usado o cree uno nuevo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es AWS GameDay?](https://aws.amazon.com/gameday/) 

 **Videos relacionados:** 
+  [AWS re:Invent 2019: Mejorar la resiliencia con la ingeniería del caos (DOP309-R1)](https://youtu.be/ztiPjey2rfY) 

   **Ejemplos relacionados:** 
+  [Laboratorios de AWS Well-Architected: comprobación de resiliencia](https://wellarchitectedlabs.com/reliability/300_labs/300_testing_for_resiliency_of_ec2_rds_and_s3/) 

# REL 13 ¿Cómo planifica la recuperación de desastres (DR)?
<a name="rel-13"></a>

Disponer de copias de seguridad y de componentes de cargas de trabajo redundantes es el principio de su estrategia de DR. [RTO y RPO son los objetivos](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/disaster-recovery-dr-objectives.html) de restauración de las cargas de trabajo. Estos se definen en función de las necesidades del negocio. Implemente una estrategia para satisfacer estos objetivos teniendo en cuenta las ubicaciones y la función de los recursos de las cargas de trabajo y los datos. La probabilidad de una interrupción y el coste de recuperación son también factores clave que ayudan a conocer el valor empresarial de proporcionar recuperación de desastres para una carga de trabajo.

**Topics**
+ [REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](rel_planning_for_recovery_objective_defined_recovery.md)
+ [REL13-BP02 Usar estrategias de recuperación definidas para cumplir los objetivos de recuperación](rel_planning_for_recovery_disaster_recovery.md)
+ [REL13-BP03 Probar la implementación de recuperación de desastres para validarla](rel_planning_for_recovery_dr_tested.md)
+ [REL13-BP04 Administrar la desviación de la configuración en el sitio de o en la región de recuperación de desastres](rel_planning_for_recovery_config_drift.md)
+ [REL13-BP05 Automatizar la recuperación](rel_planning_for_recovery_auto_recovery.md)

# REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos
<a name="rel_planning_for_recovery_objective_defined_recovery"></a>

 La carga de trabajo tiene un objetivo de tiempo de recuperación (RTO) y un objetivo de punto de recuperación (RPO). 

 *Objetivo de tiempo de recuperación (RTO)* es el retraso máximo aceptable entre la interrupción del servicio y su restablecimiento. Esto determina lo que se considera un intervalo de tiempo aceptable cuando el servicio no está disponible. 

 *Objetivo de punto de recuperación (RPO)*  es el periodo de tiempo máximo aceptable desde el último punto de recuperación de datos. Determina lo que se considera una pérdida aceptable de datos entre el último punto de recuperación y la interrupción del servicio. 

 Los valores de RTO y RPO son consideraciones importantes a la hora de seleccionar una estrategia de recuperación de desastres (DR) adecuada para su carga de trabajo. Estos objetivos los determina la empresa y los utilizan los equipos técnicos para seleccionar e implementar una estrategia de recuperación de desastres. 

 **Resultado deseado:**  

 Cada carga de trabajo tiene un RTO y un RPO asignados, definidos en función del impacto empresarial. La carga de trabajo se asigna en un nivel predefinido, lo que define la disponibilidad del servicio y la pérdida de datos aceptable, con un RTO y un RPO asociados. Si no es posible esta jerarquización, se puede asignar de forma personalizada por carga de trabajo, con la intención de crear niveles más adelante. RTO y RPO se utilizan como una de las principales consideraciones para la selección de la implementación de una estrategia de recuperación de desastres para la carga de trabajo. Otras consideraciones a la hora de elegir una estrategia de recuperación de desastres son las restricciones de costes, las dependencias de la carga de trabajo y los requisitos operativos. 

 Para RTO, entienda el impacto basado en la duración de una interrupción. ¿Es lineal o hay implicaciones no lineales? (por ejemplo, después de cuatro horas, se cierra una línea de fabricación hasta el comienzo del siguiente turno). 

 Una matriz de recuperación de desastres, como la siguiente, puede ayudarle a entender cómo se relaciona la criticidad de la carga de trabajo con los objetivos de recuperación. (Tenga en cuenta que los valores reales de los ejes X e Y deben adaptarse a las necesidades de su organización). 

![\[Gráfico que muestra la matriz de recuperación de desastres\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/disaster-recovery-matrix.png)


 **Patrones de uso no recomendados comunes:** 
+  No hay objetivos de recuperación definidos. 
+  Seleccionar objetivos de recuperación arbitrarios. 
+  Seleccionar objetivos de recuperación demasiado permisivos y no satisfacer los objetivos empresariales 
+  No entender el impacto del tiempo de inactividad y la pérdida de datos. 
+  Seleccionar objetivos de recuperación poco realistas, como el tiempo de recuperación cero y la pérdida de datos cero, que pueden no ser alcanzables para la configuración de su carga de trabajo. 
+  Seleccionar objetivos de recuperación más estrictos que los objetivos empresariales reales Esto obliga a realizar implementaciones de recuperación de desastres más costosas y complejas de lo que necesita la carga de trabajo. 
+  Seleccionar objetivos de recuperación incompatibles con los de una carga de trabajo dependiente. 
+  Sus objetivos de recuperación no tienen en cuenta los requisitos de cumplimiento normativo. 
+  RTO y RPO definidos para una carga de trabajo, pero nunca se han probado. 

 **Beneficios de establecer esta práctica recomendada:** Los objetivos de recuperación de tiempo y pérdida de datos son necesarios para guiar su implementación de DR. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Para la carga de trabajo dada, debe entender el impacto del tiempo de inactividad y la pérdida de datos en su empresa. Por lo general, el impacto aumenta con un mayor tiempo de inactividad o pérdida de datos, pero la forma de este crecimiento puede variar en función del tipo de carga de trabajo. Por ejemplo, puede ser capaz de tolerar un tiempo de inactividad de hasta una hora con poco impacto, pero después el impacto aumenta rápidamente. El impacto en la empresa se manifiesta de muchas formas, como el coste económico (por ejemplo, la pérdida de ingresos), la confianza de los clientes (y el impacto en la reputación), los problemas operativos (por ejemplo, la pérdida de nóminas o la disminución de la productividad) y el riesgo normativo. Siga estos pasos para entender estos impactos y establecer RTO y RPO para su carga de trabajo. 

 **Pasos de implementación** 

1.  Determine las partes interesadas de su empresa para esta carga de trabajo y colabore con ellas para implementar estos pasos. Los objetivos de recuperación de una carga de trabajo son una decisión empresarial. Después, los equipos técnicos trabajan con las partes interesadas de la empresa para utilizar estos objetivos para seleccionar una estrategia de recuperación de desastres. 
**nota**  
Para los pasos 2 y 3, puede usar la [Hoja de trabajo de implementación](#implementation-worksheet).

1.  Responda a las preguntas siguientes para reunir la información necesaria a fin de tomar una decisión. 

1.  ¿Tiene categorías o niveles de criticidad para el impacto de la carga de trabajo en su organización? 

   1.  En caso afirmativo, asigne esta carga de trabajo a una categoría. 

   1.  En caso contrario, establezca estas categorías. Cree un máximo de cinco categorías y ajuste el intervalo de su objetivo de tiempo de recuperación para cada una. Algunos ejemplos de categorías son: crítica, alta, media, baja. Para entender cómo se asignan las cargas de trabajo a las categorías, considere si la carga de trabajo es de misión crítica, importante para la empresa o no lo es. 

   1.  Establezca el RTO y el RPO de la carga de trabajo en función de la categoría. Acceda a este paso para elegir siempre una categoría más estricta (RTO y RPO más bajos) que los valores sin procesar calculados. Si esto da lugar a un cambio de valor inadecuado, considere la posibilidad de crear una nueva categoría. 

1.  Según estas respuestas, asigne los valores de RTO y RPO a la carga de trabajo. Se puede hacer directamente o mediante la asignación de la carga de trabajo a un nivel de servicio predefinido. 

1.  Documente el plan de recuperación de desastres (DRP) de esta carga de trabajo, que forma parte del [plan de continuidad del negocio (BCP)](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/business-continuity-plan-bcp.html)de su organización, en una ubicación accesible al equipo de la carga de trabajo y las partes interesadas. 

   1.  Registre el RTO y el RPO, así como la información utilizada para determinar estos valores. Incluya la estrategia que se utiliza para evaluar el impacto de la carga de trabajo en la empresa. 

   1.  Registre otras métricas, además de RTO y RPO, de las que hace un seguimiento o planifica hacerlo para los objetivos de recuperación de desastres. 

   1.  Agregará los detalles de su estrategia de recuperación de desastres y su runbook a este plan cuando los cree. 

1.  Si busca la criticidad de la carga de trabajo en una matriz como la de la figura 15, puede empezar a establecer los niveles de servicio predefinidos para su organización. 

1.  Después de haber implementado una estrategia de recuperación de desastres (o una prueba de concepto para una estrategia de este tipo) según [REL13-BP02 Usar estrategias de recuperación definidas para cumplir los objetivos de recuperación](rel_planning_for_recovery_disaster_recovery.md), pruebe esta estrategia para determinar la capacidad de tiempo de recuperación (RTC) y de punto de recuperación (RPC) reales de la carga de trabajo. Si no cumplen los objetivos de recuperación previstos, es posible colaborar con las partes interesadas de su empresa para ajustar dichos objetivos o realizar cambios en la estrategia de RD para cumplir los objetivos previstos. 

 **Preguntas principales** 

1.  ¿Cuál es el tiempo máximo que la carga de trabajo puede estar inactiva antes de que se produzca un impacto grave en la empresa? 

   1.  Determine el coste económico (impacto financiero directo) para la empresa por minuto si se interrumpe la carga de trabajo. 

   1.  Considere que el impacto no siempre es lineal. El impacto puede ser limitado al principio e ir aumentando rápidamente a partir de un punto crítico. 

1.  ¿Cuál es la cantidad máxima de datos que puede perderse antes de que se produzca un impacto grave en la empresa? 

   1.  Considere este valor para su almacén de datos más crítico. Identifique la criticidad correspondiente de otros almacenes de datos. 

   1.  ¿Se pueden recrear los datos de la carga de trabajo si se pierden? Si esto es operativamente más fácil que la copia de seguridad y la restauración, elija el RPO en función de la criticidad de los orígenes de los datos que se utilizan para recrear los datos de la carga de trabajo. 

1.  ¿Cuáles son los objetivos de recuperación y las expectativas de disponibilidad de las cargas de trabajo de las que depende esta (descendente), o de las cargas de trabajo que dependen de esta (ascendente)? 

   1.  Elija objetivos de recuperación que permitan a esta carga de trabajo cumplir los requisitos de las dependencias ascendentes. 

   1.  Elija objetivos de recuperación que sean alcanzables teniendo en cuenta las capacidades de recuperación de las dependencias descendentes. Se pueden excluir las dependencias descendentes no críticas (aquellas que puede «resolver»). O bien, trabaje con las dependencias críticas posteriores para mejorar sus capacidades de recuperación cuando sea necesario. 

 **Preguntas adicionales** 

 Considere estas preguntas y cómo pueden aplicarse a esta carga de trabajo: 

1.  ¿Tiene diferentes RTO y RPO en función del tipo de interrupción región con respecto a AZ, etc.)? 

1.  ¿Hay algún momento específico (estacionalidad, eventos de ventas, lanzamientos de productos) en el que pueda cambiar su RTO/RPO? Si es así, ¿cuál es el límite de medida y tiempo diferente? 

1.  ¿Cuántos clientes se verán afectados si se interrumpe la carga de trabajo? 

1.  ¿Cuál es el impacto en la reputación si se interrumpe la carga de trabajo? 

1.  ¿Qué otros impactos operativos pueden producirse si se interrumpe la carga de trabajo? Por ejemplo, el impacto en la productividad de los empleados si los sistemas de correo electrónico no están disponibles o si los sistemas de nómina no pueden enviar las transacciones. 

1.  ¿Cómo se alinean el RTO y el RPO de la carga de trabajo con la línea de negocio y la estrategia organizativa de recuperación de desastres? 

1.  ¿Existen obligaciones contractuales internas para la prestación de un servicio? ¿Existen sanciones por incumplirlas? 

1.  ¿Cuáles son las restricciones normativas o de cumplimiento con los datos? 

## Hoja de trabajo de implementación
<a name="implementation-worksheet"></a>

 Puede utilizar esta hoja de trabajo para implementar los pasos 2 y 3. Puede ajustar esta hoja de trabajo para adaptarla a sus necesidades específicas, por ejemplo, puede agregar preguntas adicionales. 

<a name="worksheet"></a>![\[Hoja de trabajo\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/worksheet.png)


 **Nivel de esfuerzo para el plan de implementación: **Bajo 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [REL09-BP04 Realizar una recuperación periódica de los datos para verificar la integridad de la copia de seguridad y los procesos](rel_backing_up_data_periodic_recovery_testing_data.md)
+ [REL13-BP02 Usar estrategias de recuperación definidas para cumplir los objetivos de recuperación](rel_planning_for_recovery_disaster_recovery.md) 
+ [REL13-BP03 Probar la implementación de recuperación de desastres para validarla](rel_planning_for_recovery_dr_tested.md) 

 **Documentos relacionados:** 
+  [Blog de arquitectura de AWS: serie de recuperación de desastres](https://aws.amazon.com/blogs/architecture/tag/disaster-recovery-series/) 
+  [Recuperación de desastres de las cargas de trabajo en AWS: recuperación en la nube (documento técnico de AWS)](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-workloads-on-aws.html) 
+  [Managing resiliency policies with AWS Resilience Hub (Administración de las políticas de resiliencia con AWS Resilience Hub)](https://docs.aws.amazon.com/resilience-hub/latest/userguide/resiliency-policies.html) 
+  [Socio de APN: socios que pueden ayudar con la recuperación de desastres](https://aws.amazon.com/partners/find/results/?keyword=Disaster+Recovery) 
+  [AWS Marketplace: productos que pueden usarse para la recuperación de desastres](https://aws.amazon.com/marketplace/search/results?searchTerms=Disaster+recovery) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (Patrones de arquitectura para aplicaciones activas-activas en varias regiones) (ARC209-R2)](https://youtu.be/2e29I3dA8o4) 
+  [Disaster Recovery of Workloads on AWS (Recuperación de desastres de cargas de trabajo en AWS)](https://www.youtube.com/watch?v=cJZw5mrxryA) 

# REL13-BP02 Usar estrategias de recuperación definidas para cumplir los objetivos de recuperación
<a name="rel_planning_for_recovery_disaster_recovery"></a>

Defina una estrategia de recuperación de desastres (DR) que se ajuste a los objetivos de recuperación de su carga de trabajo. Elija una estrategia como copia de seguridad y restauración, estado de espera (activa/pasiva) o activa/activa.

 **Resultado deseado:** para cada carga de trabajo, existe una estrategia de DR definida e implementada que permite que esa carga de trabajo alcance los objetivos de DR. Las estrategias de DR entre cargas de trabajo emplean patrones reutilizables (como las estrategias descritas anteriormente). 

 **Antipatrones usuales:** 
+  Implementar procedimientos de recuperación incoherentes para cargas de trabajo con objetivos de DR similares. 
+  Dejar la estrategia de DR para implementarla ad hoc cuando se produzca un desastre. 
+  No tener un plan de recuperación de desastres. 
+  Depender de las operaciones del plano de control durante la recuperación. 

 **Beneficios de establecer esta práctica recomendada:** 
+  El uso de estrategias de recuperación definidas le permite emplear herramientas y procedimientos de prueba comunes. 
+  El uso de estrategias de recuperación definidas mejora el intercambio de conocimiento entre equipos y la implementación de la DR en las cargas de trabajo que se encuentran bajo su responsabilidad. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto Sin una estrategia de DR planificada, implementada y probada, es poco probable que consiga sus objetivos de recuperación en caso de desastre. 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Una estrategia de DR depende de la capacidad de poner en marcha su carga de trabajo en un sitio de recuperación si su ubicación principal deja de estar disponible para la ejecución de dicha carga de trabajo. Los objetivos de recuperación más comunes son el RTO y el RPO, como explicamos en [REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](rel_planning_for_recovery_objective_defined_recovery.md). 

 Una estrategia de DR en varias zonas de disponibilidad (AZ) dentro de una única Región de AWS puede ofrecer mitigación contra eventos de desastres como incendios, inundaciones y cortes de suministro eléctrico considerables. Si es necesario implementar medidas de protección contra un evento poco probable que evite que su carga de trabajo pueda ejecutarse en una Región de AWS determinada, puede seguir una estrategia de DR que abarque múltiples regiones. 

 A la hora de diseñar una estrategia de DR en varias regiones, debería elegir una de las siguientes estrategias. Se indican en orden ascendente de coste y complejidad y en orden descendente en cuanto al RTO y RPO. *Región de recuperación* se refiere a una Región de AWS diferente de la principal que se usa para su carga de trabajo. 

![\[Diagrama que muestra estrategias de DR\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/disaster-recovery-strategies.png)

+  **Generación de copias de seguridad y restauración** (RPO en horas, RTO en 24 horas o menos): cree una copia de seguridad de sus datos y aplicaciones en la región de recuperación. El uso de copias de seguridad automatizadas o continuas permitirá la recuperación a un momento dado, lo que puede reducir el RPO a hasta 5 minutos en algunos casos. En caso de desastre, desplegará su infraestructura (utilizando la infraestructura como código para reducir el RTO), desplegará su código y restaurará los datos desde la copia de seguridad para recuperarse del desastre en la región de recuperación. 
+  **Luz piloto** (RPO en minutos, RTO en decenas de minutos): aprovisione una copia de la infraestructura principal de su carga de trabajo en la región de recuperación. Replique sus datos en la región de recuperación y cree allí copias de seguridad de estos. Los recursos necesarios para permitir la replicación y copia de seguridad de los datos, como el almacenamiento de bases de datos y objetos, están siempre disponibles. Otros elementos, como los servidores de aplicaciones o la computación sin servidor, no se despliegan, pero pueden crearse cuando sea necesario con la configuración y el código de aplicación pertinentes. 
+  **Espera semiactiva** (RPO en segundos, RTO en minutos): mantenga una versión reducida pero totalmente funcional de su carga de trabajo que se ejecute continuamente en la región de recuperación. Los sistemas críticos se duplican en su totalidad y siempre están activos, pero con una flota reducida. Los datos se replican y están activos en la región de recuperación. Cuando llegue el momento de la recuperación, el sistema se amplía rápidamente para asumir la carga de producción. Cuanto mayor sea la escala de la espera semiactiva, menor será el RTO y la fiabilidad del plano de control. Cuando alcanza su plena escala, la espera pasa a denominarse *espera activa*. 
+  **Activa-activa multirregión (multisitio)** (RPO próximo a cero, RTO potencial de cero): la carga de trabajo está desplegada en varias Regiones de AWS y entrega tráfico de forma activa desde estas regiones. Esta estrategia requiere que sincronice datos entre regiones. Los posibles conflictos causados por escrituras en el mismo registro en dos diferentes réplicas regionales deben evitarse o gestionarse, lo que puede resultar complejo. La replicación de datos es útil para la sincronización de datos y le protegerá ante algunos tipos de desastres, pero no ante el daño o la destrucción de datos, a no ser que su solución incluya también opciones para una recuperación a un momento dado. 

**nota**  
 La diferencia entre la luz piloto y la espera semiactiva a veces puede ser difícil de comprender. Ambos métodos incluyen un entorno en su región de recuperación con copias de los activos de su región principal. La distinción es que la luz piloto no puede procesar solicitudes sin tomar primero acciones adicionales, mientras que la espera semiactiva puede gestionar el tráfico (a niveles de capacidad reducidos) inmediatamente. La luz piloto exige que active servidores, posiblemente que despliegue infraestructura adicional (no principal) y que escale verticalmente, mientras que la espera semiactiva solo requiere que escale verticalmente (ya está todo desplegado y en ejecución). Elija una de estas opciones en función de sus necesidades de RTO y RPO.   
 Cuando el coste sea una preocupación y desee alcanzar unos objetivos de RPO y RTO similares a los definidos en la estrategia de espera semiactiva, podría plantearse soluciones nativas de la nube, como AWS Elastic Disaster Recovery, que adoptan el enfoque de luz piloto y ofrecen objetivos de RPO y RTO mejorados. 

 **Pasos para la implementación** 

1.  **Determine una estrategia de DR que satisfaga los requisitos de recuperación de esta carga de trabajo.** 

 La selección de una estrategia de DR requiere alcanzar un punto de equilibrio entre la reducción del tiempo de inactividad y la pérdida de datos (RTO y RPO) y los costes y la complejidad de implementar la estrategia. Debería evitar implementar una estrategia que sea más exigente de lo necesario, ya que esto supone costes innecesarios. 

 Por ejemplo, en el siguiente diagrama, la empresa ha determinado su RTO máximo permisible y el límite de gasto en su estrategia de restauración del servicio. Dados los objetivos de la empresa, las estrategias de DR de luz piloto o espera semiactiva satisfarán tanto el RTO como los criterios de coste. 

![\[Gráfico que muestra una estrategia de DR basada en el RTO y el coste\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/choosing-a-dr-strategy.png)


 Para obtener más información, consulte [Business Continuity Plan (BCP)](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/business-continuity-plan-bcp.html) (Plan de continuidad del negocio [BCP]). 

1.  **Revise los patrones de implementación de la estrategia de DR seleccionada.** 

 Este paso implica comprender cómo implementará la estrategia seleccionada. Las estrategias se explican utilizando Regiones de AWS para determinar un sitio principal y otro de recuperación. Sin embargo, también puede decidir utilizar zonas de disponibilidad en una única región como estrategia de DR, que utiliza los elementos de varias de estas estrategias. 

 En los siguientes pasos, puede aplicar la estrategia a su carga de trabajo específica. 

 **Generación de copias de seguridad y restauración**  

 *Generación de copias de seguridad y restauración* es la estrategia menos compleja de implementar, pero requiere más tiempo y esfuerzo para restaurar la carga de trabajo, lo que genera un mayor RTO y RPO. Se recomienda realizar siempre copias de seguridad de los datos y copiarlas en otro sitio (por ejemplo, otra Región de AWS). 

![\[Diagrama que muestra una arquitectura de copia de seguridad y restauración\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/backup-restore-architecture.png)


 Para obtener más detalles sobre esta estrategia, consulte [Disaster Recovery (DR) Architecture on AWS, Part II: Backup and Restore with Rapid Recovery](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-ii-backup-and-restore-with-rapid-recovery/) (Arquitectura de recuperación de desastres [DR] en AWS, parte II: copias de seguridad y restauración con Rapid Recovery). 

 **Luz piloto** 

 Con el enfoque *luz piloto*, replica sus datos de la región principal en la región de recuperación. Los recursos principales utilizados para la infraestructura de la carga de trabajo se despliegan en la región de recuperación; sin embargo, se siguen necesitando recursos adicionales y las dependencias pertinentes para que esta pila sea funcional. Por ejemplo, en la figura 20 no se despliegan instancias de computación. 

![\[Diagrama que muestra una arquitectura de luz piloto\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/pilot-light-architecture.png)


 Para obtener más detalles sobre esta estrategia, consulte [Disaster Recovery (DR) Architecture on AWS, Part III: Pilot Light and Warm Standby](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-iii-pilot-light-and-warm-standby/) (Arquitectura de recuperación de desastres [DR] en AWS, parte III: luz piloto y espera semiactiva). 

 **Espera semiactiva** 

 El enfoque*espera semiactiva* supone garantizar que exista una copia con desescalada vertical pero con plena funcionalidad de su entorno de producción en otra región. Este enfoque extiende el concepto de luz piloto y reduce el tiempo de recuperación, ya que su carga de trabajo tiene disponibilidad permanente en otra región. Si la región de recuperación se despliega a plena capacidad, esto se denomina *espera activa*. 

![\[Diagrama que muestra la figura 21 con arquitectura de espera semiactiva\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/warm-standby-architecture.png)


 El uso de las estrategias espera semiactiva o luz piloto requiere escalar verticalmente los recursos en la región de recuperación. Para verificar que la capacidad esté disponible cuando se necesita, considere el uso de [reservas de capacidad](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-reservations.html) para instancias EC2. Si usa AWS Lambda, entonces la [simultaneidad aprovisionada](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) puede proporcionar entornos de ejecución de forma que estén preparados para responder de inmediato a las invocaciones de la función. 

 Para obtener más detalles sobre esta estrategia, consulte [Disaster Recovery (DR) Architecture on AWS, Part III: Pilot Light and Warm Standby](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-iii-pilot-light-and-warm-standby/) (Arquitectura de recuperación de desastres [DR] en AWS, parte III: luz piloto y espera semiactiva). 

 **Activa-activa multisitio** 

 Puede ejecutar su carga de trabajo de forma simultánea en varias regiones como parte de una estrategia *activa-activa multisitio*. La estrategia activa-activa multisitio suministra tráfico desde todas las regiones en las que se despliega. Los clientes podrían seleccionar esta estrategia por motivos ajenos a la DR. Se puede usar para aumentar la disponibilidad o cuando se despliega una carga de trabajo para una audiencia global (para colocar el punto de conexión más cerca de los usuarios o para desplegar pilas localizadas para la audiencia de esa región). Como estrategia de DR, si la carga de trabajo no es compatible en una de las Regiones de AWS en la que esté desplegada, esa región se evacúa y las regiones restantes se usan para mantener la disponibilidad. La estrategia activa-activa multisitio es la más compleja de las estrategias de DR a nivel operativo, y solo debería seleccionarse cuando los requisitos empresariales lo exijan. 

![\[Diagrama que muestra una arquitectura activa-activa multisitio\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/multi-site-active-active-architecture.png)


 

 Para obtener más detalles sobre esta estrategia, consulte [Disaster Recovery (DR) Architecture on AWS, Part IV: Multi-site Active/Active](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-iv-multi-site-active-active/) (Arquitectura de recuperación de desastres [DR] en AWS, parte IV: activa-activa multisitio). 

 **AWS Elastic Disaster Recovery** 

 Si está considerando la estrategia luz piloto o espera semiactiva para la recuperación de desastres, AWS Elastic Disaster Recovery podría ofrecer un enfoque alternativo con mayores ventajas. Elastic Disaster Recovery puede ofrecer un objetivo de RPO y RTO similar al de la estrategia espera semiactiva, pero manteniendo el enfoque de bajo coste de la estrategia luz piloto. Elastic Disaster Recovery replica los datos desde la región primaria a la región de recuperación, utilizando la protección continua de datos para lograr un RPO medido en segundos y un RTO que puede medirse en minutos. En la región de recuperación solo se despliegan los recursos necesarios para replicar los datos, lo que mantiene los costes bajos, de forma similar a la estrategia luz piloto. Cuando se utiliza Elastic Disaster Recovery, el servicio coordina y organiza la recuperación de los recursos de computación cuando se inicia como parte de una conmutación por error o un simulacro. 

![\[Diagrama de la arquitectura que describe cómo opera AWS Elastic Disaster Recovery.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/drs-architecture.png)


 

 **Prácticas adicionales para la protección de datos** 

 Con todas las estrategias, también debe mitigar los posibles desastres de datos. La replicación de datos continua le protegerá ante algunos tipos de desastres, pero no ante el daño o la destrucción de datos, a no ser que su estrategia incluya también control de versiones para una recuperación a un momento dado. También debe realizar una copia de seguridad de los datos replicados en el sitio de recuperación para crear copias de seguridad a un momento dado además de las réplicas. 

 **Uso de varias zonas de disponibilidad (AZ) en una únicaRegión de AWS** 

 Al usar varias AZ en una única región, su implementación de DR utiliza varios elementos de las estrategias anteriores. Primero, debe crear una arquitectura de alta disponibilidad utilizando varias AZ, como se muestra en la figura 23. Esta arquitectura hace uso de un enfoque activo-activo multisitio, ya que las [instancias Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones) y el [equilibrador de carga elástico](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#availability-zones) tienen recursos desplegados en varias AZ, que gestionan las solicitudes de forma activa. La arquitectura también dispone de espera activa, en la que si la instancia principal de [Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.MultiAZ.html) produce un error (o la propia AZ tiene un error), la instancia en espera pasa a ser la principal. 

![\[Diagrama que muestra la figura 24 con arquitectura multi-AZ\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/multi-az-architecture2.png)


 Además de esta arquitectura de alta disponibilidad, necesita agregar copias de seguridad con todos los datos necesarios para ejecutar su carga de trabajo. Esto es especialmente importante para datos que estén limitados a una única zona, como los [volúmenes de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volumes.html) o los [clústeres de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-clusters.html). Si falla una AZ, tendrá que restaurar estos datos en otra AZ. Siempre que sea posible, deberá copiar las copias de seguridad de los datos en otra Región de AWS como capa de protección adicional. 

 En la publicación de blog, [Building highly resilient applications using Amazon Route 53 Application Recovery Controller, Part 1: Single-Region stack](https://aws.amazon.com/blogs/networking-and-content-delivery/building-highly-resilient-applications-using-amazon-route-53-application-recovery-controller-part-1-single-region-stack/) (Creación de aplicaciones de alta resiliencia con Amazon Route 53, parte 1: pila de una sola región) se ilustra un enfoque alternativo menos habitual a la RD multi-AZ de única región. Aquí, la estrategia es mantener la máxima cantidad posible de aislamiento entre las AZ, tal y como funcionan las regiones. Al utilizar esta estrategia alternativa, puede elegir un enfoque activo-activo o activo-pasivo. 

**nota**  
Algunas cargas de trabajo tienen requisitos normativos de residencia de los datos. Si esto se aplica a su carga de trabajo en una ubicación que actualmente tenga solo una Región de AWS, el enfoque multirregión no se adaptará a sus necesidades empresariales. Las estrategias multi-AZ ofrecen una buena protección contra la mayor parte de los desastres. 

1.  **Evalúe los recursos de su carga de trabajo y cuál será su configuración en la región de recuperación antes de la conmutación por error (durante la operación normal).** 

 Para la infraestructura y los recursos de AWS, utilice infraestructura como código como [AWS CloudFormation](https://aws.amazon.com/cloudformation) o herramientas de terceros como Hashicorp Terraform. Para un despliegue en varias cuentas y regiones con una única operación, puede utilizar [AWS CloudFormation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html). En las estrategias activa-activa multisitio o espera activa, la infraestructura desplegada en su región de recuperación tiene los mismos recursos que su región principal. En las estrategias luz piloto y espera semiactiva, la infraestructura desplegada requerirá acciones adicionales para prepararse para la producción. Con [parámetros](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) y [lógica condicional](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-conditions.html) de CloudFormation, puede controlar si una pila desplegada está activa o en espera con [una sola plantilla](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-iii-pilot-light-and-warm-standby/). Al utilizar Elastic Disaster Recovery, el servicio replicará y organizará la restauración de las configuraciones de las aplicaciones y los recursos de computación. 

 Todas las estrategias de DR requieren que se realicen copias de seguridad de los orígenes de datos en la Región de AWS, y que estas copias de seguridad se copien en la región de recuperación. [AWS Backup](https://aws.amazon.com/backup/) proporciona una vista centralizada en la que puede configurar, programar y supervisar las copias de seguridad para estos recursos. En el caso de las opciones de luz piloto, espera semiactiva y activa-activa multisitio, también debería replicar los datos de la región principal en los recursos de datos de la región de recuperación, como las instancias de base de datos de [Amazon Relational Database Service (Amazon RDS)](https://aws.amazon.com/rds) o tablas de [Amazon DynamoDB](https://aws.amazon.com/dynamodb). De esta forma, estos recursos de datos estarán activos y preparados para responder a solicitudes en la región de recuperación. 

 Para obtener más información sobre cómo funcionan los servicios de AWS en todas las regiones, consulte esta serie de blogs sobre [Creating a Multi-Region Application with AWS Services](https://aws.amazon.com/blogs/architecture/tag/creating-a-multi-region-application-with-aws-services-series/) (Creación de una aplicación multirregión con servicios de AWS). 

1.  **Determine e implemente cómo preparará su región de recuperación para la conmutación por error cuando sea necesario (durante un evento de desastre).** 

 En el caso de la opción activa-activa multisitio, la conmutación por error implica evacuar una región y recurrir a las regiones activas restantes. En general, esas regiones están listas para aceptar tráfico. En las estrategias luz piloto y espera semiactiva, sus acciones de recuperación tendrán que desplegar los recursos faltantes, como las instancias EC2 en la figura 20, además de otros recursos faltantes. 

 En todas las estrategias anteriores, es posible que tenga que promover instancias de solo lectura de bases de datos para que se conviertan en la instancia de lectura y escritura principal. 

 En copias de seguridad y restauración, la restauración de datos desde una copia de seguridad crea recursos para esos datos, como volúmenes EBS, instancias de bases de datos RDS y tablas de DynamoDB. También tiene que restaurar la infraestructura y desplegar el código. Puede usar AWS Backup para restaurar datos en la región de recuperación. Consulte [REL09-BP01 Identificar todos los datos de los que se debe hacer una copia de seguridad y crearla o reproducir los datos a partir de los orígenes](rel_backing_up_data_identified_backups_data.md) para obtener más información. La reconstrucción de la infraestructura incluye la creación de recursos como instancias EC2, además de [Amazon Virtual Private Cloud (Amazon VPC)](https://aws.amazon.com/vpc), subredes y grupos de seguridad necesarios. Puede automatizar gran parte del proceso de restauración. Para saber cómo, consulte [esta publicación de blog](https://aws.amazon.com/blogs/architecture/disaster-recovery-dr-architecture-on-aws-part-ii-backup-and-restore-with-rapid-recovery/). 

1.  **Determine e implemente cómo redirigirá su tráfico a la conmutación por error cuando sea necesario (durante un evento de desastre).** 

 Esta operación de conmutación por error se puede iniciar automáticamente o manualmente. La conmutación por error iniciada automáticamente basada en comprobaciones de estado o alarmas se debe usar con cuidado, ya que una conmutación por error innecesaria (falsa alarma) supone ciertos inconvenientes, como la falta de disponibilidad y la pérdida de datos. Por tanto, la conmutación por error iniciada manualmente es la que se suele utilizar. En este caso, debe seguir automatizando los pasos de la conmutación por error, de modo que la iniciación manual sea como pulsar un botón. 

 Hay varias opciones de administración del tráfico que tener en cuenta al usar servicios de AWS. Una opción es utilizar [Amazon Route 53](https://aws.amazon.com/route53). Al usar Amazon Route 53, puede asociar varios puntos de conexión de IP en una o varias Regiones de AWS con un nombre de dominio de Route 53. Para implementar la conmutación por error iniciada manualmente, puede utilizar el [Controlador de recuperación de aplicaciones de Amazon Route 53](https://aws.amazon.com/route53/application-recovery-controller/), que proporciona una API de plano de datos de alta disponibilidad para redirigir el tráfico a la región de recuperación. Al implementar la conmutación por error, use las operaciones del plano de datos y evite las del plano de control, como se describe en [REL11-BP04 Confiar en el plano de datos y no en el plano de control durante la recuperación](rel_withstand_component_failures_avoid_control_plane.md). 

 Para obtener más información sobre esta y otras opciones, consulte [esta sección del documento técnico de recuperación de desastres](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-options-in-the-cloud.html#pilot-light). 

1.  **Diseñe un plan para la recuperación tras error de su carga de trabajo.** 

 La conmutación por recuperación es cuando se devuelve la operación de una carga de trabajo a la región principal una vez que amaina un evento de desastre. El aprovisionamiento de la infraestructura y el código en la región principal generalmente sigue los mismos pasos que se utilizaron inicialmente, recurriendo a la infraestructura como código y las canalizaciones de despliegue del código. El reto que plantea la conmutación por recuperación es restaurar los almacenes de datos y asegurarse de que sean coherentes con la región de recuperación en funcionamiento. 

 En el estado de conmutación por error, las bases de datos en la región de recuperación están activas y tienen los datos actualizados. El objetivo es resincronizar desde la región de recuperación a la región principal, garantizando así que esté actualizada. 

 Algunos servicios de AWS harán esto automáticamente. Si utiliza las [tablas globales de Amazon DynamoDB](https://aws.amazon.com/dynamodb/global-tables/), incluso si la tabla en la región principal ha dejado de estar disponible, cuando vuelva a estar online, DynamoDB volverá a propagar las escrituras pendientes. Si utiliza la [base de datos global de Amazon Aurora](https://aws.amazon.com/rds/aurora/global-database/) y utiliza la [conmutación por error planificada administrada](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/aurora-global-database-disaster-recovery.html#aurora-global-database-disaster-recovery.managed-failover), se mantendrá la topología de replicación existente de la base de datos global de Aurora. Por tanto, la instancia de lectoescritura anterior en la región principal se convertirá en una réplica y recibirá actualizaciones desde la región de recuperación. 

 En los casos en los que esto no se haga automáticamente, tendrá que restablecer la base de datos en la región principal como una réplica de la base de datos en la región de recuperación. En muchos casos, esto supondrá eliminar la antigua base de datos principal y crear nuevas réplicas. Por ejemplo, para obtener instrucciones sobre cómo hacer esto con la base de datos global de Amazon Aurora en el caso de una conmutación por error *no planificada*, consulte este laboratorio: [Fail Back a Global Database](https://awsauroralabsmy.com/global/failback/) (Conmutación por recuperación a una base de datos global). 

 Tras una conmutación por error, si puede seguir operando en su región de recuperación, considere convertir esta región en la nueva región principal. Seguiría realizando los pasos anteriores para hacer que la antigua región principal fuera una región de recuperación. Algunas organizaciones llevan a cabo una rotación programada y cambian sus regiones principal y de recuperación periódicamente (por ejemplo, cada tres meses). 

 Todos los pasos necesarios para la conmutación por error y la restauración tras error deben mantenerse en una guía de estrategias que esté a disposición de todos los miembros del equipo y se revise periódicamente. 

 Si utiliza Elastic Disaster Recovery, el servicio ayudará a organizar y automatizar el proceso de conmutación por recuperación. Para obtener más información, consulte [Performing a failback](https://docs.aws.amazon.com/drs/latest/userguide/failback-performing-main.html) (Realizar una conmutación por recuperación). 

 **Nivel de esfuerzo para el plan de implementación:** alto 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [REL09-BP01 Identificar todos los datos de los que se debe hacer una copia de seguridad y crearla o reproducir los datos a partir de los orígenes](rel_backing_up_data_identified_backups_data.md)
+ [REL11-BP04 Confiar en el plano de datos y no en el plano de control durante la recuperación](rel_withstand_component_failures_avoid_control_plane.md)
+  [REL13-BP01 Definir objetivos de recuperación para la inactividad y la pérdida de datos](rel_planning_for_recovery_objective_defined_recovery.md) 

 **Documentos relacionados:** 
+  [AWS Architecture Blog: Disaster Recovery Series](https://aws.amazon.com/blogs/architecture/tag/disaster-recovery-series/) (Blog de arquitectura de AWS: serie de recuperación de desastres) 
+  [Disaster Recovery of Workloads on AWS: Recovery in the Cloud (Recuperación de cargas de trabajo en caso de desastre en AWS: recuperación en la nube) (Documento técnico de AWS)](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-workloads-on-aws.html) 
+  [Opciones de recuperación de desastres en la nube](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-options-in-the-cloud.html) 
+  [Crear una solución backend activa-activa sin servidor en varias regiones en una hora](https://read.acloud.guru/building-a-serverless-multi-region-active-active-backend-36f28bed4ecf) 
+  [Backend sin servidor en varias regiones: actualizado](https://medium.com/@adhorn/multi-region-serverless-backend-reloaded-1b887bc615c0) 
+  [RDS: replicación de una réplica de lectura entre regiones](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ReadRepl.html#USER_ReadRepl.XRgn) 
+  [Route 53: Configuración de la recuperación ante errores a nivel de DNS](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring.html) 
+  [S3: replicación entre regiones](https://docs.aws.amazon.com/AmazonS3/latest/dev/crr.html) 
+  [What Is AWS Backup?](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html) (¿Qué es AWS Backup?) 
+  [What is Route 53 Application Recovery Controller?](https://docs.aws.amazon.com/r53recovery/latest/dg/what-is-route53-recovery.html) (¿Qué es el Controlador de recuperación de aplicaciones de Route 53?) 
+  [AWS Elastic Disaster Recovery](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html) 
+  [HashiCorp Terraform: Get Started - AWS](https://learn.hashicorp.com/collections/terraform/aws-get-started) (HashiCorp Terraform: primeros pasos: AWS) 
+  [Socio de APN: socios que pueden ayudar con la recuperación de desastres](https://aws.amazon.com/partners/find/results/?keyword=Disaster+Recovery) 
+  [AWS Marketplace: products that can be used for disaster recovery](https://aws.amazon.com/marketplace/search/results?searchTerms=Disaster+recovery) (AWS Marketplace: productos que pueden usarse para la recuperación de desastres) 

 **Vídeos relacionados: ** 
+  [Disaster Recovery of Workloads on AWS](https://www.youtube.com/watch?v=cJZw5mrxryA) (Recuperación de desastres de cargas de trabajo en AWS) 
+  [AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (ARC209-R2)](https://youtu.be/2e29I3dA8o4) (AWS re:Invent 2018: Patrones de arquitectura para aplicaciones activas-activas en varias regiones) 
+  [Get Started with AWS Elastic Disaster Recovery \$1 Amazon Web Services](https://www.youtube.com/watch?v=GAMUCIJR5as) (Introducción a AWS Elastic Disaster Recovery \$1 Amazon Web Services) 

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Disaster Recovery](https://wellarchitectedlabs.com/reliability/disaster-recovery/) - Series of workshops illustrating DR strategies (Laboratorio de Well-Architected: Recuperación de desastres: serie de talleres que ilustran las estrategias de DR) 

# REL13-BP03 Probar la implementación de recuperación de desastres para validarla
<a name="rel_planning_for_recovery_dr_tested"></a>

Compruebe periódicamente la conmutación por error a su sitio de recuperación para verificar que funcione adecuadamente y que se cumplan el RTO y el RPO.

 **Antipatrones usuales:** 
+  No llevar a cabo nunca conmutaciones por error en producción. 

 **Beneficios de establecer esta práctica recomendada:** las pruebas periódicas del plan de recuperación de desastres verifican que el plan funcione cuando llegue el momento y que su equipo sepa cómo ejecutar la estrategia. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Un patrón que debe evitarse es el desarrollo de rutas de recuperación que se pongan en práctica pocas veces. Por ejemplo, puede tener un almacén de datos secundario que se utilice para consultas de solo lectura. Cuando escribe en un almacén de datos y el almacén principal falla, es posible que quiera conmutar por error al almacén de datos secundario. Si no se prueba frecuentemente esta conmutación por error, es posible que sus suposiciones sobre las capacidades del almacén de datos secundario sean incorrectas. Es posible que la capacidad del almacén de datos secundario, que quizás fuera suficiente cuando se probó por última vez, ya no pueda tolerar la carga en esta situación. Nuestra experiencia ha demostrado que la única forma de recuperación de errores que funciona es aquella que prueba constantemente. Por ello, es mejor tener un número reducido de rutas de recuperación. Puede establecer patrones de recuperación y probarlos con frecuencia. Si tiene una ruta de recuperación compleja o crítica, todavía debe llevar a efecto ese error en producción periódicamente para asegurarse de que la ruta funcione. En el ejemplo que acabamos de comentar, se debe conmutar por error al modo de espera con regularidad, sin importar si es necesario. 

 **Pasos para la implementación** 

1.  Diseñe sus cargas de trabajo para que se puedan recuperar. Pruebe regularmente sus rutas de recuperación. La computación orientada a la recuperación identifica las características de los sistemas que mejoran la recuperación: aislamiento y redundancia, capacidad en todo el sistema para revertir los cambios, capacidad para supervisar y determinar el estado, capacidad para proporcionar diagnósticos, recuperación automatizada, diseño modular y capacidad para reiniciar. Ponga en práctica la ruta de recuperación para verificar que pueda cumplir la recuperación en el tiempo especificado para el estado especificado. Use sus runbooks durante esta recuperación para documentar los problemas y encontrar soluciones para ellos antes de la próxima prueba. 

1. Para cargas de trabajo basadas en Amazon EC2, utilice [AWS Elastic Disaster Recovery](https://docs.aws.amazon.com/drs/latest/userguide/what-is-drs.html) para implementar y lanzar instancias de simulacro para su estrategia de recuperación de desastres. AWS Elastic Disaster Recovery ofrece la posibilidad de ejecutar simulacros de manera eficiente, lo que le ayuda a prepararse para un evento de conmutación por error. También puede lanzar con frecuencia sus instancias mediante Elastic Disaster Recovery para realizar pruebas y simulacros sin redirigir el tráfico.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudar con la recuperación de desastres](https://aws.amazon.com/partners/find/results/?keyword=Disaster+Recovery) 
+  [AWS Architecture Blog: Disaster Recovery Series](https://aws.amazon.com/blogs/architecture/tag/disaster-recovery-series/) (Blog de arquitectura de AWS: serie de recuperación de desastres) 
+  [AWS Marketplace: products that can be used for disaster recovery](https://aws.amazon.com/marketplace/search/results?searchTerms=Disaster+recovery) (AWS Marketplace: productos que pueden usarse para la recuperación de desastres) 
+  [AWS Elastic Disaster Recovery](https://aws.amazon.com/disaster-recovery/) 
+  [Disaster Recovery of Workloads on AWS: Recovery in the Cloud (Recuperación de cargas de trabajo en caso de desastre en AWS: Recuperación en la nube) (documento técnico de AWS)](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-workloads-on-aws.html) 
+  [AWS Elastic Disaster Recovery Preparing for Failover](https://docs.aws.amazon.com/drs/latest/userguide/failback-preparing.html) (AWS Elastic Disaster Recovery: Preparación para la conmutación por error) 
+  [Proyecto de informática orientada a la recuperación de Berkeley/Stanford](http://roc.cs.berkeley.edu/) 
+  [¿Qué es AWS Fault Injection Simulator?](https://docs.aws.amazon.com/fis/latest/userguide/what-is.html) 

 **Vídeos relacionados: ** 
+  [AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications](https://youtu.be/2e29I3dA8o4) (AWS re:Invent 2018: Patrones de arquitectura para aplicaciones activas-activas en varias regiones) 
+  [AWS re:Invent 2019: Backup-and-restore and disaster-recovery solutions with AWS](https://youtu.be/7gNXfo5HZN8) (AWS re:Invent 2019: Copia de seguridad y restauración y soluciones de recuperación de desastres con AWS) 

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Testing for Resiliency](https://wellarchitectedlabs.com/reliability/300_labs/300_testing_for_resiliency_of_ec2_rds_and_s3/) (Laboratorio de Well-Architected: Prueba de resiliencia) 

# REL13-BP04 Administrar la desviación de la configuración en el sitio de o en la región de recuperación de desastres
<a name="rel_planning_for_recovery_config_drift"></a>

 Asegúrese de que la infraestructura, los datos y la configuración estén cuando se necesiten en el sitio o región de DR. Por ejemplo, compruebe que las AMI y las cuotas de servicio están actualizadas. 

 AWS Config supervisa y registra continuamente las configuraciones de sus recursos de AWS. Puede detectar la desviación y desencadenar [Automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) para solucionarlo y generar alarmas. Además, AWS CloudFormation puede detectar la desviación en las pilas que ha desplegado. 

 **Patrones de uso no recomendados comunes:** 
+  No realizar actualizaciones en sus ubicaciones de recuperación, cuando realice cambios de configuración o de infraestructura en sus ubicaciones primarias. 
+  No considerar las posibles limitaciones (como las diferencias en los servicios) en las ubicaciones principales y de recuperación. 

 **Beneficios de establecer esta práctica recomendada:** Comprobar que su entorno de DR es coherente con el entorno existente garantiza una recuperación completa. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Asegúrese de que sus canalizaciones de entrega realizan la entrega tanto al sitio principal como al de copia de seguridad. Las canalizaciones de entrega para implementar aplicaciones en producción deben distribuir la entrega a todas las ubicaciones de la estrategia de recuperación de desastres especificadas, incluidos los entornos de desarrollo y pruebas. 
+  Habilite AWS Config para realizar un seguimiento de las posibles ubicaciones con desviaciones. Use reglas de AWS Config para crear sistemas que apliquen sus estrategias de recuperación de desastres y creen alertas si detectan divergencias. 
  +  [Corrección de recursos de AWS disconformes con Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/remediation.html) 
  +  [Automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
+  Use AWS CloudFormation para desplegar su infraestructura. AWS CloudFormation puede detectar la desviación entre lo que especifican sus plantillas de CloudFormation y lo que realmente está desplegado. 
  +  [AWS CloudFormation: detectar desviaciones en una pila completa de CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/detect-drift-stack.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudar con la recuperación de desastres](https://aws.amazon.com/partners/find/results/?keyword=Disaster+Recovery) 
+  [Blog de arquitectura de AWS: serie de recuperación de desastres](https://aws.amazon.com/blogs/architecture/tag/disaster-recovery-series/) 
+  [AWS CloudFormation: detectar desviaciones en una pila completa de CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/detect-drift-stack.html) 
+  [AWS Marketplace: productos que pueden usarse para la recuperación de desastres](https://aws.amazon.com/marketplace/search/results?searchTerms=Disaster+recovery) 
+  [Automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
+  [Recuperación de desastres de las cargas de trabajo en AWS: recuperación en la nube (documento técnico de AWS)](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-workloads-on-aws.html) 
+  [¿Cómo implemento una solución de administración de la configuración de la infraestructura en AWS?](https://aws.amazon.com/answers/configuration-management/aws-infrastructure-configuration-management/?ref=wellarchitected) 
+  [Corrección de recursos de AWS disconformes con Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/remediation.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2018: Architecture Patterns for Multi-Region Active-Active Applications (Patrones de arquitectura para aplicaciones activas-activas en varias regiones) (ARC209-R2)](https://youtu.be/2e29I3dA8o4) 

# REL13-BP05 Automatizar la recuperación
<a name="rel_planning_for_recovery_auto_recovery"></a>

 Use AWS o herramientas de terceros para automatizar la recuperación del sistema y dirigir el tráfico al sitio o región de DR. 

 En función de las comprobaciones de estado configuradas, los servicios de AWS, como Elastic Load Balancing y AWS Auto Scaling, pueden distribuir la carga a zonas de disponibilidad en buen estado mientras que los servicios, como Amazon Route 53 y AWS Global Accelerator, pueden dirigir la carga a Regiones de AWS en buen estado. Amazon Route 53 Application Recovery Controller le ayuda a administrar y coordinar la conmutación por error mediante comprobaciones de idoneidad y funciones de control de enrutamiento. Estas características supervisan continuamente la capacidad de la aplicación de recuperarse de los errores, de modo que pueda controlar la recuperación de la aplicación en las distintas Regiones de AWS, zonas de disponibilidad y localmente. 

 Para cargas de trabajo en centros de datos físicos o virtuales existentes o nubes privadas, [AWS Elastic Disaster Recovery](https://aws.amazon.com/cloudendure-disaster-recovery/), disponible en AWS Marketplace, permite a las organizaciones configurar una estrategia de recuperación de desastres automatizada en AWS. CloudEndure también admite la recuperación de desastres entre regiones o AZ en AWS. 

 **Antipatrones usuales:** 
+  La implementación de técnicas de conmutación por error y de conmutación por recuperación idénticas puede producir una alteración cuando surge un error. 

 **Beneficios de establecer esta práctica recomendada:** La recuperación automatizada reduce el tiempo de recuperación al eliminar la posibilidad de que se produzcan errores manuales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Automatice las rutas de recuperación. Para tiempos de recuperación cortos, las decisiones y las acciones humanas no pueden usarse para escenarios de alta disponibilidad. El sistema debe recuperarse automáticamente en cada situación. 
  +  Use la recuperación de desastres de Cloudendure para la conmutación por error y la restauración tras error automatizadas. La recuperación de desastres de CloudEndure replica continuamente las máquinas (incluido el sistema operativo, la configuración de estado del sistema, las bases de datos, las aplicaciones y los archivos) en un área de ensayo de bajo costo en su Cuenta de AWS de destino y región preferida. En caso de desastre, puede indicar a CloudEndure Disaster Recovery que lance automáticamente miles de máquinas en su estado aprovisionado completo en solo unos minutos. 
    +  [Realizar la conmutación por error y la conmutación por recuperación de recuperación de desastres](https://docs.cloudendure.com/Content/Configuring_and_Running_Disaster_Recovery/Performing_a_Disaster_Recovery_Failover/Performing_a_Disaster_Recovery_Failover.htm) 
    +  [CloudEndure Disaster Recovery](https://aws.amazon.com/cloudendure-disaster-recovery/) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Socio de APN: socios que pueden ayudar con la recuperación de desastres](https://aws.amazon.com/partners/find/results/?keyword=Disaster+Recovery) 
+  [Blog de arquitectura de AWS: serie de recuperación de desastres](https://aws.amazon.com/blogs/architecture/tag/disaster-recovery-series/) 
+  [AWS Marketplace: productos que pueden usarse para la recuperación de desastres](https://aws.amazon.com/marketplace/search/results?searchTerms=Disaster+recovery) 
+  [AWS Systems Manager Automation](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html) 
+  [Recuperación de desastres de CloudEndure en AWS](https://aws.amazon.com/marketplace/pp/B07XQNF22L) 
+  [Recuperación de desastres de las cargas de trabajo en AWS: recuperación en la nube (documento técnico de AWS)](https://docs.aws.amazon.com/whitepapers/latest/disaster-recovery-workloads-on-aws/disaster-recovery-workloads-on-aws.html) 

 **Videos relacionados:** 
+  [AWS re:Invent 2018: Patrones de arquitectura para aplicaciones activas-activas en varias regiones (ARC209-R2)](https://youtu.be/2e29I3dA8o4) 

# Eficiencia del rendimiento
<a name="a-performance-efficiency"></a>

El pilar de eficiencia del rendimiento incluye la capacidad de utilizar de forma eficaz los recursos de computación para satisfacer los requisitos del sistema, así como el mantenimiento de esta eficiencia a medida que la demanda cambia y las tecnologías evolucionan. Encontrará una guía prescriptiva de implementación en el [documento técnico Pilar de eficiencia del rendimiento](https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/welcome.html?ref=wellarchitected-wp).

**Topics**
+ [Selección](a-selection.md)
+ [Efectúe la revisión.](a-review.md)
+ [Monitoreo](a-monitoring.md)
+ [Compensaciones](a-tradeoffs.md)

# Selección
<a name="a-selection"></a>

**Topics**
+ [PERF 1: ¿Cómo selecciona la arquitectura con el mejor rendimiento?](perf-01.md)
+ [PERF 2: ¿Cómo selecciona su solución de computación?](perf-02.md)
+ [PERF 3: ¿Cómo selecciona su solución de almacenamiento?](perf-03.md)
+ [PERF 4: ¿Cómo selecciona una solución de base de datos?](perf-04.md)
+ [PERF 5: ¿Cómo configura la solución de red?](perf-05.md)

# PERF 1: ¿Cómo selecciona la arquitectura con el mejor rendimiento?
<a name="perf-01"></a>

 A menudo, se requieren varios enfoques para obtener un rendimiento óptimo en una carga de trabajo. Los sistemas de buena arquitectura utilizan varias soluciones y características para mejorar el rendimiento. 

**Topics**
+ [PERF01-BP01 Comprender los servicios y recursos disponibles](perf_performing_architecture_evaluate_resources.md)
+ [PERF01-BP02 Definir un proceso para las opciones de arquitectura](perf_performing_architecture_process.md)
+ [PERF01-BP03 Tener en cuenta los requisitos de costes en las decisiones](perf_performing_architecture_cost.md)
+ [PERF01-BP04 Usar políticas o arquitecturas de referencia](perf_performing_architecture_use_policies.md)
+ [PERF01-BP05 Utilizar la orientación del proveedor de la nube o de un socio adecuado](perf_performing_architecture_external_guidance.md)
+ [PERF01-BP06 Realizar pruebas comparativas de las cargas de trabajo existentes](perf_performing_architecture_benchmark.md)
+ [PERF01-BP07 Realizar pruebas de la carga de trabajo](perf_performing_architecture_load_test.md)

# PERF01-BP01 Comprender los servicios y recursos disponibles
<a name="perf_performing_architecture_evaluate_resources"></a>

 Conozca y entienda la amplia gama de servicios y recursos disponibles en la nube. Identifique los servicios y opciones de configuración relevantes para su carga de trabajo y entienda cómo lograr un rendimiento óptimo. 

 Si está evaluando una carga de trabajo existente, debe generar un inventario de los distintos recursos de servicios que consume. Su inventario le ayuda a evaluar qué componentes se pueden sustituir por servicios administrados y tecnologías más nuevas. 

 **Patrones de uso no recomendados comunes:** 
+  Utiliza la nube como un centro de datos coubicado. 
+  Utiliza el almacenamiento compartido para todos los elementos que necesitan un almacenamiento persistente. 
+  No utiliza el escalado automático. 
+  Utiliza los tipos de instancia que más se acercan, pero más grandes cuando es necesario, a sus estándares actuales. 
+  Despliega y administra tecnologías que están disponibles como servicios administrados. 

 **Beneficios de establecer esta práctica recomendada:** Si tiene en cuenta los servicios con los que puede no estar familiarizado, podrá reducir en gran medida el coste de la infraestructura y el esfuerzo necesario para mantener los servicios. Puede acelerar su tiempo de comercialización mediante el despliegue de nuevos servicios y características. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="perf01-bp01-implementation-guidance"></a>

 Haga un inventario de su carga de trabajo de software y arquitectura para los servicios relacionados: realice un inventario de su carga de trabajo y decida qué categoría de productos debe conocer más. Identifique los componentes de la carga de trabajo que se pueden reemplazar por servicios administrados para aumentar el rendimiento y reducir la complejidad operativa. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) 
+  [AWS Partner Network](https://aws.amazon.com/partners/) 
+  [Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) 
+  [Centro de conocimientos de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (Presentación de Amazon Builders' Library) (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [This is my Architecture](https://aws.amazon.com/architecture/this-is-my-architecture/) 

 **Ejemplos relacionados:** 
+  [Ejemplos de AWS](https://github.com/aws-samples) 
+  [Ejemplos del SDK de AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 

# PERF01-BP02 Definir un proceso para las opciones de arquitectura
<a name="perf_performing_architecture_process"></a>

 Usar la experiencia y los conocimientos internos de la nube o usar recursos externos, como los casos de uso publicados, la documentación pertinente o los documentos técnicos para definir un proceso de selección de recursos y servicios. Debe definir un proceso que fomente la experimentación y la evaluación comparativa con los servicios que podrían utilizarse en su carga de trabajo. 

 Cuando escriba historias de usuario cruciales para su arquitectura, debe incluir requisitos de rendimiento, como especificar la velocidad a la que debe ejecutarse cada historia crucial. Para estas historias cruciales, debe implementar trayectos de usuario con scripts adicionales para asegurarse de tener visibilidad sobre cómo estas historias funcionan según sus requisitos. 

 **Patrones de uso no recomendados comunes:** 
+  Asume que su arquitectura actual será estática y no se actualizará con el tiempo. 
+  Se introducen cambios en la arquitectura a lo largo del tiempo sin justificación. 

 **Beneficios de establecer esta práctica recomendada:** Al tener un proceso definido para realizar cambios en la arquitectura, permite utilizar los datos recopilados para influir en el diseño de la carga de trabajo a lo largo del tiempo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Seleccionar un enfoque arquitectónico: identifique el tipo de arquitectura que satisfaga sus requisitos de rendimiento. Identifique las restricciones como los medios de entrega (escritorio, web, móvil e IoT), los requisitos de legado y las integraciones. Identifique las oportunidades de reutilización, incluida la refactorización. Consulte a otros equipos, diagramas de arquitectura y los recursos como los arquitectos de soluciones de AWS, las arquitecturas de referencia de AWS y los socios de AWS para que le ayuden a elegir una arquitectura. 

 Definir los requisitos de rendimiento: utilice la experiencia del cliente para identificar las métricas más importantes. Para cada medida, identificar el objetivo, el enfoque de la medida y la prioridad. Defina la experiencia del cliente. Documentar la experiencia de rendimiento requerida por los clientes, incluyendo cómo los clientes juzgarán el rendimiento de la carga de trabajo. Priorice las preocupaciones de la experiencia para las historias de usuario cruciales. Incluya los requisitos de rendimiento e implemente viajes de usuarios con scripts para asegurarse de que sabe cómo se comportan las historias con respecto a sus requisitos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) 
+  [AWS Partner Network](https://aws.amazon.com/partners/) 
+  [Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) 
+  [Centro de conocimiento de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [This is my Architecture](https://aws.amazon.com/architecture/this-is-my-architecture/) 

 **Ejemplos relacionados:** 
+  [Ejemplos de AWS](https://github.com/aws-samples) 
+  [Ejemplos de SDK de AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 

# PERF01-BP03 Tener en cuenta los requisitos de costes en las decisiones
<a name="perf_performing_architecture_cost"></a>

 Las cargas de trabajo suelen tener requisitos de coste para su funcionamiento. Utilizar los controles de costes internos para seleccionar los tipos y tamaños de recursos en función de las necesidades de recursos previstas. 

 Determine qué componentes de la carga de trabajo podrían sustituirse por servicios totalmente administrados, como bases de datos administradas, cachés en memoria y servicios ETL. La reducción de la carga de trabajo operativa le permite centrar los recursos en los resultados empresariales. 

 Para conocer las prácticas recomendadas en materia de requisitos de costes, consulte la sección de *Recursos rentables* del [documento técnico Pilar de optimización de costes](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/welcome.html). 

 **Antipatrones usuales:** 
+  Solo utiliza una familia de instancias. 
+  No evalúa las soluciones con licencia frente a las de código abierto 
+  Solo utiliza el almacenamiento de bloques. 
+  Despliega software común en instancias de EC2 y Amazon EBS o volúmenes efímeros que están disponibles como servicio administrado. 

 **Beneficios de establecer esta práctica recomendada:** Tener en cuenta el coste a la hora de hacer sus selecciones le posibilitará otras inversiones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Optimizar los componentes de la carga de trabajo para reducir los costes: dimensione correctamente los componentes de la carga de trabajo y permita la elasticidad para reducir el coste y maximizar la eficiencia de los componentes. Determine qué componentes de la carga de trabajo pueden sustituirse por servicios administrados cuando corresponda, como bases de datos administradas, cachés en memoria y proxies inversos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) 
+  [AWS Partner Network](https://aws.amazon.com/partners/) 
+  [Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) 
+  [Centro de conocimientos de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 
+  [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [This is my Architecture](https://aws.amazon.com/architecture/this-is-my-architecture/) 
+  [Optimize performance and cost for your AWS compute (CMP323-R1) ](https://www.youtube.com/watch?v=zt6jYJLK8sg&ref=wellarchitected) 

 **Ejemplos relacionados:** 
+  [Ejemplos de AWS](https://github.com/aws-samples) 
+  [Ejemplos de SDK de AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 
+  [Redimensionamiento con Compute Optimizer y utilización de la memoria habilitada](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) 
+  [Código de demostración de AWS Compute Optimizer](https://github.com/awslabs/ec2-spot-labs/tree/master/aws-compute-optimizer) 

# PERF01-BP04 Usar políticas o arquitecturas de referencia
<a name="perf_performing_architecture_use_policies"></a>

 Maximice el rendimiento y la eficiencia evaluando las políticas internas y las arquitecturas de referencia existentes y utilizando su análisis para seleccionar servicios y configuraciones para su carga de trabajo. 

 **Patrones de uso no recomendados comunes:** 
+  Permite un amplio uso de la selección tecnológica que puede repercutir en los gastos generales de gestión de su empresa. 

 **Beneficios de establecer esta práctica recomendada:** Establecer una política para la elección de la arquitectura, la tecnología y el proveedor permitirá tomar decisiones rápidamente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Desplegar la carga de trabajo utilizando las políticas existentes o las arquitecturas de referencia: integre los servicios en su despliegue en la nube y, a continuación, utilice sus pruebas de rendimiento para asegurarse de que puede seguir cumpliendo sus requisitos de rendimiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) 
+  [AWS Partner Network](https://aws.amazon.com/partners/) 
+  [Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) 
+  [Centro de conocimiento de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [This is my Architecture](https://aws.amazon.com/architecture/this-is-my-architecture/) 

 **Ejemplos relacionados:** 
+  [Ejemplos de AWS](https://github.com/aws-samples) 
+  [Ejemplos de SDK de AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 

# PERF01-BP05 Utilizar la orientación del proveedor de la nube o de un socio adecuado
<a name="perf_performing_architecture_external_guidance"></a>

 Utilice los recursos de la empresa de la nube, como los arquitectos de soluciones, los servicios profesionales o un socio adecuado para orientar sus decisiones. Estos recursos pueden ayudar a revisar y mejorar su arquitectura para obtener un rendimiento óptimo. 

 Solicite ayuda a AWS cuando necesite orientación adicional o información sobre el producto. Los arquitectos de soluciones de AWS y [los servicios profesionales de AWS](https://aws.amazon.com/professional-services/) proporcionan orientación para la aplicación de la solución. [Los socios de AWS](https://aws.amazon.com/partners/) proporcionan conocimientos de AWS para ayudarle a desbloquear la agilidad y la innovación para su negocio. 

 **Antipatrones usuales:** 
+  Utiliza AWS como un proveedor de centro de datos común. 
+  Utiliza los servicios de AWS de una manera para la que no fueron diseñados. 

 **Beneficios de establecer esta práctica recomendada:** Consultar con su proveedor o con un socio le dará confianza en sus decisiones. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Recurra a los recursos de AWS para obtener ayuda: los arquitectos de soluciones y los servicios profesionales de AWS ofrecen orientación para la implementación de soluciones. Los socios de APN proporcionan conocimientos de AWS para ayudarle a desbloquear la agilidad y la innovación para su negocio. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) 
+  [AWS Partner Network](https://aws.amazon.com/partners/) 
+  [Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) 
+  [Centro de conocimiento de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [This is my Architecture](https://aws.amazon.com/architecture/this-is-my-architecture/) 

 **Ejemplos relacionados:** 
+  [Ejemplos de AWS](https://github.com/aws-samples) 
+  [Ejemplos de SDK de AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 

# PERF01-BP06 Realizar pruebas comparativas de las cargas de trabajo existentes
<a name="perf_performing_architecture_benchmark"></a>

 Realice pruebas comparativas del rendimiento de una carga de trabajo existente para entender cómo se rinde en la nube. Utilice los datos recogidos de pruebas comparativas para impulsar las decisiones arquitectónicas. 

 Utilice la evaluación comparativa con pruebas sintéticas y la supervisión de usuarios reales para generar datos sobre el rendimiento de los componentes de su carga de trabajo. Los puntos de referencia son generalmente más rápidos de configurar que las pruebas de carga y se utilizan para evaluar la tecnología para un componente en particular. Los puntos de referencia suelen usarse al inicio de un proyecto nuevo, cuando se carece de una solución completa para la prueba de carga. 

 Puede diseñar sus propias pruebas de puntos de referencia personalizadas o bien, usar un estándar industrial, como [TPC-DS](http://www.tpc.org/tpcds/) para evaluar sus cargas de trabajo de almacenamiento de datos. Los puntos de referencia industriales son útiles cuando se comparan entornos. Los puntos de referencia personalizados son útiles para encontrar tipos específicos de operaciones que espera realizar en su arquitectura. 

 Con los puntos de referencia, es importante realizar los preparativos necesarios en su entorno de prueba para asegurarse de obtener resultados válidos. Ejecute el mismo punto de referencia muchas veces para asegurarse de detectar cualquier diferencia que haya podido surgir a lo largo del tiempo. 

 Debido a que los puntos de referencia generalmente se ejecutan más rápido que las pruebas de carga, pueden usarse antes en la canalización de implementación para entregar una retroalimentación sobre las desviaciones del rendimiento con más rapidez. Cuando evalúa un cambio significante en un componente o servicio, un punto de referencia puede ser un método rápido para ver si puede justificar el esfuerzo para hacer el cambio. El uso de la evaluación comparativa junto con las pruebas de carga es importante porque las pruebas de carga le informan sobre el rendimiento de su carga de trabajo en producción. 

 **Patrones de uso no recomendados comunes:** 
+  Se basa en puntos de referencia comunes que no son indicativos de las características de su carga de trabajo. 
+  Confía en las opiniones y percepciones de los clientes como único punto de referencia. 

 **Beneficios de establecer esta práctica recomendada:** El estudio comparativo de su aplicación actual le permite medir la mejora del rendimiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Supervisar el rendimiento durante el desarrollo: implemente procesos que proporcionen visibilidad sobre el rendimiento a medida que evolucione la carga de trabajo. 

 Integrar en su canalización de distribución: ejecute automáticamente las pruebas de carga en su canal de distribución. Compare los resultados de las pruebas con los indicadores clave de rendimiento (KPI) y los umbrales predefinidos para asegurarse de que sigue cumpliendo los requisitos de rendimiento. 

 Prueba de los viajes de usuarios: use versiones sintéticas o sanitizadas de datos de producción (elimine la información sensible o identificante) para las pruebas de carga. Implemente toda su arquitectura utilizando viajes de usuario reproducidos o preprogramados a través de su aplicación a escala. 

 Supervisión de usuarios reales: utilice CloudWatch RUM como ayuda para recopilar y visualizar datos del lado del cliente sobre el rendimiento de su aplicación. Utilice estos datos para ayudar a establecer sus puntos de referencia de rendimiento de los usuarios reales. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) 
+  [AWS Partner Network](https://aws.amazon.com/partners/) 
+  [Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) 
+  [Centro de conocimiento de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [This is my Architecture](https://aws.amazon.com/architecture/this-is-my-architecture/) 
+  [Optimizar aplicaciones a través de Amazon CloudWatch RUM](https://www.youtube.com/watch?v=NMaeujY9A9Y) 
+  [Demostración de Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **Ejemplos relacionados:** 
+  [Ejemplos de AWS](https://github.com/aws-samples) 
+  [Ejemplos de SDK de AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 
+  [Pruebas de carga distribuida](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 
+  [Mida el tiempo de carga de la página con Amazon CloudWatch Synthetics](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Cliente web de Amazon CloudWatch RUM](https://github.com/aws-observability/aws-rum-web) 

# PERF01-BP07 Realizar pruebas de la carga de trabajo
<a name="perf_performing_architecture_load_test"></a>

 Despliegue su arquitectura de carga de trabajo más reciente en la nube mediante diferentes tipos y tamaños de recursos. Supervise el despliegue para captar las métricas de rendimiento que identifiquen los cuellos de botella o el exceso de capacidad. Utilice esta información sobre el rendimiento para diseñar o mejorar su arquitectura y la selección de recursos. 

 Las pruebas de carga usan su carga de trabajo *real* para que pueda ver el rendimiento de la solución en un entorno de producción. Las pruebas de carga se deben ejecutar con versiones sintéticas o saneadas de datos de producción (elimine la información confidencial o de identificación). Utilice procesos de usuario reproducidos o preprogramados a través de su carga de trabajo a escala que ejerciten toda su arquitectura. Realice automáticamente pruebas de carga como parte de su canalización de entregas y compare los resultados con los KPI y los umbrales predefinidos. De esta forma se garantiza que siga alcanzando el rendimiento requerido. 

 **Patrones de uso no recomendados comunes:** 
+  Realiza pruebas de carga de partes individuales de su carga de trabajo, pero no de toda. 
+  Realiza pruebas de carga en una infraestructura que no es la misma que su entorno de producción. 
+  Solo realiza pruebas de carga hasta su carga prevista y no más allá, para ayudar a prever dónde puede tener problemas en el futuro. 
+  Realizar pruebas de carga sin informar a AWS Support y que su prueba no se supere ya que parece un evento de denegación de servicio. 

 **Beneficios de establecer esta práctica recomendada:** La medición de su rendimiento en una prueba de carga le mostrará dónde se verá afectado a medida que aumente la carga. Esto puede proporcionarle la capacidad de prever los cambios necesarios antes de que afecten a su carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Valide su enfoque con pruebas de carga: realice pruebas de carga de una prueba de concepto para descubrir si cumple sus requisitos de rendimiento. Puede usar los servicios de AWS para ejecutar entornos a escala de producción y poner a prueba su arquitectura. Como solo paga por el entorno de prueba cuando es necesario, puede llevar a cabo pruebas a escala completa a una fracción del coste que tiene usar el entorno local. 

 Supervise las métricas: Amazon CloudWatch puede recopilar métricas entre los recursos de su arquitectura. También puede recopilar y publicar métricas del cliente para negocios de superficie o métricas derivadas. Utilice CloudWatch o soluciones de terceros para establecer alarmas que indiquen cuándo se superan los umbrales. 

 Realice pruebas a escala: las pruebas de carga usan su carga de trabajo real para que pueda ver el rendimiento de la solución en un entorno de producción. Puede usar los servicios de AWS para ejecutar entornos a escala de producción y poner a prueba su arquitectura. Como solo paga por el entorno de prueba cuando es necesario, puede ejecutar pruebas a escala completa con un coste menor que usar un entorno local. Aproveche Nube de AWS para probar su carga de trabajo y descubrir dónde no realiza el escalado o si desescala horizontalmente de manera no lineal. Por ejemplo, utilice Spot Instances para generar cargas a bajo costo y descubrir obstáculos antes que se experimenten en la producción 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
+  [Building AWS CloudFormation Templates using CloudFormer (Creación de plantillas de AWS CloudFormation con CloudFormer)](https://aws.amazon.com/blogs/devops/building-aws-cloudformation-templates-using-cloudformer/) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [Pruebas de carga distribuida en AWS](https://docs.aws.amazon.com/solutions/latest/distributed-load-testing-on-aws/welcome.html) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (Presentación de Amazon Builders' Library) (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [Optimize applications through Amazon CloudWatch RUM (Optimizar aplicaciones a través de Amazon CloudWatch RUM)](https://www.youtube.com/watch?v=NMaeujY9A9Y) 
+  [Demostración de Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **Ejemplos relacionados:** 
+  [Pruebas de carga distribuida en AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 

# PERF 2: ¿Cómo selecciona su solución de computación?
<a name="perf-02"></a>

La solución de computación óptima para cada carga de trabajo depende del diseño de las aplicaciones, de los patrones de uso y de las opciones de configuración. Las arquitecturas pueden usar diferentes soluciones de informática para varios componentes y habilitar diferentes funciones que mejoren el rendimiento. Seleccione las soluciones de informática incorrectas para una arquitectura puede disminuir la eficiencia del rendimiento.

**Topics**
+ [PERF02-BP01 Evaluar las opciones de computación disponibles](perf_select_compute_evaluate_options.md)
+ [PERF02-BP02 Comprender las opciones de configuración informática disponibles](perf_select_compute_config_options.md)
+ [PERF02-BP03 Recopilar métricas relacionadas con la computación](perf_select_compute_collect_metrics.md)
+ [PERF02-BP04 Determinar la configuración necesaria mediante el redimensionamiento correcto](perf_select_compute_right_sizing.md)
+ [PERF02-BP05 Usar la elasticidad de recursos disponible](perf_select_compute_elasticity.md)
+ [PERF02-BP06 Evaluar constantemente las necesidades de computación según las métricas](perf_select_compute_use_metrics.md)

# PERF02-BP01 Evaluar las opciones de computación disponibles
<a name="perf_select_compute_evaluate_options"></a>

 Entienda cómo su carga de trabajo puede beneficiarse del uso de diferentes opciones de computación, como instancias, contenedores y funciones. 

 **Resultado deseado:** al conocer todas las opciones de computación disponibles, será consciente de las oportunidades de aumentar el rendimiento, reducir los costes de infraestructura innecesarios y disminuir el esfuerzo operativo necesario para mantener su carga de trabajo. También puede acelerar el tiempo de comercialización al desplegar nuevos servicios y características. 

 **Patrones de uso no recomendados comunes:** 
+  En una carga de trabajo posterior a la migración, se utiliza la misma solución de computación que se utilizaba localmente. 
+  Falta de conocimiento de las soluciones de computación en la nube y de cómo esas soluciones podrían mejorar su rendimiento de computación. 
+  Sobredimensionar una solución de computación existente para cumplir los requisitos de escalado o rendimiento, cuando una solución de computación alternativa se ajustaría a las características de su carga de trabajo con mayor precisión. 

 **Beneficios de establecer esta práctica recomendada:** Al identificar los requisitos de computación y evaluar las soluciones de computación disponibles, las partes interesadas de la empresa y los equipos de ingeniería comprenderán los beneficios y las limitaciones de utilizar la solución de computación seleccionada. La solución de computación seleccionada debe ajustarse a los criterios de rendimiento de la carga de trabajo. Los criterios clave incluyen las necesidades de procesamiento, los patrones de tráfico, los patrones de acceso a los datos, las necesidades de escalado y los requisitos de latencia. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Comprenda las soluciones de virtualización, creación de contenedores y administración que pueden beneficiar a su carga de trabajo y satisfacer sus requisitos de rendimiento. Una carga de trabajo puede contener varios tipos de soluciones de computación. Cada solución de computación tiene características diferentes. En función de los requisitos de escalado y computación de su carga de trabajo, se puede seleccionar y configurar una solución de computación que satisfaga sus necesidades. El arquitecto de la nube debe conocer las ventajas y desventajas de las instancias, los contenedores y las funciones. Los siguientes pasos le ayudarán a seleccionar su solución de computación para que se ajuste a las características de su carga de trabajo y a sus requisitos de rendimiento. 


|  **Tipo**  |  **Servidor**  |  **Contenedores**  |  **Función**  | 
| --- | --- | --- | --- | 
|  Servicio de AWS  |  Amazon Elastic Compute Cloud (Amazon EC2)  |  Amazon Elastic Container Service (Amazon ECS), Amazon Elastic Kubernetes Service (Amazon EKS)  |  AWS Lambda  | 
|  Características clave  |  Tiene una opción dedicada a los requisitos de licencia de hardware, opciones de ubicación y una gran selección de diferentes familias de instancias basadas en métricas de computación  |  Fácil despliegue, entornos coherentes, se ejecuta sobre instancias EC2, escalable  |  Tiempo de ejecución breve (15 minutos como máximo), la memoria y la CPU máximas no son tan elevadas como las de otros servicios, capa de hardware administrada, escala a millones de solicitudes simultáneas  | 
|  Casos de uso comunes  |  Migraciones mediante «lift-and-shift», aplicación monolítica, entornos híbridos, aplicaciones empresariales  |  Microservicios, entornos híbridos  |  Microservicios, aplicaciones basadas en eventos  | 

 

 **Pasos de implementación:** 

1.  Seleccione la ubicación de donde debe encontrarse la solución de computación mediante la evaluación de [PERF05-BP06 Elegir la ubicación de la carga de trabajo en función de los requisitos de la red](perf_select_network_location.md). Esta ubicación limitará los tipos de solución de computación a su disposición. 

1.  Identifique el tipo de solución de computación que funciona con el requisito de ubicación y los requisitos de la aplicación  

   1.  [https://aws.amazon.com/ec2/](https://aws.amazon.com/ec2/) Las instancias de servidor virtual se presentan en una amplia variedad de familias y tamaños diferentes. Ofrecen una amplia variedad de capacidades, incluidas unidades de estado sólido (SSD) y unidades de procesamiento gráfico (GPU). Las instancias EC2 ofrecen la mayor flexibilidad en la elección de instancias. Cuando lanza una instancia EC2, el tipo de instancia que especifique determina el hardware de su instancia. Cada tipo de instancia ofrece diferentes capacidades informáticas, de memoria y de almacenamiento. Los tipos de instancia se agrupan en familias de instancias basadas en dichas capacidades. Los casos de uso típicos incluyen: ejecución de aplicaciones empresariales, computación de alto rendimiento (HPC), entrenamiento y despliegue de aplicaciones de machine learning y ejecución de aplicaciones nativas en la nube. 

   1.  [https://aws.amazon.com/ecs/](https://aws.amazon.com/ecs/) es un servicio completamente administrado de orquestación de contenedores que le permite ejecutar y administrar automáticamente contenedores en un clúster de instancias EC2 o instancias sin servidor mediante AWS Fargate. Puede utilizar Amazon ECS con otros servicios como Amazon Route 53, Secrets Manager, AWS Identity and Access Management (IAM) y Amazon CloudWatch. Se recomienda Amazon ECS si su aplicación está en contenedores y su equipo de ingeniería prefiere los contenedores Docker. 

   1.  [https://aws.amazon.com/eks/](https://aws.amazon.com/eks/) es un servicio Kubernetes completamente administrado. Puede optar por ejecutar sus clústeres EKS mediante AWS Fargate, lo que elimina la necesidad de aprovisionar y administrar servidores. La administración de Amazon EKS se simplifica gracias a las integraciones con servicios de AWS como Amazon CloudWatch, grupos de escalado automático, AWS Identity and Access Management (IAM) y Amazon Virtual Private Cloud (VPC). Al usar contenedores, debe utilizar las métricas de computación para seleccionar el tipo óptimo para su carga de trabajo, de forma similar a como utiliza las métricas de computación para seleccionar sus tipos de instancias EC2 o AWS Fargate. Se recomienda Amazon EKS si su aplicación está en contenedores y su equipo de ingeniería prefiere Kubernetes a los contenedores Docker. 

   1.  Puede usar [https://aws.amazon.com/lambda/](https://aws.amazon.com/lambda/) para ejecutar el código que admite las opciones de tiempo de ejecución, memoria y CPU permitidas. Simplemente suba el código y AWS Lambda administrará todo lo necesario para ejecutar y escalar ese código. Puede configurar el código para que se desencadene automáticamente desde otros servicios de AWS o llamarlo directamente. Se recomienda Lambda para arquitecturas de microservicios de corta duración desarrolladas para la nube.  

1.  Una vez que haya experimentado con su nueva solución de computación, planifique su migración y valide sus métricas de rendimiento. Es un proceso continuo; consulte [PERF02-BP04 Determinar la configuración necesaria mediante el redimensionamiento correcto](perf_select_compute_right_sizing.md). 

 **Nivel de esfuerzo para el plan de implementación:** Si una carga de trabajo se desplaza de una solución de computación a otra, podría haber un nivel de esfuerzo *moderado* implicado en la refactorización de la aplicación.   

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Computación en la nube con AWS ](https://aws.amazon.com/products/compute/?ref=wellarchitected) 
+  [Tipos de instancias EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html?ref=wellarchitected) 
+  [Control de los estados del procesador de la instancia EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/processor_state_control.html?ref=wellarchitected) 
+  [Contenedores de EKS: nodos de trabajo de EKS ](https://docs.aws.amazon.com/eks/latest/userguide/worker.html?ref=wellarchitected) 
+  [Contenedores de Amazon ECS: instancias de contenedor de Amazon ECS ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html?ref=wellarchitected) 
+  [Funciones: configuración de funciones de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html?ref=wellarchitected#function-configuration) 
+  [Recomendaciones de contenedores](https://aws.amazon.com/prescriptive-guidance/?apg-all-cards.sort-by=item.additionalFields.sortText&apg-all-cards.sort-order=desc&awsf.apg-new-filter=*all&awsf.apg-content-type-filter=*all&awsf.apg-code-filter=*all&awsf.apg-category-filter=categories%23containers&awsf.apg-rtype-filter=*all&awsf.apg-isv-filter=*all&awsf.apg-product-filter=*all&awsf.apg-env-filter=*all) 
+  [Recomendaciones de sistemas sin servidor](https://aws.amazon.com/prescriptive-guidance/?apg-all-cards.sort-by=item.additionalFields.sortText&apg-all-cards.sort-order=desc&awsf.apg-new-filter=*all&awsf.apg-content-type-filter=*all&awsf.apg-code-filter=*all&awsf.apg-category-filter=categories%23serverless&awsf.apg-rtype-filter=*all&awsf.apg-isv-filter=*all&awsf.apg-product-filter=*all&awsf.apg-env-filter=*all) 

 **Vídeos relacionados:** 
+  [How to choose compute option for startups (Cómo elegir la opción de computación para las empresas emergentes)](https://aws.amazon.com/startups/start-building/how-to-choose-compute-option/) 
+  [Optimize performance and cost for your AWS compute (Optimizar el rendimiento y el coste de la computación de AWS) (CMP323-R1)](https://www.youtube.com/watch?v=zt6jYJLK8sg) 
+  [Amazon EC2 foundations (Fundamentos de Amazon EC2) (CMP211-R2) ](https://www.youtube.com/watch?v=kMMybKqC2Y0&ref=wellarchitected) 
+  [Powering next-gen Amazon EC2: Deep dive into the Nitro system (Impulso de Amazon EC2 de nueva generación: profundización en el sistema Nitro) ](https://www.youtube.com/watch?v=rUY-00yFlE4&ref=wellarchitected) 
+  [Deliver high performance ML inference with AWS Inferentia (Ofrecer inferencia de ML de alto rendimiento con AWS Inferentia) (CMP324-R1) ](https://www.youtube.com/watch?v=17r1EapAxpk&ref=wellarchitected) 
+  [Better, faster, cheaper compute: Cost-optimizing Amazon EC2 (Computación mejor, más rápida y más barata: Optimización de costes de Amazon EC2) (CMP202-R1) ](https://www.youtube.com/watch?v=_dvh4P2FVbw&ref=wellarchitected) 

 **Ejemplos relacionados:** 
+  [Migración de la aplicación web a contenedores](https://application-migration-with-aws.workshop.aws/en/container-migration.html) 
+  [Ejecutar un programa «Hello, World\$1» sin servidor](https://aws.amazon.com/getting-started/hands-on/run-serverless-code/) 

# PERF02-BP02 Comprender las opciones de configuración informática disponibles
<a name="perf_select_compute_config_options"></a>

 Cada solución de computación tiene opciones y configuraciones disponibles para admitir las características de su carga de trabajo. Obtenga información sobre cómo complementan su carga de trabajo las diversas opciones y qué opciones de configuración son mejores para su aplicación. Algunos ejemplos de estas opciones son la familia de instancias, los tamaños, las características (GPU, E/S), la ampliación, los tiempos de espera, los tamaños de función, las instancias de contenedor y la simultaneidad. 

 **Resultado deseado:** las características de la carga de trabajo, como la CPU, la memoria, el rendimiento de la red, la GPU, las IOPS, los patrones de tráfico y los patrones de acceso a los datos, se documentan y se utilizan para configurar la solución de computación de forma que se ajuste a las características de la carga de trabajo. Cada una de estas métricas, además de las específicas de su carga de trabajo, se registran, se supervisan y, a continuación, se utilizan para optimizar la configuración de la computación para satisfacer mejor los requisitos. 

 **Patrones de uso no recomendados comunes:** 
+  Se utiliza la misma solución de computación que se utilizaba localmente. 
+  No revisar las opciones de computación o la familia de instancias para que se ajusten a las características de la carga de trabajo. 
+  Sobredimensionamiento de la computación para garantizar la capacidad de ampliación. 
+  Utiliza varias plataformas de administración de la computación para la misma carga de trabajo. 

** Beneficios de establecer esta práctica recomendada:** Familiarícese con las ofertas de computación de AWS para poder determinar la solución correcta para cada una de sus cargas de trabajo. Después de haber seleccionado las ofertas de computación para su carga de trabajo, puede experimentar rápidamente con ellas para determinar lo bien que satisfacen sus necesidades de carga de trabajo. Una solución de computación optimizada para satisfacer las características de su carga de trabajo aumentará su rendimiento, reducirá su coste y aumentará su fiabilidad.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Si su carga de trabajo ha estado utilizando la misma opción de computación durante más de cuatro semanas y prevé que las características seguirán siendo las mismas en el futuro, puede utilizar [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) para ofrecerle una recomendación basada en sus características de computación. Si AWS Compute Optimizer no es posible debido a la falta de métricas, [un tipo de instancia no admitido](https://docs.aws.amazon.com/compute-optimizer/latest/ug/requirements.html#requirements-ec2-instances) o un cambio previsible en sus características, debe entonces predecir sus métricas a partir de pruebas de carga y experimentación.  

 **Pasos de implementación:** 

1.  ¿Realiza la ejecución en instancias EC2 o contenedores con el tipo de lanzamiento EC2? 

   1.  ¿Su carga de trabajo puede utilizar las GPU para aumentar el rendimiento? 

      1.  [Las instancias de computación acelerada](https://aws.amazon.com/ec2/instance-types/?trk=36c6da98-7b20-48fa-8225-4784bced9843&sc_channel=ps&sc_campaign=acquisition&sc_medium=ACQ-P|PS-GO|Brand|Desktop|SU|Compute|EC2|US|EN|Text&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types&ef_id=CjwKCAjwiuuRBhBvEiwAFXKaNNRXM5FrnFg5H8RGQ4bQKuUuK1rYWmU2iH-5H3VZPqEheB-pEm-GNBoCdD0QAvD_BwE:G:s&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types#Accelerated_Computing) son instancias basadas en GPU que proporcionan el mayor rendimiento para el entrenamiento de machine learning, la inferencia y la computación de alto rendimiento. 

   1.  ¿Su carga de trabajo ejecuta aplicaciones de inferencia de machine learning? 

      1.  [AWS Inferentia (Inf1):](https://aws.amazon.com/ec2/instance-types/inf1/) las instancias Inf1 se crean para admitir aplicaciones de inferencia de machine learning. Con las instancias Inf1, los clientes pueden ejecutar aplicaciones de inferencia de machine learning a gran escala, como el reconocimiento de imágenes, reconocimiento de voz, procesamiento de lenguaje natural, personalización y detección de fraude. Puede crear un modelo en uno de los marcos populares de machine learning, como TensorFlow, PyTorch o MXNet y utilizar instancias de GPU, para entrenar su modelo. Después de que su modelo de machine learning se haya entrenado para satisfacer sus necesidades, puede desplegar el modelo en instancias Inf1 mediante [AWS Neuron](https://aws.amazon.com/machine-learning/neuron/), un kit de desarrollo de software (SDK) especializado que consiste en un compilador, un módulo de tiempo de ejecución y herramientas de perfilado que optimizan el rendimiento de la inferencia de machine learning de los chips Inferentia. 

   1.  ¿Su carga de trabajo se integra con el hardware de bajo nivel para mejorar el rendimiento?  

      1.  [Matrices de puertas programables en campo (FPGA):](https://aws.amazon.com/ec2/instance-types/f1/) con FPGA, puede optimizar las cargas de trabajo mediante la ejecución personalizada y acelerada por hardware de las cargas de trabajo más exigentes. Puede definir sus algoritmos utilizando lenguajes de programación generales compatibles como C o Go, o bien lenguajes orientados a hardware como Verilog o VHDL. 

   1.  ¿Tiene al menos cuatro semanas de métricas y puede predecir que su patrón de tráfico y sus métricas se mantendrán más o menos igual en el futuro? 

      1.  Uso [Compute Optimizer](https://aws.amazon.com/compute-optimizer/) para obtener una recomendación de machine learning sobre qué configuración de computación se ajusta mejor a sus características de computación. 

   1.  ¿El rendimiento de su carga de trabajo está limitado por las métricas de CPU?  

      1.  [Las instancias optimizadas para la computación](https://aws.amazon.com/ec2/instance-types/?trk=36c6da98-7b20-48fa-8225-4784bced9843&sc_channel=ps&sc_campaign=acquisition&sc_medium=ACQ-P|PS-GO|Brand|Desktop|SU|Compute|EC2|US|EN|Text&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types&ef_id=CjwKCAjwiuuRBhBvEiwAFXKaNNRXM5FrnFg5H8RGQ4bQKuUuK1rYWmU2iH-5H3VZPqEheB-pEm-GNBoCdD0QAvD_BwE:G:s&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types#Compute_Optimized) son ideales para las cargas de trabajo que requieren procesadores de alto rendimiento.  

   1.  ¿El rendimiento de su carga de trabajo está limitado por las métricas de memoria?  

      1.  [Las instancias optimizadas para memoria](https://aws.amazon.com/ec2/instance-types/?trk=36c6da98-7b20-48fa-8225-4784bced9843&sc_channel=ps&sc_campaign=acquisition&sc_medium=ACQ-P|PS-GO|Brand|Desktop|SU|Compute|EC2|US|EN|Text&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types&ef_id=CjwKCAjwiuuRBhBvEiwAFXKaNNRXM5FrnFg5H8RGQ4bQKuUuK1rYWmU2iH-5H3VZPqEheB-pEm-GNBoCdD0QAvD_BwE:G:s&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types#Memory_Optimized) ofrecen grandes cantidades de memoria para admitir cargas de trabajo que hacen un uso intensivo de la memoria. 

   1.  ¿El rendimiento de su carga de trabajo está limitado por IOPS? 

      1.  [Las instancias optimizadas para almacenamiento](https://aws.amazon.com/ec2/instance-types/?trk=36c6da98-7b20-48fa-8225-4784bced9843&sc_channel=ps&sc_campaign=acquisition&sc_medium=ACQ-P|PS-GO|Brand|Desktop|SU|Compute|EC2|US|EN|Text&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types&ef_id=CjwKCAjwiuuRBhBvEiwAFXKaNNRXM5FrnFg5H8RGQ4bQKuUuK1rYWmU2iH-5H3VZPqEheB-pEm-GNBoCdD0QAvD_BwE:G:s&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types#Storage_Optimized) están diseñadas para cargas de trabajo que requieren un alto acceso secuencial de lectura y escritura (IOPS) al almacenamiento local. 

   1.  ¿Las características de su carga de trabajo representan una necesidad equilibrada en todas las métricas? 

      1.  ¿La CPU de su carga de trabajo necesita ampliares para hacer frente a los picos de tráfico? 

         1.  [Las instancias de rendimiento ampliable](https://aws.amazon.com/ec2/instance-types/?trk=36c6da98-7b20-48fa-8225-4784bced9843&sc_channel=ps&sc_campaign=acquisition&sc_medium=ACQ-P|PS-GO|Brand|Desktop|SU|Compute|EC2|US|EN|Text&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types&ef_id=CjwKCAjwiuuRBhBvEiwAFXKaNNRXM5FrnFg5H8RGQ4bQKuUuK1rYWmU2iH-5H3VZPqEheB-pEm-GNBoCdD0QAvD_BwE:G:s&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types#Instance_Features) son similares a las instancias optimizadas para computación, salvo que ofrecen la posibilidad de ampliar la base de referencia de CPU fija identificada en una instancia optimizada para la computación. 

      1.  [Las instancias de uso general](https://aws.amazon.com/ec2/instance-types/?trk=36c6da98-7b20-48fa-8225-4784bced9843&sc_channel=ps&sc_campaign=acquisition&sc_medium=ACQ-P|PS-GO|Brand|Desktop|SU|Compute|EC2|US|EN|Text&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types&ef_id=CjwKCAjwiuuRBhBvEiwAFXKaNNRXM5FrnFg5H8RGQ4bQKuUuK1rYWmU2iH-5H3VZPqEheB-pEm-GNBoCdD0QAvD_BwE:G:s&s_kwcid=AL!4422!3!536392622533!e!!g!!ec2%20instance%20types#General_Purpose) proporcionan un equilibrio de todas las características para admitir diversas cargas de trabajo. 

   1.  ¿Su instancia de computación se ejecuta en Linux y está limitada por el rendimiento de la red en la tarjeta de interfaz de red? 

      1.  Efectúe la revisión. [la pregunta de rendimiento 5, práctica recomendada 2: Evaluar las características de las redes disponibles](https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/network-architecture-selection.html) para encontrar el tipo y la familia de instancias adecuados para satisfacer sus necesidades de rendimiento. 

   1.  ¿Su carga de trabajo necesita instancias coherentes y predecibles en una zona de disponibilidad específica a la que pueda comprometerse durante un año?  

      1.  [Instancias reservadas](https://aws.amazon.com/ec2/pricing/reserved-instances/) confirma las reservas de capacidad en una zona de disponibilidad específica. Las instancias reservadas son ideales para la potencia de computación requerida en una zona de disponibilidad específica.  

   1.  ¿Su carga de trabajo tiene licencias que requieren un hardware dedicado? 

      1.  [Hosts dedicados](https://aws.amazon.com/ec2/dedicated-hosts/) admiten las licencias de software existentes y le ayudan a cumplir los requisitos de cumplimiento. 

   1.  ¿Su solución de computación se amplía y requiere un procesamiento síncrono? 

      1.  [Las instancias bajo demanda](https://aws.amazon.com/ec2/pricing/on-demand/) le permiten utilizar la capacidad de computación por horas o por segundos sin compromiso a largo plazo. Estas instancias son adecuadas para la ampliación por encima de las necesidades de la base de referencia de rendimiento. 

   1.  ¿Su solución de computación no tiene estado, tiene tolerancia a los errores y es asíncrona?  

      1.  [Instancias de spot](https://aws.amazon.com/ec2/spot/) le permiten aprovechar la capacidad de instancia no utilizada para sus cargas de trabajo sin estado y tolerantes a errores.  

1.  ¿Ejecuta contenedores en [Fargate](https://aws.amazon.com/fargate/)? 

   1.  ¿El rendimiento de su tarea está limitado por la memoria o la CPU? 

      1.  Use el [tamaño de tarea](https://docs.aws.amazon.com/AmazonECS/latest/bestpracticesguide/capacity-tasksize.html) para ajustar su memoria o CPU. 

   1.  ¿Se está viendo afectado su rendimiento por las ampliaciones de los patrones de tráfico? 

      1.  Use la configuración de [Auto Scaling](https://docs.aws.amazon.com/AmazonECS/latest/bestpracticesguide/capacity-autoscaling.html) para establecer la correspondencia con los patrones de tráfico. 

1.  ¿Su solución de computación está en [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-features.html)? 

   1.  ¿Tiene al menos cuatro semanas de métricas y puede predecir que su patrón de tráfico y sus métricas se mantendrán más o menos igual en el futuro? 

      1.  Uso [Compute Optimizer](https://aws.amazon.com/compute-optimizer/) para obtener una recomendación de machine learning sobre qué configuración de computación se ajusta mejor a sus características de computación. 

   1.  ¿No tiene suficientes métricas para utilizar AWS Compute Optimizer? 

      1.  Si no tiene métricas disponibles para usar Compute Optimizer, utilice [Ajuste de potencia de AWS Lambda](https://docs.aws.amazon.com/lambda/latest/operatorguide/profile-functions.html) para seleccionar la mejor configuración. 

   1.  ¿El rendimiento de su función está limitado por la memoria o la CPU? 

      1.  Configure su [memoria de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-memory-console) para cumplir las métricas de necesidades de rendimiento. 

   1.  ¿Se agota el tiempo de ejecución de su función al ejecutarse? 

      1.  Cambie la [configuración de tiempo de espera](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html) 

   1.  ¿El rendimiento de sus funciones está limitado por las ampliaciones de actividad y la simultaneidad?  

      1.  Configure las [opciones de simultaneidad](https://docs.aws.amazon.com/lambda/latest/dg/configuration-concurrency.html) para cumplir los requisitos de rendimiento. 

   1.  ¿Su función se ejecuta de forma asíncrona y se producen errores en los reintentos? 

      1.  Configure la duración máxima del evento y el límite máximo de reintentos en las opciones [de configuración asíncrona](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html) . 

## Nivel de esfuerzo para el plan de implementación: 
<a name="level-of-effort-for-the-implementation-plan-to-establish-this-best-practice-you-must-be-aware-of-your-current-compute-characteristics-and-metrics.-gathering-those-metrics-establishing-a-baseline-and-then-using-those-metrics-to-identify-the-ideal-compute-option-is-a-low-to-moderate-level-of-effort.-this-is-best-validated-by-load-tests-and-experimentation."></a>

Para establecer esta práctica recomendada, debe conocer sus características y métricas de computación actuales. Reunir esas métricas, establecer una línea de referencia y luego usar esas métricas para identificar la opción de computación ideal es un nivel de esfuerzo de *bajo* to *moderado* . La mejor forma de validarlo es mediante pruebas de carga y experimentación. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Computación en la nube con AWS ](https://aws.amazon.com/products/compute/?ref=wellarchitected) 
+  [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) 
+  [Tipos de instancias EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html?ref=wellarchitected) 
+  [Control de los estados del procesador de la instancia EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/processor_state_control.html?ref=wellarchitected) 
+  [Contenedores de EKS: nodos de trabajo de EKS ](https://docs.aws.amazon.com/eks/latest/userguide/worker.html?ref=wellarchitected) 
+  [Contenedores de Amazon ECS: instancias de contenedor de Amazon ECS ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html?ref=wellarchitected) 
+  [Funciones: configuración de funciones de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html?ref=wellarchitected#function-configuration) 

 **Vídeos relacionados:** 
+  [Amazon EC2 foundations (Fundamentos de Amazon EC2) (CMP211-R2) ](https://www.youtube.com/watch?v=kMMybKqC2Y0&ref=wellarchitected) 
+  [Powering next-gen Amazon EC2: Deep dive into the Nitro system (Impulso de Amazon EC2 de nueva generación: profundización en el sistema Nitro) ](https://www.youtube.com/watch?v=rUY-00yFlE4&ref=wellarchitected) 
+  [Optimize performance and cost for your AWS compute (Optimizar el rendimiento y el coste de la computación de AWS) (CMP323-R1) ](https://www.youtube.com/watch?v=zt6jYJLK8sg&ref=wellarchitected) 

 **Ejemplos relacionados:** 
+  [Redimensionamiento con Compute Optimizer y utilización de la memoria habilitada](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) 
+  [Código de demostración de AWS Compute Optimizer](https://github.com/awslabs/ec2-spot-labs/tree/master/aws-compute-optimizer) 

# PERF02-BP03 Recopilar métricas relacionadas con la computación
<a name="perf_select_compute_collect_metrics"></a>

Para entender el rendimiento de sus recursos de computación, debe registrar y hacer un seguimiento de la utilización de varios sistemas. Estos datos pueden utilizarse para determinar con mayor precisión las requisitos de recursos.  

 Las cargas de trabajo pueden generar grandes volúmenes de datos como métricas, registros y eventos. Determine si su actual servicio de almacenamiento, supervisión y observabilidad puede administrar los datos generados. Identifique qué métricas reflejan la utilización de los recursos y pueden recopilarse, agregarse y correlacionarse en una única plataforma. Esas métricas deben representar todos sus recursos de carga de trabajo, aplicaciones y servicios, para que pueda obtener fácilmente una visibilidad de todo el sistema e identificar rápidamente las oportunidades y los problemas de mejora del rendimiento.

 **Resultado deseado:** todas las métricas relacionadas con los recursos relacionados con la computación se identifican, recopilan, agregan y correlacionan en una única plataforma con retención implementada para respaldar los costes y los objetivos operativos. 

 **Patrones de uso no recomendados comunes:** 
+  Solo se utiliza la búsqueda manual de métricas en los archivos de registro.  
+  Solo se publican las métricas en las herramientas internas. 
+  Solo se utilizan las métricas por defecto registradas por el software de supervisión seleccionado. 
+  Solo se revisan las métricas cuando hay un problema. 

 

 **Beneficios de establecer esta práctica recomendada:** para supervisar el rendimiento de las cargas de trabajo, debe registrar múltiples métricas de rendimiento durante un período de tiempo. Estas métricas le permiten detectar anomalías en el rendimiento. También le ayudarán a medir el rendimiento con respecto a las métricas empresariales para asegurarse de que satisface sus necesidades de carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Identifique, recopile, agregue y correlacione las métricas relacionadas con la computación. El uso de un servicio como Amazon CloudWatch, puede acelerar la implementación y facilitar su mantenimiento. Además de las métricas predeterminadas registradas, identifique y haga un seguimiento de las métricas adicionales en el nivel del sistema en su carga de trabajo. Registre datos como las métricas de utilización de la CPU, memoria, E/S del disco y red para conocer los niveles de utilización y los cuellos de botella. Estos datos son cruciales para entender el rendimiento de la carga de trabajo y cómo se utiliza la solución de computación. Utilice estas métricas como parte de un enfoque basado en datos para ajustar y optimizar activamente los recursos de su carga de trabajo.  

 **Pasos de implementación:** 

1.  ¿Qué métricas de solución de computación son importantes para hacer un seguimiento? 

   1.  [Métricas predeterminadas de EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html) 

   1.  [Métricas predeterminadas de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/cloudwatch-metrics.html) 

   1.  [Métricas predeterminadas de EKS](https://docs.aws.amazon.com/prescriptive-guidance/latest/implementing-logging-monitoring-cloudwatch/kubernetes-eks-metrics.html) 

   1.  [Métricas predeterminadas de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions-access-metrics.html) 

   1.  [Métricas de memoria y disco de EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/mon-scripts.html) 

1.  ¿Dispongo actualmente de una solución de registro y supervisión aprobada? 

   1.  [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) 

   1.  [AWS Distro for OpenTelemetry](https://aws.amazon.com/otel/) 

   1.  [Amazon Managed Service for Prometheus](https://docs.aws.amazon.com/grafana/latest/userguide/prometheus-data-source.html) 

1.  ¿He identificado y configurado mis políticas de retención de datos para que se ajusten a mis objetivos de seguridad y operativos? 

   1.  [Retención de datos predeterminada para métricas de CloudWatch](https://aws.amazon.com/cloudwatch/faqs/#AWS_resource_.26_custom_metrics_monitoring) 

   1.  [Retención de datos predeterminada para CloudWatch Logs](https://aws.amazon.com/cloudwatch/faqs/#Log_management) 

1.  ¿Cómo despliega sus agentes de agregación de métricas y registros? 

   1.  [Automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html?ref=wellarchitected) 

   1.  [OpenTelemetry Collector](https://aws-otel.github.io/docs/getting-started/collector) 

 **Nivel de esfuerzo para el plan de implementación: **hay un nivel *medio* de esfuerzo para identificar, hacer un seguimiento, recopilar, agregar y correlacionar las métricas de todos los recursos de computación. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de Amazon CloudWatch](https://docs.aws.amazon.com/cloudwatch/index.html?ref=wellarchitected) 
+  [Recopilación de métricas y registros de instancias Amazon EC2 y en los servidores locales con el agente de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html?ref=wellarchitected) 
+  [Acceso a Amazon CloudWatch Logs para AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions-logs.html?ref=wellarchitected) 
+  [Uso de CloudWatch Logs con instancias de contenedor](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_cloudwatch_logs.html?ref=wellarchitected) 
+  [Publique métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html?ref=wellarchitected) 
+  [AWS Answers: registro centralizado](https://aws.amazon.com/answers/logging/centralized-logging/?ref=wellarchitected) 
+  [Servicios de AWS que publican métricas de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CW_Support_For_AWS.html?ref=wellarchitected) 
+  [Supervisión de Amazon EKS en AWS Fargate](https://aws.amazon.com/blogs/containers/monitoring-amazon-eks-on-aws-fargate-using-prometheus-and-grafana/) 

 

 **Vídeos relacionados:** 
+  [Application Performance Management on AWS (Administración del rendimiento de las aplicaciones en AWS)](https://www.youtube.com/watch?v=5T4stR-HFas&ref=wellarchitected) 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 

 

 **Ejemplos relacionados:** 
+  [Nivel 100: supervisión con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_with_cloudwatch_dashboards/) 
+  [Nivel 100: supervisión de una instancia EC2 de Windows con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_windows_ec2_cloudwatch/) 
+  [Nivel 100: supervisión de una instancia EC2 de Amazon Linux con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_linux_ec2_cloudwatch/) 

# PERF02-BP04 Determinar la configuración necesaria mediante el redimensionamiento correcto
<a name="perf_select_compute_right_sizing"></a>

Analice las distintas características de rendimiento de su carga de trabajo y la relación que tienen con el uso de memoria, redes, E/S y CPU. Use estos datos para elegir recursos que encajen bien con el perfil de su carga de trabajo. Por ejemplo, una carga de trabajo con un uso intensivo de memoria, como una base de datos, podría beneficiarse de una mayor proporción de memoria por núcleo. Sin embargo, una carga de trabajo con uso intensivo de computación podría necesitar un mayor número de núcleos y frecuencia, pero puede satisfacerse con una menor cantidad de memoria por núcleo.

 **Antipatrones usuales:** 
+  Se elige una instancia con los valores más altos de todas las características de rendimiento disponibles para todas las cargas de trabajo. 
+  Se estandarizan todos los tipos de instancias a un tipo para facilitar la administración. 
+  Se optimiza a partir de indicadores de referencia sintéticos estándar sin validar los requisitos reales de una carga de trabajo concreta. 
+  Mantiene la misma infraestructura durante un largo periodo sin reevaluar ni integrar nuevas ofertas. 

 **Beneficios de establecer esta práctica recomendada:** cuando esté familiarizado con los requisitos de su carga de trabajo, podrá comparar estas necesidades con las ofertas de computación disponibles y experimentar rápidamente para determinar cuáles satisfacen las necesidades de su carga de trabajo con mayor eficacia. Esto permite obtener un rendimiento óptimo sin pagar de más por recursos que no se requieren. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

Modifique la configuración de su carga de trabajo mediante el redimensionamiento correcto. Para optimizar el rendimiento, la eficiencia general y la rentabilidad, determine primero qué recursos necesita su carga de trabajo. Elija instancias optimizadas para memoria, como la familia de instancias R, para cargas de trabajo de uso intensivo de memoria como una base de datos. Para cargas de trabajo que requieren una mayor capacidad de cálculo, elija la familia de instancias C o instancias con un mayor número de núcleos o una mayor frecuencia de núcleos. Elija el rendimiento de E/S en función de las necesidades de su carga de trabajo, en lugar de compararlo con puntos de referencia sintéticos. Para obtener un mayor rendimiento de E/S, elija instancias de la familia de instancias I, [seleccione volúmenes optimizados E/S de Amazon EBS](https://aws.amazon.com/premiumsupport/knowledge-center/optimize-ebs-provisioned-iops/) o elija instancias con el [almacén de instancias](https://aws.amazon.com/premiumsupport/knowledge-center/instance-store-vs-ebs/). Para obtener más información sobre tipos de instancia concretos, consulte los [tipos de instancia Amazon EC2](https://aws.amazon.com/ec2/instance-types/).

 El redimensionamiento correcto verifica que las cargas de trabajo rindan al máximo sin pagar de más por recursos que no necesita. 

 **Pasos para la implementación** 
+  Conozca su carga de trabajo o analice sus necesidades de recursos. 
+  Evalúe las cargas de trabajo por separado. Nube de AWS le ofrece flexibilidad y agilidad para ajustar el tamaño de cada carga de trabajo por sí sola sin necesidad de hacer concesiones. 
+  Cree entornos de prueba para encontrar la mejor combinación de ofertas de computación para su carga de trabajo. 
+  Reevalúe continuamente las nuevas ofertas de computación y compárelas con las necesidades de su carga de trabajo. 
+  Revise con frecuencia las nuevas ofertas de servicios para obtener mejores precios. 
+  Complete revisiones periódicas de Well-Architected Framework. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [PERF02-BP03 Recopilar métricas relacionadas con la computación](perf_select_compute_collect_metrics.md) 
+  [PERF02-BP06 Evaluar constantemente las necesidades de computación según las métricas](perf_select_compute_use_metrics.md) 

 **Documentos relacionados:** 
+  [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/)  
+  [Cloud Compute with AWS](https://aws.amazon.com/products/compute/) (Computación en la nube con AWS) 
+  [Amazon EC2 Instance Types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) (Tipos de instancias Amazon EC2) 
+  [Amazon ECS Containers: Amazon ECS Container Instances](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html) (Contenedores: instancias de contenedor de Amazon ECS) 
+  [Amazon EKS Containers: Amazon EKS Worker Nodes](https://docs.aws.amazon.com/eks/latest/userguide/worker.html) (Contenedores: nodos de trabajo de Amazon EKS) 
+  [Functions: Lambda Function Configuration](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html#function-configuration) (Funciones: configuración de funciones de Lambda) 

 **Vídeos relacionados: ** 
+  [Amazon EC2 foundations (CMP211-R2)](https://www.youtube.com/watch?v=kMMybKqC2Y0) (Fundamentos de Amazon EC2) 
+  [Better, faster, cheaper compute: Cost-optimizing Amazon EC2](https://www.youtube.com/watch?v=_dvh4P2FVbw) (Computación mejor, más rápida y más barata: Optimización de costes de Amazon EC2) (CMP202-R1) 
+  [Deliver high performance ML inference with AWS Inferentia (CMP324-R1)](https://www.youtube.com/watch?v=17r1EapAxpk) (Realice inferencias ML de alto rendimiento con AWS) 
+  [Optimize performance and cost for your AWS compute (CMP323-R1)](https://www.youtube.com/watch?v=zt6jYJLK8sg) (Optimice el rendimiento y coste de su computación con AWS) 
+  [Powering next-gen Amazon EC2: Deep dive into the Nitro system](https://www.youtube.com/watch?v=rUY-00yFlE4) (Impulso de Amazon EC2 de nueva generación: profundización en el sistema Nitro) 
+  [How to choose compute option for startups](https://aws.amazon.com/startups/start-building/how-to-choose-compute-option/) (Cómo elegir la opción de computación para las empresas emergentes) 
+  [Optimize performance and cost for your AWS compute (CMP323-R1)](https://www.youtube.com/watch?v=zt6jYJLK8sg) (Optimice el rendimiento y coste de su computación con AWS) 

 **Ejemplos relacionados:** 
+  [Rightsizing with Compute Optimizer and Memory utilization enabled](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) (Redimensionamiento correcto con Compute Optimizer y utilización de memoria habilitada) 
+  [AWS Compute Optimizer Demo code](https://github.com/awslabs/ec2-spot-labs/tree/master/aws-compute-optimizer) (Código de demostración de AWS Compute Optimizer) 

# PERF02-BP05 Usar la elasticidad de recursos disponible
<a name="perf_select_compute_elasticity"></a>

La nube ofrece la flexibilidad de ampliar y reducir sus recursos de forma dinámica a través de diversos mecanismos para satisfacer los cambios en la demanda. Al combinar esta elasticidad con métricas relacionadas con la computación, una carga de trabajo puede responder automáticamente a los cambios para utilizar los recursos que necesita y solo los que necesita.

 **Antipatrones usuales:** 
+  Se sobreaprovisiona para cubrir posibles picos. 
+  Reacciona a las alarmas aumentando manualmente la capacidad. 
+  Aumenta la capacidad sin tener en cuenta el tiempo de aprovisionamiento. 
+  Deja la capacidad aumentada después de un evento de ajuste de escala en lugar de volver a desescalar verticalmente. 
+  Supervisa parámetros que no reflejan directamente los verdaderos requisitos de sus cargas de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** la demanda puede ser fija, variable, seguir un patrón o ser irregular. Adaptar la oferta a la demanda ofrece el coste más bajo para una carga de trabajo. Supervisar, probar y configurar la elasticidad de la carga de trabajo optimizará el rendimiento, ahorrará dinero y mejorará la fiabilidad a medida que cambien las demandas de uso. Aunque es posible adoptar un enfoque manual, resulta poco práctico a gran escala. Un enfoque automatizado y basado en métricas garantiza que los recursos satisfagan las demandas en cualquier momento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

La automatización basada en métricas debe utilizarse para aprovechar la elasticidad con el objetivo de que la oferta de recursos con la que dispone coincida con la demanda de los recursos que requiere su carga de trabajo. Por ejemplo, puede utilizar las [métricas de Amazon CloudWatch para supervisar sus recursos](https://aws.amazon.com/startups/start-building/how-to-monitor-resources/) o utilizar las métricas de Amazon CloudWatch para sus grupos de Auto Scaling.

 En combinación con las métricas relacionadas con la computación, una carga de trabajo puede responder automáticamente a los cambios y usar el conjunto óptimo de recursos para alcanzar su objetivo. También debe planificar el tiempo de aprovisionamiento y los posibles errores de los recursos. 

 Las instancias, los contenedores y las funciones proporcionan mecanismos de elasticidad, ya sea como una característica del servicio, en la forma de [Application Auto Scaling](https://aws.amazon.com/autoscaling/) o en combinación con [Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html). Aproveche la elasticidad de su arquitectura para asegurarse de tener suficiente capacidad para atender los requisitos de rendimiento en una amplia variedad de escalas de uso. 

 Valide las métricas para escalar o desescalar verticalmente los recursos elásticos con respecto al tipo de carga de trabajo que se está desplegando. Por ejemplo, si está desplegando una aplicación de transcodificación de vídeo, se espera una utilización del 100 % de la CPU y no debería ser su métrica principal. Como alternativa, puede medir la profundidad de la cola de trabajos de transcodificación en espera de escalar sus tipos de instancia. 

 Los despliegues de la carga de trabajo tienen que manejar los eventos de escalado y desescalado verticales. Desescalar verticalmente los componentes de la carga de trabajo de forma segura es tan importante como escalar verticalmente los recursos cuando la demanda lo requiere. 

 Cree escenarios de prueba para eventos de escalado vertical para comprobar que la carga de trabajo se comporta como se espera. 

 **Pasos para la implementación** 
+  Aproveche los datos históricos para analizar las demandas de recursos de su carga de trabajo a lo largo del tiempo. Haga preguntas concretas como: 
  +  ¿Su carga de trabajo es constante y aumenta con el tiempo a un ritmo conocido? 
  +  ¿Su carga de trabajo aumenta y disminuye según patrones estacionales y repetibles? 
  +  ¿Tiene picos su carga de trabajo? ¿Se pueden anticipar o predecir los picos? 
+  Aproveche al máximo los servicios de supervisión y los datos históricos. 
+  Etiquetar los recursos puede ayudar a la supervisión. Al utilizar etiquetas, consulte las [prácticas recomendadas de etiquetado](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html). Además, [las etiquetas pueden ayudarle a administrar, identificar y organizar recursos](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html). 
+  Con AWS, puede usar varios enfoques diferentes para hacer que la oferta coincida con la demanda. Las prácticas recomendadas del Pilar de optimización de costes ([COST09-BP01 a COST09-03](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/manage-demand-and-supply-resources.html)) describen cómo utilizar los siguientes enfoques de costes: 
  + [ COST09-BP01 Realizar un análisis de la demanda de la carga de trabajo ](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/cost_manage_demand_resources_cost_analysis.html)
  + [ COST09-BP02 Realizar un análisis de la demanda de la carga de trabajo ](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/cost_manage_demand_resources_buffer_throttle.html)
  + [COST09-BP03 Aprovisionar recursos de forma dinámica](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/cost_manage_demand_resources_dynamic.html)
+  Cree escenarios de prueba para eventos de desescalado vertical para verificar que la carga de trabajo se comporte como se espera. 
+  La mayoría de las instancias que no son de producción deben detenerse cuando no se utilizan. 
+  Para las necesidades de almacenamiento al utilizar Amazon Elastic Block Store (Amazon EBS), aproveche la [elasticidad basada en el volumen](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modify-volume.html). 
+  Para [Amazon Elastic Compute Cloud (Amazon EC2)](https://aws.amazon.com/ec2/), considere utilizar [grupos de Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/auto-scaling-groups.html), que le permiten optimizar el rendimiento y el coste al aumentar automáticamente el número de instancias de computación durante los picos de demanda y reducir la capacidad cuando la demanda disminuye. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [PERF02-BP03 Recopilar métricas relacionadas con la computación](perf_select_compute_collect_metrics.md) 
+  [PERF02-BP04 Determinar la configuración necesaria mediante el redimensionamiento correcto](perf_select_compute_right_sizing.md) 
+  [PERF02-BP06 Evaluar constantemente las necesidades de computación según las métricas](perf_select_compute_use_metrics.md) 

 **Documentos relacionados:** 
+  [Cloud Compute with AWS](https://aws.amazon.com/products/compute/) (Computación en la nube con AWS) 
+  [Amazon EC2 Instance Types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) (Tipos de instancias Amazon EC2) 
+  [Amazon ECS Containers: Amazon ECS Container Instances](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html) (Contenedores: instancias de contenedor de Amazon ECS) 
+  [Amazon EKS Containers: Amazon EKS Worker Nodes](https://docs.aws.amazon.com/eks/latest/userguide/worker.html) (Contenedores: nodos de trabajo de Amazon EKS) 
+  [Functions: Lambda Function Configuration](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html#function-configuration) (Funciones: configuración de funciones de Lambda) 

 **Vídeos relacionados: ** 
+  [Amazon EC2 foundations (CMP211-R2)](https://www.youtube.com/watch?v=kMMybKqC2Y0) (Fundamentos de Amazon EC2) 
+  [Better, faster, cheaper compute: Cost-optimizing Amazon EC2](https://www.youtube.com/watch?v=_dvh4P2FVbw) (Computación mejor, más rápida y más barata: Optimización de costes de Amazon EC2) (CMP202-R1) 
+  [Deliver high performance ML inference with AWS Inferentia (CMP324-R1)](https://www.youtube.com/watch?v=17r1EapAxpk) (Realice inferencias ML de alto rendimiento con AWS) 
+  [Optimize performance and cost for your AWS compute (CMP323-R1)](https://www.youtube.com/watch?v=zt6jYJLK8sg) (Optimice el rendimiento y coste de su computación con AWS) 
+  [Powering next-gen Amazon EC2: Deep dive into the Nitro system](https://www.youtube.com/watch?v=rUY-00yFlE4) (Impulso de Amazon EC2 de nueva generación: profundización en el sistema Nitro) 

 **Ejemplos relacionados:** 
+  [Ejemplos de grupos de Amazon EC2 Auto Scaling](https://github.com/aws-samples/amazon-ec2-auto-scaling-group-examples) 
+  [Tutoriales de Amazon EFS](https://github.com/aws-samples/amazon-efs-tutorial) 

# PERF02-BP06 Evaluar constantemente las necesidades de computación según las métricas
<a name="perf_select_compute_use_metrics"></a>

Utilice un enfoque basado en datos para evaluar y optimizar continuamente los recursos de computación para su carga de trabajo a lo largo del tiempo.

 **Resultado deseado:** use métricas en el nivel del sistema para supervisar activamente el comportamiento y los requisitos de su carga de trabajo a lo largo del tiempo. Evalúe las demandas de su carga de trabajo frente a los recursos disponibles basándose en los datos recopilados y realice cambios en su entorno de computación para adaptarlo mejor al perfil de su carga de trabajo. Por ejemplo, podría observar que, con el tiempo, una carga de trabajo exige más memoria que la especificada inicialmente, por lo que pasar a una familia o tamaño de instancia diferente podría mejorar tanto el rendimiento como la eficiencia. 

 **Antipatrones usuales:** 
+  Supervisión de las métricas en el nivel de sistema para conocer mejor la carga de trabajo y no reevaluar las necesidades de computación. 
+  Diseña sus necesidades de computación para los requisitos de carga de trabajo máxima. 
+  Sobredimensiona la solución de computación existente para cumplir los requisitos de escalado o rendimiento cuando el cambio a una solución de computación alternativa se adaptaría mejor a las características de su carga de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** recursos de computación optimizados basados en datos de la vida real y el equilibrio deseado entre coste y rendimiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Utilice un enfoque basado en datos para optimizar los recursos de computación en función del comportamiento observado de la carga de trabajo. Para lograr el máximo rendimiento y eficiencia, utilice los datos obtenidos a lo largo del tiempo de su carga de trabajo para ajustar y optimizar continuamente sus recursos. Observe la cantidad de recursos actuales que tiende a usar su carga de trabajo y determine dónde puede hacer cambios para ajustarlos mejor a las necesidades de su carga de trabajo. Cuando se comprometen demasiados recursos, el rendimiento del sistema se degrada, y cuando los recursos no se utilizan adecuadamente, el sistema funciona de forma menos eficiente y con un coste más elevado. 

 Para optimizar el rendimiento y la utilización de los recursos, se necesita una visión operativa unificada, datos granulares en tiempo real y una referencia histórica. Puede crear paneles automáticos para visualizar estos datos y obtener información operativa y de utilización. 

 **Pasos para la implementación** 

1.  Recopile métricas relacionadas con la computación a lo largo del tiempo. 

1.  Compare las métricas de la carga de trabajo con los recursos disponibles en la solución de computación seleccionada. 

1.  Determine los cambios de configuración necesarios adaptando la solución existente o evaluando la solución de computación alternativa. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [PERF02-BP01 Evaluar las opciones de computación disponibles](perf_select_compute_evaluate_options.md) 
+  [PERF02-BP02 Comprender las opciones de configuración informática disponibles](perf_select_compute_config_options.md) 
+  [PERF02-BP03 Recopilar métricas relacionadas con la computación](perf_select_compute_collect_metrics.md) 
+  [PERF02-BP04 Determinar la configuración necesaria mediante el redimensionamiento correcto](perf_select_compute_right_sizing.md) 

 **Documentos relacionados:** 
+  [Cloud Compute with AWS](https://aws.amazon.com/products/compute/?ref=wellarchitected) (Computación en la nube con AWS) 
+  [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) 
+  [EC2 Instance Types](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) (Tipos de instancias EC2) 
+  [Amazon ECS Containers: Amazon ECS Container Instances](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ECS_instances.html) (Contenedores: instancias de contenedor de Amazon ECS) 
+  [Amazon EKS Containers: Amazon EKS Worker Nodes](https://docs.aws.amazon.com/eks/latest/userguide/worker.html) (Contenedores: nodos de trabajo de Amazon EKS) 
+ [ Best practices for working with AWS Lambda functions ](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html#function-configuration)(Prácticas recomendadas para trabajar con funciones de AWS Lambda)

 **Vídeos relacionados: ** 
+  [Amazon EC2 foundations (CMP211-R2)](https://www.youtube.com/watch?v=kMMybKqC2Y0) (Fundamentos de Amazon EC2) 
+  [Better, faster, cheaper compute: Cost-optimizing Amazon EC2](https://www.youtube.com/watch?v=_dvh4P2FVbw) (Computación mejor, más rápida y más barata: Optimización de costes de Amazon EC2) (CMP202-R1) 
+  [Deliver high performance ML inference with AWS Inferentia (CMP324-R1)](https://www.youtube.com/watch?v=17r1EapAxpk) (Realice inferencias ML de alto rendimiento con AWS) 
+  [Optimize performance and cost for your AWS compute (CMP323-R1)](https://www.youtube.com/watch?v=zt6jYJLK8sg) (Optimice el rendimiento y coste de su computación con AWS) 
+  [Powering next-gen Amazon EC2: Deep dive into the Nitro system](https://www.youtube.com/watch?v=rUY-00yFlE4) (Impulso de Amazon EC2 de nueva generación: profundización en el sistema Nitro) 
+ [ Selecting and optimizing Amazon EC2 instances](https://www.youtube.com/watch?v=Vz0HZ6hlpgM) (Selección y optimización de instancias Amazon EC2) 

 **Ejemplos relacionados:** 
+  [Rightsizing with Compute Optimizer and Memory utilization enabled](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) (Redimensionamiento correcto con Compute Optimizer y utilización de memoria habilitada) 
+  [AWS Compute Optimizer Demo code](https://github.com/awslabs/ec2-spot-labs/tree/master/aws-compute-optimizer) (Código de demostración de AWS Compute Optimizer) 

# PERF 3: ¿Cómo selecciona su solución de almacenamiento?
<a name="perf-03"></a>

 La solución de almacenamiento óptima para un sistema varía según el tipo de método de acceso (bloque, archivo u objeto), patrones de acceso (aleatorio o secuencial), rendimiento requerido, frecuencia de acceso (en línea, fuera de línea, archivo), frecuencia de actualización (WORM, dinámico), y restricciones de disponibilidad y durabilidad. Los sistemas Well-Architected utilizan varias soluciones de almacenamiento y habilitan diferentes características para mejorar el rendimiento y utilizar los recursos de manera eficiente. 

**Topics**
+ [PERF03-BP01 Comprender las características y los requisitos de almacenamiento](perf_right_storage_solution_understand_char.md)
+ [PERF03-BP02 Evaluar las opciones de configuración disponibles](perf_right_storage_solution_evaluated_options.md)
+ [PERF03-BP03 Tomar decisiones según las métricas y los patrones de acceso](perf_right_storage_solution_optimize_patterns.md)

# PERF03-BP01 Comprender las características y los requisitos de almacenamiento
<a name="perf_right_storage_solution_understand_char"></a>

 Identifique y documente las necesidades de almacenamiento de la carga de trabajo y defina las características de almacenamiento de cada ubicación. Ejemplos de características de almacenamiento: acceso compartible, tamaño de los archivos, tasa de crecimiento, rendimiento, operaciones de entrada/salida por segundo (IOPS), latencia, patrones de acceso y persistencia de los datos. Utilice estas características para evaluar si los servicios de almacenamiento de bloques, archivos, objetos o instancias son la solución más eficiente para sus necesidades de almacenamiento. 

 **Resultado deseado:** Identificar y documentar los requisitos de almacenamiento por necesidad y evaluar las soluciones de almacenamiento disponibles. Basándose en las características clave del almacenamiento, su equipo entenderá cómo los servicios de almacenamiento seleccionados beneficiarán el rendimiento de su carga de trabajo. Los criterios clave incluyen los patrones de acceso a los datos, la tasa de crecimiento, las necesidades de escalado y los requisitos de latencia. 

 **Patrones comunes de uso no recomendados:** 
+  Solo utiliza un tipo de almacenamiento, como por ejemplo Amazon Elastic Block Store (Amazon EBS), para todas las cargas de trabajo. 
+  Supone que todas las cargas de trabajo tienen requisitos de rendimiento de acceso al almacenamiento similares. 

 **Beneficios de establecer esta práctica recomendada:** La selección de la solución de almacenamiento en función de las características identificadas y requeridas ayudará a mejorar el rendimiento de las cargas de trabajo, a disminuir los costes y a reducir los esfuerzos operativos a la hora de mantener la carga de trabajo. El rendimiento de su carga de trabajo se beneficiará de la solución, la configuración y la ubicación del servicio de almacenamiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Identifique las métricas de rendimiento de almacenamiento más importantes de su carga de trabajo e implemente mejoras como parte de un enfoque basado en datos, utilizando el análisis comparativo o las pruebas de carga. Utilice estos datos para identificar dónde está limitada su solución de almacenamiento y examine las opciones de configuración para mejorar la solución. Determine la tasa de crecimiento prevista para su carga de trabajo y elija una solución de almacenamiento que satisfaga esas tasas. Investigue las ofertas de almacenamiento de AWS para determinar la solución de almacenamiento correcta para sus diversas necesidades de carga de trabajo. El aprovisionamiento de soluciones de almacenamiento en AWS aumenta la oportunidad de probar las ofertas de almacenamiento y determinar si son adecuadas para sus necesidades de carga de trabajo. 


| Servicio de AWS | Características clave | Casos de uso habituales | 
| --- | --- | --- | 
| Amazon S3 |  99,999999999 % de durabilidad, crecimiento ilimitado, accesible desde cualquier lugar, varios modelos de coste basados en el acceso y resiliencia  |  Datos de aplicaciones nativas en la nube, archivo de datos y copias de seguridad, análisis, lagos de datos, alojamiento de sitios web estáticos, datos de IoT   | 
| Amazon Glacier |  Latencia de segundos a horas, crecimiento ilimitado, menor coste, almacenamiento a largo plazo  |  Archivado de datos, archivos multimedia, conservación de copias de seguridad a largo plazo.  | 
| Amazon EBS | El tamaño del almacenamiento requiere administración y supervisión, baja latencia, almacenamiento persistente, durabilidad del 99,8 % al 99,9 %, la mayoría de los tipos de volumen son accesibles solo desde una instancia de EC2. |  Aplicaciones COTS, aplicaciones con uso intensivo de E/S, bases de datos relacionales y NoSQL, copias de seguridad y recuperación  | 
| Almacén de instancias de EC2 |  Tamaño de almacenamiento predeterminado, latencia mínima, no persistente, accesible solo desde una instancia de EC2  |  Aplicaciones COTS, aplicaciones intensivas de E/S, almacén de datos en memoria  | 
| Amazon EFS |  99,999999999 % de durabilidad, crecimiento ilimitado, accesible por múltiples servicios de computación  |  Aplicaciones modernizadas que comparten archivos en múltiples servicios de computación, almacenamiento de archivos para escalar sistemas de administración de contenidos  | 
| Amazon FSx |  Admite cuatro sistemas de archivos (NetApp, OpenZFS, Windows File Server y Amazon FSx for Lustre), almacenamiento disponible diferente por sistema de archivos, accesible por varios servicios de computación  |  Cargas de trabajo nativas de la nube, ampliación en nube privada, cargas de trabajo migradas que requieren un sistema de archivos específico, VMC, sistemas ERP, almacenamiento de archivos y copias de seguridad locales   | 
| Familia Snow |  Dispositivos portátiles, cifrado de 256 bits, punto de conexión NFS, computación incorporada, TBs de almacenamiento  |  Migración de datos a la nube, almacenamiento y computación en condiciones locales extremas, recuperación de desastres, recopilación remota de datos  | 
| AWS Storage Gateway |  Proporciona acceso local de baja latencia al almacenamiento respaldado por la nube, caché local completamente administrada   |  Migraciones de datos locales a la nube, llenado de lagos de datos en la nube desde orígenes locales, uso compartido de archivos modernizado.  | 

 **Pasos para la aplicación:** 

1. Utilice estudios comparativos o pruebas de carga para recopilar las características clave de sus necesidades de almacenamiento. Entre las características clave se incluyen: 

   1. Compartible (qué componentes acceden a este almacenamiento) 

   1. Tasa de crecimiento 

   1. Rendimiento 

   1. Latencia 

   1. Tamaño de E/S 

   1. Durabilidad 

   1. Patrones de acceso (lecturas frente a escrituras, frecuencia, con picos o constantes) 

1. Identifique el tipo de solución de almacenamiento compatible con sus características de almacenamiento. 

   1. [Amazon S3](https://aws.amazon.com/s3/) es un servicio de almacenamiento de objetos con escalabilidad ilimitada, alta disponibilidad y varias opciones de accesibilidad. La transferencia y el acceso a los objetos dentro y fuera de Amazon S3 puede utilizar un servicio como [Aceleración de transferencia ](https://aws.amazon.com/s3/transfer-acceleration/) o bien [Puntos de acceso](https://aws.amazon.com/s3/features/access-points/) para respaldar su ubicación, necesidades de seguridad y patrones de acceso. Utilice las [directrices de rendimiento de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/optimizing-performance-guidelines.html) para ayudar a optimizar la configuración de Amazon S3 para satisfacer sus necesidades de rendimiento de la carga de trabajo. 

   1. [Amazon Glacier](https://aws.amazon.com/s3/storage-classes/glacier/) es una clase de almacenamiento de Amazon S3 desarrollada para el archivado de datos. Puede elegir entre tres soluciones de archivo que van desde el acceso en milisegundos hasta el acceso de 5 a 12 horas con diferentes opciones de coste y seguridad. Amazon Glacier puede ayudarle a cumplir los requisitos de rendimiento mediante la implementación de un ciclo de vida de los datos que se ajuste a los requisitos de su empresa y a las características de los datos. 

   1. [Amazon Elastic Block Store (Amazon EBS)](https://aws.amazon.com/ebs/) es un servicio de almacenamiento de bloques de alto rendimiento diseñado para Amazon Elastic Compute Cloud (Amazon EC2). Puede elegir entre soluciones [basadas en SSD o HDD](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html) con diferentes características que priorizan las [IOPS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/provisioned-iops.html) o bien [el rendimiento,](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hdd-vols.html). Los volúmenes de EBS son muy adecuados para las cargas de trabajo de alto rendimiento, el almacenamiento principal para los sistemas de archivos, las bases de datos o las aplicaciones que solo pueden acceder a los sistemas de etapas conectados. 

   1. [El almacén de instancias de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) es similar a Amazon EBS ya que se adjunta a una instancia de Amazon EC2; sin embargo, el almacén de instancias es solo un almacenamiento temporal que debería usarse idealmente como búfer, caché u otro contenido temporal. No se puede separar un almacén de instancias, y si la instancia se cierra se pierden todos los datos. Los almacenes de instancias pueden utilizarse para casos de uso de alto rendimiento de E/S y baja latencia en los que no es necesario conservar los datos. 

   1. [Amazon Elastic File System (Amazon EFS)](https://aws.amazon.com/efs/) es un sistema de archivos montable al que pueden acceder varios tipos de soluciones de computación. Amazon EFS aumenta y reduce automáticamente el almacenamiento y su rendimiento se ha optimizado para ofrecer latencias bajas y constantes. EFS tiene [dos modos de configuración del rendimiento](https://docs.aws.amazon.com/efs/latest/ug/performance.html): uso general y E/S máx. El modo de uso general tiene una latencia de lectura de menos de un milisegundo y una latencia de escritura de un milisegundo de un solo dígito. El modo de E/S máx. puede admitir miles de instancias de cálculo que requieran un sistema de archivos compartido. Amazon EFS admite [dos modos de rendimiento](https://docs.aws.amazon.com/efs/latest/ug/managing-throughput.html): por ráfagas y aprovisionado. Una carga de trabajo que experimenta un patrón de acceso irregular se beneficiará del modo de rendimiento en ráfagas, mientras que una carga de trabajo que es constantemente alta tendría un buen rendimiento con un modo de rendimiento aprovisionado. 

   1. [Amazon FSx](https://aws.amazon.com/fsx/) se basa en las últimas soluciones de computación de AWS para soportar cuatro sistemas de archivos de uso común: NetApp ONTAP, OpenZFS, Windows File Server y Lustre. Amazon FSx [latencia, rendimiento y E/S por segundo](https://aws.amazon.com/fsx/when-to-choose-fsx/) varían según el sistema de archivos y deben tenerse en cuenta a la hora de seleccionar el sistema de archivos adecuado para sus necesidades de carga de trabajo. 

   1. [AWS Snow Family](https://aws.amazon.com/snow/) son dispositivos de almacenamiento y computación que admiten la migración de datos en línea y fuera de línea a la nube y el almacenamiento y la computación de datos localmente. Los dispositivos de AWS Snow soportan la recopilación de grandes cantidades de datos localmente, el procesamiento de esos datos y su traslado a la nube. Hay varias [prácticas recomendadas documentadas sobre rendimiento](https://docs.aws.amazon.com/snowball/latest/developer-guide/performance.html) en lo que respecta al número de archivos, el tamaño de los mismos y la compresión. 

   1. [AWS Storage Gateway](https://aws.amazon.com/storagegateway/) proporciona a las aplicaciones locales acceso al almacenamiento ubicado en la nube. AWS Storage Gateway admite varios servicios de almacenamiento en la nube, como Amazon S3, Amazon Glacier, Amazon FSx y Amazon EBS. Admite varios protocolos como iSCSI, SMB y NFS. Proporciona un rendimiento de baja latencia al almacenar en caché los datos a los que se accede con frecuencia localmente y solo envía los datos modificados y los comprimidos a AWS. 

1. Una vez que haya experimentado con su nueva solución de almacenamiento y haya identificado la configuración óptima, planifique su migración y valide sus métricas de rendimiento. Se trata de un proceso continuo, que debe reevaluarse cuando cambien las características clave o los servicios u opciones disponibles. 

 **Nivel de esfuerzo para el plan de implementación: **Si una carga de trabajo se desplaza de una solución de almacenamiento a otra, podría haber un nivel de esfuerzo *moderado* implicado en la refactorización de la aplicación.   

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon EBS Volume Types (Tipos de volumen de Amazon EBS)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) 
+  [Amazon EC2 Storage (Almacenamiento de Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Storage.html) 
+  [Amazon EFS: Amazon EFS Performance (Amazon EFS: rendimiento de Amazon EFS)](https://docs.aws.amazon.com/efs/latest/ug/performance.html) 
+  [Amazon FSx for Lustre Performance (Rendimiento de Amazon FSx para Lustre)](https://docs.aws.amazon.com/fsx/latest/LustreGuide/performance.html) 
+  [Amazon FSx for Windows File Server Performance (Rendimiento de Amazon FSx for Windows File Server)](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/performance.html) 
+ [Amazon FSx for NetApp ONTAP performance (Rendimiento de Amazon FSx for NetApp ONTAP)](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/performance.html)
+ [Amazon FSx for OpenZFS performance (Rendimiento de Amazon FSx for OpenZFS)](https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/performance.html)
+  [Amazon Glacier: Amazon Glacier Documentation (Amazon Glacier: documentación de Amazon Glacier)](https://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) 
+  [Amazon S3: Request Rate and Performance Considerations (Amazon S3: tasa de solicitud y consideraciones de rendimiento)](https://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html) 
+  [Cloud Storage with AWS (Almacenamiento en la nube con AWS)](https://aws.amazon.com/products/storage/) 
+ [AWS Snow Family](https://aws.amazon.com/snow/#Feature_comparison)
+  [EBS I/O Characteristics (Características de E/S de EBS)](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-io-characteristics.html) 

 **Vídeos relacionados:** 
+  [Deep dive on Amazon EBS (STG303-R1) (Conocer en profundidad Amazon EBS [STG303-R1])](https://www.youtube.com/watch?v=wsMWANWNoqQ) 
+  [Optimize your storage performance with Amazon S3 (STG343) (Optimizar el rendimiento del almacenamiento con Amazon S3 [STG343])](https://www.youtube.com/watch?v=54AhwfME6wI) 

 **Ejemplos relacionados:** 
+  [Amazon EFS CSI Driver (Controlador CSI de Amazon EFS)](https://github.com/kubernetes-sigs/aws-efs-csi-driver) 
+  [Amazon EBS CSI Driver (Controlador CSI de Amazon EBS)](https://github.com/kubernetes-sigs/aws-ebs-csi-driver) 
+  [Amazon EFS Utilities (Utilidades de Amazon EFS)](https://github.com/aws/efs-utils) 
+  [Amazon EBS Autoscale (Escala automática de Amazon EBS)](https://github.com/awslabs/amazon-ebs-autoscale) 
+  [Amazon S3 Examples (Ejemplos de Amazon S3)](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/s3-examples.html) 
+ [Amazon FSx for Lustre Container Storage Interface (CSI) Driver (Controlador de la interfaz de almacenamiento de contenedores (CSI) de Amazon FSx for Lustre)](https://github.com/kubernetes-sigs/aws-fsx-csi-driver)

# PERF03-BP02 Evaluar las opciones de configuración disponibles
<a name="perf_right_storage_solution_evaluated_options"></a>

 Evalúe las diferentes características y opciones de configuración y cómo se relacionan con el almacenamiento. Comprenda dónde y cómo utilizar las IOPS aprovisionadas, las SSD, el almacenamiento magnético, el almacenamiento de objetos, el almacenamiento de archivos o el almacenamiento efímero para optimizar el espacio de almacenamiento y el rendimiento de su carga de trabajo. 

 [Amazon EBS](https://aws.amazon.com/ebs) tiene varias opciones que le permiten optimizar el rendimiento y el coste del almacenamiento de la carga de trabajo. Estas opciones se dividen en dos categorías principales: almacenamiento con respaldo de unidades de estado sólido (SSD) para cargas de trabajo transaccionales como bases de datos y volúmenes de arranque (el rendimiento depende principalmente de las IOPS) y almacenamiento con respaldo de unidades de disco duro (HDD) para cargas de trabajo de alto rendimiento como MapReduce y el procesamiento de registros (el rendimiento depende sobre todo de los MB/s). 

 Los volúmenes respaldados por unidades SSD incluyen unidades SSD con IOPS aprovisionadas de mayor rendimiento para cargas de trabajo transaccionales sensibles a la latencia y unidades SSD de uso general que equilibran el precio y el rendimiento para una amplia variedad de datos transaccionales. 

 [La aceleración de transferencia de Amazon S3](https://aws.amazon.com/s3/transfer-acceleration/) permite transferir archivos de forma rápida a larga distancia entre el cliente y su bucket de S3. La aceleración de transferencia utiliza las ubicaciones perimetrales distribuidas a nivel mundial de Amazon CloudFront para dirigir los datos por una ruta de red optimizada. Para una carga de trabajo en un bucket de S3 que reciba numerosas solicitudes GET, use Amazon S3 con CloudFront. Al cargar archivos grandes, use cargas de varios componentes con múltiples partes que se carguen a la vez para ayudar a maximizar el rendimiento de la red. 

 [Amazon Elastic File System (Amazon EFS)](https://aws.amazon.com/efs/) proporciona un sistema de archivos NFS sencillo, escalable, flexible y completamente administrado para su uso con los servicios de Nube de AWS y los recursos locales. Para soportar una amplia variedad de cargas de trabajo de almacenamiento en la nube, Amazon EFS ofrece dos modos de rendimiento: el modo de rendimiento de uso general y el modo de rendimiento máximo de E/S. También hay dos modos de rendimiento a elegir para su sistema de archivos: rendimiento de ráfaga y rendimiento aprovisionado. Para determinar los ajustes que debe utilizar para su carga de trabajo, consulte la [guía del usuario de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/performance.html). 

 [Amazon FSx](https://aws.amazon.com/fsx/) ofrece cuatro sistemas de archivos para elegir: [Amazon FSx para Windows File Server](https://aws.amazon.com/fsx/windows/) para cargas de trabajo empresariales, [Amazon FSx para Lustre](https://aws.amazon.com/fsx/lustre/) para cargas de trabajo de alto rendimiento, [Amazon FSx para NetApp ONTAP](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/index.html) para sistema de archivos ONTAP populares de NetApps y [Amazon FSx para OpenZFS](https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/what-is-fsx.html) para servidores de archivos basados en Linux. FSx está respaldado por SSD y está diseñado para ofrecer un rendimiento rápido, predecible, escalable y consistente. Los sistemas de archivos de Amazon FSx ofrecen altas velocidades de lectura y escritura sostenidas y un acceso a los datos de baja latencia constante. Puede elegir el nivel de rendimiento que necesita para satisfacer las necesidades de su carga de trabajo. 

 **Patrones de uso no recomendados comunes:** 
+  Solo se utiliza un tipo de almacenamiento, como Amazon EBS, para todas las cargas de trabajo. 
+  Utiliza las IOPS aprovisionadas para todas las cargas de trabajo sin realizar pruebas en el mundo real con todos los niveles de almacenamiento. 
+  Da por supuesto que todas las cargas de trabajo tienen requisitos de rendimiento de acceso al almacenamiento similares. 

 **Beneficios de establecer esta práctica recomendada:** evaluar todas las opciones de servicios de almacenamiento puede reducir el coste de la infraestructura y el esfuerzo necesario para mantener sus cargas de trabajo. Puede acelerar potencialmente su tiempo de comercialización para desplegar nuevos servicios y características. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Determinar las características de almacenamiento: cuando evalúe una solución de almacenamiento, determine qué características de almacenamiento necesita, como la capacidad de compartir, el tamaño de los archivos, el tamaño de la caché, la latencia, el rendimiento y la persistencia de los datos. Entonces, cubra esas necesidades con el servicio de AWS que mejor cumpla sus requisitos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Almacenamiento en la nube con AWS](https://aws.amazon.com/products/storage/?ref=wellarchitected) 
+  [Tipos de volumen de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) 
+  [Almacenamiento de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Storage.html) 
+  [Amazon EFS: rendimiento de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/performance.html) 
+  [Rendimiento de Amazon FSx para Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/performance.html) 
+  [Rendimiento de Amazon FSx para Windows File Server](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/performance.html) 
+  [Amazon Glacier: documentación de Amazon Glacier](https://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) 
+  [Amazon S3: tasa de solicitud y consideraciones de rendimiento](https://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html) 
+  [Almacenamiento en la nube con AWS](https://aws.amazon.com/products/storage/) 
+  [Almacenamiento en la nube con AWS](https://aws.amazon.com/products/storage/?ref=wellarchitected) 
+  [EBS: características de E/S](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-io-characteristics.html) 

 **Vídeos relacionados:** 
+  [Profundización en Amazon EBS (STG303-R1)](https://www.youtube.com/watch?v=wsMWANWNoqQ) 
+  [Optimizar el rendimiento de su almacenamiento con Amazon S3 (STG343)](https://www.youtube.com/watch?v=54AhwfME6wI) 

 **Ejemplos relacionados:** 
+  [Controlador CSI de Amazon EFS](https://github.com/kubernetes-sigs/aws-efs-csi-driver) 
+  [Controlador CSI de Amazon EBS](https://github.com/kubernetes-sigs/aws-ebs-csi-driver) 
+  [Utilidades de Amazon EFS](https://github.com/aws/efs-utils) 
+  [Escala automática de Amazon EBS](https://github.com/awslabs/amazon-ebs-autoscale) 
+  [Ejemplos de Amazon S3](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/s3-examples.html) 

# PERF03-BP03 Tomar decisiones según las métricas y los patrones de acceso
<a name="perf_right_storage_solution_optimize_patterns"></a>

 Elija los sistemas de almacenamiento en función de los patrones de acceso de su carga de trabajo y configúrelos determinando cómo accede la carga de trabajo a los datos. Aumente la eficiencia del almacenamiento eligiendo el almacenamiento de objetos en lugar del almacenamiento de bloques. Configure las opciones de almacenamiento que elija para que se adapten a sus patrones de acceso a datos. 

 La forma de acceder a sus datos afecta al rendimiento de la solución de almacenamiento. Seleccione la solución de almacenamiento que mejor se adapte a sus patrones de acceso, o bien considere cambiar sus patrones de acceso de modo que se adapten a la solución de almacenamiento a fin de maximizar el rendimiento. 

 Crear una matriz RAID 0 permite conseguir un nivel mayor de rendimiento para un sistema de archivos que puede suministrar en un solo volumen. Considere utilizar RAID 0 cuando el rendimiento E/S sea más importante que la tolerancia a errores. Por ejemplo, podría utilizarlo con una base de datos muy usada, donde la replicación ya esté configurada por separado. 

 Seleccione las métricas de almacenamiento adecuadas para su carga de trabajo en todas las opciones de almacenamiento consumidas para la carga de trabajo. Cuando utilice sistemas de archivos que utilicen créditos de ráfaga, cree alarmas para saber cuándo se está acercando a esos límites de crédito. Debe crear paneles de control de almacenamiento para mostrar el estado general del almacenamiento de la carga de trabajo. 

 En el caso de los sistemas de almacenamiento de tamaño fijo, como Amazon EBS o Amazon FSx, asegúrese de supervisar la cantidad de almacenamiento utilizada en relación con el tamaño total del almacenamiento y cree una automatización, si es posible, para aumentar el tamaño del almacenamiento cuando se alcance un umbral. 

 **Patrones de uso no recomendados comunes:** 
+  Asume que el rendimiento del almacenamiento es adecuado si los clientes no se quejan. 
+  Solo utiliza un nivel de almacenamiento, asumiendo que todas las cargas de trabajo encajan en ese nivel. 

 **Beneficios de establecer esta práctica recomendada:** necesita una visión operativa unificada, datos pormenorizados en tiempo real y una referencia histórica para optimizar el rendimiento y la utilización de los recursos. Puede crear paneles automáticos y datos con una granularidad de un segundo para realizar cálculos métricos en sus datos y obtener información operativa y de utilización para sus necesidades de almacenamiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Optimizar el uso de almacenamiento y los patrones de acceso: seleccione los sistemas de almacenamiento en función de los patrones de acceso de su carga de trabajo y las características de las opciones de almacenamiento disponibles. Determine el mejor lugar para almacenar los datos que le permita satisfacer sus necesidades y reducir los gastos generales. Utilice las optimizaciones de rendimiento y los patrones de acceso cuando configure e interactúe con los datos en función de las características de almacenamiento (por ejemplo, la separación de volúmenes o la partición de datos). 

 Seleccionar las métricas adecuadas para las opciones de almacenamiento: asegúrese de seleccionar las métricas de almacenamiento adecuadas para la carga de trabajo. Cada opción de almacenamiento ofrece varias métricas para seguir el rendimiento de su carga de trabajo a lo largo del tiempo. Asegúrese de que está midiendo con respecto a cualquier métrica de ráfaga de almacenamiento (por ejemplo, supervisando los créditos de ráfaga para Amazon EFS). En el caso de los sistemas de almacenamiento de tamaño fijo, como Amazon Elastic Block Store o Amazon FSx, asegúrese de que está supervisando la cantidad de almacenamiento utilizada en relación con el tamaño de almacenamiento total. Cree una automatización cuando sea posible para aumentar el tamaño de almacenamiento al alcanzar un umbral. 

 Supervisar métricas: Amazon CloudWatch puede recopilar métricas entre los recursos de su arquitectura. También puede recopilar y publicar métricas del cliente para negocios de superficie o métricas derivadas. Utilice CloudWatch o soluciones de terceros para establecer alarmas que indiquen cuándo se superan los umbrales. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Tipos de volumen de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html) 
+  [Almacenamiento de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Storage.html) 
+  [Amazon EFS: rendimiento de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/performance.html) 
+  [Rendimiento de Amazon FSx para Lustre](https://docs.aws.amazon.com/fsx/latest/LustreGuide/performance.html) 
+  [Rendimiento de Amazon FSx para Windows File Server](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/performance.html) 
+  [Amazon Glacier: documentación de Amazon Glacier](https://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) 
+  [Amazon S3: tasa de solicitud y consideraciones de rendimiento](https://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html) 
+  [Almacenamiento en la nube con AWS](https://aws.amazon.com/products/storage/) 
+  [EBS: características de E/S](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-io-characteristics.html) 
+  [Seguimiento y comprensión del rendimiento de Amazon EBS con Amazon CloudWatch](https://aws.amazon.com/blogs/storage/valuable-tips-for-monitoring-and-understanding-amazon-ebs-performance-using-amazon-cloudwatch/) 

 **Vídeos relacionados:** 
+  [Análisis profundo de Amazon EBS (STG303-R1)](https://www.youtube.com/watch?v=wsMWANWNoqQ) 
+  [Optimiza tu rendimiento de almacenamiento con Amazon S3 (STG343)](https://www.youtube.com/watch?v=54AhwfME6wI) 

 **Ejemplos relacionados:** 
+  [Controlador CSI de Amazon EFS](https://github.com/kubernetes-sigs/aws-efs-csi-driver) 
+  [Controlador CSI de Amazon EBS](https://github.com/kubernetes-sigs/aws-ebs-csi-driver) 
+  [Utilidades de Amazon EFS](https://github.com/aws/efs-utils) 
+  [Escala automática de Amazon EBS](https://github.com/awslabs/amazon-ebs-autoscale) 
+  [Ejemplos de Amazon S3](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/s3-examples.html) 

# PERF 4: ¿Cómo selecciona una solución de base de datos?
<a name="perf-04"></a>

 La solución de base de datos óptima para un sistema varía según los requisitos de disponibilidad, constancia, tolerancia de partición, latencia, durabilidad, escalabilidad y capacidad de consulta. Muchos sistemas utilizan diferentes soluciones de bases de datos para varios subsistemas y habilitan diferentes características para mejorar el rendimiento. Seleccionar la solución de base de datos y las características incorrectas para un sistema puede conducir a una menor eficiencia de rendimiento. 

**Topics**
+ [PERF04-BP01 Comprender las características de los datos](perf_right_database_solution_understand_char.md)
+ [PERF04-BP02 Evaluar las opciones disponibles](perf_right_database_solution_evaluate_options.md)
+ [PERF04-BP03 Recopilar y registrar métricas de rendimiento de la base de datos](perf_right_database_solution_collect_metrics.md)
+ [PERF04-BP04 Elija el almacenamiento de datos según los patrones de acceso](perf_right_database_solution_access_patterns.md)
+ [PERF04-BP05 Optimizar el almacenamiento de datos según las métricas y los patrones de acceso](perf_right_database_solution_optimize_metrics.md)

# PERF04-BP01 Comprender las características de los datos
<a name="perf_right_database_solution_understand_char"></a>

 Elija sus soluciones de administración de datos para que se ajusten de forma óptima a las características, los patrones de acceso y los requisitos de sus conjuntos de datos de carga de trabajo. A la hora de seleccionar e implementar una solución de administración de datos, debe asegurarse de que las características de consulta, escalado y almacenamiento admiten los requisitos de datos de la carga de trabajo. Obtenga información sobre cómo las distintas opciones de bases de datos se ajustan a sus modelos de datos y qué opciones de configuración son las mejores para su caso de uso.  

 AWS proporciona numerosos motores de bases de datos personalizadas, entre los que se incluyen bases de datos relacionales, de valor clave, de documentos, en memoria, de gráficos, de serie temporal y de libro mayor. Cada solución de administración de datos tiene opciones y configuraciones a su disposición para admitir sus casos de uso y modelos de datos. Su carga de trabajo podría utilizar varias soluciones de bases de datos diferentes, en función de las características de los datos. Al seleccionar las mejores soluciones de bases de datos para un problema específico, puede prescindir de las bases de datos monolíticas, con el enfoque de solución única que resulta restrictiva, y centrarse en la administración de los datos para satisfacer las necesidades de su cliente. 

 **Resultado deseado:** Las características de datos de la carga de trabajo se documentan con suficiente detalle para facilitar la selección y la configuración de las soluciones de bases de datos de asistencia y proporcionan información sobre posibles alternativas. 

 **Patrones de uso no recomendados comunes:** 
+  No considerar formas de segmentar grandes conjuntos de datos en colecciones más pequeñas de datos que tengan características similares, lo que hace que se pierdan oportunidades de utilizar bases de datos más personalizadas que se ajusten mejor a las características de los datos y del crecimiento. 
+  No identificar los patrones de acceso a los datos por adelantado, lo que conduce a una costosa y compleja repetición posterior del trabajo. 
+  Limitar el crecimiento mediante el uso de estrategias de almacenamiento de datos que no se escalan tan rápidamente como se necesita. 
+  Elegir un tipo de base de datos y un proveedor para todas las cargas de trabajo. 
+  Limitarse a una solución de base de datos porque se tiene experiencia y conocimiento interno de un tipo concreto de solución de base de datos. 
+  Mantener una solución de base de datos porque funcionaba bien en un entorno local. 

 **Beneficios de establecer esta práctica recomendada:** familiarícese con todas las soluciones de bases de datos de AWS para poder determinar la solución de base de datos correcta para sus diversas cargas de trabajo. Después de seleccionar la solución de base de datos adecuada para su carga de trabajo, puede experimentar rápidamente con cada una de esas ofertas de bases de datos para determinar si siguen satisfaciendo sus necesidades de carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 
+  Es posible que no se identifique el ahorro potencial de costes. 
+  Los datos pueden no estar protegidos en el nivel requerido. 
+  Es posible que el acceso a los datos y el rendimiento del almacenamiento no sean óptimos. 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Defina las características de los datos y los patrones de acceso de su carga de trabajo. Revise todas las soluciones de bases de datos disponibles para identificar cuál es la que respalda sus necesidades de datos. En una carga de trabajo determinada, pueden seleccionarse varias bases de datos. Evalúe cada servicio o grupo de servicios y valórelos individualmente. Si se identifican posibles soluciones alternativas de administración de datos para una parte o la totalidad de los datos, experimente con las implementaciones alternativas que podrían desbloquear los beneficios de coste, seguridad, rendimiento y fiabilidad. Actualice la documentación existente, en caso de que se adopte un nuevo enfoque de administración de datos. 


|  **Tipo**  |  **Servicios de AWS**  |  **Características clave**  |  **Casos de uso comunes**  | 
| --- | --- | --- | --- | 
|  Relacionales  |  Amazon RDS, Amazon Aurora  |  Integridad referencial, transacciones ACID, esquema en escritura  |  ERP, CRM, software comercial  | 
|  De clave-valor  |  Amazon DynamoDB  |  Alto rendimiento, baja latencia, escalabilidad casi infinita  |  Carros de la compra (comercio electrónico), catálogos de productos, aplicaciones de chat  | 
|  Documento  |  Amazon DocumentDB  |  Almacenar documentos JSON y consultar sobre cualquier atributo  |  Administración de contenidos (CMS), perfiles de clientes, aplicaciones móviles  | 
|  En memoria  |  Amazon ElastiCache, Amazon MemoryDB  |  Latencia de microsegundos  |  Caché, tablas de clasificación de juegos  | 
|  Gráfico  |  Amazon Neptune  |  Datos muy relacionales en los que las relaciones entre los datos tienen significado  |  Redes sociales, motores de personalización, detección de fraude  | 
|  Serie temporal  |  Amazon Timestream  |  Datos en los que la dimensión principal es el tiempo  |  DevOps, IoT, supervisión  | 
|  Columnas anchas  |  Amazon Keyspaces  |  Cargas de trabajo de Cassandra.  |  Mantenimiento de equipos industriales, optimización de enrutamiento  | 
|  Libro mayor  |  Amazon QLDB  |  Libro mayor inmutable y criptográficamente verificable de los cambios  |  Sistemas de registro, sanidad, cadenas de suministro, instituciones financieras  | 

 **Pasos para la aplicación** 

1.  ¿Cómo están estructurados los datos? (por ejemplo, no estructurados, clave-valor, semiestructurados, relacionales) 

   1.  Si los datos no están estructurados, considere la posibilidad de usar un almacén de objetos como [Amazon S3](https://aws.amazon.com/products/storage/data-lake-storage/) o una base de datos NoSQL como [Amazon DocumentDB.](https://aws.amazon.com/documentdb/) 

   1.  Para los datos de valor clave, considere la posibilidad de usar [DynamoDB](https://aws.amazon.com/documentdb/), [ElastiCache para Redis](https://aws.amazon.com/elasticache/redis/) o bien [MemoryDB.](https://aws.amazon.com/memorydb/) 

   1.  Si los datos tienen una estructura relacional, ¿qué nivel de integridad referencial se requiere? 

      1.  Para las restricciones de clave externa, las bases de datos relacionales como [Amazon RDS](https://aws.amazon.com/rds/) y [Aurora](https://aws.amazon.com/rds/aurora/) pueden proporcionar este nivel de integridad. 

      1.  Normalmente, dentro de un modelo de datos NoSQL, se anularía la normalización de los datos en un único documento o colección de documentos para recuperarlos en una única solicitud en lugar de unirlos en diferentes documentos o tablas.  

1.  ¿Se requiere el cumplimiento de ACID (atomicidad, coherencia, aislamiento, durabilidad)? 

   1.  Si se requieren las propiedades ACID asociadas a las bases de datos relacionales, considere la posibilidad de usar una base de datos relacional como [Amazon RDS](https://aws.amazon.com/rds/) y [Aurora.](https://aws.amazon.com/rds/aurora/) 

1.  ¿Qué modelo de coherencia se requiere? 

   1.  Si su aplicación puede tolerar una coherencia eventual, considere una implementación NoSQL. Revise las demás características como ayuda para elegir qué [base de datos NoSQL](https://aws.amazon.com/nosql/) es la más adecuada. 

   1.  Si se requiere una coherencia fuerte, puede utilizar lecturas con coherencia fuerte con [DynamoDB](https://aws.amazon.com/documentdb/) o una base de datos relacional como [Amazon RDS](https://aws.amazon.com/rds/). 

1.  ¿Qué formatos de consulta y de resultados se deben admitir? (por ejemplo, SQL, CSV, Parque, Avro, JSON, etc.) 

1.  ¿Qué tipos de datos, tamaños de campo y cantidades globales hay? (por ejemplo, texto, numérico, espacial, serie temporal calculada, binario o blob, documento) 

1.  ¿Cómo cambiarán las necesidades de almacenamiento con el tiempo? ¿Cómo afecta esto a la escalabilidad? 

   1.  Las bases de datos sin servidor, como [DynamoDB](https://aws.amazon.com/documentdb/) y [Amazon Quantum Ledger Database](https://aws.amazon.com/qldb/) se escalarán dinámicamente hasta llegar a un almacenamiento casi ilimitado. 

   1.  Las bases de datos relacionales tienen límites máximos de almacenamiento aprovisionado y, a menudo, se deben hacer particiones horizontalmente mediante mecanismos como la fragmentación una vez que alcanzan estos límites. 

1.  ¿Cuál es la proporción de consultas de lectura en relación con las de escritura? ¿Es probable que el almacenamiento en caché mejore el rendimiento? 

   1.  Las cargas de trabajo con mucha lecturas pueden beneficiarse de una capa de caché, que podría ser [ElastiCache](https://aws.amazon.com/elasticache/) o bien [DAX](https://aws.amazon.com/dynamodb/dax/) si la base de datos es DynamoDB. 

   1.  Las lecturas también pueden descargarse en réplicas de lectura con bases de datos relacionales como [Amazon RDS](https://aws.amazon.com/rds/). 

1.  ¿Tiene mayor prioridad el almacenamiento y la modificación (OLTP, procesamiento de transacciones en línea) o la recuperación y la elaboración de informes (OLAP, procesamiento analítico en línea)? 

   1.  Para el procesamiento transaccional de alto rendimiento, considere una base de datos NoSQL como DynamoDB o Amazon DocumentDB. 

   1.  Para las consultas analíticas, considere una base de datos en columnas como [Amazon Redshift](https://aws.amazon.com/redshift/) o la exportación de los datos a Amazon S3 y la realización de análisis mediante [Athena](https://aws.amazon.com/athena/) o bien [QuickSight.](https://aws.amazon.com/quicksight/) 

1.  ¿Qué grado de confidencialidad tienen estos datos y qué nivel de protección y cifrado requieren? 

   1.  Todos los motores Amazon RDS y Aurora admiten el cifrado de datos en reposo mediante AWS KMS. Microsoft SQL Server y Oracle también admiten el cifrado transparente de datos (TDE) nativo cuando se utiliza Amazon RDS. 

   1.  Para DynamoDB, puede utilizar el control de acceso detallado con [IAM](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-overview.html) para controlar quién tiene acceso a determinados datos en el nivel de clave. 

1.  ¿Qué nivel de durabilidad requieren los datos? 

   1.  Aurora replica automáticamente sus datos en tres zonas de disponibilidad en una región, lo que significa que sus datos son muy duraderos con menos posibilidades de pérdida. 

   1.  DynamoDB se replica automáticamente en varias zonas de disponibilidad, lo que proporciona alta disponibilidad y durabilidad de los datos. 

   1.  Amazon S3 proporciona 11 nueves de durabilidad. Muchos servicios de bases de datos, como Amazon RDS y DynamoDB, admiten la exportación de datos a Amazon S3 para la retención y el archivo a largo plazo. 

1.  ¿Los requisitos de [objetivo de tiempo de recuperación (RTO) u objetivo de punto de recuperación (RPO)](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/plan-for-disaster-recovery-dr.html) influyen en la solución? 

   1.  Amazon RDS, Aurora, DynamoDB, Amazon DocumentDB y Neptune admiten la recuperación puntual y la copia de seguridad y restauración bajo demanda.  

   1.  En el caso de los requisitos de alta disponibilidad, las tablas de DynamoDB se pueden replicar globalmente mediante la característica de [tablas globales](https://aws.amazon.com/dynamodb/global-tables/) y los clústeres de Aurora pueden replicarse en varias regiones con la característica de base de datos global. Además, los buckets de S3 pueden replicarse entre Regiones de AWS mediante la replicación entre regiones.  

1.  ¿Existe el deseo de evitar los motores de bases de datos comerciales o costes de licencia? 

   1.  Considere la posibilidad de utilizar motores de código abierto como PostgreSQL y MySQL en Amazon RDS o Aurora 

   1.  Use [AWS DMS](https://aws.amazon.com/dms/) y [AWS SCT](https://aws.amazon.com/dms/schema-conversion-tool/) para realizar migraciones de los motores de bases de datos comerciales a los de código abierto 

1.  ¿Cuál es la expectativa operativa de la base de datos? ¿El cambio a los servicios administrados es una preocupación principal? 

   1.  El uso de Amazon RDS en lugar de Amazon EC2 y DynamoDB o Amazon DocumentDB en lugar de alojar una base de datos NoSQL puede reducir la carga operativa. 

1.  ¿Cómo se accede actualmente a la base de datos? ¿Se trata solo del acceso a la aplicación, o hay usuarios de inteligencia empresarial (BI) y otras aplicaciones comerciales conectadas? 

   1.  Si tiene dependencias de herramientas externas, es posible que deba mantener la compatibilidad con las bases de datos que soportan. Amazon RDS es completamente compatible con las diferentes versiones de motores que soporta, como Microsoft SQL Server, Oracle, MySQL y PostgreSQL. 

1.  A continuación, se presenta una lista de posibles servicios de administración de datos y dónde pueden utilizarse mejor: 

   1.  Las bases de datos relacionales almacenan datos con esquemas predefinidos y relaciones entre ellos. Estas bases de datos se han diseñado para respaldar las transacciones ACID (atomicidad, coherencia, aislamiento, durabilidad) y mantener la integridad referencial y una coherencia fuerte de los datos. Muchas aplicaciones tradicionales, la planificación de recursos empresariales (ERP), la administración de las relaciones con los clientes (CRM) y el comercio electrónico utilizan bases de datos relacionales para almacenar sus datos. Puede ejecutar muchos de estos motores de bases de datos en Amazon EC2 o elegir uno de los [servicios de base de datos gestionados por AWS](https://aws.amazon.com/products/databases/): [Amazon Aurora](https://aws.amazon.com/rds/aurora), [Amazon RDS](https://aws.amazon.com/rds)y [Amazon Redshift](https://aws.amazon.com/redshift). 

   1.  Las bases de datos de clave-valor están optimizadas para patrones de acceso comunes, normalmente para almacenar y recuperar grandes volúmenes de datos. Estas bases de datos ofrecen tiempos de respuesta rápidos, incluso en volúmenes extremos de solicitudes simultáneas. Las aplicaciones web con mucho tráfico, los sistemas de comercio electrónico y las aplicaciones de juegos son casos de uso típicos para las bases de datos de clave-valor. En AWS, puede utilizar [Amazon DynamoDB](https://aws.amazon.com/dynamodb/), una base de datos duradera, completamente administrada, multirregión y multimaestro, con seguridad integrada, copia de seguridad y restauración, y almacenamiento en memoria para aplicaciones a escala de Internet. 

   1.  Las bases de datos en memoria se utilizan para aplicaciones que requieren acceso a los datos en tiempo real, menor latencia y mayor rendimiento. Al almacenar los datos directamente en la memoria, estas bases de datos ofrecen una latencia de microsegundos a las aplicaciones en las que la latencia de milisegundos no es suficiente. Puede utilizar las bases de datos en memoria para el almacenamiento en caché de aplicaciones, la administración de sesiones, las tablas de clasificación de juegos y las aplicaciones geoespaciales. [Amazon ElastiCache](https://aws.amazon.com/elasticache/) es un almacén de datos en memoria completamente administrado, compatible con [Redis](https://aws.amazon.com/elasticache/redis/) o bien [Memcached](https://aws.amazon.com/elasticache/memcached). En el caso de que las aplicaciones también requieran una mayor durabilidad, [Amazon MemoryDB para Redis](https://aws.amazon.com/memorydb/) ofrece esto además de ser un servicio de base de datos duradero y en memoria para ofrecer un rendimiento ultrarrápido. 

   1.  Una base de datos de documentos se ha diseñado para almacenar datos semiestructurados como documentos de tipo JSON. Estas bases de datos ayudan a los desarrolladores a crear y actualizar rápidamente aplicaciones como la administración de contenidos, catálogos y perfiles de usuario. [Amazon DocumentDB](https://aws.amazon.com/documentdb/) es un servicio de base de datos de documentos escalable, de alta disponibilidad y completamente administrado que admite cargas de trabajo de MongoDB. 

   1.  Un almacén de columnas anchas es un tipo de base de datos NoSQL. Utiliza tablas, filas y columnas, pero, a diferencia de una base de datos relacional, los nombres y el formato de las columnas pueden variar de una fila a otra en la misma tabla. Por lo general, un almacén de columnas anchas está en aplicaciones industriales a gran escala para el mantenimiento de equipos, la administración de flotas y la optimización de rutas. [Amazon Keyspaces (para Apache Cassandra)](https://aws.amazon.com/mcs/) es un servicio de base de datos de columnas anchas compatible con Apache Cassandra, escalable, altamente disponible y administrado. 

   1.  Las bases de datos de grafos se utilizan para aplicaciones que deben navegar y consultar millones de relaciones entre conjuntos de datos de grafos con un alto grado de conexión y con una latencia de milisegundos a gran escala. Muchas empresas utilizan las bases de datos de grafos para la detección de fraude, redes sociales y motores de recomendaciones. [Amazon Neptune](https://aws.amazon.com/neptune/) es un servicio de base de datos de grafos de confianza y completamente administrado que facilita la creación y ejecución de aplicaciones que funcionan con conjuntos de datos con un nivel alto de conexión. 

   1.  Las bases de datos de serie temporal recopilan, sintetizan y obtienen información de forma eficaz a partir de datos que cambian con el tiempo. Las aplicaciones de IoT, DevOps y telemetría industrial pueden utilizar bases de datos de serie temporal. [Amazon Timestream](https://aws.amazon.com/timestream/) es un servicio de base de datos de serie temporal rápido, escalable y completamente administrado para aplicaciones operativas y de IoT que facilita el almacenamiento y el análisis de billones de eventos al día. 

   1.  Las bases de datos de libro mayor proporcionan una autoridad centralizada y de confianza para mantener un registro de transacciones escalable, inmutable y verificable criptográficamente para cada aplicación. Las bases de datos de libro mayor se utilizan para sistemas de registro, cadena de suministro, registros e incluso transacciones bancarias. [Amazon Quantum Ledger Database (Amazon QLDB)](https://aws.amazon.com/qldb/) es una base de datos de libro mayor completamente administrada que proporciona un registro de transacciones transparente, inmutable y criptográficamente verificable, propiedad de una autoridad central de confianza. Amazon QLDB realiza un seguimiento de cada cambio de datos de la aplicación y mantiene un historial completo y verificable de los cambios a lo largo del tiempo. 

 **Nivel de esfuerzo para el plan de implementación: **Si una carga de trabajo se desplaza de una solución de base de datos a otra, podría haber un nivel de esfuerzo *alto* implicado en la refactorización de los datos y la aplicación.   

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Bases de datos en la nube con AWS ](https://aws.amazon.com/products/databases/?ref=wellarchitected) 
+  [Almacenamiento en caché de base de datos de AWS ](https://aws.amazon.com/caching/database-caching/?ref=wellarchitected) 
+  [Acelerador de Amazon DynamoDB ](https://aws.amazon.com/dynamodb/dax/?ref=wellarchitected) 
+  [Prácticas recomendadas de Amazon Aurora ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html?ref=wellarchitected) 
+  [Rendimiento de Amazon Redshift ](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html?ref=wellarchitected) 
+  [Los 10 mejores consejos de rendimiento de Amazon Athena ](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/?ref=wellarchitected) 
+  [Prácticas recomendadas de Amazon Redshift Spectrum ](https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/?ref=wellarchitected) 
+  [Prácticas recomendadas de Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html?ref=wellarchitected) 
+  [Elegir entre EC2 y Amazon RDS](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-sql-server/comparison.html) 
+  [Prácticas recomendadas para implementar Amazon ElastiCache](https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/BestPractices.html) 

 **Vídeos relacionados:** 
+ [AWS purpose-built databases (Bases de datos personalizadas de AWS) (DAT209-L) ](https://www.youtube.com/watch?v=q81TVuV5u28) 
+ [Amazon Aurora storage demystified: How it all works (Desmitificación del almacenamiento de Amazon Aurora: cómo funciona todo) (DAT309-R) ](https://www.youtube.com/watch?v=uaQEGLKtw54) 
+ [Amazon DynamoDB deep dive: Advanced design patterns (Profundización de Amazon DynamoDB: patrones de diseño avanzado) (DAT403-R1) ](https://www.youtube.com/watch?v=6yqfmXiZTlM) 

 **Ejemplos relacionados:** 
+  [Optimizar el patrón de datos mediante el uso compartido de datos de Amazon Redshift](https://wellarchitectedlabs.com/sustainability/300_labs/300_optimize_data_pattern_using_redshift_data_sharing/) 
+  [Migraciones de bases de datos](https://github.com/aws-samples/aws-database-migration-samples) 
+  [MS SQL Server: demostración de replicación de AWS Database Migration Service (DMS)](https://github.com/aws-samples/aws-dms-sql-server) 
+  [Taller práctico de modernización de bases de datos](https://github.com/aws-samples/amazon-rds-purpose-built-workshop) 
+  [Ejemplos de Amazon Neptune](https://github.com/aws-samples/amazon-neptune-samples) 

# PERF04-BP02 Evaluar las opciones disponibles
<a name="perf_right_database_solution_evaluate_options"></a>

 Comprenda las opciones de bases de datos disponibles y cómo puede optimizar el rendimiento antes de seleccionar su solución de administración de datos. Utilice las pruebas de carga para identificar las métricas de la base de datos que son importantes para su carga de trabajo. Mientras explora las opciones de la base de datos, tenga en cuenta varios aspectos como los grupos de parámetros, las opciones de almacenamiento, la memoria, la computación, la réplica de lectura, la coherencia posterior, la agrupación de conexiones y las opciones de almacenamiento en caché. Experimente con estas diversas opciones de configuración para mejorar las métricas. 

 **Resultado esperado:** una carga de trabajo podría tener una o más soluciones de bases de datos utilizadas en función de los tipos de datos. La funcionalidad y las prestaciones de la base de datos se ajustan de forma óptima a las características de los datos, los patrones de acceso y los requisitos de la carga de trabajo. Para optimizar el rendimiento y el coste de su base de datos, debe evaluar los patrones de acceso a los datos para determinar las opciones adecuadas de la base de datos. Evalúe los tiempos de consulta aceptables para asegurarse de que las opciones de base de datos seleccionadas pueden cumplir los requisitos. 

 **Patrones de uso no recomendados comunes:** 
+  No identificar los patrones de acceso a los datos. 
+  No conocer las opciones de configuración de la solución elegida para la administración de datos. 
+  Confiar únicamente en el aumento del tamaño de la instancia sin considerar otras opciones de configuración disponibles. 
+  No comprobar las características de escalado de la solución elegida. 

 

 **Beneficios de establecer esta práctica recomendada:** si explora y experimenta con las opciones de bases de datos, podrá reducir el coste de la infraestructura, mejorar el rendimiento y la escalabilidad y reducir el esfuerzo necesario para mantener sus cargas de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 
+  Tener que optimizar para una base de datos *que sirve para todo* significa hacer compromisos innecesarios. 
+  Mayores costes por no haber configurado la solución de base de datos para que se ajuste a los patrones de tráfico. 
+  Los problemas operativos pueden surgir de los problemas de escala. 
+  Los datos pueden no estar protegidos al nivel requerido. 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Comprenda las características de los datos de su carga de trabajo para poder configurar las opciones de su base de datos. Realice pruebas de carga para identificar sus métricas de rendimiento clave y los cuellos de botella. Utilice estas características y métricas para evaluar las opciones de la base de datos y experimentar con diferentes configuraciones. 


|  Servicios de AWS  |  Amazon RDS, Amazon Aurora  |  Amazon DynamoDB  |  Amazon DocumentDB  |  Amazon ElastiCache  |  Amazon Neptune  |  Amazon Timestream  |  Amazon Keyspaces  |  Amazon QLDB  | 
| --- | --- | --- | --- | --- | --- | --- | --- | --- | 
|  Escalado de computación  |  Aumentar el tamaño de la instancia, escalado automático de instancias sin servidor de Aurora en respuesta a los cambios en la carga  |  Escalado automático de lectura/escritura con el modo de capacidad bajo demanda o escalado automático de capacidad de lectura/escritura aprovisionada en el modo de capacidad aprovisionada  |  Aumentar el tamaño de la instancia  |  Aumentar el tamaño de la instancia, añadir nodos al clúster  |  Aumentar el tamaño de la instancia  |  Se escala automáticamente para ajustar la capacidad  |  Escalado automático de lectura/escritura con el modo de capacidad bajo demanda o escalado automático de capacidad de lectura/escritura aprovisionada en el modo de capacidad aprovisionada  |  Se escala automáticamente para ajustar la capacidad  | 
|  Escalado horizontal de lecturas  |  Todos los motores admiten réplicas de lectura. Aurora admite el escalado automático de las instancias de réplica de lectura  |  Aumentar las unidades de capacidad de lectura aprovisionadas  |  Réplicas de lectura  |  Réplicas de lectura  |  Réplicas de lectura. Admite el escalado automático de las instancias de réplicas de lectura  |  Escalado automático  |  Aumentar las unidades de capacidad de lectura aprovisionadas  |  Escala automáticamente verticalmente hasta los límites de concurrencia documentados  | 
|  Escalado horizontal de escrituras  |  Aumentando el tamaño de la instancia, agrupando en lotes las escrituras en la aplicación o añadiendo una cola delante de la base de datos. Escalado horizontal mediante particiones en el nivel de la aplicación en múltiples instancias  |  Aumente las unidades de capacidad de escritura aprovisionadas. Garantizar una clave de partición óptima para evitar la limitación de escritura en el nivel de la partición  |  Aumentar el tamaño de la instancia principal  |  Uso de Redis en modo clúster para distribuir las escrituras entre las particiones  |  Aumentar el tamaño de la instancia  |  Las solicitudes de escritura pueden limitarse durante el escalado. Si encuentra excepciones de limitación, continúe enviando datos con el mismo rendimiento (o superior) para escalar automáticamente. Escrituras por lotes para reducir las solicitudes de escritura concurrentes  |  Aumente las unidades de capacidad de escritura aprovisionadas. Garantizar una clave de partición óptima para evitar la limitación de escritura en el nivel de la partición  |  Escala automáticamente verticalmente hasta los límites de concurrencia documentados  | 
|  Configuración del motor  |  Grupos de parámetros  |  No corresponde  |  Grupos de parámetros  |  Grupos de parámetros  |  Grupos de parámetros  |  No corresponde  |  No corresponde  |  No corresponde  | 
|  Almacenamiento en caché  |  Caché en memoria, configurable mediante grupos de parámetros. Combinar con una caché dedicada, como ElastiCache para Redis, para descargar las solicitudes de los elementos a los que se accede con frecuencia  |  Caché totalmente administrada de DAX (DAX) disponible  |  Almacenamiento en caché en memoria. Opcionalmente combinar con una caché dedicada, como ElastiCache para Redis, para descargar las solicitudes de los elementos a los que se accede con frecuencia  |  La función principal es el almacenamiento en caché  |  Utilizar la caché de resultados de consulta para almacenar en caché el resultado de una consulta de solo lectura  |  Timestream tiene dos niveles de almacenamiento; uno de ellos es un nivel de alto rendimiento en memoria  |  Despliegue una caché separada dedicada como ElastiCache para Redis, para descargar las solicitudes de los elementos a los que se accede con frecuencia  |  No corresponde  | 
|  Alta disponibilidad / recuperación de desastres  |  La configuración recomendada para las cargas de trabajo de producción es ejecutar una instancia en espera en una segunda zona de disponibilidad para proporcionar resiliencia dentro de una región.  Para la resiliencia entre regiones, se puede utilizar la base de datos global de Aurora  |  Alta disponibilidad en una región. Las tablas se pueden replicar en todas las regiones utilizando las tablas globales de DynanoDB  |  Cree varias instancias en las zonas de disponibilidad para que estén disponibles.  Las instantáneas pueden compartirse entre regiones y los clústeres pueden replicarse utilizando DMS para proporcionar replicación entre regiones y recuperación de desastres  |  La configuración recomendada para los clústeres de producción es crear al menos un nodo en una zona de disponibilidad secundaria.  El almacén de datos global de ElastiCache se puede usar para replicar clústeres en regiones.  |  Las réplicas de lectura en otras zonas de disponibilidad sirven como objetivos de conmutación por error.  Las instantáneas pueden compartirse entre regiones y los clústeres pueden replicarse usando flujos de Neptune para replicar datos entre dos clústeres en dos regiones diferentes.  |  Alta disponibilidad dentro de una región. La replicación entre regiones requiere el desarrollo de aplicaciones personalizadas utilizando el SDK de Timestream  |  Alta disponibilidad en una región.  La replicación entre regiones requiere una lógica de aplicación personalizada o herramientas de terceros  |  Alta disponibilidad en una región.  Para replicar entre regiones, exporte el contenido del diario de Amazon QLDB a un bucket de S3 y configure el bucket para la replicación entre regiones.  | 

 

 **Pasos para la aplicación** 

1.  ¿Qué opciones de configuración están disponibles para las bases de datos seleccionadas? 

   1.  Los grupos de parámetros para Amazon RDS y Aurora permiten ajustar los parámetros comunes a nivel del motor de la base de datos, como la memoria asignada para la caché o el ajuste de la zona horaria de la base de datos 

   1.  En el caso de los servicios de bases de datos aprovisionados como Amazon RDS, Aurora, Neptune, Amazon DocumentDB y los desplegados en Amazon EC2, puede cambiar el tipo de instancia, el almacenamiento aprovisionado y añadir réplicas de lectura. 

   1.  DynamoDB permite especificar dos modos de capacidad: bajo demanda y aprovisionada. Para tener en cuenta las diferentes cargas de trabajo, puede cambiar entre estos modos y aumentar la capacidad asignada en el modo aprovisionado en cualquier momento. 

1.  ¿La lectura o escritura de la carga de trabajo es pesada?  

   1.  ¿Qué soluciones hay para descargar las lecturas (réplicas de lectura, caché, etc.)?  

      1.  Para tablas de DynamoDB, puede descargar las lecturas utilizando DAX para el almacenamiento en caché. 

      1.  Para bases de datos relacionales, puede crear un clúster de ElastiCache para Redis y configurar su aplicación para que lea primero de la caché, retrocediendo a la base de datos si el elemento solicitado no está presente. 

      1.  Las bases de datos relacionales, como Amazon RDS y Aurora, y las bases de datos NoSQL aprovisionadas, como Neptune y Amazon DocumentDB, admiten la adición de réplicas de lectura para descargar las partes de lectura de la carga de trabajo. 

      1.  Las bases de datos sin servidor como DynamoDB escalarán automáticamente. Asegúrese de que tiene suficientes unidades de capacidad de lectura (RCU) aprovisionadas para manejar la carga de trabajo. 

   1.  ¿Qué soluciones hay para escalar las escrituras (fragmentación de claves de partición, introducción de una cola, etc.)? 

      1.  En el caso de las bases de datos relacionales, se puede aumentar el tamaño de la instancia para acomodar una mayor carga de trabajo o aumentar las IOP aprovisionadas para permitir un mayor rendimiento del almacenamiento subyacente. 
         +  También puede introducir una cola delante de su base de datos en lugar de escribir directamente en la base de datos. Este patrón permite desacoplar la ingesta de la base de datos y controlar el caudal para que la base de datos no se vea desbordada.  
         +  Agrupar las solicitudes de escritura en lugar de crear muchas transacciones de corta duración puede ayudar a mejorar el rendimiento en las bases de datos relacionales de gran volumen de escritura. 

      1.  Las bases de datos sin servidor como DynamoDB pueden escalar el rendimiento de escritura automáticamente o ajustando las unidades de capacidad de escritura (WCU) aprovisionadas en función del modo de capacidad.  
         +  Sin embargo, todavía puede tener problemas con particiones *activas,* cuando se alcanzan los límites de rendimiento para una clave de partición determinada. Esto se puede mitigar eligiendo una clave de partición más uniformemente distribuida o compartiendo la escritura de la clave de partición.  

1.  ¿Cuáles son los picos de transacciones por segundo (TPS) actuales o previstos? Pruebe utilizando este volumen de tráfico y este volumen \$1X % para entender las características de escalado. 

   1.  Se pueden utilizar herramientas nativas como pg\$1bench para PostgreSQL para realizar pruebas de estrés de la base de datos y comprender los cuellos de botella y las características de escalado. 

   1.  El tráfico de producción debe capturarse para que pueda reproducirse para simular las condiciones del mundo real, además de las cargas de trabajo sintéticas. 

1.  Si se utiliza la computación sin servidor o escalable de forma elástica, pruebe el impacto del escalado en la base de datos. Si procede, introduzca la administración de conexiones o la agrupación para reducir el impacto en la base de datos.  

   1.  RDS Proxy se puede utilizar con Amazon RDS y Aurora para administrar conexiones a la base de datos.  

   1.  Las bases de datos sin servidor como DynamoDB no tienen conexiones asociadas, pero consideran la capacidad aprovisionada y las políticas de escalado automático para hacer frente a los picos de carga. 

1.  ¿Es la carga predecible, hay picos de carga y periodos de inactividad? 

   1.  Si hay periodos de inactividad, considere la posibilidad de reducir la capacidad aprovisionada o el tamaño de la instancia durante estos periodos. Aurora sin servidor V2 escalará y desescalará verticalmente en función de la carga. 

   1.  Para las instancias que no son de producción, considere la posibilidad de pausarlas o detenerlas durante las horas no laborables. 

1.  ¿Necesita segmentar y separar sus modelos de datos en función de los patrones de acceso y las características de los datos? 

   1.  Considere la posibilidad de utilizar AWS DMS o AWS SCT para trasladar sus datos a otros servicios. 

## Nivel de esfuerzo para el plan de implementación: 
<a name="level-of-effort-for-the-implementation-plan-to-establish-this-best-practice-you-must-be-aware-of-your-current-data-characteristics-and-metrics.-gathering-those-metrics-establishing-a-baseline-and-then-using-those-metrics-to-identify-the-ideal-database-configuration-options-is-a-low-to-moderate-level-of-effort.-this-is-best-validated-by-load-tests-and-experimentation."></a>

Para establecer esta práctica recomendada, debe conocer sus características y métricas de datos actuales. Reunir esas métricas, establecer una línea de referencia y luego usar esas métricas para identificar las opciones ideales de configuración de la base de datos es un nivel de esfuerzo de *bajo* a *moderado* . La mejor forma de validarlo es mediante pruebas de carga y experimentación. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Bases de datos en la nube con AWS ](https://aws.amazon.com/products/databases/?ref=wellarchitected) 
+  [Almacenamiento en caché de base de datos de AWS ](https://aws.amazon.com/caching/database-caching/?ref=wellarchitected) 
+  [Acelerador de Amazon DynamoDB ](https://aws.amazon.com/dynamodb/dax/?ref=wellarchitected) 
+  [Prácticas recomendadas de Amazon Aurora ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html?ref=wellarchitected) 
+  [Rendimiento de Amazon Redshift ](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html?ref=wellarchitected) 
+  [Los 10 mejores consejos de rendimiento de Amazon Athena ](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/?ref=wellarchitected) 
+  [Prácticas recomendadas de Amazon Redshift Spectrum ](https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/?ref=wellarchitected) 
+  [Prácticas recomendadas de Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html?ref=wellarchitected) 

 

 **Vídeos relacionados:** 
+  [Bases de datos personalizadas de AWS (DAT209-L) ](https://www.youtube.com/watch?v=q81TVuV5u28)
+ [Desmitificación del almacenamiento de Amazon Aurora: Cómo funciona realmente (DAT309-R) ](https://www.youtube.com/watch?v=uaQEGLKtw54) 
+  [Análisis en profundidad de Amazon DynamoDB: Patrones de diseño avanzados (DAT403-R1) ](https://www.youtube.com/watch?v=6yqfmXiZTlM)

 **Ejemplos relacionados:** 
+  [Ejemplos de Amazon DynamoDB](https://github.com/aws-samples/aws-dynamodb-examples) 
+  [Muestras de migración de base de datos de AWS](https://github.com/aws-samples/aws-database-migration-samples) 
+  [Taller de modernización de bases de datos](https://github.com/aws-samples/amazon-rds-purpose-built-workshop) 
+  [Trabajar con parámetros en la base de datos de Amazon RDS para PostgreSQL](https://github.com/awsdocs/amazon-rds-user-guide/blob/main/doc_source/Appendix.PostgreSQL.CommonDBATasks.Parameters.md) 

# PERF04-BP03 Recopilar y registrar métricas de rendimiento de la base de datos
<a name="perf_right_database_solution_collect_metrics"></a>

 Para comprender el rendimiento de sus sistemas de administración de datos, es importante realizar un seguimiento de las métricas pertinentes. Estas métricas le ayudarán a optimizar sus recursos de administración de datos, a garantizar que se cumplen los requisitos de la carga de trabajo y a tener una visión clara del rendimiento de la misma. Use herramientas, bibliotecas y sistemas que registren las medidas de rendimiento relacionadas con el rendimiento de la base de datos. 

 

 Hay métricas relacionadas con el sistema en el que se aloja la base de datos (por ejemplo, CPU, almacenamiento, memoria, IOPS), y hay métricas de acceso a los propios datos (por ejemplo, transacciones por segundo, tasas de consulta, tiempos de respuesta, errores). A estas métricas deben acceder fácilmente el personal de soporte u operativo, y tener un registro histórico suficiente para poder identificar tendencias, anomalías y cuellos de botella. 

 

 **Resultado esperado:** para supervisar el rendimiento de las cargas de trabajo de su base de datos, debe registrar múltiples métricas de rendimiento durante un periodo de tiempo. Esto le permite detectar anomalías, así como medir el rendimiento con respecto a las métricas de la empresa para asegurarse de que está satisfaciendo sus necesidades de carga de trabajo. 

 **Patrones de uso no recomendados comunes:** 
+  Solo utiliza la búsqueda manual de métricas en los archivos de registro. 
+  Solo publica las métricas en las herramientas internas utilizadas por su equipo y no tiene una imagen completa de su carga de trabajo. 
+  Solo utiliza las métricas por defecto registradas por el software de supervisión seleccionado. 
+  Solo revisa las métricas cuando hay un problema. 
+  Solo supervisa las métricas en el nivel de sistema, sin capturar las métricas de acceso o de uso de datos. 

 **Beneficios de establecer esta práctica recomendada:** establecer una base de referencia de rendimiento ayuda a comprender el comportamiento normal y los requisitos de las cargas de trabajo. Los patrones anómalos pueden identificarse y depurarse más rápidamente mejorando el rendimiento y la fiabilidad de la base de datos. La capacidad de la base de datos puede configurarse para garantizar un coste óptimo sin poner en riesgo el rendimiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 
+  La incapacidad de diferenciar el nivel de rendimiento fuera de lo normal del rendimiento normal creará dificultades en la identificación de problemas y en la toma de decisiones. 
+  Es posible que no se identifique el ahorro potencial de costes. 
+  No se identificarán patrones de crecimiento que puedan dar lugar a una degradación de la fiabilidad o del rendimiento. 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Identifique, recopile, agregue y correlacione las métricas relacionadas con las bases de datos. Las métricas deben incluir tanto el sistema subyacente que soporta la base de datos como las métricas de la base de datos. Las métricas del sistema subyacente podrían incluir la utilización de la CPU, la memoria, el almacenamiento en disco disponible, la E/S del disco y las métricas de entrada y salida de la red, mientras que las métricas de la base de datos podrían incluir las transacciones por segundo, las consultas principales, las tasas de consultas medias, los tiempos de respuesta, el uso de índices, los bloqueos de tablas, los tiempos de espera de las consultas y el número de conexiones abiertas. Estos datos son cruciales para entender cómo está funcionando la carga de trabajo y cómo se utiliza la solución de base de datos. Utilice estas métricas como parte de un enfoque basado en datos para ajustar y optimizar los recursos de su carga de trabajo.  

 **Pasos para la aplicación:** 

1.  ¿A qué métricas de la base de datos es importante hacer un seguimiento? 

   1.  [Métricas de supervisión de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Monitoring.html) 

   1.  [Supervisión con Información de rendimiento](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html) 

   1.  [Enhanced monitoring](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.overview.html) 

   1.  [Métricas de DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/metrics-dimensions.html) 

   1.  [Supervisión de DynamoDB DAX](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DAX.Monitoring.html) 

   1.  [Supervisión de MemoryDB](https://docs.aws.amazon.com/memorydb/latest/devguide/monitoring-cloudwatch.html) 

   1.  [Supervisión de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/metrics.html) 

   1.  [Métricas y dimensiones de Timestream](https://docs.aws.amazon.com/timestream/latest/developerguide/metrics-dimensions.html) 

   1.  [Métricas de nivel de clúster de Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.AuroraMySQL.Monitoring.Metrics.html) 

   1.  [Supervisión de Amazon Keyspaces](https://docs.aws.amazon.com/keyspaces/latest/devguide/monitoring.html) 

   1.  [Supervisión de Amazon Neptune](https://docs.aws.amazon.com/neptune/latest/userguide/monitoring.html) 

1.  ¿Se beneficiaría la supervisión de la base de datos de una solución de machine learning que detecte anomalías operativas y problemas de rendimiento? 

   1.  [Amazon DevOps Guru para Amazon RDS](https://docs.aws.amazon.com/devops-guru/latest/userguide/working-with-rds.overview.how-it-works.html) proporciona visibilidad a los problemas de rendimiento y hace recomendaciones para las acciones correctivas. 

1.  ¿Necesita detalles a nivel de aplicación sobre el uso de SQL? 

   1.  [AWS X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-api-segmentdocuments.html#api-segmentdocuments-sql) se puede instrumentar en la aplicación para obtener información y encapsular todos los puntos de datos para una sola consulta. 

1.  ¿Dispone actualmente de una solución de registro y supervisión aprobada? 

   1.  [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) puede recopilar métricas entre los recursos de su arquitectura. También puede recopilar y publicar métricas del cliente para negocios de superficie o métricas derivadas. Utilice CloudWatch o soluciones de terceros para establecer alarmas que indiquen cuándo se superan los umbrales. 

1.  ¿Ha identificado y configurado sus políticas de retención de datos para que se ajusten a los objetivos de seguridad y operativos? 

   1.  [Retención de datos por defecto para métricas de CloudWatch](https://aws.amazon.com/cloudwatch/faqs/#AWS_resource_.26_custom_metrics_monitoring) 

   1.  [Retención de datos por defecto para CloudWatch Logs](https://aws.amazon.com/cloudwatch/faqs/#Log_management) 

 **Nivel de esfuerzo para el plan de implementación: **Hay un nivel *medio* de esfuerzo para identificar, rastrear, recopilar, agregar y correlacionar las métricas de todos los recursos de la base de datos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Almacenamiento en caché de base de datos de AWS](https://aws.amazon.com/caching/database-caching/) 
+ [ Los 10 mejores consejos de rendimiento de Amazon Athena ](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/)
+ [ Prácticas recomendadas de Amazon Aurora ](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html)
+  [Acelerador de Amazon DynamoDB ](https://aws.amazon.com/dynamodb/dax/)
+ [Prácticas recomendadas de Amazon DynamoDB ](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html) 
+ [Prácticas recomendadas de Amazon Redshift Spectrum ](https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/) 
+ [Rendimiento de Amazon Redshift ](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html) 
+ [Bases de datos en la nube con AWS](https://aws.amazon.com/products/databases/) 
+  [Información de rendimiento de Amazon RDS](https://aws.amazon.com/rds/performance-insights/) 

 **Vídeos relacionados:** 
+ [Bases de datos personalizadas de AWS (DAT209-L) ](https://www.youtube.com/watch?v=q81TVuV5u28) 
+  [Desmitificación del almacenamiento de Amazon Aurora: Cómo funciona realmente (DAT309-R) ](https://www.youtube.com/watch?v=uaQEGLKtw54)
+  [Análisis en profundidad de Amazon DynamoDB: Patrones de diseño avanzados (DAT403-R1) ](https://www.youtube.com/watch?v=6yqfmXiZTlM)

 **Ejemplos relacionados:** 
+  [Nivel 100: supervisión con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_with_cloudwatch_dashboards/) 
+  [Marco de recopilación de métricas de ingesta del conjunto de datos de AWS](https://github.com/awslabs/aws-dataset-ingestion-metrics-collection-framework) 
+  [Taller de supervisión de Amazon RDS](https://www.workshops.aws/?tag=Enhanced%20Monitoring) 

# PERF04-BP04 Elija el almacenamiento de datos según los patrones de acceso
<a name="perf_right_database_solution_access_patterns"></a>

Utilice los patrones de acceso de la carga de trabajo y los requisitos de las aplicaciones para decidir los servicios de datos y las tecnologías óptimas que se deben utilizar. 

 **Resultado deseado:** el almacenamiento de datos se ha seleccionado en función de los patrones de acceso a los datos identificados y documentados. Esto podría incluir las consultas de lectura, escritura y eliminación más comunes, la necesidad de cálculos y agregaciones, la complejidad de los datos, la interdependencia de los datos y las necesidades de coherencia que se requieran. 

 **Antipatrones usuales:** 
+ Solo selecciona un motor de base de datos para simplificar la administración de las operaciones.
+  Supone que los patrones de acceso a los datos se mantendrán coherentes a lo largo del tiempo. 
+  Implementa transacciones complejas, reversión y lógica de coherencia en la aplicación. 
+  La base de datos está configurada para admitir una posible ampliación del tráfico, lo que provoca que los recursos de la base de datos permanezcan inactivos la mayor parte del tiempo. 
+  Utilización de una base de datos compartida para usos transaccionales y analíticos. 

 **Beneficios de establecer esta práctica recomendada:** la selección y la optimización del almacenamiento de datos en función de los patrones de acceso contribuirán a disminuir la complejidad del desarrollo y a optimizar las oportunidades de rendimiento. Saber cuándo utilizar las réplicas de lectura, las tablas globales, la partición de datos y el almacenamiento en caché le ayudará a disminuir la sobrecarga operativa y a escalar en función de sus necesidades de carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

Identifique y evalúe su patrón de acceso a los datos para seleccionar la configuración de almacenamiento correcta. Cada solución de base de datos tiene opciones para configurar y optimizar su solución de almacenamiento. Utilice las métricas y los registros recopilados y experimente con las opciones para encontrar la configuración óptima. Utilice la siguiente tabla para examinar las opciones de almacenamiento por servicio de base de datos.


|  AWS Services  |  Amazon RDS  |  Amazon Aurora  |  Amazon DynamoDB  |  Amazon DocumentDB  |  Amazon ElastiCache  |  Amazon Neptune  |  Amazon Timestream  |  Amazon Keyspaces  |  Amazon QLDB  | 
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | 
|  Scaling Storage  | Storage can be scaled up manually or configured to scale automatically to a maximum of 64 TiB based on engine types. Provisioned storage cannot be decreased. |  Storage scales automatically up to maximum of 128 TiB and decreases when data is removed. Maximum storage size also depends upon specific Aurora MySQL or Aurora Postgres engine versions.  | Storage automatically scales. Tables are unconstrained in terms of size. | Storage scales automatically up to maximum of 64 TiB. Starting Amazon DocumentDB 4.0 storage can decrease by comparable amounts for data removal through dropping a collection or index. With Amazon DocumentDB 3.6 allocated space remains same and free space is reused when data volume increases. |  Storage is in-memory, tied to instance type or count.  |  Storage scales automatically can grow up to 128 TiB (or 64 TiB in few Regions). Upon data removal from, total allocated space remains same and is reused in the future.  | Organizes your time series data to optimize query processing and reduce storage costs. Retention period can be configured through in-memory and magnetic tiers. | Scales table storage up and down automatically as your application writes, updates, and deletes data. | Storage automatically scales. Tables are unconstrained in terms of size. | 

 

 **Pasos para la aplicación:** 

1.  Obtenga información sobre los requisitos de las transacciones, el cumplimiento de las normas de atomicidad, coherencia, aislamiento y durabilidad (ACID) y las lecturas coherentes. No todas las bases de datos lo admiten y la mayoría de las bases de datos NoSQL proporcionan un modelo de coherencia eventual. 

1.  Tenga en cuenta los patrones de tráfico, la latencia y los requisitos de acceso para las aplicaciones distribuidas globalmente a fin de identificar la solución de almacenamiento óptima. 

1.  Analice los patrones de consulta, los patrones de acceso aleatorio y las consultas únicas. También deben tenerse en cuenta las consideraciones en relación con la funcionalidad de consulta altamente especializada para el procesamiento de lenguaje natural y de texto, las series temporales y los grafos. 

1.  Identifique y documente el crecimiento previsto de los datos y el tráfico. 

   1.  Amazon RDS y Aurora admiten el escalamiento vertical automático del almacenamiento hasta los límites documentados. Más allá de esto, considere la posibilidad de trasladar los datos más antiguos a Amazon S3 para archivarlos, agregar los datos históricos para el análisis o escalar horizontalmente con particiones. 

   1.  DynamoDB y Amazon S3 se escalarán hasta un volumen de almacenamiento casi ilimitado de forma automática. 

   1.  A las instancias y las bases de datos de Amazon RDS que se ejecutan en EC2 se les puede cambiar el tamaño manualmente y a las instancias de EC2 se les pueden añadir nuevos volúmenes de EBS en una fecha posterior para obtener almacenamiento adicional.  

   1.  Los tipos de instancia pueden modificarse en función de los cambios de actividad. Por ejemplo, puede empezar con una instancia pequeña mientras hace pruebas y, a continuación, escalar la instancia cuando empiece a recibir tráfico de producción para el servicio. Aurora Serverless V2 se escala de forma automática en respuesta a los cambios de carga.  

1. Establezca el punto de referencia de los requisitos en torno al rendimiento normal y máximo (transacciones por segundo [TPS] y consultas por segundo [QPS]) y la coherencia (ACID y coherencia final).

1.  Documente los aspectos del despliegue de la solución y los requisitos de acceso a la base de datos (como la replicación global, Multi-AZ, la replicación de lectura y varios nodos de escritura). 

 **Nivel de esfuerzo para el plan de implementación:** bajo. Si no dispone de registros ni métricas para su solución de administración de datos, deberá hacerlo antes de identificar y documentar los patrones de acceso a los datos. Una vez comprendido el patrón de acceso a los datos, la selección y configuración del almacenamiento de datos implica un nivel de esfuerzo bajo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Bases de datos en la nube con AWS](https://aws.amazon.com/products/databases/)
+ [Trabajar con el almacenamiento de las instancias de base de datos de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html)
+ [Almacenamiento de Amazon DocumentDB](https://docs.aws.amazon.com/documentdb/latest/developerguide/how-it-works.html#how-it-works.storage)
+ [Almacenamiento en caché de base de datos de AWS](https://aws.amazon.com/caching/database-caching/)
+ [Almacenamiento de Amazon Timestream](https://docs.aws.amazon.com/timestream/latest/developerguide/storage.html)
+ [Almacenamiento en Amazon Keyspaces](https://docs.aws.amazon.com/keyspaces/latest/devguide/Storage.html)
+ [Preguntas frecuentes de Amazon ElastiCache](https://aws.amazon.com/elasticache/faqs/)
+ [Almacenamiento, fiabilidad y disponibilidad de Amazon Neptune](https://docs.aws.amazon.com/neptune/latest/userguide/feature-overview-storage.html)
+ [Prácticas recomendadas de Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html) 
+ [Acelerador de Amazon DynamoDB](https://aws.amazon.com/dynamodb/dax/) 
+ [Prácticas recomendadas de Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html) 
+  [Tipos de almacenamiento de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html) 
+ [Especificaciones de hardware para clases de instancias de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html#Concepts.DBInstanceClass.Types)
+ [Límites de almacenamiento de Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/CHAP_Limits.html#RDS_Limits.FileSize.Aurora)

 **Vídeos relacionados: ** 
+ [Bases de datos personalizadas de AWS (DAT209-L)](https://www.youtube.com/watch?v=q81TVuV5u28) 
+  [Desmitificación del almacenamiento de Amazon Aurora: cómo funciona realmente (DAT309-R)](https://www.youtube.com/watch?v=uaQEGLKtw54)
+ [Análisis en profundidad de Amazon DynamoDB: patrones de diseño avanzados (DAT403-R1) ](https://www.youtube.com/watch?v=6yqfmXiZTlM)

 **Ejemplos relacionados:** 
+  [Experimente y pruebe con las pruebas de carga distribuida en AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 

# PERF04-BP05 Optimizar el almacenamiento de datos según las métricas y los patrones de acceso
<a name="perf_right_database_solution_optimize_metrics"></a>

 Use características de rendimiento y patrones de acceso que optimicen cómo se almacenan o consultan los datos para lograr el mejor rendimiento posible. Mida el impacto de las optimizaciones como la indexación, la distribución de claves, el diseño del almacenamiento de datos o las estrategias de almacenamiento en caché en el rendimiento del sistema o la eficiencia general. 

 **Patrones de uso no recomendados comunes:** 
+  Solo utiliza la búsqueda manual de archivos de registro con las métricas. 
+  Solo publica las métricas en las herramientas internas. 

 **Beneficios de establecer esta práctica recomendada:** para asegurarse de que se cumplen las métricas requeridas para la carga de trabajo, debe supervisar las métricas de rendimiento de la base de datos relacionadas con las lecturas y las escrituras. Puede utilizar estos datos para añadir nuevas optimizaciones tanto para las lecturas como para las escrituras en la capa de almacenamiento de datos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Optimizar el almacenamiento de datos basándose en métricas y patrones: utilice las métricas notificadas para identificar cualquier área de bajo rendimiento en su carga de trabajo y optimizar los componentes de su base de datos. Cada sistema de base de datos tiene características relacionadas con el rendimiento diferentes que evaluar; por ejemplo, cómo se indexan, almacenan en caché o distribuyen los datos entre varios sistemas. Mida el impacto de sus optimizaciones. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Almacenamiento en caché de base de datos de AWS](https://aws.amazon.com/caching/database-caching/) 
+  [Los 10 mejores consejos de rendimiento de Amazon Athena](https://aws.amazon.com/blogs/big-data/top-10-performance-tuning-tips-for-amazon-athena/) 
+  [Prácticas recomendadas de Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Aurora.BestPractices.html) 
+  [Acelerador de Amazon DynamoDB](https://aws.amazon.com/dynamodb/dax/) 
+  [Prácticas recomendadas de Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/BestPractices.html) 
+  [Prácticas recomendadas de Amazon Redshift Spectrum](https://aws.amazon.com/blogs/big-data/10-best-practices-for-amazon-redshift-spectrum/) 
+  [Rendimiento de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/c_challenges_achieving_high_performance_queries.html) 
+  [Bases de datos en la nube con AWS](https://aws.amazon.com/products/databases/) 
+  [Análisis de las anomalías de rendimiento con DevOps Guru para RDS](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/devops-guru-for-rds.html) 
+  [Modo de capacidad de lectura/escritura para DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html) 

 **Vídeos relacionados:** 
+  [Bases de datos personalizadas de AWS (DAT209-L)](https://www.youtube.com/watch?v=q81TVuV5u28) 
+  [Desmitificación del almacenamiento de Amazon Aurora: cómo funciona todo (DAT309-R)](https://www.youtube.com/watch?v=uaQEGLKtw54) 
+  [Profundización de Amazon DynamoDB: patrones de diseño avanzado (DAT403-R1)](https://www.youtube.com/watch?v=6yqfmXiZTlM) 

 **Ejemplos relacionados:** 
+  [Laboratorios prácticos para Amazon DynamoDB](https://amazon-dynamodb-labs.workshop.aws/hands-on-labs.html) 

# PERF 5: ¿Cómo configura la solución de red?
<a name="perf-05"></a>

 La solución de red óptima para una carga de trabajo varía según los requisitos de latencia, rendimiento, fluctuaciones y ancho de banda. Las limitaciones físicas, como los recursos de usuario o locales, determinan las opciones de ubicación. Estas restricciones pueden compensarse con la ubicación periférica o la ubicación de los recursos. 

**Topics**
+ [PERF05-BP01 Comprender cómo afectan las redes al rendimiento](perf_select_network_understand_impact.md)
+ [PERF05-BP02 Evaluar las características de las redes disponibles](perf_select_network_evaluate_features.md)
+ [PERF05-BP03 Elija una conectividad dedicada de tamaño adecuado o una VPN para las cargas de trabajo híbridas](perf_select_network_hybrid.md)
+ [PERF05-BP04 Aprovechar el equilibrio de carga y la descarga de codificación](perf_select_network_encryption_offload.md)
+ [PERF05-BP05 Elegir los protocolos de red para mejorar el rendimiento](perf_select_network_protocols.md)
+ [PERF05-BP06 Elegir la ubicación de la carga de trabajo en función de los requisitos de la red](perf_select_network_location.md)
+ [PERF05-BP07 Optimizar la configuración de red según las métricas](perf_select_network_optimize.md)

# PERF05-BP01 Comprender cómo afectan las redes al rendimiento
<a name="perf_select_network_understand_impact"></a>

 Analizar y comprender cómo las decisiones relacionadas con la red afectan al rendimiento de la carga de trabajo. La red es responsable de la conectividad entre los componentes de las aplicaciones, los servicios en la nube, las redes periféricas y los datos locales, por lo que puede tener un gran impacto en el rendimiento de las cargas de trabajo. Además del rendimiento de la carga de trabajo, la experiencia del usuario también se ve afectada por la latencia de la red, el ancho de banda, los protocolos, la ubicación, la congestión de la red, las fluctuaciones, el rendimiento y las reglas de enrutamiento. 

 **Resultado deseado:** disponer de una lista documentada de los requisitos de redes de la carga de trabajo, incluida la latencia, el tamaño de los paquetes, las reglas de enrutamiento, los protocolos y los patrones de tráfico que admiten. Examine las soluciones de red disponibles e identifique qué servicio se ajusta a las características de red de su carga de trabajo. Las redes basadas en la nube se pueden reconstruir rápidamente, de modo que hacer evolucionar su arquitectura de red con el tiempo resulta necesario para mantener la eficiencia del rendimiento. 

 **Patrones de uso no recomendados comunes:** 
+  Todo el tráfico fluye a través de sus centros de datos existentes. 
+  Crea en exceso las sesiones de Direct Connect sin comprender los requisitos de uso reales. 
+  No tiene en cuenta las características de la carga de trabajo ni la sobrecarga de cifrado al definir sus soluciones de redes. 
+  Utiliza conceptos y estrategias locales para las soluciones de redes en la nube. 

 **Beneficios de establecer esta práctica recomendada:** comprender el impacto de las redes en el rendimiento de la carga de trabajo le ayudará a identificar posibles cuellos de botella, mejorar la experiencia del usuario, aumentar la fiabilidad y reducir el mantenimiento operativo a medida que cambia la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Identifique las métricas de rendimiento de red importantes de su carga de trabajo y capture sus características de red. Defina y documente los requisitos como parte de un enfoque basado en datos, mediante las comparaciones o las pruebas de carga. Utilice estos datos para identificar los límites de su servicio de red y examine las opciones de configuración que podrían mejorar la carga de trabajo. Conozca las características y opciones de las redes nativas en la nube disponibles y cómo pueden afectar al rendimiento de su carga de trabajo en función de los requisitos. Cada característica de las redes tiene ventajas y desventajas, y puede configurarse para satisfacer las características de su carga de trabajo y escalar en función de sus necesidades. 

 **Pasos de implementación:** 

1.  Defina y documente los requisitos de rendimiento de la red: 

   1.  Incluya métricas como la latencia de red, el ancho de banda, los protocolos, las ubicaciones, los patrones de tráfico (picos y frecuencia), el rendimiento, el cifrado, la inspección y las reglas de enrutamiento. 

1.  Capture sus características de red fundamentales: 

   1.  [Registros de flujo de VPC ](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 

   1.  [Métricas de AWS Transit Gateway](https://docs.aws.amazon.com/vpc/latest/tgw/transit-gateway-cloudwatch-metrics.html) 

   1.  [Métricas de AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-cloudwatch-metrics.html) 

1.  Capture sus características de red de aplicación: 

   1.  [Elastic Network Adaptor](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-network-performance-ena.html) 

   1.  [Métricas de AWS App Mesh](https://docs.aws.amazon.com/app-mesh/latest/userguide/envoy-metrics.html) 

   1.  [Métricas de Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-metrics-and-dimensions.html) 

1.  Capture sus características de red periférica: 

   1.  [Métricas de Amazon CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/viewing-cloudfront-metrics.html) 

   1.  [Métricas de Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/monitoring-cloudwatch.html) 

   1.  [Métricas de AWS Global Accelerator](https://docs.aws.amazon.com/global-accelerator/latest/dg/cloudwatch-monitoring.html) 

1.  Capture sus características de red híbrida: 

   1.  [Métricas de Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/monitoring-cloudwatch.html) 

   1.  [Métricas de AWS Site-to-Site VPN](https://docs.aws.amazon.com/vpn/latest/s2svpn/monitoring-cloudwatch-vpn.html) 

   1.  [Métricas de AWS Client VPN](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/monitoring-cloudwatch.html) 

   1.  [Métricas de Nube de AWS](https://docs.aws.amazon.com/vpc/latest/cloudwan/cloudwan-cloudwatch-metrics.html) 

1.  Capture sus características de red de seguridad: 

   1.  [Métricas de AWS Shield, WAF y Network Firewall](https://docs.aws.amazon.com/waf/latest/developerguide/monitoring-cloudwatch.html) 

1.  Capture las métricas de rendimiento de extremo a extremo con herramientas de seguimiento: 

   1.  [AWS X-Ray](https://aws.amazon.com/xray/) 

   1.  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 

1.  Compare y pruebe el rendimiento de la red: 

   1.  [Compare](https://aws.amazon.com/premiumsupport/knowledge-center/network-throughput-benchmark-linux-ec2/) el rendimiento de la red: Algunos factores que pueden afectar al rendimiento de red de EC2 cuando las instancias están en la misma VPC. Mida el ancho de banda de la red entre las instancias Linux de EC2 en la misma VPC. 

   1.  Realice [pruebas de carga](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) para experimentar con soluciones y opciones de redes 

 **Nivel de esfuerzo para el plan de implementación: **hay un nivel *medio* para documentar los requisitos de red de la carga de trabajo, las opciones y las soluciones disponibles. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) 
+ [EC2 Redes mejoradas en Linux ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html) 
+ [EC2 Redes mejoradas en Windows ](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/enhanced-networking.html) 
+ [EC2 Grupos de ubicación ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) 
+ [Habilitar redes mejoradas con Elastic Network Adapter (ENA) en las instancias de Linux](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking-ena.html) 
+ [Balanceador de carga de red ](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) 
+ [Productos de redes con AWS](https://aws.amazon.com/products/networking/) 
+  [Transit Gateway ](https://docs.aws.amazon.com/vpc/latest/tgw)
+ [Transición al enrutamiento basado en la latencia en Amazon Route 53 ](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/TutorialTransitionToLBR.html) 
+ [Puntos de conexión de VPC ](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) 
+ [Registros de flujo de VPC ](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 

 **Vídeos relacionados:** 
+ [Connectivity to AWS and hybrid AWS network architectures (Conectividad con AWS y arquitecturas de redes de AWS híbridas) (NET317-R1) ](https://www.youtube.com/watch?v=eqW6CPb58gs) 
+ [Optimizing Network Performance for Amazon EC2 Instances (Optimización del rendimiento de red para instancias de Amazon EC2) (CMP308-R1) ](https://www.youtube.com/watch?v=DWiwuYtIgu0) 
+  [Improve Global Network Performance for Applications (Mejorar el rendimiento global de la red para las aplicaciones)](https://youtu.be/vNIALfLTW9M) 
+  [EC2 Instances and Performance Optimization Best Practices (Prácticas recomendadas de optimización del rendimiento y de las instancias de EC2)](https://youtu.be/W0PKclqP3U0) 
+  [Optimizing Network Performance for Amazon EC2 Instances (Optimización del rendimiento de red para instancias de Amazon EC2)](https://youtu.be/DWiwuYtIgu0) 
+  [Networking best practices and tips with the Well-Architected Framework (Prácticas recomendadas y consejos para la creación de redes con Well-Architected Framework)](https://youtu.be/wOMNpG49BeM) 
+  [AWS networking best practices in large-scale migrations (Prácticas recomendadas de redes de AWS en migraciones a gran escala)](https://youtu.be/qCQvwLBjcbs) 

 **Ejemplos relacionados:** 
+  [AWS Transit Gateway y soluciones de seguridad escalables](https://github.com/aws-samples/aws-transit-gateway-and-scalable-security-solutions) 
+  [Talleres de red de AWS](https://networking.workshop.aws/) 

# PERF05-BP02 Evaluar las características de las redes disponibles
<a name="perf_select_network_evaluate_features"></a>

Evalúe las características de la red en la nube que pueden aumentar el rendimiento. Medir el impacto de estas características a través de pruebas, métricas y análisis. Por ejemplo, aproveche las funciones a nivel de red que están disponibles para reducir la latencia, la pérdida de paquetes o las fluctuaciones. 

Muchos servicios se crean para mejorar el rendimiento y otros suelen ofrecer funciones para optimizar el rendimiento de la red. Servicios como AWS, Global Accelerator y Amazon CloudFront existen para mejorar el rendimiento, mientras que la mayoría de los otros servicios tienen características de producto para optimizar el tráfico de la red. Revise las características del producto, como la capacidad de red de las instancias de EC2, los tipos de instancia de red mejorados, las instancias optimizadas con Amazon EBS, la aceleración de la transferencia de Amazon S3 y CloudFront para mejorar el rendimiento de su carga de trabajo. 

**Resultado deseado:** Ha documentado el inventario de componentes dentro de su carga de trabajo y ha identificado qué configuraciones de red por componente le ayudarán a cumplir sus requisitos de rendimiento. Después de evaluar las funciones de red, ha experimentado y medido las métricas de rendimiento para identificar cómo utilizar las funciones disponibles. 

**Patrones comunes de uso no recomendados:** 
+ Coloca todas sus cargas de trabajo en una Región de AWS más cercana a su sede en lugar de una Región de AWS cercana a sus usuarios finales. 
+ No se evalúa el rendimiento de la carga de trabajo y no se evalúa continuamente el rendimiento de la carga de trabajo con respecto a ese punto de referencia.
+ No se revisan las configuraciones de los servicios para mejorar el rendimiento. 

**Beneficios de establecer esta práctica recomendada:** Evaluar todas las características y opciones del servicio puede aumentar el rendimiento de su carga de trabajo, disminuir el esfuerzo necesario para mantener su carga de trabajo y aumentar su posición de seguridad general. Puede utilizar la estructura global de AWS para asegurarse de ofrecer la experiencia de red óptima a sus clientes. 

**Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Revise qué opciones de configuración relacionadas con la red están disponibles para usted y cómo podrían afectar a su carga de trabajo. Comprender la forma en que estas opciones interactúan con su arquitectura y el impacto que tendrán tanto en el rendimiento medido como en el rendimiento percibido por los usuarios es fundamental para la optimización del rendimiento. 

**Pasos para la aplicación:** 

1. Cree una lista de componentes de la carga de trabajo. 

   1. Construya, administre y supervise la red de su organización utilizando [Nube de AWS WAN](https://aws.amazon.com/cloud-wan/). 

   1. Obtenga visibilidad de su red mediante el [Administrador de redes](https://docs.aws.amazon.com/vpc/latest/tgwnm/what-is-network-manager.html). Utilice una herramienta de base de datos de administración de la configuración (CMDB) existente o una herramienta como [AWS Config](https://aws.amazon.com/config/) para crear un inventario de su carga de trabajo y cómo está configurada. 

1. Si se trata de una carga de trabajo existente, identifique y documente el punto de referencia para sus métricas de rendimiento, centrándose en los cuellos de botella y las áreas a mejorar. Las métricas de red relacionadas con el rendimiento variarán según la carga de trabajo en función de los requisitos empresariales y las características de la carga de trabajo. Para empezar, podría ser importante revisar estas métricas para su carga de trabajo: ancho de banda, latencia, pérdida de paquetes, fluctuación y retransmisiones. 

1. Si se trata de una nueva carga de trabajo, realice [pruebas de carga](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) para identificar cuellos de botella en el rendimiento. 

1. Para los cuellos de botella de rendimiento que identifique, revise las opciones de configuración de sus soluciones para identificar las oportunidades de mejora del rendimiento. 

1. Si no conoce las rutas de red, utilice el [Analizador de acceso de red](https://docs.aws.amazon.com/vpc/latest/network-access-analyzer/what-is-vaa.html) para identificarlas. 

1. Revise sus protocolos de red para reducir aún más su latencia.
   + [PERF05-BP05 Elegir los protocolos de red para mejorar el rendimiento](perf_select_network_protocols.md) 

1. Si está utilizando una AWS Site-to-Site VPN a través de múltiples ubicaciones para conectarse a una Región de AWS, revise las [conexiones de Site-to-Site VPN aceleradas](https://docs.aws.amazon.com/vpn/latest/s2svpn/accelerated-vpn.html) en busca de oportunidades para mejorar el rendimiento de la red.

1. Cuando el tráfico de su carga de trabajo se reparte entre varias cuentas, evalúe su topología de red y sus servicios para reducir la latencia. 
   + Evalúe sus compensaciones operativas y de rendimiento entre [Interconexión de VPC](https://docs.aws.amazon.com/vpc/latest/peering/what-is-vpc-peering.html) y [AWS Transit Gateway](https://aws.amazon.com/transit-gateway/) cuando se conectan varias cuentas. AWS Transit Gateway admite un rendimiento de Site-to-Site VPN de AWS para escalar más allá de un solo [límite máximo de IPsec](https://aws.amazon.com/blogs/networking-and-content-delivery/scaling-vpn-throughput-using-aws-transit-gateway/) utilizando rutas múltiples. El tráfico entre una Amazon VPC y AWS Transit Gateway permanece en la red privada de AWS y no se expone a Internet. AWS Transit Gateway simplifica la forma de interconectar todas sus VPC, que pueden abarcar miles de Cuentas de AWS y en las redes locales. Comparta su AWS Transit Gateway entre varias cuentas utilizando [Resource Access Manager](https://aws.amazon.com/ram/). Para obtener visibilidad del tráfico global de su red, utilice el [Administrador de redes](https://aws.amazon.com/transit-gateway/network-manager/) para obtener una visión centralizada de las métricas de su red. 

1. Revise la ubicación de sus usuarios y minimice la distancia entre ellos y la carga de trabajo.

   1. [AWS Global Accelerator](https://aws.amazon.com/global-accelerator/) es un servicio de redes que mejora el rendimiento del tráfico de los usuarios hasta un 60 por ciento utilizando la infraestructura de red global de Amazon Web Services. Cuando Internet está congestionado, AWS Global Accelerator optimiza la ruta hacia su aplicación para mantener bajas de forma constante las pérdidas de paquetes, las fluctuaciones y la latencia. También proporciona direcciones IP estáticas que simplifican el traslado de puntos de conexión entre zonas de disponibilidad o Regiones de AWS sin necesidad de actualizar la configuración de DNS o cambiar las aplicaciones orientadas al cliente. 

   1. [Amazon CloudFront](https://aws.amazon.com/cloudfront/) puede mejorar el rendimiento de la entrega de contenidos de su carga de trabajo y la latencia a nivel mundial. CloudFront cuenta con más de 410 puntos de presencia dispersos por todo el mundo que pueden almacenar en caché sus contenidos y reducir la latencia hasta el usuario final. 

   1. Amazon Route 53 ofrece opciones de [enrutamiento basado en la latencia](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-latency.html), [enrutamiento de geolocalización](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geo.html), [enrutamiento de geoproximidad](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geoproximity.html) y [enrutamiento basado en IP](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-ipbased.html) para ayudar a mejorar el rendimiento de su carga de trabajo para una audiencia a nivel mundial. Identifique qué opción de enrutamiento optimizaría el rendimiento de su carga de trabajo revisando el tráfico de su carga de trabajo y la ubicación de los usuarios. 

1. Evalúe las características adicionales para mejorar las operaciones de entrada/salida por segundo de almacenamiento. 

   1.  [Aceleración de transferencia de Amazon S3](https://aws.amazon.com/s3/transfer-acceleration/) es una función que permite que los usuarios externos se beneficien de las optimizaciones de redes de CloudFront para cargar datos en Amazon S3. Esto mejora la capacidad de transferir grandes cantidades de datos desde ubicaciones remotas que no tienen conectividad dedicada a la Nube de AWS. 

   1.  [Puntos de acceso multirregión de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPoints.html) replica el contenido en varias regiones y simplifica la carga de trabajo proporcionando un punto de acceso. Cuando se utiliza un punto de acceso multirregión, se pueden solicitar o escribir datos en Amazon S3 con el servicio que identifica el bucket de menor latencia. 

1. Revise el ancho de banda de la red de recursos de computación.

   1. Las Interfaces de red elásticas (ENI) utilizadas por las instancias de EC2, los contenedores y las funciones de Lambda están limitadas por el flujo. Revise sus grupos de colocación para optimizar su [rendimiento de red de EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html). Para evitar el cuello de botella en la base por flujo, diseñe su aplicación para utilizar múltiples flujos. Para supervisar y obtener visibilidad de las métricas de red relacionadas con la computación, utilice [Métricas de CloudWatch](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-network-bandwidth.html) y [https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-network-performance-ena.html](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/monitoring-network-performance-ena.html). `ethtool` se incluye en el controlador ENA y expone métricas adicionales relacionadas con la red que pueden publicarse como una [métrica personalizada](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) en CloudWatch. 

   1. Las instancias de EC2 más recientes aprovechan las redes mejoradas. [Las instancias de EC2 de la serie N](https://aws.amazon.com/ec2/nitro/), como `M5n` y `M5dn`, aprovechan la cuarta generación de tarjetas Nitro personalizadas para ofrecer hasta 100 Gbps de rendimiento de red en una sola instancia. Estas instancias ofrecen cuatro veces el ancho de banda de la red y el proceso de paquetes en comparación con las instancias `M5` básicas y son ideales para aplicaciones intensivas de red. 

   1. [Los Adaptadores de red elásticos de Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking-ena.html) (ENA) proporcionan una mayor optimización al ofrecer un mejor rendimiento para sus instancias dentro de un [grupo con ubicación en clúster](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html#placement-groups-cluster%23placement-groups-limitations-cluster). 

   1. [Elastic Fabric Adapter](https://aws.amazon.com/hpc/efa/) (EFA) es una interfaz de red para instancias de Amazon EC2 que permite ejecutar cargas de trabajo que requieren altos niveles de comunicación entre nodos a escala en AWS. Con EFA, las aplicaciones de computación de alto rendimiento (HPC) que utilizan Message Passing Interface (MPI) y las aplicaciones de machine learning (ML) que utilizan NVIDIA Collective Communications Library (NCCL) pueden escalar a miles de CPU o GPU. 

   1. [Las instancias optimizadas por Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) utilizan una pila de configuración optimizada y ofrecen capacidad dedicada adicional para aumentar la E/S de . Esta optimización ofrece el mejor rendimiento para sus volúmenes de EBS mediante la minimización de la contención entre la E/S de Amazon EBS y otro tráfico de red desde su instancia. 

**Nivel de esfuerzo para el plan de implementación: **

Para establecer esta práctica recomendada, debe conocer las opciones de los componentes de la carga de trabajo actual que afectan al rendimiento de la red. Reunir los componentes, evaluar las opciones de mejora de la red, experimentar, implementar y documentar esas mejoras implica un nivel de esfuerzo de *bajo* a *moderado* . 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon EBS - Optimized Instances (Amazon EBS: instancias optimizadas)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) 
+  [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) 
+  [Amazon EC2 instance network bandwidth (Ancho de banda de la red de la instancia de Amazon EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html) 
+  [EC2 Enhanced Networking on Linux (Redes mejoradas EC2 en Linux)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html) 
+  [EC2 Enhanced Networking on Windows (Redes mejoradas de EC2 en Windows)](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/enhanced-networking.html) 
+  [EC2 Placement Groups (Grupos de ubicación de EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) 
+  [Enabling Enhanced Networking with the Elastic Network Adapter (ENA) on Linux Instances (Habilitar redes mejoradas con Elastic Network Adapter [ENA] en las instancias de Linux)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking-ena.html) 
+  [Balanceador de carga de red](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) 
+  [Productos de redes con AWS](https://aws.amazon.com/products/networking/) 
+  [AWS Transit Gateway](https://docs.aws.amazon.com/vpc/latest/tgw) 
+  [Transición al enrutamiento basado en la latencia en Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/TutorialTransitionToLBR.html) 
+  [Puntos de conexión de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) 
+  [Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 
+  [Building a cloud CMDB (Creación de una CMDB en la nube)](https://aws.amazon.com/blogs/mt/building-a-cloud-cmdb-on-aws-for-consistent-resource-configuration-in-hybrid-environments/) 
+  [Scaling VPN throughput using AWS Transit Gateway (Escalar el rendimiento de la VPN mediante AWS Transit Gateway)](https://aws.amazon.com/blogs/networking-and-content-delivery/scaling-vpn-throughput-using-aws-transit-gateway/) 

 **Vídeos relacionados:** 
+  [Conectividad con AWS y arquitecturas de red de AWS híbridas (NET317-R1)](https://www.youtube.com/watch?v=eqW6CPb58gs) 
+  [Optimización del rendimiento de red para instancias de Amazon EC2 (CMP308-R1)](https://www.youtube.com/watch?v=DWiwuYtIgu0) 
+  [AWS Global Accelerator](https://www.youtube.com/watch?v=lAOhr-5Urfk) 

 **Ejemplos relacionados:** 
+  [AWS Transit Gateway and Scalable Security Solutions (AWS Transit Gateway y soluciones de seguridad escalables)](https://github.com/aws-samples/aws-transit-gateway-and-scalable-security-solutions) 
+  [AWS Networking Workshops (Talleres de red de AWS)](https://networking.workshop.aws/) 

# PERF05-BP03 Elija una conectividad dedicada de tamaño adecuado o una VPN para las cargas de trabajo híbridas
<a name="perf_select_network_hybrid"></a>

 Cuando se requiere una red común para conectar los recursos locales y de la nube en AWS, compruebe que dispone del ancho de banda adecuado para satisfacer sus requisitos de rendimiento. Calcule los requisitos de ancho de banda y latencia para su carga de trabajo híbrida. Estas cifras determinarán los requisitos de tamaño para sus opciones de conectividad. 

 **Resultado deseado:** al desplegar una carga de trabajo que necesitará una red híbrida, dispone de varias opciones de configuración para la conectividad, como una conexión dedicada o una red privada virtual (VPN). Seleccione el tipo de conexión adecuado para cada carga de trabajo y compruebe que tiene los requisitos adecuados de ancho de banda y cifrado entre su ubicación y la nube. 

 **Antipatrones usuales:** 
+ No comprende ni identifica todos los requisitos de la carga de trabajo (ancho de banda, latencia, fluctuación, cifrado y necesidades de tráfico).
+  No evalúa las opciones de copia de seguridad o de conectividad paralela. 

 **Beneficios de establecer esta práctica recomendada:** la selección y configuración de soluciones de redes híbridas de tamaño adecuado aumentará la fiabilidad de su carga de trabajo y maximizará las oportunidades de rendimiento. Si identifica los requisitos de la carga de trabajo, planifica con antelación y evalúa las soluciones híbridas, minimizará los costosos cambios en la red física y los gastos operativos, a la vez que acelerará el tiempo de comercialización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Desarrolle una arquitectura de red híbrida basada en sus requisitos de ancho de banda. Calcule los requisitos de ancho de banda y latencia de sus aplicaciones híbridas. Considere qué opción de conectividad es adecuada: una conexión de red dedicada o una VPN basada en Internet.

La conexión dedicada establece una conexión de red a través de líneas privadas. Es adecuada cuando se necesita un gran ancho de banda y una baja latencia con un rendimiento constante. La conexión VPN establece una conexión segura a través de Internet. Es adecuada cuando se necesita una conexión cifrada utilizando una conexión a Internet existente.

En función de sus necesidades de ancho de banda, es posible que una sola conexión de VPN o dedicada no sea suficiente y que deba diseñar una configuración híbrida que permita equilibrar la carga de tráfico en varias conexiones. 

 **Pasos para la implementación** 

1.  Calcule los requisitos de ancho de banda y latencia de sus aplicaciones híbridas. 

   1.  En el caso de aplicaciones existentes que se trasladan a AWS, aproveche los datos de sus sistemas internos de supervisión de red. 

   1.  En el caso de aplicaciones nuevas o existentes para las que no disponga de datos de supervisión, consulte con los propietarios del producto para obtener métricas de rendimiento adecuadas y ofrecer una buena experiencia de usuario. 

1.  Seleccione una conexión dedicada o VPN como opción de conectividad. En función de todos los requisitos de la carga de trabajo (necesidades de cifrado, ancho de banda y tráfico), puede elegir AWS Direct Connect o AWS Site-to-Site VPN (o ambas). El siguiente diagrama le ayudará a elegir el tipo de conexión adecuado. 

   1.  Si considera la conexión dedicada, es posible que necesite AWS Direct Connect, que ofrece un rendimiento más predecible y coherente gracias a su conectividad de red privada. AWS Direct Connect proporciona conectividad dedicada al entorno de AWS, desde 50 Mbps hasta 100 Gbps, mediante una conexión dedicada o una conexión hospedada. Esto le ofrece un ancho de banda aprovisionado y una latencia administrada y controlada, a fin de que su carga de trabajo pueda conectarse de manera eficiente a otros entornos. Mediante el uso de socios de AWS Direct Connect, puede disponer de conectividad de extremo a extremo desde varios entornos, lo que proporciona una red ampliada con un rendimiento coherente. AWS ofrece un ancho de banda de conexión directa escalable mediante 100 Gbps nativos, un grupo de agregación de enlaces (LAG) o enrutamiento de múltiples rutas de igual coste (ECMP). 

   1.  Si considera una conexión VPN, una VPN administrada por AWS es la opción recomendada. La AWS Site-to-Site VPN proporciona un servicio de VPN administrado que admite el protocolo de seguridad de protocolo de Internet (IPsec). Cuando se crea una conexión VPN, cada conexión VPN incluye dos túneles para ofrecer una alta disponibilidad. Con AWS Transit Gateway, puede simplificar la conectividad entre varias VPC y también conectarse a cualquier VPC conectada a AWS Transit Gateway con una única conexión VPN. AWS Transit Gateway también le permite escalar más allá del límite de rendimiento de VPN de IPsec de 1,25 Gbps al habilitar el soporte de enrutamiento de múltiples rutas de igual coste (ECMP) en varios túneles de VPN. 

![\[Un diagrama de flujo que describe las opciones que debe tener en cuenta a la hora de determinar si necesita o no un rendimiento determinístico de su red.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/deterministic-performance-flowchart.png)


 

 **Nivel de esfuerzo para el plan de implementación:** alto. La evaluación de las necesidades de la carga de trabajo para redes híbridas y la implementación de soluciones de redes híbridas supone un esfuerzo significativo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Equilibrador de carga de red](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) 
+ [Networking Products with AWS](https://aws.amazon.com/products/networking/) (Productos de redes con AWS) 
+ [AWS Transit Gateway](https://docs.aws.amazon.com/vpc/latest/tgw) 
+ [Transición al direccionamiento basado en la latencia en Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/TutorialTransitionToLBR.html) 
+ [Puntos de conexión de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) 
+ [Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 
+  [AWS Site-to-Site VPN](https://docs.aws.amazon.com/vpn/latest/s2svpn/VPC_VPN.html) 
+  [Building a Scalable and Secure Multi-VPC AWS Network Infrastructure](https://docs.aws.amazon.com/whitepapers/latest/building-scalable-secure-multi-vpc-network-infrastructure/welcome.html) (Creación de una infraestructura de red de AWS con varias VPC escalable y segura) 
+  [AWS Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html) 
+  [Client VPN](https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/what-is.html) (Cliente VPN) 

 **Vídeos relacionados: ** 
+ [Connectivity to AWS and hybrid AWS network architectures (NET317-R1)](https://www.youtube.com/watch?v=eqW6CPb58gs) (Conectividad con AWS y arquitecturas de redes de AWS híbridas) 
+ [Optimizing Network Performance for Amazon EC2 Instances (CMP308-R1)](https://www.youtube.com/watch?v=DWiwuYtIgu0) (Optimización del rendimiento de red para instancias Amazon EC2) 
+  [AWS Global Accelerator](https://www.youtube.com/watch?v=lAOhr-5Urfk) 
+  [AWS Direct Connect](https://www.youtube.com/watch?v=DXFooR95BYc&t=6s) 
+  [Transit Gateway Connect](https://www.youtube.com/watch?v=_MPY_LHSKtM&t=491s) 
+  [VPN Solutions](https://www.youtube.com/watch?v=qmKkbuS9gRs) (Soluciones de VPN) 
+  [Security with VPN Solutions](https://www.youtube.com/watch?v=FrhVV9nG4UM) (Seguridad con soluciones de VPN) 

 **Ejemplos relacionados:** 
+  [AWS Transit Gateway and Scalable Security Solutions](https://github.com/aws-samples/aws-transit-gateway-and-scalable-security-solutions) (AWS Transit Gateway y soluciones de seguridad escalables) 
+  [AWS Networking Workshops](https://networking.workshop.aws/) (Talleres de red de AWS) 

# PERF05-BP04 Aprovechar el equilibrio de carga y la descarga de codificación
<a name="perf_select_network_encryption_offload"></a>

Utilice equilibradores de carga para lograr una eficiencia óptima del rendimiento de sus recursos de destino y mejorar la capacidad de respuesta de su sistema.

 **Resultado deseado:** reduzca el número de recursos de computación necesarios para atender su tráfico. Evite el desequilibrio en el consumo de recursos en sus destinos. Descargue las tareas intensivas de computación en el equilibrador de carga. Aproveche la elasticidad y flexibilidad de la nube para mejorar el rendimiento y optimizar su arquitectura. 

 **Antipatrones usuales:** 
+ No se tienen en cuenta los requisitos de la carga de trabajo al elegir el tipo de equilibrador de carga.
+ No se aprovechan las características del equilibrador de carga para optimizar el rendimiento.
+  La carga de trabajo se expone directamente a Internet sin un equilibrador de carga. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los equilibradores de carga actúan como punto de entrada de la carga de trabajo y, a partir de ahí, distribuyen el tráfico a los destinos de backend, como instancias de computación o contenedores. La elección del tipo de equilibrador de carga adecuado es el primer paso para optimizar su arquitectura. 

 Comience por enumerar las características de su carga de trabajo, como el protocolo (por ejemplo, TCP, HTTP, TLS o WebSockets), el tipo de destino (como instancias, contenedores o sin servidor), los requisitos de la aplicación (como conexiones de larga duración, autenticación de usuarios o permanencia) y la ubicación (como región, Local Zone, Outpost o aislamiento zonal). 

 Una vez elegido el equilibrador de carga adecuado, puede empezar a utilizar sus características para reducir el esfuerzo que debe realizar su backend para atender al tráfico. 

 Por ejemplo, al utilizar tanto Application Load Balancer (ALB) como Network Load Balancer (NLB), puede realizar la descarga de cifrado SSL/TLS, lo que da la oportunidad de evitar que sus destinos completen el establecimiento de comunicación TLS, que consume mucha CPU, y también para mejorar la administración de certificados. 

 Cuando configura la descarga SSL/TLS en el equilibrador de carga, este se ocupa del cifrado del tráfico desde y hacia los clientes, al tiempo que entrega el tráfico sin cifrar a sus backends, lo que libera recursos de backend y mejora el tiempo de respuesta para los clientes. 

 Application Load Balancer también puede atender el tráfico HTTP2 sin necesidad de soporte en sus destinos. Esta simple decisión puede mejorar el tiempo de respuesta de su aplicación, ya que HTTP2 utiliza las conexiones TCP de forma más eficiente. 

 Los equilibradores de carga también se pueden utilizar para hacer que su arquitectura sea más flexible al distribuir el tráfico a través de diferentes tipos de backend, como contenedores y sin servidor. Por ejemplo, Application Load Balancer se puede configurar con [reglas de agente de escucha](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/listener-update-rules.html) que reenvían el tráfico a diferentes grupos de destino en función de los parámetros de la solicitud, como el encabezado, el método o el patrón. 

 Los requisitos de latencia de la carga de trabajo también deben tenerse en cuenta a la hora de definir la arquitectura. Por ejemplo, si tiene una aplicación sensible a la latencia, puede decidir utilizar Network Load Balancer, que ofrece latencias extremadamente bajas. Como alternativa, puede decidir acercar su carga de trabajo a sus clientes con Application Load Balancer en [AWSLocal Zones](https://aws.amazon.com/about-aws/global-infrastructure/localzones/) o incluso [AWS Outposts](https://aws.amazon.com/outposts/rack/). 

 Otra consideración para las cargas de trabajo sensibles a la latencia es el equilibrio de carga entre zonas. Con el equilibrio de carga entre zonas, cada nodo del equilibrador de carga distribuye el tráfico entre los destinos registrados en todas las zonas de disponibilidad habilitadas. Esto mejora la disponibilidad, aunque puede añadir un milisegundo de un solo dígito a la latencia de ida y vuelta. 

 Por último, tanto ALB como NLB ofrecen recursos de supervisión como registros y métricas. Una configuración adecuada de la supervisión contribuirá a recopilar información sobre el rendimiento de la aplicación. Por ejemplo, puede utilizar los registros de acceso de ALB para averiguar qué solicitudes tardan más en responderse o qué objetivos de backend causan problemas de rendimiento. 

 **Pasos para la implementación** 

1.  Elija el equilibrador de carga adecuado para su carga de trabajo. 

   1.  Utilice Application Load Balancer para cargas de trabajo HTTP/HTTPS. 

   1.  Utilice Network Load Balancer para cargas de trabajo distintas de HTTP que se ejecuten en TCP o UDP. 

   1.  Utilice una combinación de ambos ([ALB como destino de NLB](https://aws.amazon.com/blogs/networking-and-content-delivery/application-load-balancer-type-target-group-for-network-load-balancer/)) si desea aprovechar las características de ambos productos. Por ejemplo, puede hacerlo si desea utilizar las IP estáticas de NLB junto con el enrutamiento basado en encabezado HTTP de ALB, o si desea exponer su carga de trabajo HTTP a una [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html). 

   1.  Para obtener una comparación completa de los equilibradores de carga, consulte la [comparación de productos de ELB](https://aws.amazon.com/elasticloadbalancing/features/). 

1.  Utilice la descarga SSL/TLS. 

   1.  Configure los agentes de escucha HTTPS/TLS con [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html) y [Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html) integrados con [AWS Certificate Manager](https://aws.amazon.com/certificate-manager/). 

   1.  Tenga en cuenta que algunas cargas de trabajo pueden requerir cifrado de extremo a extremo por motivos de conformidad. En este caso, es un requisito habilitar el cifrado en los destinos. 

   1.  Para conocer las prácticas recomendadas de seguridad, consulte [SEC09-BP02 Aplicar el cifrado en tránsito](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_protect_data_transit_encrypt.html). 

1.  Seleccione el algoritmo de enrutamiento adecuado. 

   1.  El algoritmo de enrutamiento puede marcar la diferencia en el grado de utilización de sus destinos de backend y, por lo tanto, en su repercusión en el rendimiento. Por ejemplo, ALB proporciona [dos opciones para los algoritmos de enrutamiento](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html#modify-routing-algorithm): 

   1.  **Solicitudes menos pendientes:** utilícelo para lograr una mejor distribución de la carga a sus destinos de backend para los casos en que las solicitudes de la aplicación varíen en complejidad o los destinos varíen en capacidad de procesamiento. 

   1.  **Distribución:** utilícelo cuando las solicitudes y los destinos sean similares, o si necesita distribuir las solicitudes equitativamente entre los destinos. 

1.  Considere el aislamiento entre zonas o zonal. 

   1.  Desactive el aislamiento entre zonas (aislamiento zonal) para mejorar la latencia y los dominios de error zonal. Está desactivado de forma predeterminada en NLB y, en [ALB, puede desactivarlo por grupo de destino](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/disable-cross-zone.html). 

   1.  Active el aislamiento entre zonas para aumentar la disponibilidad y flexibilidad. Está activado de forma predeterminada en ALB y, en [NLB, puede activarlo por grupo de destino](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/target-group-cross-zone.html). 

1.  Active la conexión persistente HTTP para sus cargas de trabajo HTTP. 

   1.  Para cargas de trabajo HTTP, active la conexión persistente HTTP en la configuración del servidor web para sus destinos de backend. Con esta característica, el equilibrador de carga puede reutilizar las conexiones de backend hasta que expire el tiempo de espera activo, lo que mejora el tiempo de solicitud y respuesta HTTP, además de reducir la utilización de recursos en los destinos de backend. Para obtener información detallada sobre cómo hacer esto para Apache y Nginx, consulte [What are the optimal settings for using Apache or NGINX as a backend server for ELB?](https://aws.amazon.com/premiumsupport/knowledge-center/apache-backend-elb/) (¿Cuál es la configuración óptima para utilizar Apache o NGINX como servidor backend para ELB?) 

1.  Utilice integraciones de Elastic Load Balancing para conseguir una mejor orquestación de los recursos de computación. 

   1.  Utilice Auto Scaling integrado con su equilibrador de carga. Uno de los aspectos clave de un sistema con un rendimiento eficiente tiene que ver con el redimensionamiento correcto de sus recursos de backend. Para ello, puede aprovechar las integraciones del equilibrador de carga para los recursos de destino de backend. Mediante la integración del equilibrador de carga con los grupos de Auto Scaling, los destinos se añadirán o eliminarán del equilibrador de carga según sea necesario y en respuesta al tráfico entrante. 

   1.  Los equilibradores de carga también pueden integrarse con Amazon ECS y Amazon EKS para cargas de trabajo en contenedores. 
      + [ Utilizar Elastic Load Balancing para distribuir el tráfico entre las instancias de un grupo de Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/autoscaling-load-balancer.html)
      + [ Amazon ECS: Equilibrio de la carga de servicios](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-load-balancing.html)
      + [ Equilibrio de carga de aplicaciones en Amazon EKS ](https://docs.aws.amazon.com/eks/latest/userguide/alb-ingress.html)
      + [ Equilibrio de carga de red en Amazon EKS ](https://docs.aws.amazon.com/eks/latest/userguide/network-load-balancing.html)

1.  Supervise su equilibrador de carga para detectar cuellos de botella en el rendimiento. 

   1.  Habilite los registros de acceso para su [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/enable-access-logging.html) y [Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-access-logs.html). 

   1.  Los principales campos a tener en cuenta para ALB son `request_processing_time`, `request_processing_time`y `response_processing_time`. 

   1.  Los principales campos a tener en cuenta para NLB son `connection_time` y `tls_handshake_time`. 

   1.  Esté preparado para consultar los registros cuando los necesite. Puede utilizar Amazon Athena para consultar tanto los [registros de ALB](https://docs.aws.amazon.com/athena/latest/ug/application-load-balancer-logs.html) como los [registros de NLB](https://docs.aws.amazon.com/athena/latest/ug/networkloadbalancer-classic-logs.html). 

   1.  Cree alarmas para las métricas relacionadas con el rendimiento, como [`TargetResponseTime` para ALB](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+  [SEC09-BP02 Aplicar el cifrado en tránsito](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/sec_protect_data_transit_encrypt.html) 

 **Documentos relacionados:** 
+ [ELB product comparison](https://aws.amazon.com/elasticloadbalancing/features/)(Comparación de productos ELB)
+ [Infraestructura global de AWS](https://aws.amazon.com/about-aws/global-infrastructure/)
+ [ Improving Performance and Reducing Cost Using Availability Zone Affinity](https://aws.amazon.com/blogs/architecture/improving-performance-and-reducing-cost-using-availability-zone-affinity/) (Mejora del rendimiento y reducción de costes mediante la afinidad de zonas de disponibilidad)
+ [ Step by step for Log Analysis with Amazon Athena](https://github.com/aws/elastic-load-balancing-tools/tree/master/amazon-athena-for-elb) (Paso a paso del análisis de registro con Amazon Athena)
+ [ Querying Application Load Balancer logs](https://docs.aws.amazon.com/athena/latest/ug/application-load-balancer-logs.html) (Consulta de los registros de Application Load Balancer)
+ [ Monitor your Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-monitoring.html) (Supervise sus Application Load Balancer)
+ [ Monitor your Network Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-monitoring.html) (Supervise sus Network Load Balancer)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2018: [REPEAT 1] Elastic Load Balancing: Deep Dive and Best Practices (NET404-R1)](https://www.youtube.com/watch?v=VIgAT7vjol8) (AWS re:Invent 2018: [REPETICIÓN 1] Elastic Load Balancing: Profundización y prácticas recomendadas)
+ [AWS re:Invent 2021 - How to choose the right load balancer for your AWS workloads](https://www.youtube.com/watch?v=p0YZBF03r5A) (AWS re:Invent 2021: Cómo elegir el equilibrador de carga adecuado para sus cargas de trabajo de AWS)
+ [AWS re:Inforce 2022 - How to use Elastic Load Balancing to enhance your security posture at scale (NIS203)](https://www.youtube.com/watch?v=YhNc5VSzOGQ) (AWS re:Inforce 2022: Cómo utilizar Elastic Load Balancing para mejorar la postura de seguridad a escala)
+ [AWS re:Invent 2019: Get the most from Elastic Load Balancing for different workloads (NET407-R2)](https://www.youtube.com/watch?v=HKh54BkaOK0) (AWS re:Invent 2019: Sacar el máximo partido de Elastic Load Balancing para diferentes cargas de trabajo)

 **Ejemplos relacionados:** 
+ [ CDK and CloudFormation samples for Log Analysis with Amazon Athena](https://github.com/aws/elastic-load-balancing-tools/tree/master/log-analysis-elb-cdk-cf-template) (CDK y ejemplos de CloudFormation para análisis de registros con Amazon Athena) 

# PERF05-BP05 Elegir los protocolos de red para mejorar el rendimiento
<a name="perf_select_network_protocols"></a>

Evalúe los requisitos de rendimiento de su carga de trabajo y elija los protocolos de red que optimicen el rendimiento global de su carga de trabajo.

Existe una relación entre la latencia y el ancho de banda para lograr el rendimiento. Por ejemplo, si su transferencia de archivos utiliza el protocolo de control de transmisión (TCP), las latencias más altas reducirán el rendimiento general. Existen enfoques para solucionar esto con el ajuste de TCP y protocolos de transferencia optimizados (algunos métodos utilizan el protocolo de datagramas de usuario (UDP).

 El protocolo[Scalable Reliable Datagram (SRD)](https://ieeexplore.ieee.org/document/9167399) es un protocolo de transporte de red creado por AWS para Elastic Fabric Adapters que proporciona una entrega de datagramas fiable. A diferencia del protocolo TCP, SRD puede reordenar paquetes y entregarlos fuera de orden. Este mecanismo de entrega fuera de orden de SRD envía paquetes en paralelo por rutas alternativas, lo que aumenta el rendimiento. 

 **Antipatrones usuales:** 
+  Utiliza TCP para todas las cargas de trabajo, independientemente de los requisitos de rendimiento. 

 **Beneficios de establecer esta práctica recomendada:** 
+  La selección del protocolo adecuado para la comunicación entre los componentes de la carga de trabajo le garantiza el mejor rendimiento para esa carga. 
+  Verificar que se utiliza un protocolo adecuado para la comunicación entre los usuarios y los componentes de la carga de trabajo ayuda a mejorar la experiencia general del usuario para sus aplicaciones. Por ejemplo, mediante el uso conjunto de TCP y UDP, las cargas de trabajo de VDI pueden aprovechar la fiabilidad de TCP para datos cruciales y la velocidad de UDP para datos en tiempo real. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio (El uso de un protocolo de red inadecuado puede dar lugar a un rendimiento deficiente, como tiempos de respuesta lentos, alta latencia y escasa escalabilidad) 

## Guía para la implementación
<a name="implementation-guidance"></a>

Una consideración primordial para mejorar el rendimiento de la carga de trabajo es comprender los requisitos de latencia y rendimiento, y luego elegir protocolos de red que optimicen el rendimiento. 

 **Cuándo considerar el uso de TCP** 

 TCP proporciona una entrega de datos fiable, y se puede utilizar para la comunicación entre los componentes de la carga de trabajo cuando la fiabilidad y la entrega garantizada de datos es importante. Muchas aplicaciones basadas en web dependen de protocolos basados en TCP, como HTTP y HTTPS, con el fin de abrir sockets TCP para la comunicación con servidores en AWS. El correo electrónico y la transferencia de datos de archivos son aplicaciones habituales que también hacen uso de TCP debido a la capacidad de TCP de controlar la velocidad del intercambio de datos y la congestión de la red. El uso de TLS con TCP puede añadir cierta sobrecarga a la comunicación, lo que puede provocar un aumento de la latencia y una reducción del rendimiento. La sobrecarga proviene principalmente de la sobrecarga añadida del proceso de establecimiento de comunicación, que puede tardar varias idas y vueltas en completarse. Una vez completado el proceso, la sobrecarga de cifrado y descifrado de datos es relativamente pequeña. 

 **Cuándo considerar el uso de UDP** 

 UDP es un protocolo sin conexión y, por tanto, adecuado para aplicaciones que necesitan una transmisión rápida y eficiente, como datos de registro, supervisión y VoIP. Además, considere el uso de UDP si tiene componentes de carga de trabajo que responden a pequeñas consultas de un gran número de clientes, a fin de garantizar un rendimiento óptimo de la carga de trabajo. El protocolo de seguridad de la capa de transporte (DTLS) es el equivalente UDP de TLS. Cuando se utiliza DTLS con UDP, la sobrecarga proviene del cifrado y descifrado de los datos, ya que el proceso de establecimiento de comunicación se simplifica. DTLS también añade una pequeña cantidad de sobrecarga a los paquetes UDP, ya que incluye campos adicionales para indicar los parámetros de seguridad y detectar manipulaciones. 

 **Cuándo considerar el uso de SRD** 

 Scalable reliable datagram (SRD) es un protocolo de transporte de red optimizado para cargas de trabajo de alto rendimiento debido a su capacidad para equilibrar la carga de tráfico a través de numerosas rutas y recuperarse rápidamente de las caídas de paquetes o errores de enlace. Por lo tanto, es mejor utilizar SRD para cargas de trabajo de computación de alto rendimiento (HPC) que exigen un alto rendimiento y una comunicación de baja latencia entre nodos de computación. Esto incluye tareas de procesamiento paralelo como simulación, modelado y análisis de datos que impliquen una gran cantidad de transferencia de datos entre nodos. 

 **Pasos para la implementación** 

1.  Utilice los servicios [AWS Global Accelerator](https://aws.amazon.com/global-accelerator/) y [AWS Transfer Family](https://aws.amazon.com/aws-transfer-family/) para mejorar el rendimiento de sus aplicaciones de transferencia de archivos en línea. El servicio AWS Global Accelerator le ayuda a conseguir una latencia menor entre sus dispositivos cliente y su carga de trabajo en AWS. Con AWS Transfer Family, puede utilizar protocolos basados en TCP como el protocolo de transferencia de archivos de shell seguro (SFTP) y el protocolo de transferencia de archivos sobre SSL (FTPS) para escalar y administrar de forma segura las transferencias de archivos a los servicios de almacenamiento de AWS. 

1.  Utilice la latencia de la red para determinar si TCP es adecuado para la comunicación entre los componentes de la carga de trabajo. Si la latencia de la red entre la aplicación cliente y el servidor es alta, la comunicación TCP de tres vías puede tardar un tiempo, lo que afectará a la capacidad de respuesta de la aplicación. Para medir la latencia de la red pueden utilizarse métricas, como el tiempo hasta el primer byte (TTFB) y el tiempo de ida y vuelta (RTT). Si su carga de trabajo sirve contenido dinámico a los usuarios, considere el uso de [Amazon CloudFront](https://aws.amazon.com/cloudfront/), que establece una conexión persistente con cada origen para el contenido dinámico para eliminar el tiempo de configuración de la conexión que, de otro modo, ralentizaría cada solicitud del cliente. 

1.  El uso de TLS con TCP o UDP puede aumentar la latencia y reducir el rendimiento de la carga de trabajo debido al impacto del cifrado y el descifrado. Para este tipo de cargas de trabajo, considere la posibilidad de descargar SSL/TLS en [Elastic Load Balancing](https://aws.amazon.com/elasticloadbalancing/) para mejorar el rendimiento de la carga de trabajo al permitir que el equilibrador de carga gestione el proceso de cifrado y descifrado SSL/TLS, en lugar de que lo hagan las instancias de backend. Esto puede ayudar a reducir la utilización de la CPU en las instancias backend, lo que puede mejorar el rendimiento y aumentar la capacidad. 

1.  Utilice el [Network Load Balancer (NLB)](https://aws.amazon.com/elasticloadbalancing/network-load-balancer/) para desplegar servicios que dependan del protocolo UDP, como autenticación y autorización, registro, DNS, IoT y streaming multimedia, para mejorar el rendimiento y la fiabilidad de su carga de trabajo. El NLB distribuye el tráfico UDP entrante entre varios destinos, lo que le permite escalar su carga de trabajo horizontalmente, aumentar la capacidad y reducir la sobrecarga de un único destino. 

1.  Para las cargas de trabajo de computación de alto rendimiento (HPC), considere el uso de la funcionalidad [Elastic Network Adapter (ENA) Express,](https://aws.amazon.com/about-aws/whats-new/2022/11/elastic-network-adapter-ena-express-amazon-ec2-instances/) que utiliza el protocolo SRD para mejorar el rendimiento de la red al proporcionar un mayor ancho de banda de flujo único (25 Gbps) y una menor latencia de cola (percentil 99,9) para el tráfico de red entre instancias EC2. 

1.  Utilice el [Application Load Balancer (ALB)](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) para enrutar y equilibrar la carga del tráfico gRPC (llamadas a procedimientos remotos) entre componentes de carga de trabajo o entre clientes y servicios habilitados para gRPC. gRPC utiliza el protocolo HTTP/2 basado en TCP para el transporte y proporciona ventajas de rendimiento como una huella de red más ligera, compresión, serialización binaria eficiente, compatibilidad con numerosos idiomas y streaming bidireccional. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Instancias optimizadas para Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html) 
+  [Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) 
+  [EC2 Enhanced Networking on Linux (Redes mejoradas EC2 en Linux)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html) 
+  [EC2 Enhanced Networking on Windows (Redes mejoradas de EC2 en Windows)](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/enhanced-networking.html) 
+  [EC2 Placement Groups (Grupos de ubicación de EC2)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) 
+  [Enabling Enhanced Networking with the Elastic Network Adapter (ENA) on Linux Instances (Habilitar redes mejoradas con Elastic Network Adapter [ENA] en las instancias de Linux)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking-ena.html) 
+  [Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html) 
+  [Networking Products with AWS](https://aws.amazon.com/products/networking/) (Productos de redes con AWS) 
+  [Transit Gateway](https://docs.aws.amazon.com/vpc/latest/tgw) 
+  [Transición al direccionamiento basado en la latencia en Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/TutorialTransitionToLBR.html) 
+  [Puntos de conexión de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints.html) 
+  [Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 

 **Vídeos relacionados: ** 
+  [Connectivity to AWS and hybrid AWS network architectures (NET317-R1)](https://www.youtube.com/watch?v=eqW6CPb58gs) (Conectividad con AWS y arquitecturas de redes de AWS híbridas) 
+  [Optimizing Network Performance for Amazon EC2 Instances (CMP308-R1)](https://www.youtube.com/watch?v=DWiwuYtIgu0) (Optimización del rendimiento de red para instancias Amazon EC2) 
+ [ Tuning Your Cloud: Improve Global Network Performance for Application](https://www.youtube.com/watch?v=00ukhVcgWrs) (Puesta a punto de su nube: mejore el rendimiento global de la red para las aplicaciones)
+ [ Application Scaling with EFA and SRD](https://pages.awscloud.com/HPC-Application-Scaling-with-Elastic-Fabric-Adapter-EFA-and-Scalable-Reliable-Datagram-SRD_2020_0004-CMP_OD.html) (Escalado de aplicaciones con EFA y SRD)

 **Ejemplos relacionados:** 
+  [AWS Transit Gateway and Scalable Security Solutions](https://github.com/aws-samples/aws-transit-gateway-and-scalable-security-solutions) (AWS Transit Gateway y soluciones de seguridad escalables) 
+  [AWS Networking Workshops](https://networking.workshop.aws/) (Talleres de red de AWS) 

# PERF05-BP06 Elegir la ubicación de la carga de trabajo en función de los requisitos de la red
<a name="perf_select_network_location"></a>

Evalúe las opciones de colocación de recursos para reducir la latencia de la red y mejorar el rendimiento, lo que proporcionará una experiencia de usuario óptima al reducir los tiempos de carga de las páginas y de transferencia de datos.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Los recursos, como las instancias Amazon EC2, se colocan en zonas de disponibilidad dentro de [Regiones de AWS](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/), [AWS Local Zones](https://aws.amazon.com/about-aws/global-infrastructure/localzones/), [AWS Outposts](https://aws.amazon.com/outposts/) o zonas de [AWS Wavelength](https://aws.amazon.com/wavelength/). La selección de esta ubicación influye en la latencia y el rendimiento de la red desde una ubicación de usuario. Los servicios de periferia, como [Amazon CloudFront](https://aws.amazon.com/cloudfront/) y [AWS Global Accelerator](https://aws.amazon.com/global-accelerator/) también se pueden utilizar para mejorar el rendimiento de la red al almacenar contenido en caché en ubicaciones periféricas o proporcionar a los usuarios una ruta óptima a la carga de trabajo a través de la red global de AWS.

 **Pasos para la implementación** 

1.  Elija la Región de AWS o regiones adecuadas para su despliegue en función de los siguientes elementos clave: 

   1.  **Donde se encuentren sus usuarios:** elija una región cercana a los usuarios de su carga de trabajo para garantizar una baja latencia cuando utilicen la carga de trabajo. 

   1.  **Donde se encuentren sus datos:** en las aplicaciones con gran volumen de datos, el principal cuello de botella es la latencia. El código de la aplicación debe ejecutarse lo más cerca posible de los datos. 

   1.  **Otras limitaciones:** tenga en cuenta limitaciones como la seguridad y la conformidad (por ejemplo, requisitos de residencia de datos). 

1.  Para una carga de trabajo determinada, si un componente consta de un grupo de instancias Amazon EC2 interdependientes que requieren baja latencia, considere la posibilidad de utilizar [grupos con colocación en clúster](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) para influir en la colocación de dichas instancias a fin de satisfacer los requisitos de la carga de trabajo. Las instancias del mismo grupo con ubicación en clúster disfrutan de un límite de rendimiento por flujo superior para el tráfico TCP/IP y se colocan en el mismo segmento de ancho de banda de alta bisección de la red. Se recomiendan grupos con ubicación en clúster para aplicaciones que aprovechan la baja latencia de red, el alto rendimiento de red o ambos. 

1.  Para una carga de trabajo que sea sensible a la ubicación, por ejemplo, con requisitos de baja latencia o residencia de datos, revise [AWS Local Zones](https://aws.amazon.com/about-aws/global-infrastructure/localzones/) o [AWS Outposts](https://aws.amazon.com/outposts/). 

   1.  AWS Local Zones es un tipo de despliegue de infraestructura que coloca servicios de computación, almacenamiento, bases de datos y otros servicios seleccionados de AWS cerca de grandes centros de población e industriales. 

   1.  AWS Outposts es una familia de soluciones totalmente administradas que ofrecen infraestructura y servicios de AWS a prácticamente cualquier ubicación local o periférica para lograr una experiencia híbrida realmente coherente. 

1.  Aplicaciones como la transmisión de vídeo en directo de alta resolución, audio de alta fidelidad y realidad aumentada/realidad virtual (RA/RV) requieren una latencia ultrabaja para dispositivos 5G. Para este tipo de aplicaciones, considere [AWS Wavelength](https://aws.amazon.com/wavelength/). AWS Wavelength integra los servicios de computación y almacenamiento de AWS en las redes 5G, lo que proporciona una infraestructura de computación periférica móvil para desarrollar, desplegar y escalar aplicaciones de latencia ultrabaja. 

1.  Si tiene usuarios distribuidos geográficamente, puede utilizar una red de distribución de contenido (CDN) para acelerar la distribución de contenido web estático y dinámico mediante la entrega de datos a través de puntos de presencia (PoP) dispersos por todo el mundo. Por lo general, las CDN también proporcionan capacidades de computación en la periferia, realizando operaciones sensibles a la latencia, como manipulaciones de encabezados HTTP y reescrituras y redireccionamientos de URL a gran escala en la periferia. [Amazon CloudFront](https://aws.amazon.com/cloudfront/) es un servicio web que acelera la distribución del contenido web estático y dinámico. Entre los casos de uso de CloudFront se incluyen la aceleración de la entrega de contenido estático de sitios web y el servicio de vídeo bajo demanda o la transmisión de vídeo en directo. CloudFront también se puede utilizar para personalizar el contenido y la experiencia de los espectadores, con una latencia reducida. 

1.  Algunas aplicaciones requieren puntos de entrada fijos o un mayor rendimiento mediante el aumento del rendimiento y la reducción de la fluctuación y de la latencia del primer byte. Estas aplicaciones pueden beneficiarse de los servicios de red que proporcionan direcciones IP estáticas de difusión por proximidad y terminación TCP en ubicaciones periféricas. [AWS Global Accelerator](https://aws.amazon.com/global-accelerator/) puede mejorar el rendimiento de las aplicaciones hasta en un 60 % y proporcionar una rápida conmutación por error para arquitecturas multirregión. AWS Global Accelerator le proporciona direcciones IP estáticas de difusión por proximidad que sirven como punto de entrada fijo para las aplicaciones alojadas en una o más Regiones de AWS. Estas direcciones IP permiten que el tráfico entre en la red global de AWS lo más cerca posible de sus usuarios. AWS Global Accelerator reduce el tiempo de configuración de la conexión inicial al establecer una conexión TCP entre el cliente y la ubicación periférica de AWS más cercana al cliente. Revise el uso de AWS Global Accelerator para mejorar el rendimiento de sus cargas de trabajo TCP/UDP y proporcionar una rápida conmutación por error para arquitecturas multirregión. 

1.  Si tiene aplicaciones o usuarios locales, puede beneficiarse de tener una conexión de red dedicada entre su red y la nube. Una conexión de red dedicada puede reducir la posibilidad de encontrar congestión o aumentos inesperados de latencia. [AWS Direct Connect](https://aws.amazon.com/directconnect/) puede mejorar el rendimiento de las aplicaciones al conectar la red directamente a AWS y evitar el internet público. Al crear una conexión nueva, puede elegir una conexión alojada proporcionada por un socio de entrega de AWS Direct Connect o elegir una conexión dedicada de AWS y desplegarla en más de 100 ubicaciones de AWS Direct Connect en todo el mundo. También puede reducir sus costes de red con bajas tasas de transferencia de datos fuera de AWS y, opcionalmente, configurar una Site-to-Site VPN para la conmutación por error. 

1.  Si configura una [Site-to-Site VPN](https://aws.amazon.com/vpn/site-to-site-vpn/) para conectarse a sus recursos dentro de AWS, puede habilitar opcionalmente la aceleración. Una conexión Site-to-Site VPN acelerada utiliza AWS Global Accelerator para enrutar el tráfico desde su red local a la ubicación periférica de AWS que esté más cerca de su dispositivo de puerta de enlace de cliente. 

1.  Para identificar qué opción de enrutamiento DNS optimizaría el rendimiento de su carga de trabajo revise el tráfico de su carga de trabajo y la ubicación del usuario. [Amazon Route 53](https://aws.amazon.com/route53) ofrece opciones de [enrutamiento basado en la latencia](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-latency.html),[enrutamiento de geolocalización](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geo.html)[enrutamiento de geoproximidad](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-geoproximity.html) y [enrutamiento basado en IP](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy-ipbased.html) para ayudarle a mejorar el rendimiento de su carga de trabajo para un público global. 

   1.  Route 53 también ofrece una baja latencia de consulta para sus usuarios finales. Mediante una red global de difusión por proximidad de servidores DNS de todo el mundo, Route 53 está diseñado para responder automáticamente a las consultas desde la ubicación óptima y en función de las condiciones de la red. 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [COST07-BP02 Implementar regiones según los costes](https://docs.aws.amazon.com/wellarchitected/latest/framework/cost_pricing_model_region_cost.html)
+ [ COST08-BP03 Implementar servicios para reducir los costes de transferencia de datos ](https://docs.aws.amazon.com/wellarchitected/latest/framework/cost_data_transfer_implement_services.html)
+ [ REL10-BP01 Desplegar la carga de trabajo en varias ubicaciones ](https://docs.aws.amazon.com/wellarchitected/latest/framework/rel_fault_isolation_multiaz_region_system.html)
+ [REL10-BP02 Seleccionar las ubicaciones adecuadas para el despliegue en varias ubicaciones ](https://docs.aws.amazon.com/wellarchitected/latest/framework/rel_fault_isolation_select_location.html)
+ [SUS01-BP01 Elegir regiones cerca de proyectos de energías renovables de Amazon y regiones en las que la intensidad de carbono recogida en la red sea más baja que en otras ubicaciones (o regiones) ](https://docs.aws.amazon.com/wellarchitected/latest/framework/sus_sus_region_a2.html)
+ [SUS02-BP04 Optimizar la ubicación geográfica de las cargas de trabajo para las ubicaciones de los usuarios](https://docs.aws.amazon.com/wellarchitected/latest/framework/sus_sus_user_a5.html)
+ [SUS04-BP07: Minimización del movimiento de datos entre redes](https://docs.aws.amazon.com/wellarchitected/latest/framework/sus_sus_data_a8.html)

 **Documentos relacionados:** 
+ [Infraestructura global de AWS](https://aws.amazon.com/about-aws/global-infrastructure/)
+ [AWS Local Zones and AWS Outposts, choosing the right technology for your edge workload](https://aws.amazon.com/blogs/compute/aws-local-zones-and-aws-outposts-choosing-the-right-technology-for-your-edge-workload/) (AWS Local Zones y AWS Outposts: elegir la tecnología adecuada para su carga de trabajo de periferia)
+  [Grupos de ubicación](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html) 
+  [AWS Local Zones](https://aws.amazon.com/about-aws/global-infrastructure/localzones/) 
+  [AWS Outposts](https://aws.amazon.com/outposts/) 
+  [AWS Wavelength](https://aws.amazon.com/wavelength/) 
+  [Amazon CloudFront](https://aws.amazon.com/cloudfront/) 
+  [AWS Global Accelerator](https://aws.amazon.com/global-accelerator/) 
+  [AWS Direct Connect](https://aws.amazon.com/directconnect/) 
+  [Site-to-Site VPN](https://aws.amazon.com/vpn/site-to-site-vpn/) 
+  [Amazon Route 53](https://aws.amazon.com/route53) 

 **Vídeos relacionados: ** 
+ [AWS Local Zones Explainer Video](https://www.youtube.com/watch?v=JHt-D4_zh7w) (Vídeo explicativo de AWS Local Zones)
+ [AWS Outposts: Overview and How It Works](https://www.youtube.com/watch?v=ppG2FFB0mMQ) (AWS Outposts: descripción general y funcionamiento)
+ [AWS re:Invent 2021 - AWS Outposts: Bringing the AWS experience on premises](https://www.youtube.com/watch?v=FxVF6A22498) (AWS re:Invent 2021: Llevar la experiencia de AWS al entorno local)
+ [AWS re:Invent 2020: AWS Wavelength: Run apps with ultra-low latency at 5G edge](https://www.youtube.com/watch?v=AQ-GbAFDvpM) (AWS re:Invent 2020: AWS Wavelength: ejecutar aplicaciones con latencia ultrabaja en el borde 5G)
+ [AWS re:Invent 2022 - AWS Local Zones: Building applications for a distributed edge](https://www.youtube.com/watch?v=bDnh_d-slhw) (AWS re:Invent 2022: AWS Local Zones: creación de aplicaciones para una periferia distribuida)
+ [AWS re:Invent 2021 - Building low-latency websites with Amazon CloudFront](https://www.youtube.com/watch?v=9npcOZ1PP_c) (AWS re:Invent 2021: Creación de sitios web de baja latencia con Amazon CloudFront)
+ [AWS re:Invent 2022 - Improve performance and availability with AWS Global Accelerator](https://www.youtube.com/watch?v=s5sjsdDC0Lg) (AWS re:Invent 2022: Mejorar el rendimiento y la disponibilidad con AWS Global Accelerator)
+ [AWS re:Invent 2022 - Build your global wide area network using AWS](https://www.youtube.com/watch?v=flBieylTwvI) (AWS re:Invent 2022: Construya su red mundial de área extensa con AWS)
+ [AWS re:Invent 2020: Global traffic management with Amazon Route 53](https://www.youtube.com/watch?v=E33dA6n9O7I) (AWS re:Invent 2020: Administración de tráfico global con Amazon Route 53)

 **Ejemplos relacionados:** 
+ [AWS Global Accelerator Workshop](https://catalog.us-east-1.prod.workshops.aws/workshops/effb1517-b193-4c59-8da5-ce2abdb0b656/en-US) (Taller de AWS Global Accelerator)
+ [ Handling Rewrites and Redirects using Edge Functions](https://catalog.us-east-1.prod.workshops.aws/workshops/814dcdac-c2ad-4386-98d5-27d37bb77766/en-US) (Gestión de reescrituras y redireccionamientos mediante funciones periféricas)

# PERF05-BP07 Optimizar la configuración de red según las métricas
<a name="perf_select_network_optimize"></a>

Una configuración de red inadecuada suele afectar al rendimiento, a la eficiencia y al coste de la red. En los entornos de red habituales, con el fin de completar rápidamente el despliegue en la fase inicial, no se tiene totalmente en cuenta la configuración de red adecuada en términos de rendimiento de la red. Para optimizar su configuración de red, primero debe tener visibilidad y datos sobre su entorno de red.

Para comprender el rendimiento de sus recursos de red, recopile y analice datos para tomar decisiones informadas sobre la optimización de su configuración de red. Medir el impacto de esos cambios y utilizar las mediciones del impacto para tomar decisiones futuras. 

 **Resultado deseado:** utilizar métricas y herramientas de supervisión de red para optimizar la configuración de red a medida que evolucionan las cargas de trabajo. Las redes basadas en la nube pueden optimizarse rápidamente, de modo que hacer evolucionar su arquitectura de red con el tiempo resulta necesario para mantener la eficiencia del rendimiento. 

 **Antipatrones usuales:** 
+  Supone que todos los problemas de rendimiento están relacionados con aplicaciones. 
+  Solo hace pruebas del rendimiento de la red desde una ubicación cercana al punto de implementación de la carga de trabajo. 
+  Se utilizan configuraciones predeterminadas para todos los servicios de red. 
+  Se sobreaprovisionan los recursos de red para proporcionar capacidad suficiente. 

 **Beneficios de establecer esta práctica recomendada:** la recopilación de las métricas necesarias de su red de AWS y la implementación de herramientas de supervisión de red le permiten comprender el rendimiento de la red y optimizar las configuraciones de la red. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La supervisión del tráfico hacia y desde VPC, subredes o interfaces de red es crucial para comprender cómo utilizar los recursos de red de AWS y cómo puede optimizar las configuraciones de la red. Mediante las siguientes herramientas, puede inspeccionar más a fondo la información sobre el uso del tráfico, el acceso a la red y los registros. 

 **Pasos para la implementación** 

1.  Utilice [Amazon VPC IP Address Manager](https://docs.aws.amazon.com/vpc/latest/ipam/what-it-is-ipam.html). Puede utilizar IPAM para planificar, rastrear y supervisar las direcciones IP para sus cargas de trabajo de AWS y locales. Esta es la práctica recomendada para optimizar el uso y la asignación de direcciones IP. 

1.  Habilite los [registros de flujo de la VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html). Utilice los registros de flujo de la VPC para capturar información detallada sobre el tráfico hacia y desde las interfaces de red en sus VPC. Con los registros de flujo de la VPC, puede diagnosticar reglas de grupos de seguridad excesivamente restrictivas o permisivas y determinar la dirección del tráfico hacia y desde las interfaces de red. Los cargos por ingesta y archivo de datos para los registros delegados se aplican cuando se publican registros de flujo. 

1.  Habilite los [registros de consultas de DNS](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/query-logs.html). Puede configurar Amazon Route 53 para que registre información sobre las consultas de DNS públicas o privadas que Route 53 reciba. Con los registros de DNS, puede optimizar las configuraciones de DNS al conocer el dominio o subdominio que se solicitó o las ubicaciones periféricas de Route 53 que respondieron a las consultas de DNS. 

1.  Utilice [Reachability Analyzer](https://docs.aws.amazon.com/vpc/latest/reachability/what-is-reachability-analyzer.html)para analizar y depurar la accesibilidad de la red. Reachability Analyzer es una herramienta de análisis de configuración que le permite realizar pruebas de conectividad entre un recurso de origen y un recurso de destino en sus VPC. Esta herramienta le ayuda a verificar que la configuración de su red coincida con la conectividad prevista. 

1.  Utilice el [Analizador de acceso de la red](https://docs.aws.amazon.com/vpc/latest/network-access-analyzer/what-is-network-access-analyzer.html) para comprender el acceso de red a sus recursos. Puede utilizar el Analizador de acceso de la red para especificar los requisitos de acceso a la red e identificar posibles rutas de red que no cumplan los requisitos especificados. Al optimizar su configuración de red correspondiente, puede comprender y verificar el estado de su red y demostrar si su red en AWS cumple con sus requisitos de conformidad. 

1.  Utilice [Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) y habilite las métricas adecuadas para las opciones de red. Asegúrese de elegir la métrica de red adecuada para su carga de trabajo. Por ejemplo, puede habilitar métricas para el uso de direcciones de red VPC, la puerta de enlace NAT de VPC, AWS Transit Gateway, túneles de VPN, AWS Network Firewall, Elastic Load Balancing y AWS Direct Connect. La supervisión continua de las métricas es una práctica recomendada para observar y comprender el estado y el uso de su red, y le ayuda a optimizar la configuración de la red basándose en sus observaciones. 

 **Nivel de esfuerzo para el plan de implementación:** medio. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Registros de flujo de VPC](https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html) 
+ Habilite los [registros de consultas de DNS públicos](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/query-logs.html).
+ [ What is IPAM? ](https://docs.aws.amazon.com/vpc/latest/ipam/what-it-is-ipam.html) (¿Qué es IPAM?)
+  [What is Reachability Analyzer?](https://docs.aws.amazon.com/vpc/latest/reachability/what-is-reachability-analyzer.html) (¿Qué es Reachability Analyzer?) 
+ [ What is Network Access Analyzer?](https://docs.aws.amazon.com/vpc/latest/network-access-analyzer/what-is-network-access-analyzer.html) (¿Qué es el analizador de acceso de la red?)
+ [ Métricas de CloudWatch para sus VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-cloudwatch.html)
+ [ Optimize performance and reduce costs for network analytics with VPC Flow Logs in Apache Parquet format](https://aws.amazon.com/blogs/big-data/optimize-performance-and-reduce-costs-for-network-analytics-with-vpc-flow-logs-in-apache-parquet-format/) (Optimice el rendimiento y reduzca los costes de los análisis de red con los registros de flujo de VPC en formato Apache Parquet)
+  [Monitoring your global and core networks with Amazon Cloudwatch metrics](https://docs.aws.amazon.com/vpc/latest/tgwnm/monitoring-cloudwatch-metrics.html) (Supervisión de las redes globales y principales con las métricas de Amazon Cloudwatch) 
+  [Continuously monitor network traffic and resources](https://docs.aws.amazon.com/whitepapers/latest/security-best-practices-for-manufacturing-ot/continuously-monitor-network-traffic-and-resources.html) (Supervisar de forma continua el tráfico y los recursos de red) 

 **Vídeos relacionados: ** 
+ [ Networking best practices and tips with the Well-Architected Framework](https://www.youtube.com/watch?v=wOMNpG49BeM) (Prácticas recomendadas y consejos para la creación de redes con Well-Architected Framework)
+ [ Monitoring and troubleshooting network traffic](https://www.youtube.com/watch?v=Ed09ReWRQXc) (Supervisión y solución de problemas del tráfico de red)

 **Ejemplos relacionados:** 
+  [AWS Networking Workshops](https://networking.workshop.aws/) (Talleres de red de AWS) 
+  [AWS Network Monitoring](https://github.com/aws-samples/monitor-vpc-network-patterns) (Supervisión de red de AWS) 

# Efectúe la revisión.
<a name="a-review"></a>

**Topics**
+ [PERF 6: ¿Cómo desarrolla la carga de trabajo para aprovechar las nuevas versiones?](perf-06.md)

# PERF 6: ¿Cómo desarrolla la carga de trabajo para aprovechar las nuevas versiones?
<a name="perf-06"></a>

 Cuando se diseñan cargas de trabajo, hay opciones limitadas entre las que se puede elegir. Sin embargo, con el tiempo, estarán disponibles nuevas tecnologías y enfoques que podrían mejorar el rendimiento de su carga de trabajo. 

**Topics**
+ [PERF06-BP01 Estar al día en cuanto a los recursos y los servicios nuevos](perf_continue_having_appropriate_resource_type_keep_up_to_date.md)
+ [PERF06-BP02 Definir un proceso para mejorar el rendimiento de la carga de trabajo](perf_continue_having_appropriate_resource_type_define_process.md)
+ [PERF06-BP03 Mejorar el rendimiento de la carga de trabajo a lo largo del tiempo](perf_continue_having_appropriate_resource_type_evolve.md)

# PERF06-BP01 Estar al día en cuanto a los recursos y los servicios nuevos
<a name="perf_continue_having_appropriate_resource_type_keep_up_to_date"></a>

Evalúe las formas de mejorar el rendimiento a medida que se disponga de nuevos servicios, patrones de diseño y ofertas de productos. Determine cuáles de ellas podrían mejorar el rendimiento o aumentar la eficiencia de la carga de trabajo mediante una evaluación, un debate interno o un análisis externo.

Defina un proceso para evaluar las actualizaciones, las nuevas características y servicios pertinentes para su carga de trabajo. Por ejemplo, la creación de una prueba de concepto que utilice nuevas tecnologías o la consulta con un grupo interno. Cuando pruebe nuevas ideas o servicios, realice pruebas de rendimiento para medir el impacto que tienen en el rendimiento de la carga de trabajo. Use la infraestructura como código (IaC) y una cultura DevOps para aprovechar la capacidad de probar nuevas ideas o tecnologías con frecuencia con un coste o riesgo mínimos. 

 **Resultado deseado:** ha documentado el inventario de componentes, su patrón de diseño y las características de la carga de trabajo. Utilice esa documentación para crear una lista de suscripciones para notificar a su equipo sobre las actualizaciones de los servicios, las características y los nuevos productos. Ha identificado a las partes interesadas de los componentes que evaluarán los nuevos lanzamientos y proporcionarán una recomendación sobre el impacto y la prioridad empresariales. 

 **Patrones comunes de uso no recomendados:** 
+  Revisar únicamente las nuevas opciones y servicios cuando su carga de trabajo no se ajuste a los requisitos de rendimiento 
+  Suponer que todas las nuevas ofertas de productos no serán útiles para su carga de trabajo 
+  Elegir siempre crear en lugar de comprar cuando se trata de mejorar la carga de trabajo 

 **Beneficios de establecer esta práctica recomendada:** al considerar la posibilidad de nuevos servicios o productos, puede mejorar el rendimiento y la eficacia de su carga de trabajo, disminuir el coste de la infraestructura y reducir el esfuerzo necesario para mantener sus servicios.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Defina un proceso para evaluar las actualizaciones, nuevas características y servicios de AWS. Por ejemplo, la creación de pruebas de concepto que utilicen nuevas tecnologías. Cuando pruebe nuevas ideas o servicios, realice pruebas de rendimiento para medir el impacto sobre la eficiencia o el rendimiento de la carga de trabajo. Aproveche la flexibilidad que tiene en AWS para probar frecuentemente nuevas ideas o tecnologías con un coste o riesgo mínimo. 

## Pasos para la aplicación
<a name="implementation-steps"></a>

1.  Documente sus soluciones de carga de trabajo. Utilice su solución de base de datos de administración de configuraciones (CMDB) para documentar el inventario y clasificar sus servicios y dependencias. Utilice herramientas como [AWS Config](https://aws.amazon.com/config/) para obtener una lista de todos los servicios en AWS que utiliza su carga de trabajo. 

1.  Use una [estrategia de etiquetado](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html) para documentar a los propietarios de cada componente y categoría de la carga de trabajo. Por ejemplo, si actualmente utiliza Amazon RDS como su solución de base de datos, asigne a su administrador de base de datos (DBA) y documéntelo como propietario para evaluar e investigar nuevos servicios y actualizaciones. 

1.  Identifique las noticias y los orígenes de actualización relacionados con los componentes de su carga de trabajo. En el ejemplo de Amazon RDS mencionado anteriormente, el propietario de la categoría debe suscribirse al [blog de Novedades de AWS](https://aws.amazon.com/new/) para los productos que coinciden con su componente de carga de trabajo. Puede suscribirse a la fuente RSS o administrar sus [suscripciones de correo electrónico](https://pages.awscloud.com/communication-preferences.html). Supervise las actualizaciones de la base de datos de Amazon RDS que utiliza, las características incorporadas, las instancias lanzadas y los nuevos productos como Amazon Aurora Serverless. Supervise los blogs del sector, los productos y los proveedores en los que se basa el componente.

1.  Documente su proceso para evaluar las actualizaciones y los nuevos servicios. Proporcione a los propietarios de las categorías el tiempo y el espacio necesarios para investigar, probar, experimentar y validar las actualizaciones y los nuevos servicios. Consulte los requisitos empresariales documentados y los KPI para ayudar a priorizar qué actualización tendrá un impacto empresarial positivo. 

 **Nivel de esfuerzo para el plan de implementación:** para establecer esta práctica recomendada, debe conocer los componentes de su carga de trabajo actual, identificar los propietarios de las categorías y determinar los orígenes de las actualizaciones del servicio. Es un nivel de esfuerzo bajo para empezar, pero es un proceso continuo que podría evolucionar y mejorar con el tiempo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de AWS](https://aws.amazon.com/blogs/) 
+  [Novedades de AWS](https://aws.amazon.com/new/?ref=wellarchitected) 

 **Vídeos relacionados:** 
+  [Canal de YouTube de eventos de AWS](https://www.youtube.com/channel/UCdoadna9HFHsxXWhafhNvKw) 
+  [Canal de YouTube de AWS Online Tech Talks](https://www.youtube.com/user/AWSwebinars) 
+  [Canal de YouTube de Amazon Web Services](https://www.youtube.com/channel/UCd6MoB9NC6uYN2grvUNT-Zg) 

 **Ejemplos relacionados:** 
+  [GitHub de AWS](https://github.com/aws) 
+  [AWS Skill Builder](https://explore.skillbuilder.aws/learn) 

# PERF06-BP02 Definir un proceso para mejorar el rendimiento de la carga de trabajo
<a name="perf_continue_having_appropriate_resource_type_define_process"></a>

 Definir un proceso para evaluar nuevos servicios, patrones de diseño, tipos de recursos y configuraciones a medida que estén disponibles. Por ejemplo, ejecute las pruebas de rendimiento existentes en las nuevas ofertas de instancias para determinar su potencial a fin de mejorar su carga de trabajo. 

 El rendimiento de su carga de trabajo tiene algunas limitaciones clave. Documéntelos para que sepa qué tipos de innovación pueden mejorar el rendimiento de su carga de trabajo. Utilice esta información cuando conozca nuevos servicios o tecnologías a medida que estén disponibles para identificar formas de mitigar las limitaciones o cuellos de botella. 

 **Patrones de uso no recomendados comunes:** 
+  Asume que su arquitectura actual será estática y nunca se actualizará con el tiempo. 
+  Incorpora cambios en la arquitectura a lo largo del tiempo sin justificación de métricas. 

 **Beneficios de establecer esta práctica recomendada:** al definir el proceso para realizar cambios en la arquitectura, permite utilizar los datos recopilados para influir en el diseño de la carga de trabajo a lo largo del tiempo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Identifique las principales restricciones de rendimiento de su carga de trabajo: documente las restricciones de rendimiento de su carga de trabajo para saber qué tipos de innovación podrían mejorar el rendimiento de la carga. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de AWS](https://aws.amazon.com/blogs/) 
+  [Novedades de AWS](https://aws.amazon.com/new/?ref=wellarchitected) 

 **Vídeos relacionados:** 
+  [Canal de YouTube de eventos de AWS](https://www.youtube.com/channel/UCdoadna9HFHsxXWhafhNvKw) 
+  [Canal de YouTube de AWS Online Tech Talks](https://www.youtube.com/user/AWSwebinars) 
+  [Canal de YouTube de Amazon Web Services](https://www.youtube.com/channel/UCd6MoB9NC6uYN2grvUNT-Zg) 

 **Ejemplos relacionados:** 
+  [GitHub de AWS](https://github.com/aws) 
+  [AWS Skill Builder](https://explore.skillbuilder.aws/learn) 

# PERF06-BP03 Mejorar el rendimiento de la carga de trabajo a lo largo del tiempo
<a name="perf_continue_having_appropriate_resource_type_evolve"></a>

 Como organización, utilice la información recopilada a través del proceso de evaluación para impulsar activamente la adopción de nuevos servicios o recursos cuando estén disponibles. 

 Utilice la información que reúne cuando evalúa nuevos servicios o tecnologías para impulsar el cambio. A medida que su negocio o carga de trabajo cambia, las necesidades de rendimiento también cambian. Utilice los datos recopilados a partir de la métrica de su carga de trabajo para evaluar las áreas en las que puede obtener las mayores ganancias en eficiencia o rendimiento, y adopte proactivamente nuevos servicios y tecnologías para mantenerse al día con la demanda. 

 **Patrones de uso no recomendados comunes:** 
+  Asume que su arquitectura actual será estática y nunca se actualizará con el tiempo. 
+  Incorpora cambios en la arquitectura a lo largo del tiempo sin justificación de métricas. 
+  Cambia la arquitectura solo porque todos los demás del sector la utilizan. 

 **Beneficios de establecer esta práctica recomendada:** para optimizar el rendimiento y el coste de su carga de trabajo, debe evaluar todo el software y los servicios disponibles para determinar los adecuados para ella. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Haga evolucionar su carga de trabajo a lo largo del tiempo: utilice la información que reúne cuando evalúa nuevos servicios o tecnologías para impulsar el cambio. A medida que su negocio o carga de trabajo cambia, las necesidades de rendimiento también cambian. Utilice los datos recopilados a partir de la métrica de su carga de trabajo para evaluar las áreas en las que puede lograr las mayores ganancias en eficiencia o rendimiento y adopte proactivamente nuevos servicios y tecnologías para mantenerse al día con la demanda. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de AWS](https://aws.amazon.com/blogs/) 
+  [Novedades de AWS](https://aws.amazon.com/new/?ref=wellarchitected) 

 **Vídeos relacionados:** 
+  [Canal de YouTube de eventos de AWS](https://www.youtube.com/channel/UCdoadna9HFHsxXWhafhNvKw) 
+  [Canal de YouTube de AWS Online Tech Talks](https://www.youtube.com/user/AWSwebinars) 
+  [Canal de YouTube de Amazon Web Services](https://www.youtube.com/channel/UCd6MoB9NC6uYN2grvUNT-Zg) 

 **Ejemplos relacionados:** 
+  [GitHub de AWS](https://github.com/aws) 
+  [AWS Skill Builder](https://explore.skillbuilder.aws/learn) 

# Monitoreo
<a name="a-monitoring"></a>

**Topics**
+ [PERF 7: ¿Cómo supervisa los recursos para garantizar el rendimiento?](perf-07.md)

# PERF 7: ¿Cómo supervisa los recursos para garantizar el rendimiento?
<a name="perf-07"></a>

 El rendimiento del sistema puede degradarse con el tiempo. Supervise el rendimiento del sistema para identificar este deterioro y remediar factores internos o externos, como el sistema operativo o la carga de aplicaciones. 

**Topics**
+ [PERF07-BP01 Registrar métricas relacionadas con el rendimiento](perf_monitor_instances_post_launch_record_metrics.md)
+ [PERF07-BP02 Analizar las métricas cuando se producen eventos o incidentes](perf_monitor_instances_post_launch_review_metrics.md)
+ [PERF07-BP03 Establecer indicadores clave de rendimiento (KPI) para medir el rendimiento de la carga de trabajo](perf_monitor_instances_post_launch_establish_kpi.md)
+ [PERF07-BP04 Usar la supervisión para generar notificaciones basadas en alarmas](perf_monitor_instances_post_launch_generate_alarms.md)
+ [PERF07-BP05 Revisar las métricas a intervalos regulares](perf_monitor_instances_post_launch_review_metrics_collected.md)
+ [PERF07-BP06 Supervisar y usar alarmas de forma proactiva](perf_monitor_instances_post_launch_proactive.md)

# PERF07-BP01 Registrar métricas relacionadas con el rendimiento
<a name="perf_monitor_instances_post_launch_record_metrics"></a>

 Utilice un servicio de supervisión y observabilidad para registrar métricas relacionadas con el rendimiento. Entre los ejemplos de estas métricas se incluyen el registro de las transacciones de la base de datos, las consultas lentas, la latencia de E/S, el rendimiento de las solicitudes HTTP, la latencia de los servicios u otros datos clave. 

 Identificar las métricas de rendimiento que importan para su carga de trabajo y regístrelas. Estos datos son una parte importante para poder identificar qué componentes están afectando al rendimiento o a la eficiencia general de la carga de trabajo. 

 Trabajar a partir de la experiencia del cliente, identificar las métricas que importan. Para cada medida, identificar el objetivo, el enfoque de la medida y la prioridad. Utilícelas para crear alarmas y notificaciones para abordar de manera proactiva las cuestiones relacionadas con el rendimiento. 

 **Antipatrones usuales:** 
+  Supervisa únicamente las métricas de nivel de sistema para obtener información sobre la carga de trabajo. 
+  Diseña sus necesidades de computación para los requisitos de carga de trabajo máxima. 

 **Beneficios de establecer esta práctica recomendada:** Para optimizar el rendimiento y la utilización de los recursos, se necesita una visión operativa unificada de sus indicadores clave de rendimiento. Puede crear paneles y realizar cálculos de métricas para obtener información operativa y de utilización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Identifique las métricas de rendimiento pertinentes para su carga de trabajo y regístrelas. Estos datos ayudan a identificar qué componentes están afectando al rendimiento o a la eficiencia general de la carga de trabajo. 

 Identifique las métricas de rendimiento: utilice la experiencia del cliente para identificar las métricas más importantes. Para cada medida, identificar el objetivo, el enfoque de la medida y la prioridad. Utilice estos puntos de datos para crear alarmas y notificaciones para abordar de manera proactiva las cuestiones relacionadas con el rendimiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [Recopile métricas y registros de las instancias de Amazon EC2 y de los servidores locales con el agente de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html?ref=wellarchitected) 
+  [Publique métricas personalizadas](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html?ref=wellarchitected) 
+  [Supervisión, registro y rendimiento Socios de APN](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+  [Documentación de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 

 **Videos relacionados** 
+  [Evite el caos: obtenga visibilidad operativa y conocimientos (MGT301-R1)](https://www.youtube.com/watch?v=nLYGbotqHd0) 
+  [Administración del rendimiento de las aplicaciones en AWS](https://www.youtube.com/watch?v=5T4stR-HFas&ref=wellarchitected) 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 

 **Ejemplos relacionados:** 
+  [Nivel 100: supervisión con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_with_cloudwatch_dashboards/) 
+  [Nivel 100: supervisión de una instancia EC2 de Windows con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_windows_ec2_cloudwatch/) 
+  [Nivel 100: supervisión de una instancia EC2 de Amazon Linux con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_linux_ec2_cloudwatch/) 

# PERF07-BP02 Analizar las métricas cuando se producen eventos o incidentes
<a name="perf_monitor_instances_post_launch_review_metrics"></a>

 En respuesta a (o durante) un evento o incidente, utilice los tableros o informes de monitorización para comprender y diagnosticar el impacto. Estas opiniones permiten saber qué partes de la carga de trabajo no están rindiendo según lo esperado. 

 Cuando escribe historias de usuario cruciales para su arquitectura, incluya requisitos de rendimiento, como especificar qué tan rápido debe ejecutarse cada historia crucial. Para estas historias cruciales, implemente viajes de usuario con scripts adicionales para asegurarse de que sepa cómo estas historias funcionan según sus requisitos. 

 **Patrones de uso no recomendados comunes:** 
+  Da por sentado que estos eventos de rendimiento son errores únicos y solo están relacionados con anomalías. 
+  Evalúa únicamente las métricas de rendimiento existentes al responder a eventos de rendimiento. 

 **Beneficios de establecer esta práctica recomendada:** al determinar si su carga de trabajo funciona a los niveles previstos, debe responder ante los eventos de rendimiento reuniendo datos de métricas adicionales para su análisis. Estos datos se utilizan para comprender el impacto del evento de rendimiento y proponer cambios para mejorar el rendimiento de las cargas de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Priorizar las preocupaciones de la experiencia para las historias de usuario cruciales: cuando escriba historias de usuario cruciales para su arquitectura, incluya requisitos de rendimiento, como por ejemplo, especificar lo rápido que debe ejecutarse cada historia crucial. Para estas historias cruciales, implemente viajes de usuario con scripts adicionales para asegurarse de que sepa cómo funcionan las historias de usuarios según sus requisitos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [Supervisión, registro y rendimiento Socios de APN](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+  [Documentación de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

 **Vídeos relacionados** 
+  [Evite el caos: obtenga visibilidad operativa y conocimientos (MGT301-R1)](https://www.youtube.com/watch?v=nLYGbotqHd0) 
+  [Optimizar aplicaciones a través de Amazon CloudWatch RUM](https://www.youtube.com/watch?v=NMaeujY9A9Y) 
+  [Demostración de Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **Ejemplos relacionados:** 
+  [Medición del tiempo de carga de la página con Amazon CloudWatch Synthetics](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Cliente web de Amazon CloudWatch RUM](https://github.com/aws-observability/aws-rum-web) 

# PERF07-BP03 Establecer indicadores clave de rendimiento (KPI) para medir el rendimiento de la carga de trabajo
<a name="perf_monitor_instances_post_launch_establish_kpi"></a>

 Identifique los KPI que miden de forma cuantitativa y cualitativa el rendimiento de la carga de trabajo. Los KPI ayudan a medir el estado de una carga de trabajo en la medida en que se relacione con un objetivo empresarial. Los KPI ayudan a las empresas y a los equipos de ingeniería a alinearse en torno a la medición de los objetivos y estrategias, y en cómo se combina todo esto para producir resultados empresariales. Los KPI se deberían reevaluar cuando cambien los objetivos empresariales, las estrategias o los requisitos del usuario final.   

 Por ejemplo, una carga de trabajo de un sitio web podría usar el tiempo de carga de la página como indicación del rendimiento general. Esta métrica sería uno de los diversos puntos de datos que miden la experiencia de un usuario final. Además de identificar los umbrales de los tiempos de carga de la página, debería documentar el resultado previsto o el riesgo empresarial si no se cumple el objetivo de rendimiento. Un tiempo de carga de la página prolongado afectaría a sus usuarios finales directamente, disminuyen la valoración de su experiencia de usuario y podría generar pérdida de clientes. Al definir sus umbrales de KPI, combine tanto las referencias del sector como las expectativas de su usuario final. Por ejemplo, si la referencia del sector actual es que una página web se cargue en un periodo de dos segundos, pero sus usuarios esperan que la página web se cargue en solamente un segundo, debería tener en cuenta estos dos puntos de datos al establecer el KPI. Otro ejemplo de un KPI podría girar en torno a cumplir las necesidades de rendimiento internas. Un umbral de KPI podría establecerse sobre la generación de informes de venta en el plazo de un día laborable tras haberse generado los datos de producción. Estos informes podrían afectar directamente las decisiones diarias y los resultados empresariales.  

 **Resultado deseado:** El establecimiento de KPI implica a diferentes partes interesadas y departamentos. Su equipo debe evaluar los KPI de sus cargas de trabajo utilizando datos detallados en tiempo real y datos históricos como referencia, y también crear paneles que lleven a cabo cálculos de métricas sobre sus datos de KPI para obtener información operativa y de uso. Los KPI deberían documentarse de modo que se expliquen los indicadores convenidos y los umbrales que respalden los objetivos y estrategias empresariales, y de modo que se asignen a las métricas supervisadas. Los KPI identifican requisitos de rendimiento, se revisan de forma intencional y se comparten y divulgan con frecuencia entre todos los equipos. Los riesgos y las compensaciones están claramente identificados y se pretende comprender cómo se ve afectada la empresa cuando no se cumplen los umbrales de los KPI. 

 **Antipatrones usuales:** 
+  Supervisa únicamente las métricas de nivel de sistema para obtener información sobre su carga de trabajo sin comprender el impacto empresarial de dichas métricas. 
+  Supone que sus KPI ya se están publicando y compartiendo como datos de métricas estándares. 
+  Definir los KPI pero no compartirlos con todos los equipos. 
+  No definir un KPI cuantitativo y medible. 
+  No alinear los KPI con objetivos o estrategias empresariales. 

 

 **Beneficios de establecer esta práctica recomendada:** La identificación de métricas específicas que representan el estado de las cargas de trabajo ayuda a alinear a los equipos en torno a sus prioridades y a definir resultados empresariales satisfactorios. La divulgación de esas métricas a todos los departamentos proporciona visibilidad y permite alinearse en torno a umbrales, expectativas y repercusiones empresariales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Todos los departamentos y equipos empresariales que se vean afectados por el estado de la carga de trabajo deberían contribuir a la definición de los KPI. Una única persona debería encargarse de la colaboración, los plazos, la documentación y la información relacionada con los KPI de una organización. Este propietario único comunicará a los demás los objetivos y estrategias empresariales con frecuencia y asignará a los interesados dentro de la empresa determinadas tareas para crear KPI en sus departamentos respectivos. Una vez definidos los KPI, el equipo de operaciones ayudará a definir las métricas que respaldarán y determinarán el éxito de los distintos KPI. Los KPI son únicamente eficaces si todos los miembros del equipo sobre el que se basa una carga de trabajo son conscientes de ellos. 

 **Pasos para la aplicación** 

1.  Identificar a las partes interesadas empresariales y documentarlos. 

1.  Identificar los objetivos y estrategias de la empresa. 

1.  Revisar los KPI habituales en el sector que se alineen con sus objetivos y estrategias empresariales. 

1.  Revisar las expectativas de los usuarios finales en relación con su carga de trabajo. 

1.  Definir y documentar los KPI que respalden los objetivos y estrategias de la empresa. 

1.  Identificar y documentar las estrategias de compensación autorizadas para alcanzar los KPI. 

1.  Identificar y documentar las métricas que determinarán los KPI. 

1.  Identificar y documentar los umbrales de los KPI según los niveles de gravedad o alarma. 

1.  Identificar y documentar el riesgo y el impacto de los KPI si no se cumplen. 

1.  Identificar la frecuencia de las revisiones por KPI. 

1.  Comunicar la documentación de los KPI a todos los equipos que intervengan en la carga de trabajo. 

** Nivel de esfuerzo para las directrices de implementación:** La definición y comunicación de los KPI supone una *baja* cantidad de trabajo. Por lo general, se puede llevar a cabo en varias semanas, mediante reuniones con las partes interesadas empresariales para revisar objetivos, estrategias y métricas de las cargas de trabajo.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Documentación de CloudWatch ](http://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [Supervisión, registro y rendimiento Socios de APN](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+ [Documentación de X-Ray ](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Uso de paneles de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html?ref=wellarchitected) 
+  [KPI de Quick](https://docs.aws.amazon.com/quicksight/latest/user/kpi.html) 

 **Videos relacionados** 
+  [AWS re:Invent 2019: Escalar hasta sus primeros 10 millones de usuarios (ARC211-R)](https://www.youtube.com/watch?v=kKjm4ehYiMs&ref=wellarchitected) 
+  [Evite el caos: obtenga visibilidad operativa y conocimientos (MGT301-R1)](https://www.youtube.com/watch?v=nLYGbotqHd0&ref=wellarchitected) 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 

 

 **Ejemplos relacionados:** 
+  [Creación de un panel con Quick](https://github.com/aws-samples/amazon-quicksight-sdk-proserve) 

# PERF07-BP04 Usar la supervisión para generar notificaciones basadas en alarmas
<a name="perf_monitor_instances_post_launch_generate_alarms"></a>

 A partir de los indicadores clave de rendimiento (KPI) que haya definido, utilice un sistema de supervisión que genere alarmas automáticamente cuando estas mediciones estén fuera de los límites previstos. 

 Amazon CloudWatch puede recopilar métricas en los recursos de su arquitectura. También puede recopilar y publicar métricas del cliente para negocios de superficie o métricas derivadas. Use CloudWatch o un servicio de supervisión de terceros para establecer alarmas que indiquen cuándo se infringen los umbrales; las alarmas indican que una métrica está fuera de los límites esperados. 

 **Patrones de uso no recomendados comunes:** 
+  Confía en que el personal observe las métricas y reaccione cuando vea un problema. 
+  Confía únicamente en los runbooks operativos, cuando los flujos de trabajo sin servidor podrían desencadenarse para realizar la misma tarea. 

 **Beneficios de establecer esta práctica recomendada:** puede establecer alarmas y automatizar acciones basadas en umbrales predefinidos o en algoritmos de machine learning que identifiquen comportamientos anómalos en sus métricas. Estas mismas alarmas también pueden desencadenar flujos de trabajo sin servidor, que pueden modificar las características de rendimiento de su carga de trabajo (por ejemplo, aumentar la capacidad de computación o alterar la configuración de la base de datos). 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Supervise las métricas: Amazon CloudWatch puede recopilar métricas entre los recursos de su arquitectura. Puede recopilar y publicar métricas personalizadas para hacer aflorar métricas empresariales o derivadas. Utilice CloudWatch o un servicio de supervisión de terceros para establecer alarmas que indiquen cuándo se superan los umbrales. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [Supervisión, registro y rendimiento Socios de APN](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+  [Documentación de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Using Alarms and Alarm Actions in CloudWatch (Uso de alarmas y acciones de alarma en CloudWatch)](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/cw-example-using-alarm-actions.html) 

 **Vídeos relacionados:** 
+  [AWS re:Invent 2019: Scaling up to your first 10 million users (Escalado vertical hasta sus primeros 10 millones de usuarios) (ARC211-R)](https://www.youtube.com/watch?v=kKjm4ehYiMs&ref=wellarchitected) 
+  [Cut through the chaos: Gain operational visibility and insight (Evite el caos: obtenga visibilidad operativa y conocimientos) (MGT301-R1)](https://www.youtube.com/watch?v=nLYGbotqHd0&ref=wellarchitected) 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 
+  [Uso de AWS Lambda con Amazon CloudWatch Events](https://www.youtube.com/watch?v=WDBD3JmpLqs) 

 **Ejemplos relacionados:** 
+  [Cloudwatch Logs Customize Alarms](https://github.com/awslabs/cloudwatch-logs-customize-alarms) 

# PERF07-BP05 Revisar las métricas a intervalos regulares
<a name="perf_monitor_instances_post_launch_review_metrics_collected"></a>

 Como mantenimiento de rutina o en respuesta a eventos o incidentes, revise qué métricas se recopilan. Utilice estas revisiones para determinar qué métricas son esenciales para abordar los problemas y cuáles adicionales en caso de que se haga un seguimiento para ayudar a identificar, abordar o prevenir problemas. 

 Como parte de la respuesta a incidentes o sucesos, evalúe qué parámetros fueron útiles para abordar el problema y qué parámetros podrían haber ayudado a los que no se están controlando actualmente. Utilícelo para mejorar la calidad de la métrica que recopila, de modo que pueda prevenir o resolver más rápidamente futuros incidentes. 

 **Patrones de uso no recomendados comunes:** 
+  Permite que las métricas se mantengan en un estado de alarma durante un periodo de tiempo extendido. 
+  Crea alarmas que no pueda accionar un sistema de automatización. 

 **Beneficios de establecer esta práctica recomendada:** revisar continuamente métricas que se recopilan para garantizar que puedan identificar, abordar o prevenir problemas apropiadamente. Las métricas también pueden estancarse si deja que permanezcan en un estado de alarma durante un periodo de tiempo prolongado. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Mejorar constantemente la recopilación y supervisión de métricas: como parte de la respuesta a incidentes o eventos, evalúe qué métricas fueron útiles para abordar el problema y qué métricas, que no se están controlando actualmente, podrían haber ayudado. Utilice este método para mejorar la calidad de las métricas que recopila de modo que pueda prevenir o resolver más rápidamente futuros incidentes. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [Recopilar métricas y registros de las instancias de Amazon EC2 y de los servidores locales con el agente de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html?ref=wellarchitected) 
+  [Supervisión, registro y rendimiento con socios de APN](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+  [Documentación de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

 **Vídeos relacionados** 
+  [Evite el caos: obtenga visibilidad operativa y conocimientos (MGT301-R1)](https://www.youtube.com/watch?v=nLYGbotqHd0) 
+  [Administración del rendimiento de las aplicaciones en AWS](https://www.youtube.com/watch?v=5T4stR-HFas&ref=wellarchitected) 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 

 **Ejemplos relacionados:** 
+  [Creación de un panel con Quick](https://github.com/aws-samples/amazon-quicksight-sdk-proserve) 
+  [Nivel 100: supervisión con paneles de CloudWatch](https://wellarchitectedlabs.com/performance-efficiency/100_labs/100_monitoring_with_cloudwatch_dashboards/) 

# PERF07-BP06 Supervisar y usar alarmas de forma proactiva
<a name="perf_monitor_instances_post_launch_proactive"></a>

 Usa los indicadores clave de rendimiento (KPI), combinados con los sistemas de supervisión y alerta, para abordar de manera proactiva los problemas relacionados con el rendimiento. Usa alarmas para activar acciones automatizadas y corregir los problemas siempre que sea posible. Escala la alarma a aquellos capaces de responder cuando no se pueda recurrir a la respuesta automatizada. Por ejemplo, puede que tenga un sistema que puede predecir los valores esperados de los KPI y emitir alarmas cuando sobrepasan ciertos umbrales, o una herramienta que puede detener o revertir automáticamente los despliegues si los KPI están fuera de los valores esperados. 

 Implementar procesos que proporcionen visibilidad del rendimiento a medida que ejecuta la carga de trabajo. Construya paneles de supervisión y establezca normas de referencia para las expectativas de rendimiento para determinar si la carga de trabajo funciona de manera óptima. 

 **Patrones de uso no recomendados comunes:** 
+  Únicamente permite que el personal de operaciones pueda llevar a cabo cambios operativos en la carga de trabajo. 
+  Permite que todas las alarmas se filtren al equipo de operaciones sin medidas de corrección proactivas. 

 **Beneficios de establecer esta práctica recomendada:** la corrección proactiva de las acciones de alarma permite al personal de soporte concentrarse en aquellos elementos que no son accionables automáticamente. Esto garantiza que el personal de operaciones no se vea abrumado por todas las alarmas y que en lugar de ello pueda centrarse únicamente en las alarmas críticas. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Supervisar el rendimiento durante las operaciones: implemente procesos que proporcionen visibilidad sobre el rendimiento a medida que se ejecute la carga de trabajo. Desarrolle paneles de supervisión y establezca una referencia en cuanto a las expectativas de rendimiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) 
+  [Supervisión, registro y rendimiento de socios de APN](https://aws.amazon.com/devops/partner-solutions/#_Monitoring.2C_Logging.2C_and_Performance) 
+  [Documentación de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Uso de alarmas y acciones de alarma en CloudWatch](https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/cw-example-using-alarm-actions.html) 

 **Vídeos relacionados:** 
+  [Evite el caos: obtenga visibilidad operativa y conocimientos (MGT301-R1)](https://www.youtube.com/watch?v=nLYGbotqHd0) 
+  [Administración del rendimiento de las aplicaciones en AWS](https://www.youtube.com/watch?v=5T4stR-HFas&ref=wellarchitected) 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 
+  [Uso de AWS Lambda con Amazon CloudWatch Events](https://www.youtube.com/watch?v=WDBD3JmpLqs) 

 **Ejemplos relacionados:** 
+  [Personalización de alarmas de los registros de CloudWatch](https://github.com/awslabs/cloudwatch-logs-customize-alarms) 

# Compensaciones
<a name="a-tradeoffs"></a>

**Topics**
+ [PERF 8: ¿Cómo utiliza las compensaciones para mejorar el rendimiento?](perf-08.md)

# PERF 8: ¿Cómo utiliza las compensaciones para mejorar el rendimiento?
<a name="perf-08"></a>

 A la hora de diseñar soluciones, la determinación de las compensaciones le permite seleccionar un enfoque óptimo. A menudo, puede mejorar el rendimiento si intercambia la consistencia, durabilidad y espacio para el tiempo y latencia. 

**Topics**
+ [PERF08-BP01 Comprender las áreas en las que el rendimiento es lo más importante](perf_tradeoffs_performance_critical_areas.md)
+ [PERF08-BP02 Conocer los patrones y servicios de diseño](perf_tradeoffs_performance_design_patterns.md)
+ [PERF08-BP03 Identificar cómo afectan las compensaciones a los clientes y a la eficiencia](perf_tradeoffs_performance_understand_impact.md)
+ [PERF08-BP04 Medir la repercusión de las mejoras de rendimiento](perf_tradeoffs_performance_measure.md)
+ [PERF08-BP05 Utilizar diversas estrategias relacionadas con el rendimiento](perf_tradeoffs_performance_implement_strategy.md)

# PERF08-BP01 Comprender las áreas en las que el rendimiento es lo más importante
<a name="perf_tradeoffs_performance_critical_areas"></a>

 Comprenda y detecte las áreas en las que un aumento del rendimiento de la carga de trabajo tendrá un impacto positivo en la eficiencia o en la experiencia del cliente. Por ejemplo, un sitio web que tenga una gran interacción del cliente se beneficiaría de utilizar servicios en la periferia para acercar la entrega de contenido a los clientes. 

**Resultado deseado:** aumentar la eficiencia del rendimiento mediante la comprensión de su arquitectura, patrones de tráfico y patrones de acceso a los datos e identificar sus tiempos de latencia y procesamiento. Identifique los posibles cuellos de botella que puedan afectar a la experiencia del cliente a medida que aumenta la carga de trabajo. Al identificar esas áreas, fíjese en qué solución podría desplegar para eliminar esos problemas de rendimiento.

 **Patrones comunes de uso no recomendados:** 
+  Supone que las métricas de computación estándar, como `CPUUtilization` o la presión de memoria, son suficientes para detectar problemas de rendimiento. 
+  Solo se utilizan las métricas predeterminadas registradas por el software de supervisión seleccionado. 
+  Solo se revisan las métricas cuando hay un problema. 

 **Beneficios de establecer esta práctica recomendada:** el conocimiento de las áreas críticas de rendimiento ayuda a los propietarios de la carga de trabajo a supervisar los KPI y a priorizar las mejoras de alto impacto. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Configure el seguimiento de extremo a extremo para identificar los patrones de tráfico, la latencia y las áreas esenciales de rendimiento. Supervise los patrones de acceso a los datos para detectar consultas lentas o datos deficientemente fragmentados y particionados. Identifique las áreas restringidas de la carga de trabajo mediante pruebas de carga o supervisión.

## Pasos para la aplicación
<a name="w2aac19c13c13b5b6c17"></a>

1.  Configure la supervisión de extremo a extremo para capturar todos los componentes y métricas de la carga de trabajo. 
   +  Use [Amazon CloudWatch Real-User Monitoring (RUM)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) para capturar las métricas de rendimiento de las aplicaciones a partir de las sesiones reales de los usuarios en el cliente y del frontend. 
   +  Configure [AWS X-Ray](https://aws.amazon.com/xray/) para realizar un seguimiento del tráfico a través de las capas de la aplicación e identificar la latencia entre los componentes y las dependencias. Utilice los mapas de servicios de X-Ray para ver las relaciones y la latencia entre los componentes de la carga de trabajo. 
   +  Use [Información sobre rendimiento de Amazon Relational Database Service](https://aws.amazon.com/rds/performance-insights/) para ver las métricas de rendimiento de la base de datos e identificar las mejoras de rendimiento. 
   +  Use [Supervisión mejorada de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html) para ver las métricas de rendimiento del sistema operativo de la base de datos. 
   +  Recopile [métricas de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html) por componente de carga de trabajo y servicio e identifique qué métricas afectan a la eficiencia del rendimiento. 
   +  Configure [Amazon DevOps Guru](https://aws.amazon.com/devops-guru/) para obtener información y recomendaciones adicionales sobre el rendimiento. 

1.  Lleve a cabo pruebas para generar métricas, identificar patrones de tráfico, cuellos de botella y áreas críticas de rendimiento. 
   +  Configure [«canaries» sintéticos de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) para imitar las actividades del usuario basadas en el navegador mediante programación mediante trabajos de `cron` o expresiones de tasa para generar métricas coherentes a lo largo del tiempo. 
   +  Utilice la solución [Pruebas de carga distribuidas en AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) para generar picos de tráfico o probar la carga de trabajo con la tasa de crecimiento prevista. 

1.  Evalúe las métricas y la telemetría para identificar sus áreas fundamentales de rendimiento. Revise estas áreas con su equipo con el fin de analizar la supervisión y las soluciones para evitar los cuellos de botella. 

1.  Experimente con las mejoras de rendimiento y mida los cambios con datos. 
   +  Use [CloudWatch Evidently](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Evidently.html) para probar las nuevas mejoras y el impacto en el rendimiento de la carga de trabajo. 

 **Nivel de esfuerzo para el plan de implementación:** Para establecer esta práctica recomendada, debe revisar sus métricas de extremo a extremo y conocer el rendimiento actual de la carga de trabajo. Se trata de un nivel de esfuerzo moderado para configurar la supervisión de extremo a extremo e identificar sus áreas fundamentales de rendimiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon Builders' Library](https://aws.amazon.com/builders-library) 
+  [Documentación de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Amazon DevOps Guru](https://aws.amazon.com/devops-guru/) 
+  [CloudWatch RUM y X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/xray-services-RUM.html) 

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (Introducción a la Amazon Builders’ Library) (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [Demostración de Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **Ejemplos relacionados:** 
+  [Medición del tiempo de carga de la página con Amazon CloudWatch Synthetics](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Cliente web de Amazon CloudWatch RUM](https://github.com/aws-observability/aws-rum-web) 
+  [SDK de X-Ray para Node.js](https://github.com/aws/aws-xray-sdk-node) 
+  [SDK de X-Ray para Python](https://github.com/aws/aws-xray-sdk-python) 
+  [SDK de X-Ray para Java](https://github.com/aws/aws-xray-sdk-java) 
+  [SDK de X-Ray para .Net](https://github.com/aws/aws-xray-sdk-dotnet) 
+  [SDK de X-Ray para Ruby](https://github.com/aws/aws-xray-sdk-ruby) 
+  [Daemon de X-Ray](https://github.com/aws/aws-xray-daemon) 
+  [Pruebas de carga distribuidas en AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 

# PERF08-BP02 Conocer los patrones y servicios de diseño
<a name="perf_tradeoffs_performance_design_patterns"></a>

 Investigue y comprenda los diversos patrones y servicios de diseño que contribuyen a mejorar el rendimiento de la carga de trabajo. Como parte del análisis, identifique qué podría negociar para lograr un mayor rendimiento. Por ejemplo, utilizar un servicio de caché puede ayudar a reducir la carga que soportan los sistemas de base de datos. Sin embargo, el almacenamiento en caché puede introducir una consistencia eventual y requiere un esfuerzo de ingeniería para implementarlo dentro de los requisitos de la empresa y las expectativas del cliente. 

 **Resultado deseado:** La investigación de patrones de diseño le llevará a elegir un diseño de arquitectura que respalde el sistema con el mejor rendimiento. Aprenda qué opciones de configuración de rendimiento están disponibles para usted y cómo podrían afectar a la carga de trabajo. La optimización del rendimiento de su carga de trabajo depende de la comprensión de la forma en que estas opciones interactúan con su arquitectura y el impacto que tendrán tanto en el rendimiento medido como en el rendimiento percibido por los usuarios finales. 

 **Patrones comunes de uso no recomendados:** 
+  Supone que todas las estrategias de rendimiento de cargas de trabajo informáticas tradicionales son idóneas para las cargas de trabajo en la nube. 
+  Desarrolla y administra soluciones de almacenamiento en caché en lugar de utilizar servicios administrados. 
+  Utiliza el mismo patrón de diseño para todas sus cargas de trabajo sin evaluar qué patrón mejoraría el rendimiento de la carga de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** Al seleccionar el patrón de diseño y los servicios adecuados para su carga de trabajo, estará optimizando su rendimiento, mejorando la excelencia operativa y aumentando la fiabilidad. El patrón de diseño adecuado cumplirá con las características de su carga de trabajo actual y le ayudará a escalar para futuros crecimientos o cambios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Aprenda qué opciones de configuración de rendimiento están disponibles y cómo podrían afectar a la carga de trabajo. La optimización del rendimiento de su carga de trabajo depende de la comprensión de la forma en que estas opciones interactúan con su arquitectura y el impacto que tienen en el rendimiento medido y en el que perciben los usuarios. 

 **Pasos para la aplicación:** 

1. Evaluar y revisar los patrones de diseño que mejorarían el rendimiento de su carga de trabajo. 

   1. La [Amazon Builders' Library](https://aws.amazon.com/builders-library/) le ofrece una descripción detallada de cómo Amazon desarrolla y utiliza la tecnología. Los ingenieros senior de Amazon son los autores de estos artículos gratuitos que abordan temas relativos a arquitectura, entrega de software y operaciones. 

   1. [La Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) es una colección de soluciones listas para desplegar que reúne servicios, código y configuraciones. Estas soluciones han sido creadas por AWS y socios de AWS basándose en casos de uso comunes y patrones de diseño agrupados por sector o tipo de carga de trabajo. Por ejemplo, puede configurar una [solución de pruebas de carga distribuida](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) para su carga de trabajo. 

   1. [El Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) proporciona diagramas de arquitectura de referencia agrupados por patrón de diseño, tipo de contenido y tecnología. 

   1. [AWS Samples](https://github.com/aws-samples) es un repositorio de GitHub lleno de ejemplos prácticos que le ayudarán a explorar patrones de arquitectura, soluciones y servicios comunes. Se actualiza con frecuencia con los servicios y ejemplos más recientes. 

1. Mejore su carga de trabajo para modelar los patrones de diseño seleccionados y utilice los servicios y las opciones de configuración de servicios para mejorar el rendimiento de su carga de trabajo. 

   1. Forme a su equipo interno con los recursos disponibles en [AWS Skills Guild](https://aws.amazon.com/training/teams/aws-skills-guild/). 

   1. Utilice las [AWS Partner Network](https://aws.amazon.com/partners/) para proporcionar experiencia rápidamente y para escalar su capacidad de hacer mejoras. 

**Nivel de esfuerzo para el plan de implementación:** Para establecer esta práctica recomendada, debe conocer los patrones de diseño y los servicios que podrían ayudar a mejorar el rendimiento de su carga de trabajo. Después de evaluar los patrones de diseño, implementar los patrones de diseño es un nivel de esfuerzo *alto* . 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture/) 
+  [AWS Partner Network](https://aws.amazon.com/partners/) 
+  [La Biblioteca de soluciones de AWS](https://aws.amazon.com/solutions/) 
+  [Centro de conocimiento de AWS](https://aws.amazon.com/premiumsupport/knowledge-center/) 
+  [Amazon Builders' Library](https://aws.amazon.com/builders-library/) 
+  [Uso del desbordamiento de carga para evitar la sobrecarga](https://aws.amazon.com/builders-library/using-load-shedding-to-avoid-overload/?did=ba_card&trk=ba_card) 
+ [Desafíos y estrategias del almacenamiento en caché](https://aws.amazon.com/builders-library/caching-challenges-and-strategies/?did=ba_card&trk=ba_card)

 **Vídeos relacionados:** 
+  [Introducing The Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [This is my Architecture](https://aws.amazon.com/architecture/this-is-my-architecture/) 

 **Ejemplos relacionados:** 
+  [Ejemplos de AWS](https://github.com/aws-samples) 
+  [Ejemplos de SDK de AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 

# PERF08-BP03 Identificar cómo afectan las compensaciones a los clientes y a la eficiencia
<a name="perf_tradeoffs_performance_understand_impact"></a>

 Cuando evalúe las mejoras relacionadas con el rendimiento, determine qué decisiones afectarán a sus clientes y la eficiencia de sus cargas de trabajo. Por ejemplo, si el uso de un almacén de datos clave-valor aumenta el rendimiento de su sistema, es importante evaluar cómo afectará a los clientes su naturaleza eventualmente consistente. 

 Identifique las áreas de bajo rendimiento de su sistema mediante métricas y monitoreo. Determine cómo puede hacer mejoras, qué compensaciones suponen esas mejoras y cómo afectan al sistema y a la experiencia del usuario. Por ejemplo, la implementación de datos en caché puede mejorar drásticamente el rendimiento, pero requiere una estrategia clara sobre cómo y cuándo actualizar o invalidar los datos en caché para evitar un comportamiento incorrecto del sistema. 

 **Patrones de uso no recomendados comunes:** 
+  Supone que todos los beneficios de rendimiento deberían implementarse, incluso aunque su implementación suponga renunciar a algo, como la consistencia eventual. 
+  Solo evalúa los cambios en las cargas de trabajo cuando un problema de rendimiento ha alcanzado un punto crítico. 

 **Beneficios de establecer esta práctica recomendada:** al evaluar las mejoras potenciales relacionadas con el rendimiento, debe decidir si las renuncias que exigen los cambios están alineadas con los requisitos de la carga de trabajo. En algunos casos, es posible que tenga que implementar controles adicionales para compensar dichas renuncias. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Identificar las compensaciones: use métricas y la supervisión para identificar las áreas de rendimiento insuficiente en su sistema. Determine cómo llevar a cabo las mejoras y cómo afectarán las compensaciones al sistema y a la experiencia del usuario. Por ejemplo, la implementación de datos en caché puede mejorar drásticamente el rendimiento, pero requiere una estrategia clara sobre cómo y cuándo actualizar o invalidar los datos en caché para evitar un comportamiento incorrecto del sistema. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon Builders’ Library](https://aws.amazon.com/builders-library) 
+  [KPI de Quick](https://docs.aws.amazon.com/quicksight/latest/user/kpi.html) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Documentación de X-Ray](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

 **Vídeos relacionados:** 
+  [Introducción a la Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [Diseñe un plan de monitoreo](https://www.youtube.com/watch?v=OMmiGETJpfU&ref=wellarchitected) 
+  [Optimizar aplicaciones a través de Amazon CloudWatch RUM](https://www.youtube.com/watch?v=NMaeujY9A9Y) 
+  [Demostración de Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **Ejemplos relacionados:** 
+  [Medición del tiempo de carga de una página con Amazon CloudWatch Synthetics](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Cliente web de Amazon CloudWatch RUM](https://github.com/aws-observability/aws-rum-web) 

# PERF08-BP04 Medir la repercusión de las mejoras de rendimiento
<a name="perf_tradeoffs_performance_measure"></a>

 Evalúe las métricas y los datos recopilados a medida que se realicen cambios para mejorar el rendimiento. Use esta información para determinar el impacto que ha tenido la mejora de rendimiento en la carga de trabajo, los componentes de la carga de trabajo y sus clientes. Esta medición le ayuda a comprender las mejoras que se obtienen y le ayuda a determinar si la compensación produjo efectos secundarios negativos. 

 Un sistema bien diseñado usa una combinación de estrategias relacionadas con el rendimiento. Determine qué estrategia tendrá un efecto más positivo en un determinado punto conflictivo o cuello de botella. Por ejemplo, la partición de datos entre varios sistemas de base de datos relacional podría mejorar el rendimiento general al tiempo que mantiene las transacciones; y dentro de cada partición, el almacenamiento en caché puede ayudar a reducir la carga. 

 **Patrones de uso no recomendados comunes:** 
+  Despliega y administra manualmente tecnologías que están disponibles como servicios administrados. 
+  Se centra solamente en un componente, como la red, cuando podrían utilizarse múltiples componentes para aumentar el rendimiento de la carga de trabajo. 
+  Confía en las opiniones y percepciones de los clientes como único punto de referencia. 

 **Beneficios de establecer esta práctica recomendada:** para implementar estrategias de rendimiento, debe seleccionar varios servicios y funciones que, en conjunto, le permitirán cumplir los requisitos de rendimiento de sus cargas de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Un sistema bien diseñado usa una combinación de estrategias relacionadas con el rendimiento. Determine qué estrategia tendrá un efecto más positivo en un determinado punto conflictivo o cuello de botella. Por ejemplo, la partición de datos entre varios sistemas de base de datos relacional podría mejorar el rendimiento general al tiempo que mantiene las transacciones; y dentro de cada partición, el almacenamiento en caché puede ayudar a reducir la carga. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon Builders’ Library](https://aws.amazon.com/builders-library) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 
+  [Pruebas de carga distribuidas en AWS](https://docs.aws.amazon.com/solutions/latest/distributed-load-testing-on-aws/welcome.html) 

 **Vídeos relacionados:** 
+  [Introducción a Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [Optimizar aplicaciones a través de Amazon CloudWatch RUM](https://www.youtube.com/watch?v=NMaeujY9A9Y) 
+  [Demostración de Amazon CloudWatch Synthetics](https://www.youtube.com/watch?v=hF3NM9j-u7I) 

 **Ejemplos relacionados:** 
+  [Medición del tiempo de carga de la página con Amazon CloudWatch Synthetics](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Cliente web de Amazon CloudWatch RUM](https://github.com/aws-observability/aws-rum-web) 
+  [Pruebas de carga distribuidas en AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 

# PERF08-BP05 Utilizar diversas estrategias relacionadas con el rendimiento
<a name="perf_tradeoffs_performance_implement_strategy"></a>

 Utilice varias estrategias para mejorar el rendimiento cuando corresponda. Por ejemplo, utilizar las siguientes estrategias: almacenamiento en caché de datos para evitar un exceso de llamadas a la red o a la base de datos; réplicas de lectura para mejorar las tasas de lectura de los motores de base de datos; partición o compresión de los datos, cuando sea posible, para reducir los volúmenes de datos; y almacenamiento en búfer con streaming de los resultados a medida que estén disponibles para evitar el bloqueo. 

 Según vaya aplicando cambios a la carga de trabajo, recopile y evalúe métricas para determinar el efecto de esos cambios. Mida los efectos sobre el sistema y sobre el usuario final para comprender cómo afectan sus compensaciones a su carga de trabajo. Utilice un enfoque sistemático, como las pruebas de carga, para averiguar si la compensación mejora el rendimiento. 

 **Patrones de uso no recomendados comunes:** 
+  Supone que el rendimiento de las cargas de trabajo es adecuado si los clientes no se quejan. 
+  Recopila únicamente datos sobre el rendimiento tras haber llevado a cabo cambios relacionados con el rendimiento. 

 **Beneficios de establecer esta práctica recomendada:** para optimizar el rendimiento y el uso de recursos, necesita una vista operativa unificada, datos detallados en tiempo real y referencias históricas. Puede crear paneles y realizar cálculos de métricas en sus datos para obtener información operativa y de utilización para sus cargas de trabajo a medida que cambien con el tiempo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Usar un enfoque basado en datos para hacer evolucionar su arquitectura: según vaya aplicando cambios a la carga de trabajo, recopile y evalúe métricas para determinar el efecto de esos cambios. Mida los efectos sobre el sistema y sobre el usuario final para comprender cómo afectan sus compensaciones a su carga de trabajo. Utilice un enfoque sistemático, como las pruebas de carga, para averiguar si la compensación mejora el rendimiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Amazon Builders’ Library](https://aws.amazon.com/builders-library) 
+  [Prácticas recomendadas para implementar Amazon ElastiCache](https://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/BestPractices.html) 
+  [Almacenamiento en caché de base de datos de AWS ](https://aws.amazon.com/caching/database-caching/?ref=wellarchitected) 
+  [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 
+  [Pruebas de carga distribuidas en AWS](https://docs.aws.amazon.com/solutions/latest/distributed-load-testing-on-aws/welcome.html) 

 **Vídeos relacionados:** 
+  [Introducción a Amazon Builders’ Library (DOP328)](https://www.youtube.com/watch?v=sKRdemSirDM) 
+  [Bases de datos personalizadas de AWS (DAT209-L) ](https://www.youtube.com/watch?v=q81TVuV5u28&ref=wellarchitected) 
+  [Optimizar aplicaciones a través de Amazon CloudWatch RUM](https://www.youtube.com/watch?v=NMaeujY9A9Y) 

 **Ejemplos relacionados:** 
+  [Medición del tiempo de carga de la página con Amazon CloudWatch Synthetics](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance) 
+  [Cliente web de Amazon CloudWatch RUM](https://github.com/aws-observability/aws-rum-web) 
+  [Pruebas de carga distribuidas en AWS](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/) 

# Optimización de costes
<a name="a-cost-optimization"></a>

El pilar de optimización de costes incluye la capacidad de ejecutar sistemas para ofrecer valor empresarial al precio más bajo posible. Encontrará una guía prescriptiva sobre implementación en el [documento técnico Pilar de optimización de costes](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/welcome.html?ref=wellarchitected-wp).

**Topics**
+ [Práctica de administración financiera en la nube](a-practice-cloud-financial-management.md)
+ [Conocimiento del gasto y del uso](a-expenditure-and-usage-awareness.md)
+ [Recursos rentables](a-cost-effective-resources.md)
+ [Administración de la demanda y suministro de recursos](a-manage-demand-and-supply-resources.md)
+ [Optimización a lo largo del tiempo](a-optimize-over-time.md)

# Práctica de administración financiera en la nube
<a name="a-practice-cloud-financial-management"></a>

**Topics**
+ [COST 1 ¿Cómo implementa la administración financiera en la nube?](cost-01.md)

# COST 1 ¿Cómo implementa la administración financiera en la nube?
<a name="cost-01"></a>

Implementar la administración financiera en la nube permite a las empresas obtener valor empresarial y éxito financiero al optimizar su coste y uso, y al escalar en AWS.

**Topics**
+ [COST01-BP01 Establecer una función de optimización de costes](cost_cloud_financial_management_function.md)
+ [COST01-BP02 Establecer la colaboración entre los departamentos de Finanzas y Tecnología](cost_cloud_financial_management_partnership.md)
+ [COST01-BP03 Establecer presupuestos y previsiones de la nube](cost_cloud_financial_management_budget_forecast.md)
+ [COST01-BP04 Implementar la conciencia de costes en los procesos organizativos](cost_cloud_financial_management_cost_awareness.md)
+ [COST01-BP05 Crear informes y notificar la optimización de costes](cost_cloud_financial_management_usage_report.md)
+ [COST01-BP06 Supervisar los costes de forma proactiva](cost_cloud_financial_management_proactive_process.md)
+ [COST01-BP07 Estar al día sobre las nuevas versiones de los servicios](cost_cloud_financial_management_scheduled.md)
+ [COST01-BP08 Crear una cultura de conciencia de costes](cost_cloud_financial_management_culture.md)
+ [COST01-BP09 Cuantificar el valor empresarial a partir de la optimización de costes](cost_cloud_financial_management_quantify_value.md)

# COST01-BP01 Establecer una función de optimización de costes
<a name="cost_cloud_financial_management_function"></a>

Cree un equipo (Oficina de negocios en la nube o Centro de excelencia en la nube) que se encargue de establecer y afianzar el conocimiento sobre los costes en toda la organización. Este equipo debe estar integrado por personas del ámbito financiero, tecnológico y empresarial de la organización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Establezca un equipo de Oficina de negocios en la nube (CBO) o Centro de excelencia en la nube (CCOE) que se encargue de establecer y afianzar una cultura de conocimiento sobre los costes en la computación en la nube. Puede ser una persona, un equipo de la organización o un nuevo equipo formado por representantes clave de los departamentos financiero, tecnológico y organizativo de la organización.

Esta función (la persona o el equipo) prioriza y dedica el porcentaje necesario de su tiempo a actividades de administración y optimización de costes. En una organización pequeña, es posible que esta función dedique menos tiempo a ello, si lo comparamos con una función a tiempo completo de una empresa grande.

Esta función debe tener carácter multidisciplinar, es decir, que debe tener experiencia en gestión de proyectos, ciencia de datos, análisis financiero y desarrollo de software o infraestructura. La función puede mejorar la eficiencia de las cargas de trabajo mediante optimizaciones de costes dentro de tres propiedades diferentes:
+ **Centralizada: **A través de equipos designados, como operaciones financieras, optimización de costes, CBO o CCOE, los clientes pueden diseñar e implementar mecanismos de gobernanza e impulsar las prácticas recomendadas en toda la empresa.
+ **Descentralizada:** Influir en los equipos tecnológicos para ejecutar las optimizaciones.
+ **Híbrida:** Una combinación de equipos centralizados y descentralizados que puede trabajar conjuntamente para ejecutar optimizaciones de costes.

Esta función se evalúa según su capacidad de ejecutar y alcanzar los objetivos de optimización de costes (por ejemplo, las métricas de eficiencia de las cargas de trabajo).

Debe conseguir el patrocinio de los ejecutivos para que esta función realice cambios, lo cual es un factor clave para el éxito. El patrocinador es considerado el campeón del consumo rentable de la nube y proporciona apoyo a la función para garantizar que las actividades de optimización de costes se traten según el nivel de prioridad definido por la organización. De lo contrario, se ignorarán las directrices y no se dará prioridad a las oportunidades de ahorro. Conjuntamente, el patrocinador y la función se encargarán de garantizar que su organización haga un consumo eficiente de la nube y siga proporcionando valor empresarial.

Si tiene un plan Business, Enterprise-On-Ramp o Enterprise Support y necesita ayuda para crear este equipo o función, póngase en contacto con los expertos de Cloud Finance Management (CFM) a través de su equipo de cuentas.

**Pasos para la aplicación**
+ ** Defina los miembros clave:** Debe asegurarse de que todas las partes relevantes de su organización contribuyan y participen en la administración de costes. En general, los equipos de las organizaciones constan de equipos de finanzas, propietarios de aplicaciones o productos, administración y técnicos (DevOps). Algunos tienen dedicación completa (técnicos y financieros) y otros periódica, según sea necesario. Las personas o los equipos que realizan CFM generalmente necesitan el siguiente conjunto de habilidades: 
  + Conocimientos de desarrollo de software: en el caso de que se creen scripts y automatización.
  + Conocimientos de ingeniería de infraestructuras: para implementar scripts o automatización, y entender cómo se aprovisionan los servicios o recursos.
  + Perspicacia en las operaciones: la CFM consiste en operar en la nube de forma eficiente midiendo, supervisando, modificando, planificando y escalando el uso eficiente de la nube. 
+  **Establezca objetivos y métricas: **Esta función debe proporcionar valor a la organización de distintas maneras. Estos objetivos se definen y evolucionan de forma continua a medida que evoluciona la organización. Estas son las actividades habituales: crear y ejecutar programas educativos sobre optimización de costes en la organización, desarrollar estándares para toda la organización, como la supervisión y la creación de informes de optimización de costes, y establecer objetivos de carga de trabajo sobre la optimización. Esta función también debe informar regularmente a la organización sobre la capacidad de optimizar costes de la organización.

  Puede definir indicadores clave de rendimiento (KPI) basados en el valor. Los KPI pueden basarse en los costes o en el valor. Cuando se definen los KPI, se puede calcular el coste previsto en términos de eficiencia y el resultado empresarial esperado. Los KPI basados en el valor vinculan las métricas de coste y uso a los impulsores del valor empresarial y nos ayudan a racionalizar los cambios en nuestro gasto de AWS. El primer paso para derivar los KPI basados en el valor es trabajar juntos, entre organizaciones, para seleccionar y acordar un conjunto estándar de KPI.
+ ** Establezca una cadencia regular: **El grupo (equipos de finanzas, tecnología y negocios) debe reunirse regularmente para revisar sus objetivos y métricas. Una cadencia típica implica revisar el estado de la organización, revisar los programas que se ejecutan actualmente y las métricas generales financieras y de optimización. Después, se debe informar sobre las cargas de trabajo clave con mayor detalle. 

  Durante estas reuniones periódicas, se puede revisar la eficiencia de la carga de trabajo (coste) y los resultados empresariales. Por ejemplo, un aumento del 20 % en el coste de una carga de trabajo puede coincidir con un mayor uso por parte del cliente. En este caso, este aumento del 20 % de los costes puede interpretarse como una inversión. Estas llamadas de cadencia regular pueden ayudar a los equipos a identificar los KPI basados en valor que proporcionan significado a toda la organización.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de CCOE de AWS](https://aws.amazon.com/blogs/enterprise-strategy/tag/ccoe/) 
+ [Creating Cloud Business Office (Creación de la Oficina de negocios en la nube)](https://aws.amazon.com/blogs/enterprise-strategy/creating-the-cloud-business-office/)
+ [CCOE - Cloud Center of Excellence](https://docs.aws.amazon.com/whitepapers/latest/cost-optimization-laying-the-foundation/cloud-center-of-excellence.html)

 **Vídeos relacionados:** 
+ [Historia de éxito de CCOE en Vanguard](https://www.youtube.com/watch?v=0XA08hhRVFQ)

 **Ejemplos relacionados:** 
+ [Using a Cloud Center of Excellence (CCOE) to Transform the Entire Enterprise (Uso del Centro de excelencia en la nube [CCOE] para transformar toda la empresa)](https://aws.amazon.com/blogs/enterprise-strategy/using-a-cloud-center-of-excellence-ccoe-to-transform-the-entire-enterprise/)
+ [Building a CCOE to transform the entire enterprise (Creación de un CCOE para transformar toda la empresa)](https://docs.aws.amazon.com/whitepapers/latest/public-sector-cloud-transformation/building-a-cloud-center-of-excellence-ccoe-to-transform-the-entire-enterprise.html)
+ [7 Pitfalls to Avoid When Building CCOE (7 obstáculos que evitar al crear el CCOE)](https://aws.amazon.com/blogs/enterprise-strategy/7-pitfalls-to-avoid-when-building-a-ccoe/)

# COST01-BP02 Establecer la colaboración entre los departamentos de Finanzas y Tecnología
<a name="cost_cloud_financial_management_partnership"></a>

Debe implicar a los equipos de finanzas y tecnología en las discusiones sobre costes y uso en todas las etapas del traspaso a la nube. Los equipos deben reunirse y tratar regularmente sobre temas como los objetivos organizativos, el estado actual de los costes y el uso, y las prácticas contables y financieras. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Los equipos tecnológicos innovan más rápido en la nube gracias a que los ciclos de aprobación, adquisición y despliegue de la infraestructura son más cortos. Esto puede implicar un ajuste para las organizaciones financieras acostumbradas a tanto a ejecutar procesos que requieren mucho tiempo y consumen muchos recursos para obtener y desplegar capital en entornos de centros de datos y a nivel local, como a asignar los costes solo al aprobar el proyecto. 

Desde el punto de vista de la organización financiera y de adquisiciones, el proceso de presupuestos de capital, las solicitudes de capital, las aprobaciones, las adquisiciones y la instalación de la infraestructura física es un proceso que se ha aprendido y estandarizado durante décadas:
+ Los equipos de Ingeniería o TI suelen ser los solicitantes
+ Varios equipos financieros actúan como aprobadores y compradores
+ Los equipos de operaciones montan rack, apilan y entregan la infraestructura lista para usar

![\[Circular workflow diagram showing technology teams, procurement, supply chain, and operations interactions.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/cost01-bp02-finance-and-procurement-workflow.png)


Con la adopción de la nube, la adquisición y el consumo de infraestructura dejan de estar a expensas de una cadena de dependencias. En el modelo de la nube, los equipos de tecnología y productos ya no son solo creadores, sino operadores y propietarios de sus productos, responsables de la mayoría de las actividades históricamente asociadas a los equipos de finanzas y operaciones, incluidas las adquisiciones y el despliegue.

Todo lo que se necesita para aprovisionar recursos en la nube es una cuenta de usuario y la serie de permisos adecuada. Esto es también lo que reduce el riesgo de la TI y de las finanzas, lo cual significa que, con unos pocos clics o llamadas a la API, los equipos pueden eliminar los recursos inactivos o innecesarios en la nube. Esto también permite a los equipos de tecnología innovar más rápidamente gracias a la agilidad y la capacidad de poner en marcha experimentos y luego desmantelarlos. Aunque la naturaleza variable del consumo de la nube puede afectar a la previsibilidad desde el punto de vista de los presupuestos y las previsiones de capital, la nube ofrece a las organizaciones la posibilidad de reducir el coste del exceso de aprovisionamiento así como el coste de oportunidad asociado al subaprovisionamiento conservador.

![\[Diagram showing Technology and Product teams deploying, Finance and Business teams operating, with optimization at the center.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/cost01-bp02-deploy-operate-optimize.png)


Establezca la colaboración entre los partes interesadas clave de Finanzas y Tecnología para lograr un entendimiento común de los objetivos organizativos y desarrollar mecanismos para obtener éxito financiero en el modelo de gasto variable de la computación en la nube. Los equipos relevantes de su organización deben estar presentes en las discusiones sobre costes y uso en todas las etapas del traspaso a la nube, incluidos: 
+ ** Líderes en finanzas:** Los directores financieros, controllers financieros, planificadores financieros, analistas empresariales, responsables de adquisición, de abastecimiento y de cuentas a pagar deben entender el modelo de consumo en la nube, las opciones de compra y el proceso de facturación mensual. El departamento financiero debe asociarse con los equipos de tecnología para crear y compartir una historia de valor de TI, ayudando al equipo del departamento comercial a comprender cómo el gasto en tecnología está vinculado a los resultados empresariales. De esta manera, los gastos en tecnología no se consideran costes, sino inversiones. Dado que hay diferencias fundamentales entre la nube (por ejemplo, la velocidad del cambio en el uso, los precios del pago por uso, los precios por niveles, los modelos de precios y la información detallada sobre la facturación y el uso) y las operaciones locales, resulta esencial que el equipo de Finanzas comprenda de qué manera puede afectar el uso de la nube a aspectos empresariales como los procesos de adquisición, el seguimiento de incentivos, la asignación de costes y los estados financieros.
+  **Líderes en tecnología:** Los líderes en tecnología (incluidos los propietarios de aplicaciones y productos) deben conocer los requisitos financieros (por ejemplo, las limitaciones presupuestarias), así como los requisitos empresariales (por ejemplo, los acuerdos de nivel de servicio). Esto permite que la carga de trabajo se implemente para lograr los objetivos empresariales deseados. 

La colaboración entre los departamentos de Finanzas y Tecnología aporta los siguientes beneficios: 
+ Los equipos de finanzas y tecnología tienen visibilidad casi en tiempo real de los costes y el uso.
+ Los equipos de finanzas y tecnología establecen un procedimiento operativo estándar para gestionar la variación del gasto en la nube.
+ Las partes interesadas de finanzas actúan como asesores estratégicos en cuanto a cómo se utiliza el capital para comprar descuentos por compromiso de compra (por ejemplo, instancias reservadas o Savings Plans de AWS), y cómo se utiliza la nube para hacer crecer la organización. 
+ Las cuentas a pagar y los procesos de adquisición existentes también se usan en la nube.
+ Los equipos de finanzas y tecnología colaboran a la hora de prever los costes y el uso de AWS en el futuro para adaptar y diseñar los presupuestos organizativos. 
+ Mejor comunicación dentro de la organización al compartir el mismo lenguaje y tener un conocimiento común de los conceptos financieros.

Otras partes interesadas de su organización que deberían estar implicadas en las discusiones sobre costes y uso son: 
+ **Propietarios de unidades de negocio:** Los propietarios de unidades de negocio deben comprender el modelo de negocio en la nube para poder establecer directrices para las unidades de negocio y toda la empresa. Este conocimiento de la nube resulta esencial para realizar previsiones de crecimiento y de uso de las cargas de trabajo, pero también al valorar diferentes opciones de compra, por ejemplo, las instancias reservadas o los Savings Plans. 
+ **Equipo de ingeniería: **Establecer una asociación entre los equipos de finanzas y tecnología es esencial para crear una cultura sensibilizada con los costes que anime a los ingenieros a actuar en la administración financiera en la nube (CFM). Uno de los problemas habituales de los profesionales de la CFM o de las operaciones financieras y de los equipos de finanzas es conseguir que los ingenieros entiendan todo el negocio en la nube, sigan las prácticas recomendadas y adopten las medidas recomendadas.
+ **Terceros: **Si en su organización participan terceros (por ejemplo, consultores o herramientas), asegúrese de que también sigan sus objetivos empresariales y que lo demuestren a través de sus modelos de compromiso y el retorno de la inversión (ROI). Por lo general, los terceros contribuyen a la generación de informes y al análisis de las cargas de trabajo que administren, y también aportan análisis de costes de cualquier carga de trabajo que diseñen.

Implementar la CFM y tener éxito requiere la colaboración entre los equipos de finanzas, tecnología y comercial, y un cambio en la forma en que se comunica y evalúa el gasto en la nube en toda la organización. Incluya a los equipos de ingeniería para que puedan formar parte de estos debates sobre costes y uso en todas las etapas, y anímelos a seguir las prácticas recomendadas y a adoptar las medidas acordadas de forma apropiada.

**Pasos para la aplicación**
+ **Defina los miembros clave: **Compruebe que todos los miembros relevantes de sus equipos de finanzas y tecnología participen en la colaboración. Los miembros de Finanzas relevantes serán aquellos que interactúen con la factura de la nube. Suelen ser los directores financieros, los controllers financieros, los planificadores financieros, los analistas empresariales, los responsables de adquisiciones y los responsables de abastecimiento. Los miembros del equipo de Tecnología suelen ser los propietarios de las aplicaciones y de los productos, y los gerentes y representantes técnicos de todos los equipos que crean en la nube. Otros miembros pueden ser los propietarios de la unidad de negocio, como el departamento de Marketing, pues influyen en el uso de los productos, y terceros como consultores, para unirse a los objetivos y mecanismos, y para asistir en la gestión de informes.
+ **Defina los temas de discusión:** Defina los temas comunes a todos los equipos o que requieran una compresión compartida. Haga un seguimiento del coste desde el momento en que se genera hasta que se paga la factura. Tome nota de todos los miembros implicados y de los procesos organizativos que deben aplicarse. Comprenda cada paso o proceso por el que pasa y la información asociada, como los modelos de precios disponibles, los precios por niveles, los modelos de descuento, la creación de presupuestos y los requisitos financieros.
+ **Establezca una cadencia regular: **Para crear una asociación entre finanzas y tecnología, establezca una cadencia de comunicación regular para crear y mantener la coherencia. El grupo debe reunirse de forma regular para tratar sobre sus objetivos y métricas. Una cadencia típica implica revisar el estado de la organización, revisar los programas que se ejecutan actualmente y las métricas generales financieras y de optimización. Después, se debe informar sobre las cargas de trabajo clave con mayor detalle.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/) 

# COST01-BP03 Establecer presupuestos y previsiones de la nube
<a name="cost_cloud_financial_management_budget_forecast"></a>

Ajuste los procesos de presupuestos y previsión organizativos para que sean compatibles con la naturaleza altamente variable de los costes y el uso de la nube. Los procesos deben ser dinámicos y usar algoritmos basados en la tendencia o el motor principal del negocio, o en una combinación de ambos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Los clientes usan la nube por su eficiencia, velocidad y agilidad, lo que genera una cantidad muy variable de costes y usos. Los costes pueden bajar a medida que las cargas de trabajo sean más eficientes o al desplegar cargas de trabajo y funciones nuevas. Es posible que el coste aumente cuando la eficiencia de la carga de trabajo aumente, o cuando se desplieguen nuevas cargas de trabajo y funciones. O bien, las cargas de trabajo se escalarán para dar servicio a más clientes, lo que aumenta el uso y los costes de la nube. Los recursos están ahora más accesibles que nunca. Con la elasticidad de la nube también llega la elasticidad de los costes y las previsiones. Los procesos de presupuestos existentes de la empresa deben modificarse en consecuencia para incorporar esta variabilidad.

Ajuste los procesos de presupuestos y previsión existentes para ser más dinámico, ya sea utilizando un algoritmo basado en las tendencias (que usa los costes históricos y las valoraciones), algoritmos basados en el motor principal del negocio (por ejemplo, lanzamientos de productos nuevos o una expansión regional), o una combinación de ambos.

También puede usar [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) para establecer presupuestos personalizados con gran nivel de detalle especificando el periodo de tiempo, la recurrencia o la cantidad (fija o variable) y añadiendo filtros tales como servicio, región de AWS y etiquetas. Para mantenerse informado sobre el rendimiento de sus presupuestos existentes, puede crear y programar [informes de presupuesto de AWS Budgets](https://docs.aws.amazon.com/cost-management/latest/userguide/reporting-cost-budget.html) para que se envíen por correo electrónico tanto a usted y como a otras partes interesadas con regularidad. También puede crear [alertas de AWS Budgets](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-best-practices.html) basadas en los costes reales (de naturaleza reactiva) o en los costes previstos, lo que proporciona tiempo para implementar mitigaciones contra posibles sobrecostes. Recibirá una alerta cuando su coste o uso exceda, o se prevé que exceda, su importe presupuestado.

AWS ofrece la flexibilidad de crear procesos dinámicos de previsión y presupuestos para que pueda mantenerse informado sobre si los costes cumplen o exceden los límites presupuestarios.

Utilice [AWS Cost Explorer](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-forecast.html) para pronosticar los costes en un intervalo de tiempo futuro definido en función de su gasto anterior. El motor de pronóstico de AWS Cost Explorer segmenta los datos históricos en función de los tipos de carga (por ejemplo, instancias reservadas) y utiliza una combinación de aprendizaje automático y modelos basados en reglas para predecir el gasto en todos los tipos de carga individualmente. Utilice [AWS Cost Explorer](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-forecast.html) para realizar una previsión diaria (de hasta tres meses) o mensual (de hasta 12 meses) de los costes de la nube con algoritmos de machine learning aplicados a sus costes históricos (basados en las tendencias).

Una vez que haya determinado su previsión basada en la tendencia utilizando Cost Explorer, utilice la [Calculadora de precios de AWS](https://calculator.aws/#/) para calcular su caso de uso de AWS y los costes futuros en función del uso previsto (tráfico, solicitudes por segundo, instancia de Amazon Elastic Compute Cloud (Amazon EC2) necesaria, etc.). También puede utilizarla para ayudarle a planificar sus gastos, encontrar oportunidades de ahorro y tomar decisiones informadas al utilizar AWS.

Utilice [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/) para evitar o reducir las sorpresas en los costes y mejorar el control sin frenar la innovación. AWS Cost Anomaly Detection aprovecha las tecnologías avanzadas de machine learning para identificar los gastos anómalos y las causas que los originan, de modo que pueda adoptar medidas rápidamente. [Con tres sencillos pasos](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/), puede crear su propio monitor contextualizado y recibir alertas cuando se detecte cualquier gasto anómalo. Deje que los creadores creen y deje que AWS Cost Anomaly Detection controle su gasto y reduzca el riesgo de sorpresas en la facturación.

Como se menciona en la sección [Asociación de finanzas y tecnología del pilar de optimización de costes de Well-Architected,](https://docs.aws.amazon.com/wellarchitected/latest/cost-optimization-pillar/finance-and-technology-partnership.html) es importante que exista una asociación y cadencia entre TI, Finanzas y otras partes interesadas para garantizar que todos utilicen las mismas herramientas o procesos en aras de la coherencia. En los casos en que los presupuestos deban cambiar, el aumento de los puntos de contacto de la cadencia puede ayudar a reaccionar a esos cambios más rápidamente.

**Pasos para la aplicación**
+  **Actualice los procesos de presupuestos y previsión existentes: **Implemente modelos basados en tendencias, en el motor principal del negocio o una combinación de ambos en los procesos de presupuestos y previsión. 
+ **Configure alertas y notificaciones:** Utilice Alertas de AWS Budgets y Cost Anomaly Detection. 
+ **Realice revisiones periódicas con las principales partes interesadas:** Por ejemplo, las partes interesadas en TI, Finanzas, Plataforma y otras áreas de la empresa, para alinearse con los cambios en la dirección y el uso de la empresa. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [AWS Cost Explorer](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-forecast.html)
+ [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/)
+ [Calculadora de precios de AWS](https://calculator.aws/#/)
+ [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/)
+ [AWS License Manager](https://aws.amazon.com/license-manager/)

 **Ejemplos relacionados:** 
+  [Launch: Usage-Based Forecasting now Available in AWS Cost Explorer (Lanzamiento: previsión basada en el uso ya disponible en AWS Cost Explorer)](https://aws.amazon.com/blogs/aws-cloud-financial-management/launch-usage-based-forecasting-now-available-in-aws-cost-explorer/) 
+  [AWS Well-Architected Labs: gobernanza de coste y uso](https://wellarchitectedlabs.com/cost/100_labs/100_2_cost_and_usage_governance/) 

# COST01-BP04 Implementar la conciencia de costes en los procesos organizativos
<a name="cost_cloud_financial_management_cost_awareness"></a>

Implemente la conciencia de costes, cree transparencia y responsabilidad de los costes en los procesos nuevos y existentes que afecten al uso, y aproveche los procesos existentes para tomar conciencia de los costes. Implemente la conciencia de costes en la formación del personal. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

La conciencia de los costes debe implementarse en los procesos organizativos nuevos y existentes. Es una de las capacidades fundamentales, requisito previo para otras prácticas recomendadas. Se recomienda reutilizar y modificar los procesos existentes cuando sea posible, lo que minimiza el impacto en la agilidad y la velocidad. Informe de los costes de la nube a los equipos de tecnología y a los responsables de la toma de decisiones en los equipos de negocio y finanzas para concienciar sobre los costes, y establecer indicadores clave de rendimiento (KPI) de eficiencia para las partes interesadas de finanzas y negocios. Las siguientes recomendaciones ayudarán a implementar la conciencia de los costes en su carga de trabajo:
+ Verifique que la gestión de los cambios incluya la medición de los costes para cuantificar el efecto financiero de sus cambios. Esto ayuda a abordar de forma proactiva las preocupaciones relacionadas con los costes y destacar el ahorro de costes.
+ Verifique que la optimización de costes sea un componente central de sus capacidades operativas. Por ejemplo, puede aprovechar los procesos de gestión de incidentes para investigar e identificar la causa raíz de las anomalías de los costes y el uso o costes excesivos.
+ Acelere el ahorro de costes y la materialización del valor de negocio a través de la automatización o las herramientas. Al pensar en el coste de implementación, enmarque la conversación para que incluya un componente de rendimiento de la inversión (ROI) para justificar la inversión de tiempo o dinero.
+ Asigne los costes de la nube mediante la aplicación de devoluciones o reembolsos de los gastos en la nube, incluidos los gastos en las opciones de compra basadas en el compromiso, los servicios compartidos y las compras en el mercado para impulsar el consumo de la nube teniendo siempre presentes los costes.
+ Amplíe los programas de formación y desarrollo existentes para que incluyan la sensibilización con los costes en toda la organización. Se recomienda incluir formación y certificaciones continuas. Con ello logrará tener una organización capaz de autoadministrar los costes y el uso.
+ Aproveche las herramientas nativas gratuitas de AWS como [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/), [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) e [informes de presupuesto de AWS Budgets](https://aws.amazon.com/about-aws/whats-new/2019/07/introducing-aws-budgets-reports/).

cuando las organizaciones adoptan de forma sistemática prácticas de [Administración financiera en la nube](https://aws.amazon.com/aws-cost-management/) (CFM), esos comportamientos se arraigan en la forma de trabajar y tomar decisiones. El resultado es una cultura que tiene más en cuenta los costes, desde los desarrolladores que diseñan una nueva aplicación nacida en la nube hasta los administradores financieros que analizan el retorno de estas nuevas inversiones en la nube.

**Pasos para la aplicación**
+ ** Identifique los procesos organizativos relevantes: **Cada unidad organizativa debe revisar sus procesos e identificar los procesos que afecten a los costes y el uso. Cualquier proceso que conlleve la creación o finalización de un recurso debe incluirse en la revisión. Debe buscar procesos que ayuden a tomar conciencia de los costes en su negocio, como la administración de incidentes y la formación. 
+ **Establezca una cultura autosuficiente en materia de costes:** asegúrese de que todas las partes interesadas pertinentes se alinean con la causa del cambio y el impacto como coste para que entiendan el coste de la nube. Esto permitirá a su organización establecer una cultura de innovación autosuficiente y sensibilizada con los costes.
+ ** Actualice los procesos con conciencia de costes:** debe cambiarse cada proceso para que incluya la toma de conciencia de costes. El proceso puede requerir controles previos adicionales, como valorar el efecto del coste, o controles posteriores que validen que se han producido los cambios esperados en el coste y el uso. Dar soporte a procesos tales como la formación y la gestión de incidentes puede ampliarse para incluir elementos de coste y uso. 

Para obtener ayuda, póngase en contacto con los expertos de CFM a través de su equipo de cuentas, o explore los recursos y documentos relacionados a continuación.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Administración financiera en la nube de AWS](https://aws.amazon.com/aws-cost-management/)

 **Ejemplos relacionados:** 
+  [Strategy for Efficient Cloud Cost Management (Estrategia para la eficiencia en la Administración financiera en la nube)](https://aws.amazon.com/blogs/enterprise-strategy/strategy-for-efficient-cloud-cost-management/) 
+  [Cost Control Blog Series \$13: How to Handle Cost Shock (Serie de blog sobre control de costes n.º 3: cómo gestionar el choque de costes)](https://aws.amazon.com/blogs/aws-cloud-financial-management/cost-control-blog-series-3-how-to-handle-cost-shock/) 
+  [A Beginner’s Guide to AWS Cost Management (Guía para principiantes de AWS Cost Management)](https://aws.amazon.com/blogs/aws-cloud-financial-management/beginners-guide-to-aws-cost-management/) 

# COST01-BP05 Crear informes y notificar la optimización de costes
<a name="cost_cloud_financial_management_usage_report"></a>

 Configure AWS Budgets y AWS Cost Anomaly Detection para crear notificaciones sobre el coste y el uso en función de los objetivos. Organice reuniones frecuentes para analizar la rentabilidad de su carga de trabajo y promueva una cultura de conciencia de costes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Debe informar regularmente sobre la optimización de costes y el uso en su organización. Puede implementar sesiones dedicadas a la optimización de costes o incluirla en los ciclos de gestión de informes operativos habituales para sus cargas de trabajo. Utilice los servicios y las herramientas para identificar y aplicar las oportunidades de ahorro de costes. [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) proporciona paneles e informes. Puede realizar un seguimiento de la evolución del coste y el uso según unos presupuestos creados con [informes de presupuesto de AWS Budgets](https://aws.amazon.com/about-aws/whats-new/2019/07/introducing-aws-budgets-reports/).

Utilice [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) para establecer presupuestos personalizados para hacer un seguimiento de los gastos y el uso, y responder rápidamente a las alertas recibidas por correo electrónico o mediante notificaciones de Amazon Simple Notification Service (Amazon SNS) si supera el umbral. [Establezca su período de presupuesto preferido](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-create.html) como diario, mensual, trimestral o anual, y cree límites presupuestarios específicos para mantenerse informado sobre el progreso de los costes reales o previstos y el uso hacia su umbral presupuestario. También puede configurar [alertas](https://docs.aws.amazon.com/cost-management/latest/userguide/sns-alert-chime.html) y [acciones](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-controls.html) contra esas alertas para que se ejecuten automáticamente, o mediante un proceso de aprobación cuando se supere un objetivo presupuestario.

Implemente notificaciones sobre costes y uso para garantizar que se pueda actuar rápidamente ante cambios en los costes y el uso en caso de que sean inesperados. [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/) permite reducir las sorpresas de costes y mejorar el control sin ralentizar la innovación. AWS Cost Anomaly Detection identifica los gastos anómalos y las causas que los originan, lo que ayuda a reducir el riesgo de sorpresas en la facturación. Con tres sencillos pasos, puede crear su propio monitor contextualizado y recibir alertas cuando se detecte cualquier gasto anómalo.

También puede utilizar [Amazon Quick](https://aws.amazon.com/quicksight/) con datos de AWS Cost and Usage Report (CUR) para proporcionar informes altamente personalizados con datos más granulares. Amazon Quick permite programar informes y recibir periódicamente correos electrónicos de informes de costes para conocer el historial de costes y uso, o las oportunidades de ahorro.

Utilice [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/), que proporciona orientación para verificar si los recursos aprovisionados están en consonancia con las prácticas recomendadas de AWS para la optimización de costes.

Crear periódicamente informes que contengan un resumen de los Savings Plans, las instancias reservadas y recomendaciones de tamaño adecuado de Amazon Elastic Compute Cloud (Amazon EC2) desde AWS Cost Explorer para empezar a reducir el coste asociado a las cargas de trabajo en estado estable, los recursos ociosos y los infrautilizados. Identifique y recupere el gasto asociado a los residuos de la nube para los recursos que se despliegan. El desperdicio en la nube se produce cuando se crean recursos de tamaño incorrecto o se observan patrones de uso diferentes a los esperados. Siga las prácticas recomendadas de AWS para reducir el desperdicio y [optimizar y ahorrar](https://aws.amazon.com/aws-cost-management/aws-cost-optimization/) costes de la nube.

Genere informes con regularidad para mejorar las opciones de compra de sus recursos y reducir los costes unitarios de sus cargas de trabajo. Las opciones de compra, como los Savings Plans, las instancias reservadas o las instancias de spot de Amazon EC2, ofrecen el mayor ahorro de costes para las cargas de trabajo con tolerancia a errores y permiten a las partes interesadas (propietarios de la empresa, equipos financieros y técnicos) formar parte de estas discusiones de compromiso.

Comparta los informes que contengan oportunidades o anuncios de nuevas versiones que puedan ayudarle a reducir el coste total de propiedad (TCO) de la nube. Adopte nuevos servicios, regiones, funciones, soluciones o nuevas formas de lograr una mayor reducción de costes.

**Pasos para la aplicación**
+  **Configure AWS Budgets: **Configure AWS Budgets en todas las cuentas de su carga de trabajo. Establezca un presupuesto para el gasto general de la cuenta y un presupuesto para la carga de trabajo con etiquetas. 
  +  [Well-Architected Labs: coste y uso de la gobernabilidad](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_2_Cost_and_Usage_Governance/README.html) 
+  **Informe sobre optimización de costes: **Defina un ciclo habitual para tratar y analizar la eficiencia de la carga de trabajo. Utilice las métricas establecidas, notifique las métricas alcanzadas y el coste para alcanzarlas. Identifique y corrija las tendencias negativas e identifique las tendencias positivas que puede promover en su organización. La gestión de informes debe implicar a los representantes de los equipos de aplicaciones y de los propietarios, del departamento financiero y de dirección. 
  +  [Well-Architected Labs: visualización](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_5_Cost_Visualization/README.html) 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Cost Explorer](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-what-is.html)
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+ [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/)
+ [Prácticas recomendadas de AWS Budgets](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-best-practices.html#budgets-best-practices-setting-budgets%3Fsc_channel=ba%26sc_campaign=aws-budgets%26sc_medium=manage-and-control%26sc_content=web_pdp%26sc_detail=how-do-I%26sc_outcome=aw%26trk=how-do-I_web_pdp_aws-budgets)
+ [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/)
+ [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)
+ [Análisis de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/analytics-storage-class.html)
+ [AWS Cost and Usage Report](https://docs.aws.amazon.com/cur/latest/userguide/what-is-cur.html)

 **Ejemplos relacionados:** 
+  [Well-Architected Labs: coste y uso de la gobernabilidad](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_2_Cost_and_Usage_Governance/README.html) 
+  [Well-Architected Labs: visualización](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_5_Cost_Visualization/README.html) 
+ [Formas clave para empezar a optimizar los costes de la nube de AWS](https://aws.amazon.com/blogs/aws-cloud-financial-management/key-ways-to-start-optimizing-your-aws-cloud-costs/)

# COST01-BP06 Supervisar los costes de forma proactiva
<a name="cost_cloud_financial_management_proactive_process"></a>

Implemente herramientas y paneles para supervisar los costes de forma proactiva para la carga de trabajo. Revise periódicamente los costes con herramientas configuradas o listas para usar, no se limite a mirar los costes y las categorías cuando reciba las notificaciones. Supervisar y analizar los costes de forma proactiva ayuda a identificar las tendencias positivas y permite promoverlas en toda la organización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Se recomienda supervisar los costes y el uso de forma proactiva dentro de la organización, no solo cuando surjan anomalías o excepciones. Disponer de unos paneles muy visibles en la oficina o en el entorno de trabajo permite a las personas clave tener acceso a la información que necesitan y transmite la idea de que la organización se centra en la optimización de costes. Los paneles visibles permiten promover de forma activa los resultados de éxito e implementarlos en toda la organización.

Cree una rutina diaria o frecuente para utilizar [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) o cualquier otro panel como [Amazon Quick](https://aws.amazon.com/quicksight/) para ver los costes y analizarlos de forma proactiva. Analice el uso y los costes de los servicios de AWS al nivel de cuenta de AWS, a nivel de carga de trabajo o a nivel de servicio específico de AWS con agrupamientos y filtrado, y valide si son los esperados o no. Utilice la granularidad a nivel de hora y de recurso y las etiquetas para filtrar e identificar los costes incurridos para los principales recursos. También puede crear sus propios informes con el [Panel de inteligencia de costes](https://wellarchitectedlabs.com/cost/200_labs/200_cloud_intelligence/), una solución [Amazon Quick](https://aws.amazon.com/quicksight/) desarrollada por arquitectos de soluciones de AWS, y comparar sus presupuestos con el coste y el uso reales.

**Pasos para la aplicación**
+  **Informe sobre optimización de costes:** Defina un ciclo habitual para tratar y analizar la eficiencia de la carga de trabajo. Utilice las métricas establecidas, notifique las métricas alcanzadas y el coste para alcanzarlas. Identifique y corrija las tendencias negativas e identifique las tendencias positivas que quiere promover en su organización. La gestión de informes debe implicar a los representantes de los equipos de aplicaciones y de los propietarios, del departamento financiero y de dirección. 
+ **Cree y active [AWS Budgets](https://aws.amazon.com/blogs/aws-cloud-financial-management/launch-daily-cost-and-usage-budgets/) de granularidad diaria del coste y el uso para adoptar las medidas oportunas para evitar cualquier posible sobrecoste: ** AWS Budgets le permiten configurar notificaciones de alerta, para que esté informado si alguno de sus tipos de presupuesto se sale de los umbrales preconfigurados. La mejor manera de aprovechar AWS Budgets es establecer los costes y el uso previstos como límites, de modo que todo lo que supere los presupuestos se considere un gasto excesivo.
+ **Cree AWS Cost Anomaly Detection para la supervisión de costes: ** [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/) utiliza tecnología avanzada de machine learning para identificar los gastos anómalos y las causas que los originan para que pueda adoptar medidas rápidamente. Le permite configurar monitores de costes que definen los segmentos de gastos que desea evaluar (por ejemplo, servicios individuales de AWS, cuentas de miembros, etiquetas de asignación de costes y categorías de costes) y le permite establecer cuándo, dónde y cómo recibir sus notificaciones de alerta. Para cada monitor, adjunte varias suscripciones de alerta para los propietarios de negocios y los equipos de tecnología, que incluyan un nombre, un umbral de impacto de costes y la frecuencia de las alertas (alertas individuales, resumen diario, resumen semanal) para cada suscripción.
+ **Utilice AWS Cost Explorer o integre sus datos de AWS Cost and Usage Report (CUR) con paneles de Amazon Quick para visualizar los costes de su organización:** AWS Cost Explorer tiene una interfaz sencilla que le ayuda a visualizar, comprender y administrar los costes y el uso de AWS a lo largo del tiempo. El [Panel de inteligencia de costes](https://wellarchitectedlabs.com/cost/200_labs/200_cloud_intelligence/) es un panel personalizable y accesible para ayudar a crear la base de su propia herramienta de administración y optimización de costes.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/)
+ [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/)
+ [Daily Cost and Usage Budgets (Presupuestos de coste y uso diarios)](https://aws.amazon.com/blogs/aws-cloud-financial-management/launch-daily-cost-and-usage-budgets/)
+ [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/)

 **Ejemplos relacionados:** 
+  [Well-Architected Labs: visualización](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_5_Cost_Visualization/README.html) 
+  [Well-Architected Labs: visualización avanzada](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/200_5_Cost_Visualization/README.html) 
+ [Well-Architected Labs: paneles de inteligencia en la nube](https://wellarchitectedlabs.com/cost/200_labs/200_cloud_intelligence/)
+ [Well-Architected Labs: visualización de los costes](https://wellarchitectedlabs.com/cost/200_labs/200_5_cost_visualization/)
+ [AWS Cost Anomaly Detection Alert with Slack (Alerta de AWS Cost Anomaly Detection con Slack)](https://aws.amazon.com/aws-cost-management/resources/slack-integrations-for-aws-cost-anomaly-detection-using-aws-chatbot/)

# COST01-BP07 Estar al día sobre las nuevas versiones de los servicios
<a name="cost_cloud_financial_management_scheduled"></a>

 Consulte regularmente con expertos o socios de AWS qué servicios y características proporcionan un coste inferior. Revise los blogs de AWS y otras fuentes de información. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

AWS está añadiendo constantemente nuevas capacidades para que pueda aprovechar las últimas tecnologías para experimentar e innovar más rápidamente. Puede implementar nuevos servicios y características de AWS para incrementar la rentabilidad de su carga de trabajo. Revise periódicamente la [Administración de costes de AWS](https://aws.amazon.com/aws-cost-management/), el [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/), el blog [de Administración de costes de AWS](https://aws.amazon.com/blogs/aws-cloud-financial-management/) y [las novedades de AWS](https://aws.amazon.com/new/) para obtener información sobre las nuevas versiones de los servicios y características. Las publicaciones sobre las novedades ofrecen un breve resumen de todos los anuncios de servicios, funciones y ampliación de regiones de AWS a medida que se publican.

**Pasos para la aplicación**
+  **Suscríbase a los blogs:** Vaya a las páginas de los blogs de AWS y suscríbase al blog de novedades y a otros blogs relevantes. Puede inscribirse en la [página de preferencias de comunicaciones](https://pages.awscloud.com/communication-preferences?languages=english) con su dirección de correo electrónico.
+ **Suscríbase a las noticias de AWS: **Revise periódicamente el [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/) y [las novedades de AWS](https://aws.amazon.com/new/) para obtener información sobre las nuevas versiones de los servicios y características. Suscríbase al canal RSS o con su correo electrónico para seguir los anuncios y lanzamientos.
+ **Siga las Reducciones de precios de AWS:** La reducción periódica de los precios de todos nuestros servicios ha sido una forma habitual para que AWS traslade a nuestros clientes las eficiencias económicas obtenidas gracias a nuestra escala. A partir de abril de 2022, AWS ha reducido los precios 115 veces desde su lanzamiento en 2006. Si tiene alguna decisión comercial pendiente por cuestiones de precio, puede volver a revisarla después de las reducciones de precio y las nuevas integraciones de servicios. Puede conocer los esfuerzos anteriores de reducción de precios, incluidas las instancias de Amazon Elastic Compute Cloud (Amazon EC2), en la [categoría de reducción de precios del blog de noticias de AWS](https://aws.amazon.com/blogs/aws/category/price-reduction/).
+ ** Eventos y reuniones de AWS: **Asista a la cumbre local deAWS y a cualquier reunión local con otras organizaciones de su zona. Si no puede asistir en persona, intente asistir a los eventos virtuales para conocer mejor a los expertos de AWS y los casos empresariales de otros clientes.
+ ** Reúnase con el equipo de cuentas: **Programe una cadencia regular con su equipo de cuentas, reúnase con él y trate sobre las tendencias del sector y los servicios de AWS. Hable con el gerente de cuentas, el arquitecto de soluciones y el equipo de soporte. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Administración de costes de AWS](https://aws.amazon.com/aws-cost-management/) 
+ [las novedades de AWS](https://aws.amazon.com/new/)
+  [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/) 

 **Ejemplos relacionados:** 
+  [Amazon EC2 – 15 Years of Optimizing and Saving Your IT Costs (Amazon EC2: 15 años de optimización y ahorro de costes de TI)](https://aws.amazon.com/blogs/aws-cost-management/amazon-ec2-15th-years-of-optimizing-and-saving-your-it-costs/) 
+ [Blog de noticias de AWS: reducción de precios](https://aws.amazon.com/blogs/aws/category/price-reduction/)

# COST01-BP08 Crear una cultura de conciencia de costes
<a name="cost_cloud_financial_management_culture"></a>

 Implemente cambios o programas en la organización para crear una cultura de conciencia de costes. Se recomienda empezar discretamente, y a medida que crezcan las capacidades y el uso de la nube por parte de la empresa implementar programas grandes y de gran alcance. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Afianzar una cultura de conciencia de los costes permite mejorar la optimización de costes y la administración financiera en la nube (operaciones financieras, centro de excelencia en la nube, equipos de operaciones en la nube, etc.) a través de las prácticas recomendadas llevadas a cabo de forma orgánica y descentralizada en toda la organización. La concienciación sobre los costes permite obtener grandes niveles de capacidad en la organización con un esfuerzo mínimo, en comparación con un enfoque centralizado y descendente.

La concienciación sobre los costes en la computación en la nube, especialmente para los principales impulsores de costes en la computación en la nube, permite a los equipos comprender los resultados esperados de cualquier cambio en la perspectiva de los costes. Los equipos que acceden a los entornos de la nube deben conocer los modelos de precios y la diferencia entre los centros de datos tradicionales locales y la computación en la nube.

La principal ventaja de una cultura consciente de los costes es que los equipos tecnológicos los optimizan de forma proactiva y continua (por ejemplo, se consideran un requisito no funcional a la hora de diseñar nuevas cargas de trabajo o de realizar cambios en las existentes) en lugar de realizar optimizaciones de costes reactivas según sea necesario.

Aplicar unos pequeños cambios en la cultura puede tener un gran impacto en la eficiencia de las cargas de trabajo actuales y futuras. Ejemplos:
+ Dar visibilidad y sensibilizar a los equipos de ingeniería para que comprendan lo que hacen y su impacto en términos de costes.
+ Ludificar los costes y el uso en toda la organización. Esto se puede realizar con un panel visible para todo el personal o mediante un informe que compare los costes normalizados y el uso de los diferentes equipos (por ejemplo, coste por carga de trabajo, coste por transacción).
+ Reconocer la rentabilidad. Premiar los logros voluntarios o espontáneos de optimización de costes de forma pública o privada, y aprender de los errores para no repetirlos en el futuro.
+ Crear requisitos organizativos descendentes para que las cargas de trabajo se lleven a cabo con presupuestos predefinidos.
+ Cuestionar los requisitos empresariales de los cambios y el impacto de los costes de los cambios solicitados en la infraestructura de la arquitectura o la configuración de la carga de trabajo para asegurarse de que se paga solo lo que se necesita.
+ Asegurarse de que el planificador del cambio es consciente de los cambios previstos que tienen un impacto en los costes, y que estos son confirmados por las partes interesadas para obtener resultados empresariales de forma rentable.

**Pasos para la aplicación**
+ **Informe de los costes de la nube a los equipos tecnológicos:** Para aumentar la concienciación sobre costes y establecer indicadores clave de eficiencia para las partes interesadas de las finanzas y la empresa.
+ **Informe a las partes interesadas o a los miembros del equipo sobre los cambios previstos:** Cree un punto en el orden del día para debatir los cambios previstos y el impacto del coste-beneficio en la carga de trabajo durante las reuniones semanales sobre cambios.
+ ** Reúnase con el equipo de cuentas: **Establezca una cadencia de reuniones regular con su equipo de cuentas, y trate las tendencias del sector y los servicios de AWS. Hable con el gerente de cuentas, el arquitecto y el equipo de soporte. 
+ **Comparta casos de éxito:** Comparta historias de éxito sobre la reducción de costes para cualquier carga de trabajo, Cuenta de AWS u organización para crear una actitud positiva y un estímulo en torno a la optimización de costes.
+ **Entrenamiento: **Asegúrese de que los equipos técnicos o los miembros del equipo reciban formación para conocer los costes de los recursos en Nube de AWS.
+ ** Eventos y reuniones de AWS: **Asista a las cumbres locales deAWS y a cualquier reunión local con otras organizaciones de su zona. 
+  **Suscríbase a los blogs:** Vaya a las páginas de blogs de AWS y suscríbase [al blog de novedades](https://aws.amazon.com/new/) y otros blogs relevantes para seguir las nuevas versiones, implementaciones, ejemplos y cambios compartidos por AWS. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de AWS](https://aws.amazon.com/blogs/) 
+  [Administración de costes de AWS](https://aws.amazon.com/blogs/aws-cost-management/) 
+  [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/) 

 **Ejemplos relacionados:** 
+  [Administración financiera en la nube de AWS](https://aws.amazon.com/blogs/aws-cloud-financial-management/) 
+  [AWS Well-Architected Labs: administración financiera en la nube](https://www.wellarchitectedlabs.com/cost/100_labs/100_goals_and_targets/1_cloud_financial_management/) 

# COST01-BP09 Cuantificar el valor empresarial a partir de la optimización de costes
<a name="cost_cloud_financial_management_quantify_value"></a>

 Cuantificar el valor empresarial a partir de la optimización de costes le permite comprender todos los beneficios de su organización. Dado que la optimización de costes es una inversión necesaria, cuantificar el valor empresarial le permite explicar el retorno de la inversión a las partes interesadas. Cuantificar el valor empresarial le puede ayudar a lograr mayor aceptación de las partes interesadas para inversiones futuras en optimización de costes y además le proporciona un marco para medir los resultados de las actividades de optimización de costes de la organización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

Además de informar sobre los ahorros de la optimización de costes, se recomienda cuantificar el valor adicional conseguido. Los beneficios de la optimización de costes se suelen cuantificar en términos de menos costes por resultado empresarial. Por ejemplo, puede cuantificar el ahorro de costes de Amazon Elastic Compute Cloud (Amazon EC2) bajo demanda al comprar Savings Plans, lo que reduce los costes y mantiene los niveles de resultados de las cargas de trabajo. Puede cuantificar reducciones de costes del gasto de AWS cuando se finalizan instancias Amazon EC2 inactivas o cuando se eliminan volúmenes de Amazon Elastic Block Store (Amazon EBS) no adjuntos.

Sin embargo, los beneficios de la optimización de costes van más allá de la reducción o la elusión de costes. Plantéese capturar más datos para medir las mejoras en la rentabilidad y el valor empresarial.

**Pasos para la aplicación**
+ **Implementar las prácticas recomendadas de optimización de costes: **por ejemplo, reducir la administración del ciclo de vida de los recursos reduce los costes operativos y de infraestructura, y genera tiempo y presupuesto inesperado para experimentar. De este modo se incrementa la agilidad de la organización y aparecen nuevas oportunidades para generar ingresos.
+ **Implementar la automatización: **por ejemplo, Auto Scaling, que garantiza la elasticidad con un esfuerzo mínimo e incrementa la productividad del personal al eliminar el trabajo manual de planificación de las capacidades. Para obtener más detalles sobre la resiliencia operativa, consulte el [documento técnico Pilar de fiabilidad de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/welcome.html).
+ **Prever los costes de AWS futuros: **Las previsiones permiten a las partes interesadas financieras establecer expectativas con otras partes interesadas internas y externas a la organización, además de ayudar a realizar predicciones financieras. AWS Cost Explorer se puede usar para realizar previsiones de costes y uso.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de AWS](https://aws.amazon.com/blogs/) 
+  [Administración de costes de AWS](https://aws.amazon.com/blogs/aws-cost-management/) 
+  [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/) 
+  [Documento técnico Pilar de fiabilidad de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/welcome.html) 
+  [Explorador de costes de AWS](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) 

# Conocimiento del gasto y del uso
<a name="a-expenditure-and-usage-awareness"></a>

**Topics**
+ [COST 2 ¿Cómo controla el uso?](cost-02.md)
+ [COST 3 ¿Cómo supervisa el uso y el coste?](cost-03.md)
+ [COST 4 ¿Cómo retira los recursos?](cost-04.md)

# COST 2 ¿Cómo controla el uso?
<a name="cost-02"></a>

Establezca políticas y mecanismos para garantizar que se incurra en costes apropiados mientras se alcanzan los objetivos. Cuando emplea un enfoque de evaluar la situación, puede innovar sin gastar de más. 

**Topics**
+ [COST02-BP01 Desarrollar políticas basadas en los requisitos de su organización](cost_govern_usage_policies.md)
+ [COST02-BP02 Implementar objetivos y metas](cost_govern_usage_goal_target.md)
+ [COST02-BP03 Implementar una estructura de cuentas](cost_govern_usage_account_structure.md)
+ [COST02-BP04 Implementar grupos y roles](cost_govern_usage_groups_roles.md)
+ [COST02-BP05 Implementación de controles de costes](cost_govern_usage_controls.md)
+ [COST02-BP06 Controlar el ciclo de vida de los proyectos](cost_govern_usage_track_lifecycle.md)

# COST02-BP01 Desarrollar políticas basadas en los requisitos de su organización
<a name="cost_govern_usage_policies"></a>

Desarrolle políticas que definan la forma en que su organización administra los recursos e inspecciónelas periódicamente. Las políticas deben abarcar los aspectos de coste de los recursos y las cargas de trabajo, como su creación, modificación y retirada durante la vida útil del recurso.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Es fundamental comprender los costes y lo que impulsa su organización para administrar eficazmente el coste y el uso, e identificar las oportunidades de reducción de costes. Las organizaciones suelen operar con múltiples cargas de trabajo que gestionan varios equipos. Estos equipos pueden estar en diferentes unidades organizativas, cada una con su propio flujo de ingresos. La capacidad de atribuir los costes de los recursos a las cargas de trabajo, a la organización individual o a los propietarios de los productos impulsa un comportamiento de uso eficiente y contribuye a reducir los residuos. La monitorización precisa de los costes y el uso le ayuda a comprender el nivel de optimización de una carga de trabajo, así como la rentabilidad de las unidades y los productos de la organización. Este conocimiento permite tomar decisiones más fundamentadas sobre dónde asignar los recursos dentro de la organización. El conocimiento del uso en todos los niveles de la organización es clave para impulsar el cambio, ya que el cambio en el uso impulsa los cambios en el coste. Considere la posibilidad de adoptar un enfoque multifacético para conocer su uso y sus gastos.

El primer paso para llevar a cabo la gobernanza es utilizar los requisitos de su organización para desarrollar políticas para el uso de la nube. Estas políticas definen cómo su organización utiliza la nube y cómo se administran los recursos. Las políticas deben tratar todos los aspectos de los recursos y las cargas de trabajo que tienen que ver con el coste o el uso, como su creación, modificación y retirada durante la vida útil del recurso. Verifique que se siguen e implementan las políticas y los procedimientos ante cualquier cambio en un entorno en la nube. Durante sus reuniones de administración de cambios de TI, formule preguntas para averiguar el impacto en los costes de los cambios previstos, tanto si aumentan como si disminuyen, la justificación empresarial y el resultado esperado. 

Las políticas deben ser sencillas para que se comprendan fácilmente y puedan implementarse con eficacia en toda la organización. Las políticas también deben ser fáciles de seguir e interpretar (para que se usen) y específicas (para que no haya malinterpretaciones entre los equipos). Además, deben inspeccionarse periódicamente (igual que nuestros mecanismos) y actualizarse a medida que cambien las condiciones empresariales o las prioridades de los clientes, ya que esto podría hacer que la política quedara obsoleta.

 Empiece con políticas amplias y generales, como la región geográfica que se usará o las horas del día en las que deben funcionar los recursos. Mejore gradualmente las políticas para las distintas unidades organizativas y cargas de trabajo. Entre las políticas más comunes se incluyen los servicios y las características que pueden utilizarse (por ejemplo, el almacenamiento de menor rendimiento en los entornos de prueba o de desarrollo), los tipos de recursos que pueden utilizar los distintos grupos (por ejemplo, el mayor tamaño de recurso en una cuenta de desarrollo es el medio) y durante cuánto tiempo estarán en uso estos recursos (temporalmente, a corto plazo o durante un periodo de tiempo específico). 

 **Ejemplo de política** 

 A continuación, tenemos un ejemplo de política que puede utilizar para crear sus propias políticas de gobernanza de la nube que se centren en la optimización de costes. Asegúrese de ajustar la política en función de los requisitos de su organización y de las solicitudes de las partes interesadas. 
+  **Nombre de la política:** defina un nombre claro, como «Política de optimización de recursos y reducción de costes». 
+  **Finalidad:** explique por qué se debe utilizar esta política y cuál es el resultado esperado. El objetivo de esta política es verificar que se requiere un coste mínimo para desplegar y ejecutar la carga de trabajo deseada con el fin de cumplir los requisitos empresariales. 
+  **Ámbito:** defina claramente quién debe usar esta política y cuándo debe usarse; por ejemplo, podría indicar que el equipo X de DevOps X debe usar esta política en los clientes de la región us-east para el entorno X (de producción o no de producción). 

 **Declaración de la política** 

1.  Seleccione us-east-1 o varias regiones de us-east en función del entorno y los requisitos empresariales de su carga de trabajo (desarrollo, pruebas de aceptación de los usuarios, preproducción o producción). 

1.  Programe instancias de Amazon EC2 y Amazon RDS para que se ejecuten entre las seis de la mañana y las ocho de la tarde (hora estándar del este [EST]). 

1.  Detenga todas las instancias de Amazon EC2 no utilizadas después de ocho horas y las instancias de Amazon RDS no utilizadas después de 24 horas de inactividad. 

1.  Termine todas las instancias de Amazon EC2 no utilizadas después de 24 horas de inactividad en entornos que no sean de producción. Recuérdele al propietario de la instancia de Amazon EC2 (basándose en las etiquetas) que revise las instancias de Amazon EC2 detenidas en producción e infórmele de que sus instancias de Amazon EC2 se cancelarán en un plazo de 72 horas si no están en uso. 

1.  Utilice una familia y un tamaño de instancias genéricos, como m5.large, y luego cambie el tamaño de la instancia en función del uso de la CPU y la memoria mediante AWS Compute Optimizer. 

1.  Priorice el uso del escalamiento automático para ajustar dinámicamente la cantidad de instancias en ejecución en función del tráfico. 

1.  Utilice instancias de spot para cargas de trabajo no críticas. 

1.  Revise los requisitos de capacidad para confirmar Savings Plans o instancias reservadas para cargas de trabajo predecibles e informe al equipo de administración financiera en la nube. 

1.  Utilice políticas de ciclo de vida de Amazon S3 para mover los datos a los que se accede con poca frecuencia a niveles de almacenamiento más económicos. Si no se ha definido ninguna política de retención, utilice Amazon S3 Intelligent Tiering para mover los objetos al nivel de archivado automáticamente. 

1.  Monitorice el uso de los recursos y configure alarmas para activar eventos de escalamiento mediante Amazon CloudWatch. 

1.  Para cada Cuenta de AWS, utilice AWS Budgets para establecer presupuestos de costes y uso para su cuenta en función del centro de costes y las unidades empresariales. 

1.  Si usa AWS Budgets para establecer presupuestos de costes y uso para su cuenta, puede resultarle más fácil controlar sus gastos y evitar facturas inesperadas, lo que te permitirá controlar mejor sus costes. 

 **Procedimiento:** proporcione procedimientos detallados para implementar esta política o consulte otros documentos en los que se describe cómo implementar cada declaración de la política. En esta sección, se deben proporcionar instrucciones paso a paso para cumplir los requisitos de la política. 

 Para implementar esta política, puede utilizar diversas herramientas o reglas de AWS Config de terceros para comprobar si se cumple la declaración de la política y activar medidas de corrección automatizadas mediante funciones AWS Lambda. También puede utilizar AWS Organizations para hacer cumplir la política. Además, debe revisar periódicamente el uso de sus recursos y ajustar la política según sea necesario para comprobar que sigue satisfaciendo las necesidades de su empresa. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  **Reúnase con las partes interesadas:** para desarrollar políticas, pida a las partes interesadas (oficinas de la empresa en la nube, ingenieros o responsables de la toma de decisiones funcionales para la aplicación de las políticas) de su organización que especifiquen sus requisitos y los documenten. Adopte un enfoque iterativo; para ello, empiece con un enfoque amplio y vaya reduciendo hasta llegar a las unidades más pequeñas en cada paso. Entre los miembros del equipo se encuentran los que tienen un interés directo en la carga de trabajo, como las unidades organizativas o los propietarios de las aplicaciones, además de los grupos de asistencia, como los equipos de seguridad y finanzas.
+  **Obtenga la confirmación:** asegúrese de que los equipos se ponen de acuerdo en las políticas sobre quién puede acceder y desplegar en la Nube de AWS. Asegúrese de que siguen las políticas de su organización y confirme que sus creaciones de recursos se ajustan a las políticas y procedimientos acordados. 
+  **Cree sesiones de formación de incorporación:** pida a los nuevos miembros de la organización que completen los cursos de formación de incorporación para crear concienciación sobre los costes y que conozcan los requisitos de la organización. Es posible que asuman políticas diferentes debido a su experiencia anterior o que no piensen en ellas en absoluto. 
+ ** Defina las ubicaciones de la carga de trabajo: **defina dónde opera su carga de trabajo, incluido el país y la zona dentro del país. Esta información se utiliza para el mapeo de Regiones de AWS y las zonas de disponibilidad. 
+ ** Defina y agrupe los servicios y recursos: **defina los servicios que requieren las cargas de trabajo. Para cada servicio, especifique los tipos, el tamaño y el número de recursos necesarios. Defina grupos para los recursos por función, como servidores de aplicaciones o almacenamiento de bases de datos. Los recursos pueden pertenecer a varios grupos. 
+  **Defina y agrupe a los usuarios por función: **defina a los usuarios que interactúan con la carga de trabajo; para ello, céntrese en lo que hacen y en cómo utilizan la carga de trabajo, no en quiénes son o en su posición en la organización. Agrupe usuarios o funciones similares. Puede utilizar las políticas administradas de AWS como guía. 
+ ** Defina las acciones:** mediante las ubicaciones, los recursos y los usuarios identificados anteriormente, defina las acciones que requiere cada uno de ellos para lograr los resultados de la carga de trabajo a lo largo de su vida útil (desarrollo, funcionamiento y retirada). Identifique las acciones en función de los grupos, y no de los elementos individuales de los grupos, en cada ubicación. Empiece a grandes rasgos con la lectura o la escritura y, después, vaya reduciendo hasta llegar a las acciones específicas para cada servicio. 
+ ** Defina el periodo de revisión:** las cargas de trabajo y los requisitos organizativos pueden cambiar con el tiempo. Defina el calendario de revisión de la carga de trabajo para asegurarse de que se mantiene alineado con las prioridades organizativas. 
+  **Documente las políticas: **verifique que las políticas que se han definido sean accesibles tal y como lo requiere su organización. Estas políticas se utilizan para implementar, mantener y auditar el acceso de sus entornos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Administración de cambios en la nube](https://docs.aws.amazon.com/whitepapers/latest/change-management-in-the-cloud/change-management-in-cloud.html) 
+  [Managed Policies de AWS para funciones de trabajo](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) 
+  [Estrategia de facturación de varias cuentas de AWS](https://aws.amazon.com/answers/account-management/aws-multi-account-billing-strategy/) 
+  [Acciones, recursos y claves de condición de los servicios de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_actions-resources-contextkeys.html) 
+  [Administración y gobernanza en AWS](https://aws.amazon.com/products/management-and-governance/) 
+  [Control access to Regiones de AWS using IAM policies (Control del acceso a las regiones de AWS mediante políticas de IAM)](https://aws.amazon.com/blogs/security/easier-way-to-control-access-to-aws-regions-using-iam-policies/) 
+  [Zonas de disponibilidad y regiones de infraestructuras globales](https://aws.amazon.com/about-aws/global-infrastructure/regions_az/) 

 **Vídeos relacionados:** 
+  [AWS Management and Governance at Scale (Administración y gobernanza en AWS a escala)](https://www.youtube.com/watch?v=xdJSUnPcPPI) 

 **Ejemplos relacionados:** 
+  [VMware - What Are Cloud Policies? (VMware - ¿Qué son las políticas de la nube?)](https://blogs.vmware.com/cloudhealth/what-are-cloud-policies/) 

# COST02-BP02 Implementar objetivos y metas
<a name="cost_govern_usage_goal_target"></a>

Implemente objetivos de costes y uso para la carga de trabajo. Los objetivos son una guía de resultados previstos para la organización. Las metas proporcionan resultados medibles específicos que se deben alcanzar para las cargas de trabajo.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Desarrolle objetivos y metas de costes y uso para su organización. Para una organización en crecimiento en AWS, es importante establecer objetivos de optimización de costes y realizar un seguimiento de ellos. Estos objetivos o [indicadores clave de rendimiento (KPI)](https://aws.amazon.com/blogs/aws-cloud-financial-management/unit-metric-the-touchstone-of-your-it-planning-and-evaluation/) pueden incluir aspectos como el porcentaje del gasto bajo demanda o la adopción de ciertos servicios optimizados, como instancias de AWS Graviton o tipos de volúmenes gp3 de EBS. Establecer objetivos cuantificables y factibles puede ayudarle a seguir midiendo las mejoras de eficiencia, algo que es importante para las operaciones empresariales en curso. Los objetivos son una guía sobre los resultados esperados para su organización. Las metas proporcionan los resultados medibles que se deben alcanzar. En resumen, un objetivo es la dirección en la que quiere ir y la meta es hasta dónde ir en esa dirección y cuándo debe lograrse ese objetivo (mediante una orientación específica, medible, alcanzable, realista y oportuna, o SMART, por sus siglas en inglés). Un ejemplo de un objetivo es que el uso de la plataforma debería incrementarse de forma significativa con tan solo un ligero incremento (no lineal) del coste. Un ejemplo de meta es un incremento del 20 % del uso de la plataforma con un incremento de menos del 5 % de los costes. Otro objetivo común es que las cargas de trabajo deben ser más eficientes cada seis meses. La meta correspondiente sería que las métricas de coste por empresa disminuyan un 5 % cada seis meses. 

Un objetivo de la optimización de costes es aumentar la eficiencia de la carga de trabajo, lo que significa reducir el coste por resultado empresarial de la carga de trabajo con el tiempo. Se recomienda implementar este objetivo para todas las cargas de trabajo y, además, establecer una meta como, por ejemplo, un aumento del 5 % en la eficiencia cada seis meses o un año. Esto se puede conseguir en la nube mediante la creación de capacidades de optimización de costes y el lanzamiento de nuevos servicios y características.

 Es importante tener una visibilidad casi en tiempo real de los KPI y las oportunidades de ahorro relacionadas, y hacer un seguimiento del progreso a lo largo del tiempo. Para empezar a definir y hacer un seguimiento de los objetivos de los KPI, recomendamos utilizar el panel de KPI del [marco de paneles de inteligencia en la nube (CID)](https://aws.amazon.com/blogs/mt/visualize-and-gain-insights-into-your-aws-cost-and-usage-with-cloud-intelligence-dashboards-using-amazon-quicksight/). En función de los datos de AWS Cost and Usage Report, el panel de KPI proporciona una serie de KPI de optimización de costes recomendados con la capacidad de establecer objetivos personalizados y realizar un seguimiento de su progreso a lo largo del tiempo. 

 Si dispone de otra solución que le permita establecer los objetivos de los KPI y realizar un seguimiento de ellos, asegúrese de que la adopten todas las partes interesadas en la administración financiera de la nube de su organización. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  **Defina los niveles de uso esperados: **céntrese primero en los niveles de uso. Interactúe con los propietarios de aplicaciones, los equipos de marketing y otros equipos grandes de la empresa para entender los niveles de uso esperados de la carga de trabajo. ¿Cómo cambiará la demanda de los clientes con el tiempo y habrá cambios debido a los incrementos de temporada o a las campañas de marketing? 
+ ** Defina los recursos y los costes de las cargas de trabajo: **una vez definidos los niveles de uso, se deben cuantificar los cambios en los recursos de las cargas de trabajo necesarios para ajustarse a dichos niveles de uso. Es posible que tenga que incrementar el tamaño o el número de recursos para un componente de carga de trabajo, incrementar la transferencia de datos o cambiar los componentes de las cargas de trabajo por un servicio distinto en un nivel determinado. Especifique los costes de estos aspectos principales y qué cambios sufrirán los costes si hay cambios en el uso. 
+  **Defina los objetivos empresariales: **debe combinar el resultado de los cambios previstos en el uso y los costes con los cambios previstos en la tecnología, o cualquier programa que esté ejecutando, y establecer objetivos para la carga de trabajo. Los objetivos deben tratar sobre el uso y los costes y la relación de ambos. Los objetivos deben ser sencillos y generales. Además, deben ayudar a otras personas a entender lo que espera la empresa en cuanto a los resultados (por ejemplo, asegurarse de que los recursos sin usar estén por debajo de un determinado nivel de coste). No tiene que definir objetivos para cada tipo de recurso no utilizado ni definir costes que provoquen pérdidas para los objetivos y las metas. Verifique que haya programas organizativos (por ejemplo, desarrollo de capacidades a través de cursos de formación) si se prevén cambios en los costes sin cambios en el uso.
+  **Defina metas: **debe especificar una meta cuantificable para cada de uno de los objetivos definidos. Si el objetivo es incrementar la eficiencia de la carga de trabajo, la meta cuantificará la mejora (normalmente en base a los resultados empresariales por cada dólar gastado) y cuándo tendrá lugar. Por ejemplo, si establece el objetivo de minimizar el desperdicio debido al aprovisionamiento excesivo, su objetivo puede ser que dicho desperdicio de computación en el primer nivel de cargas de trabajo de producción no supere el 10 % del coste de computación del nivel y que en el segundo nivel de cargas de trabajo de producción no sea superior al 5 % del coste de computación del nivel. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS managed policies for job functions (Políticas administradas por AWS para funciones de trabajo)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) 
+  [AWS multi-account strategy for your AWS Control Tower landing zone (Estrategia multicuenta de AWS para su zona de almacenamiento de AWS Control Tower)](https://docs.aws.amazon.com/controltower/latest/userguide/aws-multi-account-landing-zone.html) 
+  [Control access to Regiones de AWS using IAM policies (Control del acceso a las regiones de AWS mediante políticas de IAM)](https://aws.amazon.com/blogs/security/easier-way-to-control-access-to-aws-regions-using-iam-policies/) 
+ [ Objetivos SMART ](https://en.wikipedia.org/wiki/SMART_criteria)

 **Vídeos relacionados:** 
+ [ Well-Architected Labs: Goals and Targets (Level 100) (Well-Architected Labs: objetivos y metas [nivel 100]) ](https://www.wellarchitectedlabs.com/cost/100_labs/100_goals_and_targets/)

 **Ejemplos relacionados:** 
+ [ Well-Architected Labs: retirada de recursos (objetivos y metas) ](https://www.wellarchitectedlabs.com/cost/100_labs/100_goals_and_targets/4_decommission_resources/)
+ [ Well-Architected Labs: tipo, tamaño y número de recursos (objetivos y metas) ](https://www.wellarchitectedlabs.com/cost/100_labs/100_goals_and_targets/6_resource_type_size_number/)

# COST02-BP03 Implementar una estructura de cuentas
<a name="cost_govern_usage_account_structure"></a>

 Implante una estructura de cuentas adaptada a su organización. Esto ayuda a asignar y administrar los costes en toda la organización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 AWS Organizations le permite crear varias Cuentas de AWS que pueden ayudarle a controlar de forma centralizada su entorno a medida que escala sus cargas de trabajo en AWS. Puede modelar su jerarquía organizativa si agrupa las Cuentas de AWS en una estructura de unidades organizativas (OU) y crea varias Cuentas de AWS cada OU. Para crear una estructura de cuentas, primero debe decidir cuál de sus Cuentas de AWS será la de administración. Después, puede crear Cuentas de AWS nuevas o seleccionar las existentes como cuentas de miembros en función de la estructura de cuentas que haya diseñado según las [prácticas recomendadas de cuentas de administración](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_best-practices_mgmt-acct.html) y de [miembros](https://docs.aws.amazon.com/organizations/latest/userguide/best-practices_member-acct.html). 

 Se aconseja tener siempre al menos una cuenta de administración con una cuenta de miembro vinculada, sin importar el tamaño de la organización o su uso. Los recursos de las cargas de trabajo deberían estar solo en las cuentas de miembro y no se debería crear ningún recurso en la cuenta de administración. En cuanto a la pregunta sobre la cantidad de Cuentas de AWS que se debe tener, no existe una sola respuesta correcta para todas las situaciones. Primero debe evaluar sus modelos operativos y de costes, tanto actuales como futuros, para asegurarse de que la estructura de sus Cuentas de AWS refleje los de su organización. Algunas empresas crean varias cuentas de Cuentas de AWS por motivos empresariales, por ejemplo: 
+ Se requiere aislamiento administrativo o fiscal y de facturación entre unidades organizativas, centros de costes o cargas de trabajo específicas.
+ Los límites de servicio de AWS están configurados para ser específicos para cargas de trabajo concretas.
+ Existe un requisito de aislamiento y separación entre cargas de trabajo y recursos.

 En [AWS Organizations](https://aws.amazon.com/organizations/), la [facturación unificada](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/consolidated-billing.html) crea el componente entre una o más cuentas de miembro y la cuenta de administración. Las cuentas de miembro le permiten aislar y distinguir los costes y el uso por grupos. Una práctica común es tener cuentas de miembro independientes para cada unidad organizativa (como finanzas, marketing y ventas), para cada ciclo de vida del entorno (como desarrollo, prueba y producción) o para cada carga de trabajo (carga de trabajo a, b y c) y luego agregar dichas cuentas vinculadas mediante la facturación unificada. 

 La facturación unificada le permite unificar el pago de varias Cuentas de AWS de miembro en una sola cuenta de administración y proporcionar a la vez visibilidad de la actividad de cada cuenta vinculada. A medida que se añaden costes y uso a la cuenta de administración, puede maximizar los descuentos de volumen de servicio y el uso de los descuentos por compromiso (Savings Plans e instancias reservadas) para obtener los mayores descuentos. 

 En el siguiente diagrama se muestra cómo puede utilizar AWS Organizations con unidades organizativas (OU) para agrupar varias cuentas y colocar múltiples Cuentas de AWS en cada OU. Se recomienda utilizar OU para diversos casos de uso y cargas de trabajo, lo que proporciona patrones para organizar las cuentas. 

![\[Tree diagram showing how to group multiple accounts under organizational units.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/aws-organizations-ou-grouping.png)


 [AWS Control Tower](https://aws.amazon.com/controltower/) puede configurar rápidamente varias cuentas de AWS y garantizar que la gobernanza esté alineada con los requisitos de la organización.

**Pasos para la aplicación** 
+  **Definir los requisitos de separación: **los requisitos de separación son una combinación de múltiples factores, como la seguridad, la fiabilidad y los componentes financieros. Defina cada factor por orden y especifique si la carga de trabajo o el entorno de la carga de trabajo debería separarse de otras cargas de trabajo. La seguridad promueve la adhesión a los requisitos de acceso y datos. La fiabilidad administra los límites de tal forma que los entornos y las cargas de trabajo no afecten a los demás. Consulte periódicamente los pilares de seguridad y fiabilidad del marco Well-Architected Framework y siga las prácticas recomendadas. Los componentes financieros crean una separación financiera estricta (centro de coste diferente, propietarios de la carga de trabajo y responsabilidad). Los ejemplos comunes de separación son que las cargas de trabajo de producción y prueba se ejecuten en cuentas separadas, o que se use una cuenta separada para que los datos de facturación y de las facturas se puedan proporcionar a las unidades de negocio o departamentos individuales de la organización o parte interesada propietaria de la cuenta. 
+  **Definir requisitos de agrupación:** los requisitos de agrupación no anulan los de separación, pero se utilizan para contribuir a la administración. Agrupe entornos o cargas de trabajo similares que no requieran separación. Un ejemplo es agrupar múltiples entornos de prueba o desarrollo de una o varias cargas de trabajo.
+  **Definir la estructura de cuentas: **con estas separaciones y agrupaciones, especifique una cuenta para cada grupo y compruebe que se cumplan los requisitos de separación. Estas cuentas son sus cuentas de miembro o vinculadas. Al agrupar estas cuentas de miembro en una única cuenta de administración o de pagador, combina el uso, lo que le permite disfrutar de descuentos de mayor volumen en todas las cuentas y le proporciona una sola factura para todas las cuentas. No se pueden separar los datos de facturación y proporcionar a cada cuenta de miembro una vista individual de sus datos de facturación. Si una cuenta de miembro no debe tener los datos de facturación o de uso visibles para las demás cuentas, o si se requiere una factura distinta de AWS, defina múltiples cuentas de administración o de pagador. En este caso, cada cuenta de miembro tiene su propia cuenta de administración o de pagador. Los recursos deberían colocarse siempre en las cuentas de miembro o vinculadas. Las cuentas de administración o de pagador solo deben usarse para tareas de administración. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Uso de etiquetas de asignación de costes](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) 
+  [Políticas administradas de AWS para las funciones del trabajo](https://docs.aws.amazon.com//latest/UserGuide/access_policies_job-functions.html) 
+  [Estrategia de facturación de varias cuentas de AWS](https://aws.amazon.com/answers/account-management/aws-multi-account-billing-strategy/) 
+  [Controlar el acceso a las Regiones de AWS mediante políticas de IAM](https://aws.amazon.com/blogs/security/easier-way-to-control-access-to-aws-regions-using-iam-policies/) 
+  [AWS Control Tower](https://aws.amazon.com/controltower/) 
+  [AWS Organizations](https://aws.amazon.com/organizations/) 
+  Prácticas recomendadas para las [cuentas de administración](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_best-practices_mgmt-acct.html) y de [miembro](https://docs.aws.amazon.com/organizations/latest/userguide/best-practices_member-acct.html) 
+  [Organización de su entorno de AWS mediante varias cuentas](https://docs.aws.amazon.com/whitepapers/latest/organizing-your-aws-environment/organizing-your-aws-environment.html) 
+  [Activación de instancias reservadas compartidas y descuentos de Savings Plans](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ri-turn-on-process.html) 
+  [Facturación unificada](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/consolidated-billing.html) 
+  [Facturación unificada](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/consolidated-billing.html) 

 **Ejemplos relacionados:** 
+  [División del acceso compartido y CUR](https://wellarchitectedlabs.com/Cost/Cost_and_Usage_Analysis/300_Splitting_Sharing_CUR_Access/README.html) 

 **Vídeos relacionados: ** 
+ [Introducción a AWS Organizations](https://www.youtube.com/watch?v=T4NK8fv8YdI)
+ [ Set Up a Multi-Account AWS Environment that Uses Best Practices for AWS Organizations](https://www.youtube.com/watch?v=uOrq8ZUuaAQ) (Configurar un entorno de AWS de varias cuentas que utilice las prácticas recomendadas para AWS Organizations)

 **Ejemplos relacionados:** 
+ [ Well-Architected Labs: Create an AWS Organization (Level 100)](https://www.wellarchitectedlabs.com/cost/100_labs/100_1_aws_account_setup/2_account_structure/) (Laboratorios de Well-Architected: crear una organización de AWS [nivel 100])
+ [ División del acceso compartido y AWS Cost and Usage Report](https://wellarchitectedlabs.com/cost/300_labs/300_splitting_sharing_cur_access/)
+  [Defining an AWS Multi-Account Strategy for telecommunications companies](https://aws.amazon.com/blogs/industries/defining-an-aws-multi-account-strategy-for-telecommunications-companies/) (Definición de una estrategia de varias cuentas de AWS para empresas de telecomunicaciones) 
+  [Best Practices for Optimizing Cuentas de AWS](https://aws.amazon.com/blogs/architecture/new-whitepaper-provides-best-practices-for-optimizing-aws-accounts/) (Prácticas recomendadas para la optimización de Cuentas de AWS) 
+  [Best Practices for Organizational Units with AWS Organizations](https://aws.amazon.com/blogs/mt/best-practices-for-organizational-units-with-aws-organizations/?org_product_gs_bp_OUBlog) (Prácticas recomendadas para unidades organizativas con AWS Organizations) 

# COST02-BP04 Implementar grupos y roles
<a name="cost_govern_usage_groups_roles"></a>

 Implemente grupos y roles que se ajusten a sus políticas y controle quién puede crear, modificar o retirar instancias y recursos en cada grupo. Por ejemplo, implementar grupos de desarrollo, de pruebas y de producción. Esto se aplica a los servicios de AWS y a las soluciones de terceros. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Después de desarrollar las políticas, puede crear grupos lógicos y roles de usuario dentro de la organización. De esta manera podrá asignar permisos y controlar el uso. Empiece con grupos de personas de alto nivel. Suele coincidir con las unidades organizativas y los roles de los trabajos (por ejemplo, el administrador de sistemas del departamento de TI o el controlador financiero). Los grupos aúnan a personas que realizan tareas similares y necesitan accesos similares. Los roles definen lo que debe hacer un grupo. Por ejemplo, un administrador de sistemas del departamento de TI requiere acceso para crear todos los recursos, pero un miembro del equipo de análisis solo lo necesita para crear recursos de análisis.

**Pasos para la aplicación**
+ ** Implementar grupos: **use los grupos de usuarios definidos en sus políticas organizativas e implemente los grupos correspondientes, si es necesario. Consulte el pilar de seguridad para ver las prácticas recomendadas sobre usuarios, grupos y autenticación. 
+ ** Implementar roles y políticas: **use las acciones definidas en sus políticas organizativas, y cree los roles necesarios y las políticas de acceso. Consulte el pilar de seguridad para ver las prácticas recomendadas sobre roles y políticas. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Políticas administradas de AWS para las funciones del trabajo](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) 
+  [Estrategia de facturación de varias cuentas de AWS](https://aws.amazon.com/answers/account-management/aws-multi-account-billing-strategy/) 
+  [Controlar el acceso a las Regiones de AWS mediante políticas de IAM](https://aws.amazon.com/blogs/security/easier-way-to-control-access-to-aws-regions-using-iam-policies/) 
+  [Pilar de seguridad de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architechted: identidad y acceso básicos](https://wellarchitectedlabs.com/Security/100_Basic_Identity_and_Access_Management_User_Group_Role/README.html) 

# COST02-BP05 Implementación de controles de costes
<a name="cost_govern_usage_controls"></a>

 Aplique controles basados en las políticas de la organización y en grupos y roles definidos. De este modo se certifica que los costes solo se producen según los requisitos de la organización, como controlar el acceso a regiones o tipos de recursos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Un primer paso común en la implementación de los controles de costes es establecer notificaciones cuando se producen eventos de costes o de uso fuera de las políticas. Puede actuar con rapidez y verificar si es necesaria una acción correctiva, sin restringir ni afectar negativamente a las cargas de trabajo o a la nueva actividad. Una vez que conozca los límites de la carga de trabajo y del entorno, podrá aplicar la gobernanza. [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) le permite establecer notificaciones y definir presupuestos mensuales para sus costes, uso y descuentos por compromiso de AWS (Savings Plans e Instancias reservadas). Puede crear presupuestos en un nivel de coste agregado (por ejemplo, todos los costes), o en un nivel más detallado en el que incluya solo dimensiones específicas como, por ejemplo, cuentas vinculadas, servicios, etiquetas o zonas de disponibilidad.

 Una vez que haya establecido los límites de su presupuesto con AWS Budgets, utilice [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/) para reducir el coste imprevisto. AWS Cost Anomaly Detection es un servicio de administración de costes que utiliza machine learning para supervisar continuamente su coste y uso, así como para detectar gastos inusuales. Le ayuda a identificar los gastos anómalos y las causas que los originan para que pueda adoptar medidas rápidamente. En primer lugar, cree un monitor de costes en AWS Cost Anomaly Detection, y, a continuación, elija su preferencia de alerta mediante el establecimiento de un umbral en dólares (como una alerta sobre anomalías con un impacto superior a 1000 USD). Una vez que reciba las alertas, podrá analizar la causa raíz que provoca la anomalía y el impacto en los costes. También puede supervisar y realizar sus propios análisis de anomalías en AWS Cost Explorer. 

 Aplique las políticas de gobernanza en AWS mediante [AWS Identity and Access Management](https://aws.amazon.com/iam/) y las [políticas de control de servicios (SCP) de AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scp.html). IAM le permite administrar de forma segura el acceso a los servicios y recursos de AWS. Mediante IAM, puede controlar quién puede crear o administrar los recursos de AWS, el tipo de recursos que se pueden crear y dónde se pueden crear. Esto minimiza la posibilidad de que se creen recursos fuera de la política definida. Utilice los roles y grupos creados anteriormente y asigne las [políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) para aplicar el uso correcto. La SCP ofrece un control centralizado de los permisos máximos disponibles para todas las cuentas de su organización, lo que mantiene sus cuentas según las directrices de control de acceso. Las SCP están disponibles solo en una organización que tenga todas las características activadas. Puede configurar las SCP para denegar o permitir acciones en las cuentas de los miembros de forma predeterminada. Para obtener más detalles sobre la implementación de la administración del acceso, consulte el [documento técnico Pilar de seguridad de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/welcome.html). 

 La gobernanza también puede implementarse a través de la administración de las [cuotas de servicio de AWS](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html). Si garantiza que las cuotas de servicio se configuran con los gastos generales mínimos y se mantienen correctamente, puede minimizar la creación de recursos que no necesite su organización. Para lograrlo, debe conocer la velocidad con la que pueden cambiar sus requisitos, comprender los proyectos en curso (tanto la creación como la retirada de recursos) y tener en cuenta la rapidez con la que se pueden implementar los cambios de cuota. Las [cuotas de servicio](https://docs.aws.amazon.com/servicequotas/latest/userguide/intro.html) se pueden usar para aumentar las cuotas cuando sea necesario. 

**Pasos para la aplicación**
+ **Implementar notificaciones sobre el gasto:** mediante el uso de las políticas definidas por su organización, cree [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) para recibir notificaciones cuando el gasto no cumpla las políticas. Configure varios presupuestos de costes, uno para cada cuenta, que le notifiquen el gasto global de la cuenta. Configure presupuestos de costes adicionales en cada cuenta para unidades más pequeñas en ella. Estas unidades varían en función de la estructura de la cuenta. Algunos ejemplos comunes son las Regiones de AWS, las cargas de trabajo (mediante etiquetas) o los servicios de AWS. Configure una lista de distribución de correo electrónico como destinatario de las notificaciones y no una cuenta de correo electrónico individual. Puede configurar un presupuesto real en caso de que se supere una cantidad o utilizar un presupuesto previsto para notificar el uso previsto. También puede preconfigurar acciones presupuestarias de AWS que pueden aplicar políticas de IAM o SCP específicas, o detener las instancias Amazon EC2 y Amazon RDS de destino. Las acciones presupuestarias se pueden ejecutar automáticamente o requerir la aprobación del flujo de trabajo.
+  **Implementar notificaciones sobre el gasto anómalo**: use [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/) para reducir los costes sorpresa en su organización y analizar la causa raíz del posible gasto anómalo. Una vez que haya creado la supervisión de costes para identificar los gastos inusuales con el detalle que especifique y haya configurado las notificaciones en AWS Cost Anomaly Detection, le enviará una alerta cuando se detecten gastos inusuales. Esto le permitirá analizar el origen de la anomalía y comprender el impacto en el coste. Utilice las categorías de costes de AWS durante la configuración de AWS Cost Anomaly Detection para identificar qué equipo de proyecto o de unidad de negocio puede analizar la causa raíz del coste inesperado y tomar las medidas necesarias a tiempo. 
+ **Implementar controles de uso: **mediante las políticas de organización definidas, implemente políticas y roles de IAM para especificar qué acciones pueden realizar los usuarios y cuáles no. En una política de AWS pueden incluirse múltiples políticas organizativas. De la misma manera en que ha definido las políticas, empiece de manera amplia y, a continuación, aplique controles más detallados en cada paso. Los límites de servicio son también un control eficaz del uso. Implemente los límites de servicio correctos en todas las cuentas. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Políticas administradas de AWS para las funciones del trabajo](https://docs.aws.amazon.com//latest/UserGuide/access_policies_job-functions.html) 
+  [Estrategia de facturación de varias cuentas de AWS](https://aws.amazon.com/answers/account-management/aws-multi-account-billing-strategy/) 
+  [Controlar el acceso a las Regiones de AWS mediante políticas de IAM](https://aws.amazon.com/blogs/security/easier-way-to-control-access-to-aws-regions-using-iam-policies/) 
+  [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) 
+  [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/) 
+  [Controle los costes de AWS](https://aws.amazon.com/getting-started/hands-on/control-your-costs-free-tier-budgets/) 

 **Vídeos relacionados: ** 
+  [How can I use AWS Budgets to track my spending and usage](https://www.youtube.com/watch?v=Ris23gKc7s0) (Como puedo usar AWS Budgets para hacer un seguimiento de mis gastos y el uso) 

 **Ejemplos relacionados:** 
+  [Políticas de administración de acceso de IAM de ejemplo](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_examples.html) 
+  [Políticas de control de servicios de ejemplo](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps_examples.html) 
+  [AWS Budgets Actions](https://aws.amazon.com/blogs/aws-cloud-financial-management/get-started-with-aws-budgets-actions/) (Acciones de AWS Budgets) 
+  [Create IAM Policy to control access to Amazon EC2 resources using Tags](https://aws.amazon.com/premiumsupport/knowledge-center/iam-ec2-resource-tags/) (Crear una política de IAM para controlar el acceso a los recursos de Amazon EC2 mediante etiquetas) 
+  [Restrict the access of IAM Identity to specific Amazon EC2 resources](https://aws.amazon.com/premiumsupport/knowledge-center/restrict-ec2-iam/) (Restringir el acceso de la identidad de IAM a recursos de Amazon EC2 específicos) 
+  [Create an IAM Policy to restrict Amazon EC2 usage by family](https://www.wellarchitectedlabs.com/cost/200_labs/200_2_cost_and_usage_governance/3_ec2_restrict_family/) (Crear una política de IAM para restringir el uso de Amazon EC2 por familia) 
+  [Well-Architected Labs: Cost and Usage Governance (Level 100)](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_2_Cost_and_Usage_Governance/README.html) (Laboratorios de Well-Architected: gobernanza de coste y uso [nivel 100]) 
+  [Well-Architected Labs: Cost and Usage Governance (Level 200)](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/200_2_Cost_and_Usage_Governance/README.html) (Laboratorios de Well-Architected: gobernanza de coste y uso [nivel 200]) 
+  [Slack integrations for Cost Anomaly Detection using Amazon Q Developer in chat applications](https://aws.amazon.com/aws-cost-management/resources/slack-integrations-for-aws-cost-anomaly-detection-using-aws-chatbot/) (Integraciones de Slack para Cost Anomaly Detection mediante Amazon Q Developer in chat applications) 

# COST02-BP06 Controlar el ciclo de vida de los proyectos
<a name="cost_govern_usage_track_lifecycle"></a>

 Controle, mida y audite el ciclo de vida de los proyectos, equipos y entornos para evitar el uso y el pago de recursos innecesarios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Asegúrese de controlar el ciclo de vida entero de la carga de trabajo. De este modo se asegura de que cuando ya no se requieran cargas de trabajo o componentes de la carga de trabajo, se puedan retirar o modificar. Esto es especialmente útil si va a lanzar nuevos servicios o características. Es posible que parezca que se están usando las cargas de trabajo y los componentes, pero deben retirarse para redirigir a los clientes al nuevo servicio. Tenga en cuenta las etapas anteriores de las cargas de trabajo: cuando una carga de trabajo ya no está en producción, los entornos previos se pueden retirar o reducirse en gran medida hasta que se requieran de nuevo.

AWS proporciona un número de servicios de administración y gobernanza que puede usar para controlar el ciclo de vida de la entidad. Puede usar [AWS Config](https://aws.amazon.com/config/) o bien [AWS Systems Manager](https://aws.amazon.com/systems-manager/) para proporcionar un inventario detallado de sus recursos y la configuración de AWS. Se recomienda realizar una integración con sus sistemas de administración de proyectos o recursos existentes para realizar un seguimiento de los proyectos y productos activos en su organización. Mediante la combinación del sistema actual con el amplio conjunto de eventos y métricas que brinda AWS, podrá crear una visión de eventos importantes del ciclo de vida y administrar de forma proactiva los recursos a fin de reducir costes innecesarios.

Consulte el [documento técnico Pilar de excelencia operativa de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/welcome.html) para obtener más detalles sobre la implementación del control de todo el ciclo de vida.

**Pasos para la aplicación**
+ ** Realizar revisiones de la carga de trabajo: **tal como definen sus políticas organizativas, debe auditar los proyectos existentes. El esfuerzo dedicado a la auditoría debería ser proporcional al riesgo, valor o coste aproximados de la organización. Las principales áreas que debería incluir en la auditoría son el riesgo de incidente o interrupción en la organización, el valor o la contribución a la organización (medida en ingresos o reputación de la marca), el coste de la carga de trabajo (medido como coste total de los recursos y costes operativos) y uso de la carga de trabajo (medido en número de resultados organizativos por unidad de tiempo). Si estas áreas cambian durante el ciclo de vida, se deberá ajustar la carga de trabajo, por ejemplo, mediante una retirada total o parcial. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Config](https://aws.amazon.com/config/) 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
+  [Políticas administradas de AWS para las funciones del trabajo](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) 
+  [Estrategia de facturación de varias cuentas de AWS](https://aws.amazon.com/answers/account-management/aws-multi-account-billing-strategy/) 
+  [Controlar el acceso a las Regiones de AWS mediante políticas de IAM](https://aws.amazon.com/blogs/security/easier-way-to-control-access-to-aws-regions-using-iam-policies/) 

# COST 3 ¿Cómo supervisa el uso y el coste?
<a name="cost-03"></a>

Establezca políticas y procedimientos para monitorear y asignar adecuadamente sus costes. Esto le permite medir y mejorar la rentabilidad de esta carga de trabajo.

**Topics**
+ [COST03-BP01 Configurar los orígenes de información detallados](cost_monitor_usage_detailed_source.md)
+ [COST03-BP02 Añadir información de la organización a los costes y el uso](cost_monitor_usage_org_information.md)
+ [COST03-BP03 Identificar las categorías de atribución de costes](cost_monitor_usage_define_attribution.md)
+ [COST03-BP04 Establecer métricas de organización](cost_monitor_usage_define_kpi.md)
+ [COST03-BP05 Configurar herramientas de facturación y administración de costes](cost_monitor_usage_config_tools.md)
+ [COST03-BP06 Asignar costes según las métricas de carga de trabajo](cost_monitor_usage_allocate_outcome.md)

# COST03-BP01 Configurar los orígenes de información detallados
<a name="cost_monitor_usage_detailed_source"></a>

 Configure el informe de coste y uso de AWS y el detalle por horas de Cost Explorer, para proporcionar información detallada del coste y uso. Configure la carga de trabajo a fin de disponer de entradas de registro para cada resultado empresarial entregado. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Active el detalle por horas en AWS Cost Explorer y cree un [AWS Cost and Usage Report (CUR)](https://aws.amazon.com/aws-cost-management/aws-cost-and-usage-reporting/). Estos orígenes de datos proporcionan la visión más precisa del coste y uso en toda la organización. El CUR proporciona un detalle de uso diario o por horas, tarifas, costes y atributos de uso de todos los servicios de AWS facturables. Todas las dimensiones posibles están en el CUR, por ejemplo: etiquetado, ubicación, atributos de recursos e ID de cuentas.

Configure el CUR con las siguientes personalizaciones:
+ Inclusión de los ID de recurso
+ Actualización automática del CUR
+ Detalle por horas
+ **Control de versiones:** sobrescritura del informe existente
+ **Integración de datos:** Amazon Athena (formato y compresión Parquet)

Uso [AWS Glue](https://aws.amazon.com/glue/) para preparar los datos para el análisis y use [Amazon Athena](https://aws.amazon.com/athena/) para realizar el análisis de los datos, mediante SQL para consultarlos. También puede utilizar [Amazon Quick](https://aws.amazon.com/quicksight/) para crear visualizaciones personalizadas y complejas, y distribuirlas por toda la organización.

**Pasos para la aplicación**
+ ** Configurar el informe de coste y uso: **mediante la consola de facturación, configure al menos un informe de coste y uso. Configure un informe con detalle por horas que incluya todos los identificadores y los ID de recurso. También puede crear otros informes con distintos niveles de detalle para proporcionar información de resumen general. 
+ ** Configure el detalle por horas en Cost Explorer: **mediante la consola de facturación, active los datos por hora y en el nivel de recursos. 
**nota**  
La activación de esta característica tendrá costes asociados. Para obtener detalles, consulte los precios. 
+  **Configure el registro de aplicaciones:** verifique que su aplicación registra cada resultado empresarial que ofrece para que se pueda hacer el seguimiento y la medición. Asegúrese de que el nivel de detalle de estos datos es, como mínimo, por horas, para que coincidan con los datos de coste y uso. Consulte el [pilar de excelencia operativa de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/welcome.html) para obtener más detalles sobre el registro y la supervisión. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Configuración de cuentas de AWS](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_1_AWS_Account_Setup/README.html) 
+  [AWS Cost and Usage Report (CUR)](https://aws.amazon.com/aws-cost-management/aws-cost-and-usage-reporting/) 
+  [AWS Glue](https://aws.amazon.com/glue/) 
+  [Amazon Quick](https://aws.amazon.com/quicksight/) 
+  [Precios de la administración de costes de AWS](https://aws.amazon.com/aws-cost-management/pricing/) 
+  [Etiquetado de recursos de AWS](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+  [Análisis de los costes con AWS Budgets](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html) 
+  [Análisis de los costes con Cost Explorer](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-explorer-what-is.html) 
+  [Administración de los informes de coste y uso de AWS](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-reports-costusage-managing.html) 
+  [pilar de excelencia operativa de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/operational-excellence-pillar/welcome.html) 

 **Ejemplos relacionados:** 
+  [Configuración de cuentas de AWS](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_1_AWS_Account_Setup/README.html) 

# COST03-BP02 Añadir información de la organización a los costes y el uso
<a name="cost_monitor_usage_org_information"></a>

Defina un esquema de etiquetado basado en su organización, los atributos de carga de trabajo y las categorías de asignación de costes para poder filtrar y buscar recursos o supervisar el coste y el uso en las herramientas de administración de costes. Implemente un etiquetado coherente en todos los recursos, siempre que sea posible, por finalidad, equipo, entorno u otros criterios relevantes para su empresa. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Implemente el [etiquetado en AWS](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) para añadir información de la organización a los recursos que, a su vez, se añadirá a la información de costes y uso. Una etiqueta es un par clave-valor: la clave está definida y debe ser única en toda la organización, mientras que el valor es único para un grupo de recursos. Un ejemplo de par clave-valor es la clave `Entorno` con un valor de `Producción`. Todos los recursos del entorno de producción tendrán este par clave-valor. El etiquetado le permite categorizar y controlar los costes con información de la organización relevante y útil. Puede aplicar etiquetas que representen categorías de la organización (como centros de costes, nombres de aplicación, proyectos o propietarios) e identificar cargas de trabajo y características de cargas de trabajo (como de prueba o producción) para categorizar sus costes y uso en toda la organización.

Cuando aplica etiquetas a sus recursos de AWS (como instancias Amazon Elastic Compute Cloud o buckets de Amazon Simple Storage Service) y las activa, AWS añade esta información a los informes de uso y costes. Puede ejecutar informes y realizar análisis en recursos con etiquetas o sin ellas para permitir un mayor cumplimiento de las políticas de administración de costes internos y garantizar una atribución precisa.

Con la creación e implementación de un estándar de etiquetado de AWS en las cuentas de su organización, podrá administrar y controlar sus entornos de AWS de manera coherente y uniforme. Use [políticas de etiquetado](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html) en AWS Organizations para definir reglas sobre cómo se pueden usar los recursos de AWS en sus cuentas de AWS Organizations. Las políticas de etiquetado le permiten adoptar un enfoque estandarizado para los recursos de etiquetado de AWS.

El [editor de etiquetas de AWS](https://docs.aws.amazon.com/ARG/latest/userguide/tag-editor.html) le permite añadir, eliminar y administrar etiquetas de múltiples recursos. Con el editor de etiquetas, puede buscar los recursos que desea etiquetar y, a continuación, administrar las etiquetas de los recursos que aparecen en los resultados de la búsqueda.

Las [categorías de costes de AWS](https://aws.amazon.com/aws-cost-management/aws-cost-categories/) le permiten asignar un significado de organización a los costes, sin necesitar etiquetas en los recursos. Puede asignar la información de costes y uso a estructuras organizativas internas únicas. Debe definir reglas de categorías para asignar y categorizar los costes mediante dimensiones de facturación, como cuentas y etiquetas. Esto proporciona otro nivel de capacidad de administración, además del etiquetado. También puede asignar cuentas específicas y etiquetas a varios proyectos.

**Pasos para la aplicación**
+  **Definir un esquema de etiquetado:** reúna a todas las partes interesadas de la empresa para definir un esquema. En general, son personas con roles técnicos, financieros o de administración. Defina una lista de etiquetas que deben tener todos los recursos, así como una lista de las etiquetas que deberían tener los recursos. Compruebe que los nombres y los valores de las etiquetas sean coherentes en toda la organización. 
+ ** Etiquetar recursos: **con las categorías de atributos de costes definidas, [coloque etiquetas](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) en todos los recursos en sus cargas de trabajo según las categorías. Use herramientas como la CLI, el editor de etiquetas o AWS Systems Manager para incrementar la eficiencia. 
+  **Implementar categorías de costes de AWS: **puede crear [categorías de costes](https://aws.amazon.com/aws-cost-management/aws-cost-categories/) sin implementar el etiquetado. Las categorías de costes usan las dimensiones de costes y uso existentes. Cree reglas de categorías a partir de su esquema e impleméntelas en las categorías de costes. 
+  **Automatizar el etiquetado:** para comprobar que mantiene altos niveles de etiquetado en todos los recursos, automatice el etiquetado para que los recursos reciban etiquetas automáticamente en cuanto se creen. Use servicios como [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) para verificar que los recursos se etiquetan al crearse. También puede crear una solución personalizada para [etiquetar automáticamente](https://aws.amazon.com/blogs/mt/auto-tag-aws-resources/) con funciones de Lambda o use un microservicio personalizado que escanee la carga de trabajo periódicamente y elimine cualquier recurso que no tenga etiqueta, lo que es ideal para los entornos de prueba y desarrollo. 
+ ** Supervisar las etiquetas y elaborar informes de ellas: **para comprobar que mantiene altos niveles de etiquetado en toda la organización, elabore informes de las etiquetas de sus cargas de trabajo y supervise dichas etiquetas. Puede usar [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) para ver el coste de los recursos etiquetados o no, o bien usar servicios tales como el [editor de etiquetas](https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html). Revise periódicamente el número de recursos no etiquetados y añada etiquetas hasta alcanzar el nivel de etiquetado que desee. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Prácticas recomendadas sobre etiquetado](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html)
+  [Etiqueta de recurso de AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html) 
+  [Categorías de costes de AWS](https://aws.amazon.com/aws-cost-management/aws-cost-categories/) 
+  [Etiquetado de recursos de AWS](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+  [Análisis de los costes con AWS Budgets](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html) 
+  [Análisis de los costes con Cost Explorer](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-explorer-what-is.html) 
+  [Administración de los informes de coste y uso de AWS](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-reports-costusage-managing.html) 

 **Vídeos relacionados: ** 
+ [ How can I tag my AWS resources to divide up my bill by cost center or project ](https://www.youtube.com/watch?v=3j9xyyKIg6w) (Cómo puedo etiquetar mis recursos de AWS para dividir mi factura por centro de coste o proyecto)
+ [ Tagging AWS Resources ](https://www.youtube.com/watch?v=MX9DaAQS15I) (Etiquetado de recursos de AWS)

 **Ejemplos relacionados:** 
+ [ Automatically tag new AWS resources based on identity or role ](https://aws.amazon.com/blogs/mt/auto-tag-aws-resources/) (Etiquetar automáticamente los nuevos recursos de AWS a partir de la identidad o el rol)

# COST03-BP03 Identificar las categorías de atribución de costes
<a name="cost_monitor_usage_define_attribution"></a>

Identifique las categorías de la organización, como las unidades empresariales, los departamentos o los proyectos, que podrían utilizarse para asignar los costes dentro de su organización a las entidades consumidoras internas, de modo que se pueda asumir la responsabilidad de los gastos y se puedan impulsar comportamientos de consumo de manera eficaz.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El proceso de categorización de los costes es crucial en la elaboración de presupuestos, la contabilidad, los informes financieros, la toma de decisiones, las evaluaciones comparativas y la administración de proyectos. Al clasificar y categorizar los gastos, los equipos pueden comprender mejor los tipos de costes en los que incurrirán durante su traspaso a la nube, lo que les ayuda a tomar decisiones fundamentadas y a administrar los presupuestos de manera eficaz. 

La responsabilidad de los gastos en la nube es un buen incentivo para conseguir una administración disciplinada de la demanda y los costes. Como resultado, las organizaciones que destinan la mayor parte de su gasto en la nube a unidades empresariales o equipos que consumen recursos ahorran mucho más en costes en la nube.

Trabaje con el equipo financiero y otras partes interesadas relevantes para comprender los requisitos sobre cómo deben asignarse los costes en la organización. Los costes de carga de trabajo deben asignarse a todo el ciclo de vida, como las fases de desarrollo, pruebas, producción y retirada. Debe saber qué costes de la organización proceden de la formación, el desarrollo del personal y la creación de ideas. Puede ser útil para asignar correctamente las cuentas que se usan para los presupuestos de formación y desarrollo, en lugar de presupuestos genéricos de costes de TI.

 Tras definir las categorías de atribución de costes con las partes interesadas de su organización, utilice las [categorías de costes de AWS](https://aws.amazon.com/aws-cost-management/aws-cost-categories/) para agrupar la información de costes y uso en categorías significativas en la Nube de AWS, como el coste de un proyecto específico o las Cuentas de AWS de departamentos o unidades empresariales. Puede crear categorías personalizadas y asignar su información de costes y uso a estas categorías en función de las reglas que defina mediante varias dimensiones, tales como cuenta, etiqueta, servicio, tipo de cargo e, incluso, otras categorías de costes. Tras configurar las categorías de costes, podrá ver la información de costes y uso por estas categorías, lo que permitirá a la organización tomar mejores decisiones estratégicas y de compra. Estas categorías también estarán visibles en AWS Cost Explorer, AWS Budgets y AWS Cost and Usage Report. 

 En el siguiente diagrama se muestra, a modo de ejemplo, cómo puede agrupar la información de costes y uso de la organización, por ejemplo, si tiene varios equipos (categoría de costes) con varios entornos (reglas) y cada entorno tiene varios recursos o activos (dimensiones). 

![\[Diagrama de flujo que detalla la relación entre el coste y el uso dentro de una organización.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/cost-usage-organization-chart.png)


 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  **Defina las categorías de la organización:** reúnase con las partes interesadas para definir categorías que reflejen la estructura y los requisitos de su organización. Estas categorías reflejarán directamente la estructura de las categorías financieras existentes, como unidad de negocio, presupuesto, centro de costes o departamento. Consulte los resultados de la nube para su empresa, como la formación o la educación, pues también son categorías de la organización. Se pueden asignar varias categorías a un recurso y un recurso puede estar en muchas categorías distintas, por lo que se recomienda definir tantas categorías como sea necesario. 
+  **Defina las categorías funcionales:** reúnase con las partes interesadas para definir las categorías que reflejen las funciones de su empresa. Pueden ser los nombres de las aplicaciones o las cargas de trabajo y el tipo de entorno, como producción, pruebas o desarrollo. Se pueden asignar varias categorías a un recurso y un recurso puede estar en muchas categorías distintas, por lo que se recomienda definir tantas categorías como sea necesario para que pueda [administrar sus costes](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/manage-cost-categories.html) en la estructura categorizada mediante categorías de costes de AWS.
+  **Defina categorías de costes de AWS:** puede [crear categorías de costes](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/create-cost-categories.html) para organizar la información de costes y uso. Use [categorías de costes de AWS](https://aws.amazon.com/aws-cost-management/aws-cost-categories/) para asignar sus costes de AWS y uso a categorías significativas. Con las categorías de costes, puede organizar sus costes mediante un motor basado en reglas. Las reglas que configure organizan sus costes en categorías. En estas reglas, puede realizar el filtrado con varias dimensiones para cada categoría, como Cuentas de AWS específicas, servicios de AWS específicos o tipos de cargos específicos. Después, podrá utilizar estas categorías en varios productos en la consola de [Administración de facturación y costos de AWS](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-what-is.html) [.](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/view-billing-dashboard.html). Esto incluye AWS Cost Explorer, AWS Budgets, AWS Cost and Usage Report y AWS Cost Anomaly Detection. También puede crear agrupaciones de costes mediante categorías de costes. Después de crear las categorías de costes (deje que transcurran hasta 24 horas desde la creación de una categoría de costes para que sus registros de uso se actualicen con valores), estas aparecen en [AWS Cost Explorer](https://aws.amazon.com//aws-cost-management/aws-cost-explorer/), [AWS Budgets](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html), [AWS Cost and Usage Report](https://docs.aws.amazon.com/cur/latest/userguide/what-is-cur.html)y [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/). Por ejemplo, cree categorías de costes para sus unidades de negocio (equipo DevOps), y en cada categoría cree varias reglas (para cada subcategoría) con múltiples dimensiones (Cuentas de AWS, etiquetas de asignación de costes, servicios o tipo de cargo) basadas en las agrupaciones definidas. En AWS Cost Explorer y AWS Budgets, una categoría de coste aparece como una dimensión de facturación adicional. Puede utilizarla para filtrar por el valor específico de la categoría de costes o agrupar por dicha categoría. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Tagging AWS resources (Etiquetado de recursos de AWS)](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+ [Uso de las etiquetas de asignación de costos](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html)
+  [Analyzing your costs with AWS Budgets (Análisis de los costes con AWS Budgets)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html) 
+  [Analyzing your costs with Cost Explorer (Análisis de los costes con Cost Explorer)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-explorer-what-is.html) 
+  [Administración de los informes de coste y uso de AWS](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-reports-costusage-managing.html) 
+ [categorías de costes de AWS](aws-cost-management/aws-cost-categories/)
+ [Administración de costos con AWS Cost Categories](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/manage-cost-categories.html)
+ [Creación de categorías de costes](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/create-cost-categories.html)
+ [Etiquetado de categorías de costes](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/tag-cost-categories.html)
+ [División de cargos en categorías de costes](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/splitcharge-cost-categories.html)
+ [AWS Cost Categories Features (Características de las categorías de costes de AWS) ](https://aws.amazon.com/aws-cost-management/aws-cost-categories/features/)

 **Ejemplos relacionados:** 
+ [Organize your cost and usage data with AWS Cost Categories (Organice sus datos de costes y uso con las categorías de costes de AWS)](https://aws.amazon.com/blogs/aws-cloud-financial-management/organize-your-cost-and-usage-data-with-aws-cost-categories/)
+ [Administración de costos con AWS Cost Categories](https://aws.amazon.com/aws-cost-management/resources/managing-your-costs-with-aws-cost-categories/)

# COST03-BP04 Establecer métricas de organización
<a name="cost_monitor_usage_define_kpi"></a>

 Establezca las métricas de organización necesarias para esta carga de trabajo. Algunos ejemplos de métricas de cargas de trabajo son los informes de clientes producidos o las páginas web que se entregan a los clientes. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Comprenda cómo se mide el rendimiento de su carga de trabajo en relación con el éxito empresarial. Cada carga de trabajo suele tener un pequeño conjunto de resultados principales que indican el rendimiento. Si tiene una carga de trabajo compleja con muchos componentes, puede priorizar la lista o definir y hacer un seguimiento de las métricas de cada componente. Colabore con sus equipos para entender qué métricas utilizar. Esta unidad se usará para comprender la eficiencia de la carga de trabajo o el coste de cada resultado empresarial.

**Pasos para la aplicación**
+  **Definir los resultados de la carga de trabajo: **reúnase con las partes interesadas de la empresa y defina los resultados de la carga de trabajo. Son una medida principal del uso de los clientes y deben ser métricas empresariales y no técnicas. Debe haber un pequeño número de métricas generales (menos de cinco) por carga de trabajo. Si la carga de trabajo produce varios resultados para diferentes casos de uso, agrúpelos en una sola métrica. 
+  **Definir los resultados de los componentes de la carga de trabajo: **de manera opcional, si tiene una carga de trabajo grande y compleja, o puede dividir fácilmente su carga de trabajo en componentes (como microservicios) con entradas y salidas bien definidas, establezca métricas para cada componente. El esfuerzo debe reflejar el valor y el coste del componente. Empiece por los componentes más grandes y continúe con los más pequeños. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Etiquetado de recursos de AWS](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+  [Análisis de los costes con AWS Budgets](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html) 
+  [Análisis de los costes con Cost Explorer](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-explorer-what-is.html) 
+  [Administración de los informes de coste y uso de AWS](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-reports-costusage-managing.html) 

# COST03-BP05 Configurar herramientas de facturación y administración de costes
<a name="cost_monitor_usage_config_tools"></a>

Configure las herramientas de administración de costes de acuerdo con las políticas de su organización para administrar y optimizar el gasto en la nube. Esto incluye servicios, herramientas y recursos para organizar y hacer un seguimiento de los datos de costes y uso, mejorar el control mediante una facturación consolidada y permisos de acceso, mejorar la planificación mediante presupuestos y previsiones, recibir notificaciones o alertas y reducir aún más los costes con optimizaciones de recursos y precios.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Para establecer una responsabilidad sólida, lo primero que hay que hacer es tener en cuenta la estrategia de cuentas en la estrategia de asignación de costes. Si lo hace bien, es posible que no necesite nada más. En caso contrario, habrá desconocimiento y problemas adicionales. 

 Para fomentar la responsabilidad del gasto en la nube, los usuarios deben tener acceso a herramientas que proporcionen visibilidad sobre sus costes y su uso. Se recomienda que todas las cargas de trabajo y los equipos tengan configuradas las herramientas para lo siguiente: 
+  **Organización:** establezca su base de referencia de asignación de costes y gobernanza con su propia estrategia de etiquetado y taxonomía. Etiquete los recursos que admite AWS y clasifíquelos de manera significativa en función de la estructura de su organización (unidades empresariales, departamentos o proyectos). Etiquete los nombres de las cuentas para centros de costes específicos y asígnelos a las categorías de costes de AWS para agrupar las cuentas de determinadas unidades empresariales para sus centros de costes, de modo que el propietario de la unidad empresarial pueda ver el consumo de varias cuentas en un solo lugar. 
+  **Acceso:** realice un seguimiento de la información de facturación de toda la organización en [una facturación unificada](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/consolidated-billing.html) y verifique que las partes interesadas y los propietarios empresariales adecuados tengan acceso a ella. 
+  **Control:** cree mecanismos de gobernanza efectivos con las barreras de protección adecuadas para evitar situaciones inesperadas cuando se utilice la SCP, las políticas de etiquetas y las alertas de presupuestos. Por ejemplo, con un mecanismo de control eficaz, puede evitar que los equipos creen recursos en regiones no admitidas. 
+ **Estado actual: **configure un panel que muestre los niveles actuales de coste y uso. El panel debe estar disponible en un lugar muy visible en el entorno de trabajo, de forma similar a un panel de operaciones. Puede usar el [panel de inteligencia en la nube (CID)](https://github.com/aws-samples/aws-cudos-framework-deployment) o cualquier otro producto admitido para conseguir esta visibilidad.
+ **Notificaciones:** proporcione notificaciones cuando el coste o el uso sobrepasen los límites definidos y cuando se produzcan anomalías con AWS Budgets o AWS Cost Anomaly Detection. 
+ **Informes:** resuma toda la información sobre costes y uso y aumente la concienciación y la responsabilidad de su gasto en la nube con datos de costes detallados y asignables. Los informes deben ser relevantes para el equipo que los consume y lo ideal es que contengan recomendaciones.
+ **Seguimiento: **muestre el coste y uso actuales con respecto a los objetivos o las metas configurados.
+ **Análisis: **permita que los miembros del equipo realicen análisis personalizados y exhaustivos con un nivel de detalle por hora, con todas las dimensiones posibles.
+  **Inspección:** manténgase al día de sus oportunidades de despliegue de recursos y optimización de costes. Reciba notificaciones (con Amazon CloudWatch, Amazon SNS o Amazon SES) sobre los despliegues de recursos a nivel de la organización y revise las recomendaciones de optimización de costes (por ejemplo, AWS Compute Optimizer o AWS Trusted Advisor). 
+ **Tendencias: **muestre la variabilidad del coste y uso durante el periodo de tiempo requerido con el nivel de detalle necesario.
+ **Previsiones: **muestre los costes futuros estimados y calcule el uso de sus recursos y el gasto con paneles de previsión creados por usted.

Puede utilizar herramientas de AWS como [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/), [AWS Billing](https://aws.amazon.com/aws-cost-management/aws-billing/)o [AWS Budgets](https://aws.amazon.com/aws-cost-management/aws-budgets/) para lo esencial, o puede integrar datos de CUR con [Amazon Athena](https://docs.aws.amazon.com/athena/?id=docs_gateway) y [Quick](https://docs.aws.amazon.com/quicksight/?id=docs_gateway) para tener esta capacidad de obtener vistas más detalladas. Si no tiene las habilidades o el ancho de banda esenciales en su organización, puede trabajar con [AWS ProServ](https://aws.amazon.com/professional-services/), [AWS Managed Services (AMS)](https://aws.amazon.com/managed-services/)o [AWS Partners](https://aws.amazon.com/partners/) y usar sus herramientas. También puede utilizar herramientas de terceros, pero verifique primero que el coste aporta valor a su organización.

## Pasos para la implementación
<a name="implementation-steps"></a>
+  **Permita el acceso basado en equipos a las herramientas:** configure sus cuentas y cree grupos que tengan acceso a los informes de costes y uso necesarios para sus consumos, y use [AWS Identity and Access Management](https://aws.amazon.com/iam/) para [controlar el acceso](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-access.html) a herramientas como AWS Cost Explorer. Estos grupos deben incluir a representantes de todos los equipos que poseen o administran una aplicación. De este modo, se certifica que cada equipo tiene acceso a su información de costes y uso para realizar el seguimiento de su consumo. 
+ ** Configure AWS Budgets:** Configure [AWS Budgets](https://docs.aws.amazon.com/cost-management/latest/userguide/budgets-managing-costs.html) en todas las cuentas de su carga de trabajo. Establezca presupuestos para el gasto general de la cuenta y presupuestos para la carga de trabajo con etiquetas. Configure las notificaciones en AWS Budgets para recibir alertas cuando supere los importes presupuestados o cuando los costes estimados superen sus presupuestos.
+ ** Configure AWS Cost Explorer: **Configure [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) para su carga de trabajo y cuentas para visualizar los datos de costes y realizar un análisis posterior. Cree un panel para la carga de trabajo que realice un seguimiento del gasto general, las métricas clave de uso de la carga de trabajo y la previsión de los costes futuros a partir de sus datos históricos de costes.
+  **Configure AWS Cost Anomaly Detection:** use [AWS Cost Anomaly Detection](https://aws.amazon.com/aws-cost-management/aws-cost-anomaly-detection/) para sus cuentas, servicios básicos o categorías de costes que haya creado para monitorizar el coste y el uso y detectar gastos fuera de lo habitual. Puede recibir las alertas individualmente en informes agregados y en un correo electrónico o un tema de Amazon Simple Notification Service que le permita analizar y determinar la causa raíz de la anomalía, e identificar el factor que está provocando el aumento de los costes. 
+ ** Configure herramientas avanzadas: **de forma opcional, puede crear herramientas personalizadas para su organización que proporcionen información y detalles adicionales. Puede implementar la capacidad de análisis avanzado mediante [Amazon Athena](https://docs.aws.amazon.com/athena/?id=docs_gateway)y paneles con [Quick](https://docs.aws.amazon.com/quicksight/?id=docs_gateway). Piense en la posibilidad de usar [paneles de inteligencia en la nube (CID)](https://www.wellarchitectedlabs.com/cost/200_labs/200_cloud_intelligence/) para disponer de paneles avanzados y preconfigurados. También hay [socios de AWS](https://aws.amazon.com/marketplace/solutions/business-applications/cloud-cost-management) con los que puede trabajar y adoptar sus soluciones de administración de la nube para permitir la monitorización y optimización de la facturación en la nube en una ubicación única y práctica.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Administración de costes de AWS](https://docs.aws.amazon.com/cost-management/latest/userguide/what-is-costmanagement.html)
+  [Tagging AWS resources (Etiquetado de recursos de AWS)](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+  [Analyzing your costs with AWS Budgets (Análisis de los costes con AWS Budgets)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html) 
+  [Analyzing your costs with Cost Explorer (Análisis de los costes con Cost Explorer)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-explorer-what-is.html) 
+  [Managing AWS Cost and Usage Reports (Administración de los informes de coste y uso de AWS)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-reports-costusage-managing.html) 
+ [AWS Cost Categories (Categorías de costes de AWS) ](https://aws.amazon.com/aws-cost-management/aws-cost-categories/)
+ [ Administración financiera en la nube con AWS](https://aws.amazon.com/aws-cost-management/)
+  [AWS APN Partners - Cost Management (Socios APN de AWS: administración de costes)](https://aws.amazon.com/marketplace/solutions/business-applications/cloud-cost-management) 

 **Vídeos relacionados:** 
+ [ Deploying Cloud Intelligence Dashboards (Despliegue de paneles de inteligencia en la nube) ](https://www.youtube.com/watch?v=FhGZwfNJTnc)
+ [ Get Alerts on any FinOps or Cost Optimization Metric or KPI (Recibir alertas sobre cualquier métrica o KPI de FinOps o de optimización de costes) ](https://www.youtube.com/watch?v=dzRKDSXCtAs)

 **Ejemplos relacionados:** 
+  [Well-Architected Labs - AWS Account Setup (Configuración de la cuenta de AWS)](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_1_AWS_Account_Setup/README.html/) 
+  [Well-Architected Labs: visualización de facturación](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_5_Cost_Visualization/README.html) 
+  [Well-Architected Labs: coste y uso de la gobernabilidad](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_2_Cost_and_Usage_Governance/README.html) 
+  [Well-Architected Labs: análisis de costes y uso](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/200_4_Cost_and_Usage_Analysis/README.html) 
+  [Well-Architected Labs: visualización de costes y uso](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/200_5_Cost_Visualization/README.html) 
+ [ Well-Architected Labs: paneles de inteligencia en la nube ](https://www.wellarchitectedlabs.com/cost/200_labs/200_cloud_intelligence/)

# COST03-BP06 Asignar costes según las métricas de carga de trabajo
<a name="cost_monitor_usage_allocate_outcome"></a>

Asigne los costes de la carga de trabajo por métricas de uso o resultados empresariales para medir la eficiencia de los costes. Implemente un proceso para analizar los datos de costes y uso con servicios de análisis que pueden proporcionar información y capacidad de recuperación.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

La optimización de costes significa aportar resultados empresariales al menor precio, lo que solo se puede conseguir asignando los costes de la carga de trabajo por métricas de carga de trabajo (medidas por eficiencia de la carga de trabajo). Controle las métricas de carga de trabajo definidas mediante archivos de registro u otro tipo de monitorización de la aplicación. Combine estos datos con los costes de la carga de trabajo, que pueden obtenerse consultando los costes que tienen un valor de etiqueta o identificador de cuenta específicos. Se recomienda realizar este análisis a nivel de hora. Por lo general, su eficiencia cambiará si tiene algunos componentes de costes estáticos (por ejemplo, una base de datos backend que se ejecuta permanentemente) con un índice de solicitudes variable (por ejemplo, el uso alcanza su punto máximo entre las nueve de la mañana y las cinco de la tarde, pero hay pocas solicitudes por la noche). Comprender la relación entre los costes variables y fijos le ayudará a centrar sus actividades de optimización. 

 Crear métricas de carga de trabajo para los recursos compartidos puede resultar un desafío en comparación con recursos como las aplicaciones en contenedores en Amazon Elastic Container Service (Amazon ECS) y Amazon API Gateway. Sin embargo, hay ciertas formas de clasificar el uso y realizar un seguimiento de los costes. Si necesita realizar un seguimiento de los recursos compartidos de Amazon ECS y AWS Batch, puede habilitar los datos de asignación de costes divididos en AWS Cost Explorer. Al dividir los datos de asignación de costes, puede comprender y optimizar el coste y el uso de sus aplicaciones en contenedores y volver a asignar los costes de las aplicaciones a entidades empresariales individuales en función de cómo se consumen los recursos compartidos de computación y memoria. Si tiene un uso compartido de las funciones API Gateway y AWS Lambda, puede usar [AWS Application Cost Profiler](https://docs.aws.amazon.com/application-cost-profiler/latest/userguide/introduction.html) para clasificar su consumo en función de su `identificador de inquilino` o bien `ID de cliente`. 

### Pasos para la implementación
<a name="implementation-steps"></a>
+  **Asigne costes a las métricas de carga de trabajo:** use las métricas definidas y las etiquetas configuradas, y cree una métrica que combine el resultado de la carga de trabajo y el coste de la carga de trabajo. Use servicios de análisis como Amazon Athena y Amazon Quick para crear un panel de eficiencia para la carga de trabajo global y para cualquier otro componente. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Tagging AWS resources (Etiquetado de recursos de AWS)](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+  [Analyzing your costs with AWS Budgets (Análisis de los costes con AWS Budgets)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/budgets-managing-costs.html) 
+  [Analyzing your costs with Cost Explorer (Análisis de los costes con Cost Explorer)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-explorer-what-is.html) 
+  [Managing AWS Cost and Usage Reports (Administración de los informes de coste y uso de AWS)](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/billing-reports-costusage-managing.html) 

 **Ejemplos relacionados:** 
+ [ Improve cost visibility of Amazon ECS and AWS Batch with AWS Split Cost Allocation Data (Mejore la visibilidad de los costes de Amazon ECS y AWS Batch con datos de asignación de costes divididos de AWS) ](https://aws.amazon.com/blogs/aws-cloud-financial-management/la-improve-cost-visibility-of-containerized-applications-with-aws-split-cost-allocation-data-for-ecs-and-batch-jobs/)

# COST 4 ¿Cómo retira los recursos?
<a name="cost-04"></a>

Implemente control de cambios y administración de recursos desde el inicio del proyecto hasta su finalización. De este modo, garantiza el cierre o la terminación de recursos no utilizados para reducir el desperdicio.

**Topics**
+ [COST04-BP01 Seguimiento de los recursos a lo largo de su ciclo de vida](cost_decomissioning_resources_track.md)
+ [COST04-BP02 Implementar un proceso de retirada](cost_decomissioning_resources_implement_process.md)
+ [COST04-BP03 Retirar recursos](cost_decomissioning_resources_decommission.md)
+ [COST04-BP04 Retirar los recursos automáticamente](cost_decomissioning_resources_decomm_automated.md)
+ [COST04-BP05 Aplicación de políticas de retención de datos](cost_decomissioning_resources_data_retention.md)

# COST04-BP01 Seguimiento de los recursos a lo largo de su ciclo de vida
<a name="cost_decomissioning_resources_track"></a>

 Defina e implemente un método para hacer un seguimiento de los recursos y sus asociaciones con los sistemas a lo largo de su ciclo de vida. Puede usar etiquetas para identificar la carga de trabajo o la función del recurso. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Retire los recursos de la carga de trabajo que ya no necesite. Por ejemplo, después de hacer pruebas, los recursos empleados ya no se necesitan y se pueden retirar. El seguimiento de los recursos con etiquetas (y ejecutar informes de dichas etiquetas) puede ayudarle a identificar los elementos que se deben retirar, ya que no estarán en uso o caducará su licencia. Usar etiquetas es una forma efectiva de hacer un seguimiento de los recursos. Se puede etiquetar el recurso con su función o una fecha conocida en la que se puede retirar. Puede ejecutar informes de estas etiquetas. Un valor de ejemplo del etiquetado de características es `feature-X testing` para identificar el propósito del recurso en términos de ciclo de vida de la carga de trabajo. Otro ejemplo es usar `LifeSpan` o `TTL` para los recursos, como el nombre y el valor de la clave de etiqueta que se eliminará para definir el periodo de tiempo o el momento específico para la retirada. 

**Pasos para la aplicación**
+ **Implementar un esquema de etiquetado: **implemente un esquema de etiquetado que identifique la carga de trabajo a la que pertenece el recurso y compruebe que todos los recursos de la carga de trabajo estén etiquetados en consonancia. El etiquetado le ayuda a categorizar los recursos por finalidad, equipo, entorno u otros criterios pertinentes para su empresa. Para obtener más detalle sobre el etiquetado de casos de uso, estrategias y técnicas, consulte [AWS Tagging Best Practices](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html) (Prácticas recomendadas de etiquetado de AWS).
+ **Implementar la supervisión del rendimiento de la carga de trabajo o de los resultados: **implemente la supervisión del rendimiento de la carga de trabajo o las alarmas que desencadenen solicitudes de entrada o finalizaciones de salida. Configúrela para que proporcione notificaciones cuando las solicitudes de carga de trabajo o los resultados lleguen a cero, lo que significa que ya no se usan los recursos de la carga de trabajo. Incorpore un factor de tiempo si la carga de trabajo baja a cero de forma periódica en condiciones normales. Para obtener más detalles sobre los recursos no utilizados o infrautilizados, consulte [AWS Trusted Advisor Cost Optimization checks](https://docs.aws.amazon.com/awssupport/latest/user/cost-optimization-checks.html) (Comprobaciones de optimización de costes de AWS Trusted Advisor).
+  **Agrupar recursos de AWS:** cree grupos para recursos de AWS. Puede utilizar [Grupos de recursos de AWS](https://docs.aws.amazon.com/ARG/latest/userguide/resource-groups.html) para organizar y administrar sus recursos de AWS que se encuentran en la misma Región de AWS. Puede añadir etiquetas a la mayoría de sus recursos como ayuda para identificarlos y clasificarlos en su organización. Utilice [Editor de etiquetas](https://docs.aws.amazon.com/ARG/latest/userguide/tag-editor.html) para añadir etiquetas a los recursos admitidos en bloque. Considere la posibilidad de utilizar [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/index.html) para crear, administrar y distribuir carteras de productos aprobados a los usuarios finales y administrar el ciclo de vida de los productos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [AWS Trusted Advisor Cost Optimization Checks](https://docs.aws.amazon.com/awssupport/latest/user/cost-optimization-checks.html) (Comprobaciones de optimización de costes de AWS Trusted Advisor) 
+  [Etiquetado de recursos de AWS](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html) 
+  [Publicar métricas personalizadas](https://docs.aws.amazon.com/Amazon/latest/monitoring/publishingMetrics.html) 

 **Vídeos relacionados: ** 
+  [How to optimize costs using AWS Trusted Advisor](https://youtu.be/zcQPufNFhgg) (Cómo optimizar los costes mediante AWS Trusted Advisor) 

 **Ejemplos relacionados:** 
+  [Organize AWS resources](https://aws.amazon.com/premiumsupport/knowledge-center/resource-groups/) (Organizar recursos de AWS) 
+  [Optimize cost using AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/knowledge-center/trusted-advisor-cost-optimization/) (Optimizar el coste mediante AWS Trusted Advisor) 

# COST04-BP02 Implementar un proceso de retirada
<a name="cost_decomissioning_resources_implement_process"></a>

 Implemente un proceso para identificar y retirar los recursos sin usar. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Implemente un proceso estandarizado en toda la organización para identificar y eliminar los recursos que no se utilizan. El proceso debería definir la frecuencia con que se realizan las búsquedas y los procesos para retirar el recurso para verificar que se cumplan todos los requisitos de la organización.

**Pasos para la aplicación**
+  **Crear e implementar un proceso de retirada:** trabaje con los desarrolladores y propietarios de las cargas de trabajo para diseñar un proceso de retirada de la carga de trabajo y sus recursos. El proceso debería incluir un método para verificar si se usa la carga de trabajo y también si se usa cada recurso de la carga de trabajo. Detalle los pasos necesarios para retirar el recurso del servicio garantizando el cumplimiento de cualquier requisito normativo. Se debe incluir cualquier recurso asociado, como licencias o almacenamiento asociado. Notifique a los propietarios de las cargas de trabajo que se ha iniciado el proceso de retirada. 

   Siga estos pasos de retirada como guía sobre lo que se debe comprobar como parte del proceso: 
  +  **Identificar los recursos que deben retirarse del servicio:** identifique los recursos candidatos para retirarse en su Nube de AWS. Registre toda la información necesaria y programe la retirada. En su cronología, asegúrese de tener en cuenta si surgen (y cuándo surgen) problemas inesperados durante el proceso. 
  +  **Coordinar y comunicar:** colabore con los propietarios de las cargas de trabajo para confirmar el recurso que se va a retirar. 
  +  **Registrar metadatos y crear copias de seguridad:** registre metadatos (como IP públicas, región, AZ, VPC, subred y grupos de seguridad) y, si es necesario, cree copias de seguridad (como instantáneas de Amazon Elastic Block Store o realice AMI, exportación de claves y exportación de certificados) para los recursos del entorno de producción o si se trata de recursos críticos. 
  +  **Validar la infraestructura como código:** determine si los recursos se han desplegado con CloudFormation, Terraform, AWS Cloud Development Kit (AWS CDK) o cualquier otra herramienta de despliegue de infraestructura como código para poder volver a desplegarlos en caso necesario. 
  +  **Impedir el acceso:** aplique controles restrictivos durante un periodo de tiempo para impedir el uso de recursos mientras determina si el recurso es necesario. Verifique que el entorno del recurso se puede revertir a su estado original si es necesario. 
  +  **Seguir su proceso de retirada interno:** siga las tareas administrativas y el proceso de retirada de su organización, como eliminar el recurso del dominio de su organización, eliminar el registro DNS y eliminar el recurso de su herramienta de administración de configuración, herramienta de supervisión, herramienta de automatización y herramientas de seguridad. 

   Si el recurso es una instancia Amazon EC2, consulte la siguiente lista. [Para obtener más detalles, consulte ¿Cómo eliminar o terminar recursos de Amazon EC2?](https://aws.amazon.com/premiumsupport/knowledge-center/delete-terminate-ec2/) 
  +  Detenga o termine todas las instancias de Amazon EC2 y equilibradores de carga. Las instancias Amazon EC2 son visibles en la consola por poco tiempo después de su terminación. No se facturan las instancias que no están en estado de ejecución. 
  +  Elimine su infraestructura de Auto Scaling. 
  +  Libere todos los host dedicados. 
  +  Elimine todos los volúmenes de Amazon EBS y las instantáneas de Amazon EBS. 
  +  Libere todas las direcciones IP elásticas. 
  +  Anule el registro de todas las imágenes de máquina de Amazon (AMI). 
  +  Termine todos los entornos de AWS Elastic Beanstalk. 

   Si el recurso es un objeto en el almacenamiento de Amazon Glacier y si elimina un archivo antes de cumplir la duración de almacenamiento mínima, se le cobrará una tarifa prorrateada por eliminación anticipada. La duración de almacenamiento mínima de Amazon Glacier depende de la clase de almacenamiento utilizada. Para obtener un resumen de la duración de almacenamiento mínima de cada clase de almacenamiento, consulte [Rendimiento de las clases de almacenamiento de Amazon S3](https://aws.amazon.com/s3/storage-classes/?nc=sn&loc=3#Performance_across_the_S3_Storage_Classes). Para más detalles sobre cómo se calculan las tasas de eliminación anticipada, consulte [Precios de Amazon S3](https://aws.amazon.com/s3/pricing/). 

 En el sencillo diagrama de flujo del proceso de retirada que figura a continuación se describen las etapas de retirada. Antes de retirar los recursos, verifique que los que ha identificado para retirar no los usa la organización. 

![\[Flow chart depicting the steps of decommissioning a resource.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/decommissioning-process-flowchart.png)


## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html) 

 **Vídeos relacionados: ** 
+  [Delete CloudFormation stack but retain some resources](https://www.youtube.com/watch?v=bVmsS8rjuwk) (Eliminar la pila de pero retener algunos recursos CloudFormation) 
+  [Find out which user launched Amazon EC2 instance](https://www.youtube.com/watch?v=SlyAHc5Mv2A) (Averiguar qué usuario ha lanzado la instancia Amazon EC2) 

 **Ejemplos relacionados:** 
+  [Delete or terminate Amazon EC2 resources](https://aws.amazon.com/premiumsupport/knowledge-center/delete-terminate-ec2/) (Eliminar o terminar recursos de Amazon EC2) 
+  [Find out which user launched an Amazon EC2 instance](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-user-launched-instance/) (Averiguar qué usuario ha lanzado una instancia Amazon EC2) 

# COST04-BP03 Retirar recursos
<a name="cost_decomissioning_resources_decommission"></a>

 Retire los recursos que algunos eventos generan, como las auditorías periódicas o los cambios en el uso. La retirada se suele realizar periódicamente y es manual o automática. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

La frecuencia y el esfuerzo dedicados a buscar recursos que no se utilizan deberían reflejar el ahorro potencial, de manera que una cuenta con pocos costes debería analizarse con menos frecuencia que una cuenta con costes mayores. Las búsquedas y los eventos de retirada pueden producirse por cambios de estado de la carga de trabajo, como el fin de la vida útil de un producto o su reemplazo. También pueden producirse por eventos externos, como cambios en las condiciones de mercado o la finalización de un producto.

**Pasos para la aplicación**
+  **Retirar recursos: **se trata de la fase de amortización de los recursos de AWS que ya no se necesitan o de la finalización de un acuerdo de licencia. Complete todas las comprobaciones finales realizadas antes de pasar a la fase de eliminación y retirada de recursos para evitar interrupciones no deseadas, como la realización de instantáneas o copias de seguridad. Use el proceso de retirada para retirar los recursos identificados como no utilizados.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 

 **Ejemplos relacionados:** 
+  [Well-Architected Labs: Decommission resources (Level 100)](https://www.wellarchitectedlabs.com/cost/100_labs/100_goals_and_targets/4_decommission_resources/) (Laboratorios de Well-Architected: retirada de recursos [nivel 100]) 

# COST04-BP04 Retirar los recursos automáticamente
<a name="cost_decomissioning_resources_decomm_automated"></a>

 Diseñe su carga de trabajo para que gestione de manera sencilla la finalización de recursos a medida que identifica y retira recursos que no son críticos, recursos innecesarios o recursos con poco uso. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Use la automatización para reducir o eliminar los costes asociados al proceso de retirada. El diseño de la carga de trabajo para que aplique procesos de retirada automáticos reducirá los costes generales de la carga de trabajo durante su vida. Puede usar [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) para realizar el proceso de retirada. También puede implementar código personalizado con la [API o el SDK](https://aws.amazon.com/developer/tools/) para retirar los recursos de la carga de trabajo de forma automática.

 Las [aplicaciones modernas](https://aws.amazon.com/modern-apps/) se crean primero sin servidor, una estrategia en la que se prioriza la adopción de servicios sin servidor. AWS ha desarrollado [servicios sin servidor](https://aws.amazon.com/serverless/) para las tres capas de su pila: computación, integración y almacenes de datos. El uso de la arquitectura sin servidor le permitirá ahorrar costes durante periodos de poco tráfico, con escalamiento y desescalamiento verticales de forma automática. 

**Pasos para la aplicación**
+ **Implementar AWS Auto Scaling: **en el caso de los recursos que se admitan, configúrelos con [AWS Auto Scaling](https://aws.amazon.com/autoscaling/). AWS Auto Scaling puede ayudarle a optimizar la eficiencia de uso y costes al consumir servicios de AWS. Cuando baje la demanda, AWS Auto Scaling eliminará automáticamente cualquier exceso de capacidad de recursos para evitar un gasto excesivo.
+ **Configurar CloudWatch para terminar instancias:** las instancias se pueden configurar para que finalicen con [alarmas de CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingAlarmActions.html#AddingTerminateActions). Use las métricas del proceso de retirada e implemente una alarma con una acción de Amazon Elastic Compute Cloud. Verifique la operación en un entorno no productivo antes de la implementación. 
+  **Implementar código en la carga de trabajo:** use el SDK de AWS CLI o la AWS para retirar los recursos de la carga de trabajo. Implemente código en la aplicación que se integre con AWS y finalice o elimine recursos que ya no se usan. 
+  **Utilizar servicios sin servidor:** dé prioridad a la creación de [arquitecturas sin servidor](https://aws.amazon.com/serverless/) y a la [arquitectura basada en eventos](https://aws.amazon.com/event-driven-architecture/) en AWS para crear y ejecutar sus aplicaciones. AWS ofrece múltiples servicios de tecnología sin servidor que proporcionan de forma inherente una utilización de recursos optimizada automáticamente y una retirada automatizada (escalar y desescalar horizontalmente). Con las aplicaciones sin servidor, la utilización de los recursos se optimiza automáticamente y nunca pagará por un exceso de aprovisionamiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [Sin servidor en AWS](https://aws.amazon.com/serverless/) 
+  [Crear alarmas para detener, terminar, reiniciar o recuperar una instancia](https://docs.aws.amazon.com/Amazon/latest/monitoring/UsingAlarmActions.html) 
+  [Getting Started with Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/GettingStartedTutorial.html) (Introducción a Amazon EC2 Auto Scaling) 
+  [Agregar acciones de detención a las alarmas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/UsingAlarmActions.html#AddingTerminateActions) 

 **Ejemplos relacionados:** 
+  [Scheduling automatic deletion of AWS CloudFormation stacks](https://aws.amazon.com/blogs/infrastructure-and-automation/scheduling-automatic-deletion-of-aws-cloudformation-stacks/) (Programación de la eliminación automática de las pilas de AWS CloudFormation) 
+  [Well-Architected Labs – Decommission resources automatically (Level 100)](https://www.wellarchitectedlabs.com/cost/100_labs/100_goals_and_targets/4_decommission_resources/) (Laboratorios de Well-Architected: retirar los recursos automáticamente [nivel 100]) 
+  [Servian AWS Auto Cleanup](https://github.com/servian/aws-auto-cleanup) 

# COST04-BP05 Aplicación de políticas de retención de datos
<a name="cost_decomissioning_resources_data_retention"></a>

 Defina políticas de retención de datos en los recursos admitidos para gestionar la eliminación de objetos según los requisitos de su organización. Identifique y elimine los recursos y objetos innecesarios o huérfanos que ya no sean necesarios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

 Utilice las políticas de retención de datos y de ciclo de vida para reducir los costes asociados al proceso de retirada y los costes de almacenamiento de los recursos identificados. Definir sus políticas de retención de datos y de ciclo de vida para realizar la migración y eliminación automatizadas de clases de almacenamiento reducirá los costes generales de almacenamiento durante su vida útil. Puede utilizar Amazon Data Lifecycle Manager para automatizar la creación y eliminación de instantáneas de Amazon Elastic Block Store e imágenes de máquina de Amazon (AMI) respaldadas por Amazon EBS, y utilizar Amazon S3 Intelligent-Tiering o una configuración del ciclo de vida de Amazon S3 para administrar el ciclo de vida de sus objetos de Amazon S3. También puede implementar código personalizado mediante el uso [de la API o el SDK](https://aws.amazon.com/tools/) para crear políticas de ciclo de vida y reglas de política, a fin de que los objetos se eliminen automáticamente. 

 **Pasos para la implementación** 
+  **Utilización Amazon Data Lifecycle Manager:** utilice políticas de ciclo de vida en Amazon Data Lifecycle Manager para automatizar la eliminación de instantáneas de Amazon EBS y AMI respaldadas por Amazon EBS. 
+  **Configuración el ciclo de vida de un bucket:** utilice la configuración del ciclo de vida de Amazon S3 en un bucket para definir las acciones que realizará Amazon S3 durante el ciclo de vida de un objeto, así como su eliminación al final del ciclo de vida del objeto, en función de los requisitos de su empresa. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/trustedadvisor/) 
+  [Amazon Data Lifecycle Manager](https://docs.aws.amazon.com/dlm/?icmpid=docs_homepage_mgmtgov) 
+  [Cómo establecer la configuración del ciclo de vida en el bucket de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-set-lifecycle-configuration-intro.html) 

 **Vídeos relacionados: ** 
+  [Automate Amazon EBS Snapshots with Amazon Data Lifecycle Manager](https://www.youtube.com/watch?v=RJpEjnVSdi4) (Automatizar las instantáneas de Amazon EBS con Amazon Data Lifecycle Manager) 
+  [Empty an Amazon S3 bucket using a lifecycle configuration rule](https://www.youtube.com/watch?v=JfK9vamen9I) (Vaciar un bucket de Amazon S3 mediante una regla de configuración de ciclo de vida) 

 **Ejemplos relacionados:** 
+  [Empty an Amazon S3 bucket using a lifecycle configuration rule](https://aws.amazon.com/premiumsupport/knowledge-center/s3-empty-bucket-lifecycle-rule/) (Vaciar un bucket de Amazon S3 mediante una regla de configuración de ciclo de vida) 
+  [Well-Architected Lab: Decommission resources automatically (Level 100)](https://www.wellarchitectedlabs.com/cost/100_labs/100_goals_and_targets/4_decommission_resources/) (Laboratorio de Well-Architected: retirar los recursos automáticamente [nivel 100]) 

# Recursos rentables
<a name="a-cost-effective-resources"></a>

**Topics**
+ [COST 5 ¿Cómo evalúa el coste cuando selecciona servicios?](cost-05.md)
+ [COST 6 ¿Cómo cumple los objetivos de costes cuando selecciona el tipo, el tamaño y el número de recursos?](cost-06.md)
+ [COST 7 ¿Cómo utiliza los modelos de fijación de precios para reducir los costes?](cost-07.md)
+ [COST 8 ¿Cómo planifica los gastos de transferencia de datos?](cost-08.md)

# COST 5 ¿Cómo evalúa el coste cuando selecciona servicios?
<a name="cost-05"></a>

Amazon EC2, Amazon EBS y Amazon S3 son servicios de AWS básicos. Los servicios administrados, como Amazon RDS y Amazon DynamoDB, son servicios de AWS de nivel superior o de aplicación. Cuando selecciona los bloques de creación y los servicios administrados apropiados, puede optimizar esta carga de trabajo para el coste. Por ejemplo, cuando usa servicios administrados, puede reducir o eliminar gran parte de sus gastos administrativos y operativos, lo que le permite trabajar en aplicaciones y actividades relacionadas con el negocio.

**Topics**
+ [COST05-BP01 Identificación de los requisitos de la organización en relación con el coste](cost_select_service_requirements.md)
+ [COST05-BP02 Analizar todos los componentes de esta carga de trabajo](cost_select_service_analyze_all.md)
+ [COST05-BP03 Análisis exhaustivo de cada componente](cost_select_service_thorough_analysis.md)
+ [COST05-BP04 Seleccionar software con licencias rentables](cost_select_service_licensing.md)
+ [COST05-BP05 Seleccionar los componentes de la carga de trabajo para optimizar los costes de acuerdo con las prioridades de la organización](cost_select_service_select_for_cost.md)
+ [COST05-BP06 Analizar los costes para diferentes usos a lo largo del tiempo](cost_select_service_analyze_over_time.md)

# COST05-BP01 Identificación de los requisitos de la organización en relación con el coste
<a name="cost_select_service_requirements"></a>

 Trabaje con los miembros del equipo para definir el equilibrio entre la optimización de costos y otros pilares, como el rendimiento y la fiabilidad, de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

A la hora de seleccionar los servicios para su carga de trabajo, es fundamental que entienda las prioridades de su organización. Asegúrese de que existe un equilibrio entre el coste y otros pilares de Well-Architected, como el rendimiento y la fiabilidad. Una carga de trabajo totalmente optimizada en cuanto a costes es la solución que más se ajusta a los requisitos de su organización, no necesariamente la de menor coste. Reúnase con todos los equipos de su organización para recopilar información, como los de producto, empresa, técnicos y financieros.

**Pasos para la aplicación**
+ ** Identifique los requisitos de coste de la organización: **Reúnase con los miembros de los equipos de su organización, incluidos los de administración de productos, propietarios de aplicaciones, equipos de desarrollo y operativos, roles de administración y financieros. Priorice los pilares de Well-Architected para esta carga de trabajo y sus componentes. El resultado es una lista de los pilares en orden. También puede agregar una ponderación a cada uno, que puede indicar el grado de enfoque adicional que tiene un pilar o la similitud del enfoque entre dos pilares. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Calculadora de coste total de propiedad (TCO) de AWS](https://aws.amazon.com/tco-calculator/) 
+  [Clases de almacenamiento de Amazon S3](https://aws.amazon.com/s3/storage-classes/) 
+  [Productos de la nube](https://aws.amazon.com/products/) 

# COST05-BP02 Analizar todos los componentes de esta carga de trabajo
<a name="cost_select_service_analyze_all"></a>

 Asegúrese de que se analiza cada componente de la carga de trabajo, independientemente del tamaño o costo actuales. El esfuerzo de revisión debería reflejar el beneficio potencial, como los costos actuales y previstos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Lleve a cabo un análisis exhaustivo de todos los componentes de la carga de trabajo. Asegúrese de que haya un equilibrio entre el costo del análisis y el ahorro potencial en la carga de trabajo a lo largo de su ciclo de vida. Debe encontrar el impacto actual y el impacto futuro potencial del componente. Por ejemplo, si el costo del recurso propuesto es de 10 USD al mes y según las cargas previstas no superaría los 15 USD al mes, dedicar un día de esfuerzo a reducir los costos un 50 % (5 USD al mes) no debería superar el beneficio potencial sobre la vida del sistema. Usar una estimación basada en datos más eficiente y rápida crearía el mejor resultado global para este componente.

Las cargas de trabajo pueden cambiar con el tiempo y el conjunto adecuado de servicio podría no ser óptimo si la arquitectura o el uso de la carga de trabajo cambia. El análisis para seleccionar los servicios debe incorporar estados de carga de trabajo actuales y futuros y niveles de uso. Implementar un servicio para un estado o uso de la carga de trabajo futura puede reducir los costos globales al reducir o eliminar el esfuerzo requerido para realizar cambios en el futuro.

[AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) y [AWS Cost and Usage Report](https://aws.amazon.com/aws-cost-management/aws-cost-and-usage-reporting/) (CUR) pueden analizar el costo de una prueba de concepto (PoC, por sus siglas en inglés) o del entorno en ejecución. También puede utilizar [Calculadora de precios de AWS](https://calculator.aws/#/) para realizar estimaciones de los costos de la carga de trabajo.

**Pasos para la aplicación**
+  **Enumerar los componentes de la carga de trabajo: **diseñe la lista de todos los componentes de la carga de trabajo. La lista se usa para comprobar que se haya analizado cada componente. El esfuerzo dedicado debería reflejar la importancia de la carga de trabajo, tal como definen las prioridades de la organización. Agrupar los recursos mejora la eficiencia funcional, por ejemplo, el almacenamiento de datos de producción, si hay varias bases de datos. 
+  **Priorizar la lista de componentes:** tome la lista de componentes y priorícela por orden de esfuerzo. En general se corresponde con el costo del componente, es decir, de más caro a menos caro, o según la importancia definida por las prioridades de la organización. 
+ ** Realizar el análisis:** revise las opciones y los servicios disponibles para cada componente de la lista y elija la opción que mejor se adapte a las prioridades de la organización. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Calculadora de precios de AWS](https://calculator.aws/#/) 
+  [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) 
+  [Clases de almacenamiento de Amazon S3](https://aws.amazon.com/s3/storage-classes/) 
+  [Productos de la nube](https://aws.amazon.com/products/) 

# COST05-BP03 Análisis exhaustivo de cada componente
<a name="cost_select_service_thorough_analysis"></a>

 Consulte el coste total que supone a la organización cada componente. Calcule el coste total de propiedad teniendo en cuenta el coste de las operaciones y la administración, sobre todo cuando utilice servicios administrados por el proveedor de servicios en la nube. El esfuerzo de revisión debe reflejar los posibles beneficios (por ejemplo, el tiempo empleado en analizar es proporcional al coste de los componentes). 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Considere el ahorro de tiempo que permitirá a su equipo centrarse en la retirada de la deuda técnica, la innovación, las características que añaden valor y la creación de lo que diferencia a la empresa. Por ejemplo, puede que necesite migrar mediante lift-and-shift (también conocido como «volver a alojar») sus bases de datos de su entorno local a la nube lo más rápidamente posible y optimizarlas más tarde. Merece la pena explorar el ahorro que puede suponer el uso de servicios administrados en AWS que puedan eliminar o reducir los costes de las licencias. Los servicios administrados en AWS eliminan la carga operativa y administrativa del mantenimiento de un servicio, como la aplicación de parches o la actualización del sistema operativo, y le permiten centrarse en la innovación y la empresa. 

 Dado que los servicios administrados operan a la escala de la nube, pueden ofrecer un coste menor por transacción o servicio. Puede realizar optimizaciones potenciales para obtener alguna ventaja tangible, sin cambiar la arquitectura principal de la aplicación. Por ejemplo, puede que quiera reducir el tiempo que dedica a administrar instancias de bases de datos mediante la migración a una plataforma de base de datos como servicio como [Amazon Relational Database Service (Amazon RDS)](https://aws.amazon.com/rds/) o la migración de su aplicación a una plataforma completamente administrada como [AWS Elastic Beanstalk](https://aws.amazon.com/elasticbeanstalk/). 

Normalmente, los servicios administrados tienen atributos que puede configurar para garantizar una capacidad suficiente. Debe configurar y supervisar estos atributos para que su exceso de capacidad se mantenga al mínimo y el rendimiento se maximice. Puede modificar los atributos de AWS Managed Services mediante la Consola de administración de AWS o las API y los SDK de AWS para adaptar las necesidades de recursos a la demanda cambiante. Por ejemplo, puede aumentar o disminuir el número de nodos de un clúster de Amazon EMR (o un clúster de Amazon Redshift) para escalar o desescalar horizontalmente.

También puede empaquetar varias instancias en un recurso de AWS para conseguir un uso de mayor densidad. Por ejemplo, puede aprovisionar varias bases de datos pequeñas en una sola instancia de base de datos de Amazon Relational Database Service (Amazon RDS). A medida que aumenta el uso, puede migrar una de las bases de datos a una instancia de base de datos de Amazon RDS dedicada mediante un proceso de restauración y una instantánea.

Cuando aprovisione cargas de trabajo mediante servicios administrados, debe conocer los requisitos para ajustar la capacidad del servicio. Estos requisitos suelen ser tiempo, esfuerzo y cualquier impacto en el funcionamiento normal de la carga de trabajo. El recurso aprovisionado debe dejar tiempo para que se produzca cualquier cambio, por lo que debe aprovisionar la sobrecarga necesaria para permitirlo. El esfuerzo continuo requerido para modificar los servicios se puede reducir a prácticamente cero mediante el uso de API y SDK que se integran con el sistema y las herramientas de supervisión, como Amazon CloudWatch.

[Amazon RDS](https://aws.amazon.com/rds/), [Amazon Redshift](https://aws.amazon.com/redshift/) y [Amazon ElastiCache](https://aws.amazon.com/elasticache/) proporcionan un servicio de base de datos administrada. [Amazon Athena](https://aws.amazon.com/athena/), [Amazon EMR](https://aws.amazon.com/emr/) y [Amazon OpenSearch Service](https://aws.amazon.com/opensearch-service/) proporcionan un servicio de análisis administrados.

[AMS](https://aws.amazon.com/managed-services/) es un servicio que utiliza la infraestructura de AWS en nombre de los clientes y socios de la empresa. Proporciona un entorno seguro y conforme en el que puede desplegar sus cargas de trabajo. AMS utiliza modelos operativos de nube empresarial con automatización para permitirle cumplir con los requisitos de su organización, pasar a la nube más rápidamente y reducir los costes de administración continua.

**Pasos para la implementación**
+ **Realizar un análisis exhaustivo: **mediante la lista de componentes, examine cada uno de ellos de mayor a menor prioridad. En el caso de los componentes con mayor prioridad y más costosos, realice un análisis adicional y evalúe todas las opciones disponibles y su impacto a largo plazo. En el caso de los componentes con menor prioridad, evalúe si los cambios en el uso modificarían la prioridad del componente y, a continuación, realice un análisis del esfuerzo adecuado. 
+  **Comparar los recursos administrados y no administrados:** considere el coste operativo de los recursos que administra y compárelos con los recursos administrados por AWS. Por ejemplo, revise sus bases de datos que se ejecutan en instancias de Amazon EC2 y compárelas con las opciones de Amazon RDS (un servicio administrado por AWS) o Amazon EMR en comparación con la ejecución de Apache Spark en Amazon EC2. Cuando cambie de una carga de trabajo autoadministrada a una completamente administrada por AWS, investigue cuidadosamente sus opciones. Los tres factores más importantes que se deben tener en cuenta son el [tipo de servicio administrado](https://aws.amazon.com/products/?&aws-products-all.q=managed) que desea utilizar, el proceso que empleará para [migrar sus datos](https://aws.amazon.com/big-data/datalakes-and-analytics/migrations/) y comprender el [modelo de responsabilidad compartida de AWS](https://aws.amazon.com/compliance/shared-responsibility-model/). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Calculadora de coste total de propiedad (TCO) de AWS](https://aws.amazon.com/tco-calculator/) 
+  [Clases de almacenamiento de Amazon S3](https://aws.amazon.com/s3/storage-classes/) 
+  [Productos de Nube de AWS](https://aws.amazon.com/products/) 
+ [Modelo de responsabilidad compartida de AWS](https://aws.amazon.com/compliance/shared-responsibility-model/)

 **Vídeos relacionados: ** 
+ [ Why move to a managed database? ](https://www.youtube.com/watch?v=VRFdc-MVa4I)(¿Por qué cambiar a una base de datos administrada?)
+ [ What is Amazon EMR and how can I use it for processing data? ](https://www.youtube.com/watch?v=jylp2atrZjc) (¿Qué es Amazon EMR y cómo se puedo utilizar para el procesamiento de datos?)

 **Ejemplos relacionados:** 
+ [Why move to a managed database?](https://aws.amazon.com/getting-started/hands-on/move-to-managed/why-move-to-a-managed-database/) (¿Por qué cambiar a una base de datos administrada?)
+ [ Consolidate data from identical SQL Server databases into a single Amazon RDS for SQL Server database using AWS DMS](https://aws.amazon.com/blogs/database/consolidate-data-from-identical-sql-server-databases-into-a-single-amazon-rds-for-sql-server-database-using-aws-dms/) (Consolidar los datos de bases de datos SQL Server idénticas en una única base de datos de Amazon RDS for SQL Server mediante AWS DMS)
+ [ Deliver data at scale to Amazon Managed Streaming for Apache Kafka (Amazon MSK) ](https://aws.amazon.com/getting-started/hands-on/deliver-data-at-scale-to-amazon-msk-with-iot-core/?ref=gsrchandson) (Entregar datos a escala a Amazon Managed Streaming for Apache Kafka [Amazon MSK])
+ [ Migrate an ASP.NET web application to AWS Elastic Beanstalk](https://aws.amazon.com/getting-started/hands-on/migrate-aspnet-web-application-elastic-beanstalk/?ref=gsrchandson&id=itprohandson) (Migrar una aplicación web ASP.NET a AWS Elastic Beanstalk)

# COST05-BP04 Seleccionar software con licencias rentables
<a name="cost_select_service_licensing"></a>

 El software de código abierto elimina los costes de licencias de software, lo que puede repercutir enormemente en los costes de las cargas de trabajo. Si se requiere software con licencia, evite licencias vinculadas a atributos arbitrarios como las CPU y busque licencias vinculadas a los resultados. El coste de estas licencias está más vinculado al beneficio que aportan. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Es posible ahorrarse el coste de las licencias de software usando software de código abierto. Esto puede repercutir de forma significativa en los costes de la carga de trabajo a medida que esta aumente. Mida los beneficios del software con licencia frente al coste total para asegurarse de que dispone de la carga de trabajo más optimizada. Haga simulaciones de los cambios en las licencias y estudie cómo impactarían en los costes de la carga de trabajo. Si un proveedor cambia el coste de la licencia de la base de datos, investigue cómo afecta a la eficiencia general de la carga de trabajo. Consulte los anuncios de precios históricos de sus proveedores para ver tendencias en los cambios de las licencias en sus productos. Los costes de licencia también pueden variar sin tener en cuenta el rendimiento o el uso, como las licencias que varían según el hardware (licencias vinculada a la CPU). Estas licencias deberían evitarse porque sus costes pueden incrementarse rápidamente sin corresponderse con los resultados.

**Pasos para la aplicación**
+ ** Analizar las opciones de licencia: **revise los términos de licencia del software disponible. Busque versiones de código abierto que dispongan de las funciones requeridas y si los beneficios del software con licencia superan su coste. Unos términos favorables alinean el coste del software con el beneficio que aporta. 
+ ** Analizar el proveedor de software: **revise los cambios históricos en los precios y las licencias del proveedor. Busque cambios que no se alineen con los resultados, tales como términos punitivos si se ejecuta hardware o se trabaja con plataformas de proveedores específicos. Mire cómo ejecutan las auditorías y las sanciones que se podrían aplicar. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Calculadora del coste total de propiedad (TCO) de AWS](https://aws.amazon.com/tco-calculator/) 
+  [Clases de almacenamiento de Amazon S3](https://aws.amazon.com/s3/storage-classes/) 
+  [Productos de la nube](https://aws.amazon.com/products/) 

# COST05-BP05 Seleccionar los componentes de la carga de trabajo para optimizar los costes de acuerdo con las prioridades de la organización
<a name="cost_select_service_select_for_cost"></a>

Tenga en cuenta el coste al seleccionar los componentes de su carga de trabajo. Incluye el uso de servicios administrados y de nivel de aplicación o de una arquitectura sin servidor, de contenedores o basada en eventos para reducir el coste global. Minimice los costes de licencia con software de código abierto, software que no tenga costes de licencia o alternativas para reducir el coste.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Tenga en cuenta el coste de los servicios y las opciones a la hora de seleccionar los componentes. Incluye el uso de servicios administrados y de nivel de aplicación, como [Amazon Relational Database Service (Amazon RDS)](https://aws.amazon.com/rds/), [Amazon DynamoDB](https://aws.amazon.com/dynamodb/), [Amazon Simple Notification Service (Amazon SNS)](https://aws.amazon.com/sns/) y [Amazon Simple Email Service (Amazon SES)](https://aws.amazon.com/ses/) para reducir el coste general de la organización. Use aplicaciones sin servidor y contenedores para la computación, como [AWS Lambda](https://aws.amazon.com/lambda/) y [Amazon Simple Storage Service (Amazon S3)](https://aws.amazon.com/s3/) para sitios web estáticos. A ser posible, incluya su aplicación en un contenedor y utilice AWS Managed Container Services como [Amazon Elastic Container Service (Amazon ECS)](https://aws.amazon.com/ecs/) o [Amazon Elastic Kubernetes Service (Amazon EKS)](https://aws.amazon.com/eks/). Minimice los costes de licencia con software de código abierto o software que no tenga costes de licencia (por ejemplo, Amazon Linux para cargas de trabajo de computación o migre bases de datos a Amazon Aurora). 

Puede usar servicios de nivel de aplicación o sin servidor como [AWS Lambda](https://aws.amazon.com/lambda/), [Amazon Simple Queue Service (Amazon SQS)](https://aws.amazon.com/sqs/), [Amazon SNS](https://docs.aws.amazon.com/sns/?id=docs_gateway) y [Amazon SES](https://docs.aws.amazon.com/ses/?id=docs_gateway). Estos servicios eliminan la necesidad de administrar un recurso y proporcionan la función de ejecución de código, servicios de colas y entrega de mensajes. La otra ventaja es que desescalan horizontalmente el rendimiento y el coste de acuerdo con el uso, por lo que permiten la asignación y atribución de costes de forma eficiente.

 El uso de la [arquitectura basada en eventos (EDA)](https://aws.amazon.com/what-is/eda/) también es posible con los servicios sin servidor. Las arquitecturas basadas en eventos se basan en la inserción, por lo que todo sucede bajo demanda a medida que el evento se presenta en el enrutador. De esta forma, no pagará por un sondeo continuo para comprobar si hay algún evento. Esto se traduce en un menor consumo de ancho de banda de la red, una menor utilización de la CPU, una menor capacidad inactiva de la flota y menos establecimientos de protocolo de enlace SSL/TLS. 

Para obtener más información sobre los servicios sin servidor, consulte el [documento técnico sobre el enfoque de las aplicaciones sin servidor de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/serverless-applications-lens/welcome.html).

**Pasos para la implementación**
+ **Seleccionar cada servicio para optimizar costes: **use la lista de prioridades y el análisis para seleccionar la opción que se adapte mejor a las prioridades de la organización. En lugar de aumentar la capacidad para satisfacer la demanda, considere otras opciones que puedan ofrecerle un mejor rendimiento con un coste menor. Por ejemplo, debe revisar el tráfico previsto para sus bases de datos en AWS y considerar la posibilidad de aumentar el tamaño de la instancia o utilizar servicios de Amazon ElastiCache (Redis o Memcached) a fin de proporcionar mecanismos de caché para sus bases de datos. 
+  **Evaluar la arquitectura basada en eventos:** el uso de una arquitectura sin servidor también le permite crear una arquitectura basada en eventos para aplicaciones distribuidas basadas en microservicios, lo que le ayuda a crear soluciones escalables, resilientes, ágiles y rentables. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Calculadora de coste total de propiedad (TCO) de AWS](https://aws.amazon.com/tco-calculator/) 
+ [AWS sin servidor ](https://aws.amazon.com/serverless/)
+ [ Qué es la arquitectura basada en eventos ](https://aws.amazon.com/what-is/eda/)
+  [Clases de almacenamiento de Amazon S3](https://aws.amazon.com/s3/storage-classes/) 
+  [Productos de la nube](https://aws.amazon.com/products/) 
+ [ Amazon ElastiCache (Redis OSS) ](https://aws.amazon.com/elasticache/redis/)

 **Ejemplos relacionados:** 
+ [ Getting started with event-driven architecture ](https://aws.amazon.com/blogs/compute/getting-started-with-event-driven-architecture/)(Introducción a la arquitectura basada en eventos)
+ [¿Qué es una arquitectura basada en eventos?](https://aws.amazon.com/event-driven-architecture/)
+ [ How Statsig runs 100x more cost-effectively using Amazon ElastiCache (Redis OSS)](https://aws.amazon.com/blogs/database/how-statsig-runs-100x-more-cost-effectively-using-amazon-elasticache-for-redis/) (Cómo Statsig funciona de forma 100 veces más rentable con Amazon ElastiCache (Redis OSS))
+ [ Best practices for working with AWS Lambda functions ](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html)(Prácticas recomendadas para trabajar con funciones de AWS Lambda)

# COST05-BP06 Analizar los costes para diferentes usos a lo largo del tiempo
<a name="cost_select_service_analyze_over_time"></a>

 Las cargas de trabajo pueden cambiar con el tiempo. Algunos servicios o características son más rentables en diferentes niveles de uso. Al analizar cada componente a lo largo del tiempo, así como el uso previsto, la carga de trabajo se mantiene rentable durante su vida útil. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

A medida que AWS lanza nuevos servicios y características, los servicios óptimos para su carga de trabajo también pueden cambiar. El esfuerzo necesario debe reflejar las ventajas potenciales. La frecuencia de revisión de la carga de trabajo depende de los requisitos de la organización. Si se trata de una carga de trabajo con un coste importante, implementar nuevos servicios antes maximizará el ahorro, por lo que realizar la revisión con mayor frecuencia puede ser de gran ayuda. Otro punto a revisar es el cambio en los patrones de uso. Unos cambios significativos en el uso pueden indicar que unos servicios alternativos serían óptimos.

 Si necesita trasladar datos a Nube de AWS, puede seleccionar cualquier amplia variedad de servicios que ofrece AWS y herramientas de socios para ayudarle a migrar sus conjuntos de datos, ya sean archivos, bases de datos, imágenes de máquinas, volúmenes de bloques o, incluso, copias de seguridad en cinta. Por ejemplo, para trasladar una gran cantidad de datos con destino y origen en AWS o procesar datos en la periferia, puede utilizar uno de los dispositivos personalizados de AWS para trasladar de forma rentable petabytes de datos fuera de línea. Otro ejemplo: para tasas de transferencia de datos más elevadas, un servicio de conexión directa puede resultar más barato que una VPN que proporcione la coherencia de conectividad necesaria para su empresa. 

 Revise su actividad de escalamiento basándose en el análisis de costes para diferentes usos a lo largo del tiempo. Analice el resultado para ver si la política de escalamiento puede ajustarse para añadir instancias con varios tipos de instancia y opciones de compra. Revise la configuración para ver si es posible reducir el mínimo para atender las solicitudes de los usuarios, pero con una flota de menor tamaño, y añada más recursos para satisfacer la elevada demanda prevista. 

 Hable con las partes interesadas de su organización para realizar un análisis de los costes de los distintos usos a lo largo del tiempo y utilice la característica de previsión de [AWS Cost Explorer](https://docs.aws.amazon.com/cost-management/latest/userguide/ce-forecast.html) para prever el impacto potencial de los cambios en el servicio. Supervise los desencadenadores del nivel de uso mediante AWS Budgets, alarmas de facturación de CloudWatch y AWS Cost Anomaly Detection para identificar e implementar antes los servicios más rentables. 

**Pasos para la implementación**
+ **Definir patrones de uso previstos: **trabaje con los distintos equipos de la organización, como el departamento de marketing y los propietarios de producto, para documentar los patrones de uso previstos para la carga de trabajo. Hable con las partes interesadas de la empresa sobre el aumento de coste y uso, tanto históricos como previstos, y asegúrese de que el aumento se ajusta a los requisitos de la empresa. Identifique los días naturales, las semanas o los meses en los que espera que más usuarios utilicen sus recursos de AWS, lo que indica que debe aumentar la capacidad de los recursos existentes o adoptar servicios adicionales para reducir el coste y aumentar el rendimiento. 
+ **Realizar análisis de costes con el uso previsto:** aplique los patrones de uso definidos y analícelos en cada uno de estos puntos. El esfuerzo de análisis debería reflejar el resultado potencial. Por ejemplo, si el cambio de uso es grande, debería realizarse un análisis exhaustivo para verificar los costes y los cambios. En otras palabras, cuando el coste aumenta, el uso también debería aumentar para la empresa. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Calculadora de coste total de propiedad (TCO) de AWS](https://aws.amazon.com/tco-calculator/) 
+  [Clases de almacenamiento de Amazon S3](https://aws.amazon.com/s3/storage-classes/) 
+  [Productos de la nube](https://aws.amazon.com/products/) 
+ [ Amazon EC2 Auto Scaling ](https://docs.aws.amazon.com/autoscaling/ec2/userguide/what-is-amazon-ec2-auto-scaling.html)
+ [ Migración de datos a la nube ](https://aws.amazon.com/cloud-data-migration/)
+ [AWS Snow Family](https://aws.amazon.com/snow/)

 **Vídeos relacionados: ** 
+ [AWS OpsHub for Snow Family](https://www.youtube.com/watch?v=0Q7s7JiBCf0)

# COST 6 ¿Cómo cumple los objetivos de costes cuando selecciona el tipo, el tamaño y el número de recursos?
<a name="cost-06"></a>

Asegúrese de elegir el tamaño y el número de recursos apropiados para la tarea en cuestión. Al seleccionar el tipo, el tamaño y el número más rentables, minimiza el desperdicio.

**Topics**
+ [COST06-BP01 Realizar modelado de costes](cost_type_size_number_resources_cost_modeling.md)
+ [COST06-BP02 Selección del tipo, tamaño y número de recursos en función de los datos](cost_type_size_number_resources_data.md)
+ [COST06-BP03 Seleccionar tipo, tamaño y número de recursos automáticamente en función de las métricas](cost_type_size_number_resources_metrics.md)

# COST06-BP01 Realizar modelado de costes
<a name="cost_type_size_number_resources_cost_modeling"></a>

Identifique los requisitos de la organización (como las necesidades empresariales y los compromisos existentes) y realice un modelado de costes (costes generales) de la carga de trabajo y de cada uno de sus componentes. Realice actividades de referencia para la carga de trabajo bajo diferentes cargas previstas y compare los costes. El esfuerzo para realizar el modelado debería reflejar la ventaja potencial. Por ejemplo, el tiempo dedicado debe ser proporcional al coste del componente.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Realice el modelado de costes para la carga de trabajo y cada uno de sus componentes para comprender el equilibrio entre los recursos. Busque el tamaño adecuado para cada recurso de la carga de trabajo según un determinado nivel de rendimiento. Comprender las consideraciones de costes puede servir de base al caso empresarial de su organización y al proceso de toma de decisiones cuando se evalúen los resultados de obtención de valor para el despliegue planificado de la carga de trabajo. 

 Realice actividades de referencia para la carga de trabajo bajo diferentes cargas previstas y compare los costes. El esfuerzo de modelado debe reflejar las posibles ventajas; por ejemplo, el tiempo empleado es proporcional al coste de los componentes o al ahorro previsto. Para conocer las prácticas recomendadas, consulte la [sección Revisión del pilar Eficiencia del rendimiento del marco AWS Well-Architected Framework](https://docs.aws.amazon.com/wellarchitected/latest/performance-efficiency-pillar/review.html). 

 Por ejemplo, crear un modelado de costes para una carga de trabajo compuesta por recursos de computación, [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) puede ayudar a modelar los costes de las cargas de trabajo en ejecución. Proporciona recomendaciones de tamaño ideal para los recursos de computación basándose en el uso histórico. Asegúrese de que se despliegan agentes de CloudWatch en las instancias de Amazon EC2 para recopilar métricas de memoria que le ayuden con recomendaciones más precisas en AWS Compute Optimizer. Se trata del origen de datos ideal para los recursos de computación porque es un servicio gratuito que usa el machine learning para realizar numerosas recomendaciones en función de los niveles de riesgo. 

 Existen [varios servicios](https://docs.aws.amazon.com/whitepapers/latest/cost-optimization-right-sizing/identifying-opportunities-to-right-size.html) que puede utilizar con registros personalizados como orígenes de datos para las operaciones de dimensionamiento correcto para otros servicios y componentes de la carga de trabajo, como [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/), [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) y [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html). AWS Trusted Advisor comprueba los recursos y marca los que tienen poco uso, lo que puede ayudarle a dimensionar correctamente sus recursos y a crear modelos de costes. 

 Estas son recomendaciones de datos y métricas de modelado de costes: 
+  La supervisión debe reflejar fielmente la experiencia del usuario. Seleccione la granularidad correcta del periodo y elija cuidadosamente el percentil 99 o el percentil máximo en lugar del promedio. 
+  Seleccione el nivel de detalle correcto para el periodo de análisis necesario a fin de cubrir cualquier ciclo de carga de trabajo. Por ejemplo, si se lleva a cabo un análisis de dos semanas, es posible que esté pasando por alto un ciclo mensual de alta utilización, lo que podría generar un aprovisionamiento insuficiente. 
+  Elija los servicios de AWS adecuados para la carga de trabajo prevista; para ello, tenga en cuenta sus compromisos existentes, los modelos de precios seleccionados para otras cargas de trabajo y la capacidad de innovar más rápidamente y centrarse en el valor empresarial principal. 

**Pasos para la implementación**
+ **Realizar modelado de costes:** despliegue la carga de trabajo o una prueba de concepto en una cuenta aparte con los tipos y tamaños de recurso específicos de la prueba. Ejecute la carga de trabajo con los datos de la prueba y registre los resultados de la salida, así como los datos de costes del momento en que se ejecutó la prueba. Después, vuelva a desplegar la carga de trabajo o cambie los tipos y tamaños de recurso y vuelva a ejecutar la prueba. Incluya las tarifas de licencia de cualquier producto que pueda utilizar con estos recursos y los costes estimados de las operaciones (mano de obra o ingenieros) para desplegar y administrar estos recursos durante la creación del modelado de costes. Considere el modelado de costes para un periodo (por hora, por día, por mes, por año o por trienio).

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+ [ Identificar oportunidades para el tamaño correcto ](https://docs.aws.amazon.com/whitepapers/latest/cost-optimization-right-sizing/identifying-opportunities-to-right-size.html)
+  [Características de Amazon CloudWatch](https://aws.amazon.com/cloudwatch/features/) 
+  [Optimización de costes: redimensionamiento adecuado de Amazon EC2](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ce-rightsizing.html) 
+  [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) 
+ [Calculadora de precios de AWS](https://calculator.aws/#/)

 **Ejemplos relacionados:** 
+ [ Perform a Data-Driven Cost Modelling ](https://aws.amazon.com/blogs/mt/how-to-use-aws-well-architected-with-aws-trusted-advisor-to-achieve-data-driven-cost-optimization/)(Realizar un modelo de costes basado en datos)
+ [ Estimate the cost of planned AWS resource configurations ](https://aws.amazon.com/premiumsupport/knowledge-center/estimating-aws-resource-costs/)(Calcular el coste de las configuraciones de recursos de AWS previstas)
+ [ Choose the right AWS tools ](https://www.learnaws.org/2019/09/27/choose-right-aws-tools/) (Elegir las herramientas de AWS adecuadas)

# COST06-BP02 Selección del tipo, tamaño y número de recursos en función de los datos
<a name="cost_type_size_number_resources_data"></a>

Seleccione el tamaño o el tipo de recurso basándose en los datos sobre las características de la carga de trabajo y de los recursos. Por ejemplo, computación, memoria, rendimiento o uso intensivo de escritura. Esta selección se realiza normalmente mediante una versión anterior (local) de la carga de trabajo, mediante la documentación o mediante otros orígenes de información sobre la carga de trabajo.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Seleccione el tamaño o el tipo de recurso en función de las características de la carga de trabajo y de los recursos, por ejemplo, computación, memoria, rendimiento o uso intensivo de escritura. Esta selección se realiza normalmente mediante el modelado de costes, una versión anterior de la carga de trabajo (como una versión local), el uso de documentación o la utilización de otros orígenes de información sobre la carga de trabajo (documentos técnicos, soluciones publicadas).

**Pasos para la aplicación**
+ **Seleccione los recursos en función de los datos:** Con sus datos de modelado de costes, seleccione el nivel de uso previsto de la carga de trabajo y, a continuación, seleccione el tipo y el tamaño de los recursos especificados.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [Características de Amazon CloudWatch](https://aws.amazon.com/cloudwatch/features/) 
+  [Cost Optimization: EC2 Right Sizing](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ce-rightsizing.html) 

# COST06-BP03 Seleccionar tipo, tamaño y número de recursos automáticamente en función de las métricas
<a name="cost_type_size_number_resources_metrics"></a>

Use métricas de la carga de trabajo actual para seleccionar el tamaño y tipo correcto para optimizar el costo. Aprovisione de forma adecuada el rendimiento, el tamaño y el almacenamiento para los servicios de computación, almacenamiento, datos y redes. Esto puede hacerse con un bucle de retroalimentación, como el escalamiento automático, o mediante un código personalizado en la carga de trabajo.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Cree un bucle de retroalimentación en la carga de trabajo que use métricas activas de la carga de trabajo en ejecución para realizar cambios en dicha carga de trabajo. Puede utilizar un servicio administrado, como [AWS Auto Scaling](https://aws.amazon.com/autoscaling/), que se configura para llevar a cabo automáticamente las operaciones de tamaño adecuadas. AWS también proporciona [API, SDK](https://aws.amazon.com/developer/tools/) y características que permiten modificar los recursos con un mínimo esfuerzo. Puede programar una carga de trabajo para que detenga e inicie una instancia Amazon EC2 a fin de poder realizar un cambio en el tamaño o el tipo de instancia. Esto permite obtener el tamaño adecuado y, además, permite eliminar casi todo el coste operativo necesario para realizar el cambio.

Algunos servicios de AWS tienen una selección de tipo o tamaño automática, como [Amazon Simple Storage Service Intelligent-Tiering](https://aws.amazon.com/about-aws/whats-new/2018/11/s3-intelligent-tiering/). Amazon S3 Intelligent-Tiering mueve automáticamente los datos entre dos niveles de acceso (frecuente y poco frecuente) en función de sus patrones de uso.

**Pasos para la aplicación**
+ **Aumentar la observabilidad mediante la configuración de las métricas de la carga de trabajo:** capture las métricas clave de la carga de trabajo. Estas métricas son indicativas de la experiencia del cliente, como el resultado de la carga de trabajo, y alinean las diferencias que hay entre los tipos y los tamaños de los recursos, como la CPU y el uso de memoria. En el caso del recurso de computación, analice los datos de rendimiento para determinar el tamaño adecuado de sus instancias Amazon EC2. Identifique las instancias inactivas y las infrautilizadas. Las métricas clave a tener en cuenta son el uso de la CPU y la utilización de la memoria (por ejemplo, un 40 % de utilización de la CPU el 90 % del tiempo, como se explica en [Rightsizing with AWS Compute Optimizer and Memory Utilization Enabled](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) [Redimensionamiento con AWS Compute Optimizer y uso de memoria activado]). Identifique las instancias con un uso de CPU y una utilización de memoria máximos inferiores al 40 % durante un periodo de cuatro semanas. Estas son las instancias que hay que dimensionar correctamente para reducir costes. En el caso de recursos de almacenamiento como Amazon S3, puede utilizar [Amazon S3 Storage Lens](https://aws.amazon.com/getting-started/hands-on/amazon-s3-storage-lens/), que le permite ver 28 métricas en varias categorías en el nivel de bucket y 14 días de datos históricos en el panel de forma predeterminada. Puede filtrar su panel de Amazon S3 Storage Lens por resumen y optimización de costes o eventos para analizar métricas específicas. 
+ **Consultar las recomendaciones de redimensionamiento:** utilice las recomendaciones de redimensionamiento en AWS Compute Optimizer y la herramienta de redimensionamiento Amazon EC2 en la consola de administración de costes, o revise el redimensionamiento de AWS Trusted Advisor de sus recursos para realizar ajustes en la carga de trabajo. Es importante utilizar las [herramientas adecuadas](https://docs.aws.amazon.com/whitepapers/latest/cost-optimization-right-sizing/identifying-opportunities-to-right-size.html) a la hora de redimensionar los distintos recursos y seguir las [directrices de redimensionamiento](https://docs.aws.amazon.com/whitepapers/latest/cost-optimization-right-sizing/identifying-opportunities-to-right-size.html), ya se trate de una instancia Amazon EC2, de clases de almacenamiento de AWS o de tipos de instancia Amazon RDS. En el caso de los recursos de almacenamiento, puede utilizar Amazon S3 Storage Lens, que le ofrece visibilidad sobre el uso del almacenamiento de objetos, las tendencias de actividad y le proporciona recomendaciones prácticas para optimizar los costes y aplicar las prácticas recomendadas de protección de datos. Gracias a las recomendaciones contextuales que [Amazon S3 Storage Lens](https://aws.amazon.com/getting-started/hands-on/amazon-s3-storage-lens/) obtiene del análisis de las métricas de toda su organización, podrá tomar medidas inmediatas para optimizar el almacenamiento. 
+ **Seleccionar el tipo y el tamaño de los recursos automáticamente según las métricas:** use las métricas de la carga de trabajo y seleccione sus recursos de la carga de trabajo de forma manual o automática. En el caso de los recursos de computación, configurar AWS Auto Scaling o implementar el código en su aplicación puede reducir el esfuerzo necesario si deben realizarse cambios frecuentes, y así podrá implementar cambios potenciales antes que con el proceso manual. Puede lanzar y escalar automáticamente una flota de instancias bajo demanda e instancias de spot en un mismo grupo de Auto Scaling. Además de beneficiarse de descuentos por utilizar instancias de spot, puede usar las instancias reservadas o un Savings Plan para obtener descuentos en los precios habituales de las instancias bajo demanda. Todos estos factores combinados le ayudarán a optimizar el ahorro de costes de las instancias Amazon EC2 y a determinar la escala y el rendimiento que desea para su aplicación. También puede utilizar una estrategia de [selección de tipo de instancia basada en atributos (ABS)](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) en [Auto Scaling Groups (ASG)](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html), que le permite expresar sus requisitos de instancia como un conjunto de atributos, por ejemplo, vCPU, memoria y almacenamiento. Puede utilizar automáticamente los tipos de instancia de nueva generación cuando se lancen y acceder a una gama más amplia de capacidad con las instancias de spot de Amazon EC2. Flota de Amazon EC2 y Amazon EC2 Auto Scaling seleccionan y lanzan instancias que se ajusten a los atributos especificados, por lo que no es necesario elegir manualmente los tipos de instancia. En el caos de los recursos de almacenamiento, puede utilizar las características [Amazon S3 Intelligent Tiering](https://aws.amazon.com/s3/storage-classes/intelligent-tiering/) y [Amazon EFS Infrequent Access](https://aws.amazon.com/efs/features/infrequent-access/), que le permiten seleccionar automáticamente las clases de almacenamiento que ofrecen un ahorro automático de costes de almacenamiento cuando cambian los patrones de acceso a los datos, sin generar impacto en el rendimiento ni sobrecarga operativa. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [Tamaño correcto de AWS](https://aws.amazon.com/aws-cost-management/aws-cost-optimization/right-sizing/) 
+  [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) 
+  [Características de Amazon CloudWatch](https://aws.amazon.com/cloudwatch/features/) 
+  [Configuración inicial de CloudWatch](https://docs.aws.amazon.com/Amazon/latest/monitoring/GettingSetup.html) 
+  [Publicar métricas personalizadas de CloudWatch](https://docs.aws.amazon.com/Amazon/latest/monitoring/publishingMetrics.html) 
+  [Getting Started with Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/GettingStartedTutorial.html) (Introducción a Amazon EC2 Auto Scaling) 
+  [Amazon S3 Storage Lens](https://aws.amazon.com/getting-started/hands-on/amazon-s3-storage-lens/) 
+  [Amazon S3 Intelligent-Tiering](https://aws.amazon.com/about-aws/whats-new/2018/11/s3-intelligent-tiering/) 
+  [Amazon EFS Infrequent Access](https://aws.amazon.com/efs/features/infrequent-access/) 
+  [Lanzamiento de una instancia Amazon EC2 mediante el SDK](https://docs.aws.amazon.com/sdk-for-net/v2/developer-guide/run-instance.html) 

 **Vídeos relacionados: ** 
+  [Right Size Your Services](https://www.youtube.com/watch?v=wcp1inFS78A) (Tamaño correcto de sus servicios) 

 **Ejemplos relacionados:** 
+  [Attribute based Instance Type Selection for Auto Scaling for Amazon EC2 Fleet](https://aws.amazon.com/blogs/aws/new-attribute-based-instance-type-selection-for-ec2-auto-scaling-and-ec2-fleet/) (Selección de tipo de instancia basada en atributos para Auto Scaling para Flota de Amazon EC2) 
+  [Optimizing Amazon Elastic Container Service for cost using scheduled scaling](https://aws.amazon.com/blogs/containers/optimizing-amazon-elastic-container-service-for-cost-using-scheduled-scaling/) (Optimización de Amazon Elastic Container Service para coste mediante el escalamiento programado) 
+  [Predictive scaling with Amazon EC2 Auto Scaling](https://aws.amazon.com/blogs/compute/introducing-native-support-for-predictive-scaling-with-amazon-ec2-auto-scaling/) (Escalamiento predictivo con Amazon EC2 Auto Scaling) 
+  [Optimize Costs and Gain Visibility into Usage with Amazon S3 Storage Lens](https://aws.amazon.com/getting-started/hands-on/amazon-s3-storage-lens/) (Optimizar los costes y obtener visibilidad del uso con Amazon S3 Storage Lens) 
+  [Well-Architected Labs: Rightsizing Recommendations (Level 100)](https://wellarchitectedlabs.com/cost/100_labs/100_aws_resource_optimization/) (Laboratorios de Well-Architected: recomendaciones de redimensionamiento [nivel 100]) 
+  [Well-Architected Labs: Rightsizing with AWS Compute Optimizer and Memory Utilization Enabled (Level 200)](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) (Laboratorios de Well-Architected: redimensionamiento con AWS Compute Optimizer y uso de memoria activado [nivel 200]) 

# COST 7 ¿Cómo utiliza los modelos de fijación de precios para reducir los costes?
<a name="cost-07"></a>

Use el modelo de fijación de precios más apropiado para sus recursos a fin de minimizar los gastos.

**Topics**
+ [COST07-BP01 Analizar los modelos de precios](cost_pricing_model_analysis.md)
+ [COST07-BP02 Implementar regiones según los costes](cost_pricing_model_region_cost.md)
+ [COST07-BP03 Seleccionar acuerdos de terceros con recursos rentables](cost_pricing_model_third_party.md)
+ [COST07-BP04 Implementar modelos de precios para todos los componentes de la carga de trabajo](cost_pricing_model_implement_models.md)
+ [COST07-BP05 Realizar análisis de modelos de precios en el nivel de la cuenta de administración](cost_pricing_model_master_analysis.md)

# COST07-BP01 Analizar los modelos de precios
<a name="cost_pricing_model_analysis"></a>

Analice cada componente de la carga de trabajo. Determine si el componente y los recursos se ejecutarán durante períodos extensos (por descuentos por compromiso) o períodos dinámicos y de corta ejecución (para spot o bajo demanda). Realice un análisis de la carga de trabajo mediante las recomendaciones de las herramientas de administración de costes y aplique las reglas empresariales a dichas recomendaciones para conseguir un alto rendimiento.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

AWS tiene varios [modelos de precios](https://aws.amazon.com/pricing/) que le permiten pagar por los recursos de la manera más rentable en función de las necesidades de su organización y según el producto. Determine con sus equipos el modelo de precios más apropiado. Su modelo de precios suele constar de una combinación de varias opciones, según lo determine su disponibilidad 

 Con las **instancias bajo demanda** puede pagar por capacidad de computación o de base de datos por hora o por segundo (60 segundos como mínimo) según las instancias que ejecute, sin compromisos a largo plazo o pagos por adelantados. 

 Los **Savings Plans** son un modelo de precios flexible que ofrece precios bajos por el uso de Amazon EC2, Lambda y AWS Fargate a cambio de un compromiso de uso constante (medido en USD por hora) durante un plazo de uno o tres años. 

 Las **instancias de spot** son un mecanismo de precios de Amazon EC2 que le permite solicitar capacidad de computación sobrante a una tarifa por hora con descuento (hasta un 90 % sobre el precio bajo demanda) sin compromiso inicial. 

 Con las **instancias reservadas** puede obtener hasta un 75 % de descuento si paga por adelantado la capacidad. Para obtener más detalles, consulte [Optimizing costs with reservations](https://docs.aws.amazon.com/whitepapers/latest/how-aws-pricing-works/aws-cost-optimization.html) (Optimización de los costes con las reservas). 

 Puede incluir un Savings Plans para los recursos asociados a los entornos de producción, calidad y desarrollo. Como alternativa, debido a que los recursos del entorno aislado solo se encienden cuando se necesitan, podría elegir un modelo bajo demanda para los recursos de ese entorno. Utilice las [instancias de spot](https://docs.aws.amazon.com/whitepapers/latest/how-aws-pricing-works/amazon-elastic-compute-cloud-amazon-ec2.html#spot-instances) de Amazon para reducir los costes de Amazon EC2 o utilice [Savings Plans para computación](https://docs.aws.amazon.com/whitepapers/latest/how-aws-pricing-works/amazon-elastic-compute-cloud-amazon-ec2.html#savings-plans) a fin de reducir el coste de Amazon EC2, Fargate y Lambda. La herramienta de recomendaciones de [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) ofrece oportunidades de descuentos por compromiso con Savings Plans. 

 Si en el pasado ha estado comprando [instancias reservadas](https://aws.amazon.com/aws-cost-management/aws-cost-optimization/reserved-instances/?track=costop) por Amazon EC2 o ha establecido prácticas de asignación de costes en su organización, puede seguir usando las instancias reservadas de Amazon EC2 por el momento. Sin embargo, recomendamos elaborar una estrategia para usar Savings Plans en el futuro como mecanismo más flexible de ahorro de costes. Puede actualizar las recomendaciones de Savings Plans (SP) en AWS Cost Management para generar nuevas recomendaciones de Savings Plans en cualquier momento. Use las instancias reservadas (RI) para reducir los costes de Amazon RDS, Amazon Redshift, Amazon ElastiCache y Amazon OpenSearch Service. Los Savings Plans y las instancias reservadas están disponibles en tres modalidades de pago: puede abonarse el total por adelantado, abonarse parte por adelantado y no abonarse nada por adelantado. Utilice las recomendaciones de compra de RI y SP de AWS Cost Explorer. 

 Para buscar oportunidades para cargas de trabajo de spot, use una vista por hora del uso general y busque períodos regulares de uso cambiante o de elasticidad. Puede utilizar instancias de spot para diversas aplicaciones flexibles y tolerantes a errores. Algunos ejemplos son los servidores web sin estado, los puntos de conexión de API, las aplicaciones de macrodatos y análisis, las cargas de trabajo en contenedores, CI/CD y otras cargas de trabajo flexibles. 

 Analice sus instancias de Amazon EC2 y Amazon RDS si pueden desactivarse cuando no las utilice (fuera de horario laboral y en fines de semana). Este enfoque le permitirá reducir costes en un 70 % o más con respecto a su uso ininterrumpido. Si tiene clústeres de Amazon Redshift que solo deben estar disponibles en momentos concretos, puede pausar el clúster y reanudarlo más tarde. Cuando se detiene el clúster de Amazon Redshift o la instancia de Amazon EC2 y Amazon RDS, la facturación de computación se detiene y solo se aplica el cargo por almacenamiento. 

 Tenga en cuenta que las [reservas de capacidad bajo demanda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/capacity-reservations-pricing-billing.html) (ODCR) no suponen un descuento en los precios. Las reservas de capacidad se cobran según la tarifa bajo demanda equivalente, tanto si ejecuta instancias con capacidad reservada como si no. Deben tenerse en cuenta cuando necesite proporcionar suficiente capacidad para los recursos que tiene previsto ejecutar. Las ODCR no tienen por qué estar vinculadas a compromisos a largo plazo, ya que pueden cancelarse cuando ya no las necesite, pero también pueden beneficiarse de los descuentos que ofrecen los Savings Plans o las instancias reservadas. 

**Pasos para la implementación**
+  **Analizar la elasticidad de la carga de trabajo: **mediante el detalle por horas en Cost Explorer o un panel personalizado, analice la elasticidad de la carga de trabajo. Busque cambios regulares en el número de instancias que se están ejecutando. Las instancias de corta duración son candidatas para las instancias o la flota de spot. 
  +  [Laboratorio de Well-Architected: Cost Explorer](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_5_Cost_Visualization/Lab_Guide.html#Elasticity) 
  +  [Laboratorio de Well-Architected: visualización de los costes](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/200_5_Cost_Visualization/README.html) 
+  **Revisar los contratos de precios existentes:** revise los contratos o los compromisos actuales de sus necesidades a largo plazo. Analice lo que tiene actualmente y en qué medida se utilizan esos compromisos. Aproveche los descuentos contractuales o los acuerdos empresariales preexistentes. Los [acuerdos empresariales](https://aws.amazon.com/pricing/enterprise/) ofrecen a los clientes la opción de adaptar los acuerdos que mejor se adapten a sus necesidades. En el caso de compromisos a largo plazo, considere los descuentos por precios reservados, las instancias reservadas o Savings Plans para el tipo de instancia específico, la familia de instancias, Región de AWS y las zonas de disponibilidad. 
+ **Realizar un análisis de descuentos por compromiso:** use Savings Plans en su cuenta para revisar las recomendaciones de Cost Explorer y de instancias reservadas. Para comprobar que está implementando las recomendaciones correctas con los descuentos y el riesgo necesarios, siga los [laboratorios de Well-Architected](https://wellarchitectedlabs.com/cost/costeffectiveresources/). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Acceso a recomendaciones de instancias reservadas](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ri-recommendations.html) 
+  [Opciones de compra de instancias](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html) 
+ [AWS Enterprise ](https://aws.amazon.com/pricing/enterprise/)

 **Vídeos relacionados: ** 
+  [Ahorre hasta un 90 % y ejecute cargas de trabajo de producción en spot](https://www.youtube.com/watch?v=BlNPZQh2wXs) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: Cost Explorer](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/100_5_Cost_Visualization/Lab_Guide.html#Elasticity) 
+  [Laboratorio de Well-Architected: visualización de los costes](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/200_5_Cost_Visualization/README.html) 
+  [Laboratorio de Well-Architected: modelos de precios](https://wellarchitectedlabs.com/Cost/CostEffectiveResources.html) 

# COST07-BP02 Implementar regiones según los costes
<a name="cost_pricing_model_region_cost"></a>

Los precios de los recursos pueden variar según la región. Identifique las diferencias regionales de costes y realice el despliegue solo en las regiones con costes más elevados para cumplir los requisitos de latencia, residencia de los datos y soberanía de los datos. Si tiene en cuenta el coste de la región, podrá pagar el precio global más bajo por esta carga de trabajo.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

La [infraestructura de Nube de AWS](https://aws.amazon.com/about-aws/global-infrastructure/) es global, está alojada en [múltiples ubicaciones en todo el mundo](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html)y se basa en Regiones de AWS, zonas de disponibilidad, zonas locales, AWS Outposts y zonas de longitud de onda. Una región es una ubicación física en el mundo y cada región es un área geográfica independiente en la que AWS tiene varias zonas de disponibilidad. Las zonas de disponibilidad, que son varias ubicaciones aisladas en cada región, constan de uno o varios centros de datos discretos, cada uno de ellos con alimentación, redes y conectividad redundantes. 

Cada Región de AWS opera según las condiciones del mercado local, y el precio de los recursos es distinto en cada región debido a las diferencias del coste del terreno, la fibra, la electricidad y los impuestos, por ejemplo. Elija una región específica en la que desee aplicar un componente de su solución o la solución completa a fin de poder ejecutar al precio más bajo posible a nivel mundial. Utilice [la calculadora de AWS](https://calculator.aws/#/) para calcular los costes de su carga de trabajo en varias regiones mediante la búsqueda de servicios por tipo de ubicación (región, zona de longitud de onda y zona local) y región. 

Al diseñar soluciones, una práctica recomendada es intentar colocar los recursos informáticos más cerca de los usuarios a fin de brindar una latencia más baja y una soberanía de datos sólida. Seleccione la ubicación geográfica en función de los requisitos de su empresa, privacidad de datos, rendimiento y seguridad. En el caso de aplicaciones con usuarios finales en todo el mundo, utilice varias ubicaciones.

 Recurra a las regiones que ofrecen precios más bajos por los servicios de AWS para desplegar sus cargas de trabajo si no tiene obligaciones en materia de privacidad de datos, seguridad y requisitos de empresa. Por ejemplo, si su región predeterminada es ap-southeasth-2 (Sídney) y si no existen restricciones (privacidad de los datos o seguridad, por ejemplo) para utilizar otras regiones, desplegar instancias de Amazon EC2 no críticas (desarrollo y pruebas) en la región north-east-1 (N. Virginia) tendrá menos costes. 

![\[Gráfico que muestra las diferentes regiones con el cumplimiento, la latencia, el coste, los servicios y las características.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/region-feature-matrix.png)


 

 La tabla matricial anterior nos muestra que la Región 4 es la mejor opción para este escenario específico, porque la latencia es baja en comparación con otras regiones, el servicio está disponible y es la región menos cara. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+ ** Revise los precios de las Región de AWS: **analice los costes de la carga de trabajo de la región actual. A partir de los costes más elevados por servicio y tipo de uso, calcule los costes en otras regiones que estén disponibles. Si el ahorro previsto supera el coste de trasladar el componente o la carga de trabajo, migre a la nueva región. 
+  **Revise los requisitos de los despliegues en varias regiones:** analice los requisitos y las obligaciones de su empresa (privacidad de los datos, seguridad o rendimiento) para averiguar si existe alguna restricción que le impida utilizar varias regiones. Si no hay obligaciones que restrinjan el uso de una sola región, utilice varias. 
+  **Analice la transferencia de datos requerida:** tenga en cuenta los costes de transferencia de datos al seleccionar las regiones. Mantenga sus datos cerca de su cliente y de los recursos. Seleccione Regiones de AWS menos costosas donde fluyan los datos y donde la transferencia de datos sea mínima. Dependiendo de los requisitos de su empresa para la transferencia de datos, puede utilizar [Amazon CloudFront](https://aws.amazon.com/cloudfront/), [AWS PrivateLink](https://aws.amazon.com/privatelink/), [AWS Direct Connect](https://aws.amazon.com/directconnect/)y [AWS Virtual Private Network](https://aws.amazon.com/vpn/) para reducir los costes de red, mejorar el rendimiento y mejorar la seguridad. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Acceso a recomendaciones de instancias reservadas](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ri-recommendations.html) 
+  [Precios de Amazon EC2](https://aws.amazon.com/ec2/pricing/) 
+  [Opciones de compra de instancias](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html) 
+  [Tabla de regiones](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/) 

 **Vídeos relacionados:** 
+  [Ahorre hasta un 90 % y ejecute cargas de trabajo de producción en spot](https://www.youtube.com/watch?v=BlNPZQh2wXs) 

 **Ejemplos relacionados:** 
+ [ Overview of Data Transfer Costs for Common Architectures (Información general de los costes de transferencia de datos para arquitecturas comunes) ](https://aws.amazon.com/blogs/architecture/overview-of-data-transfer-costs-for-common-architectures/)
+ [ Cost Considerations for Global Deployments (Consideraciones sobre costes para despliegues globales) ](https://aws.amazon.com/blogs/aws-cloud-financial-management/cost-considerations-for-global-deployments/)
+ [ Qué tener en cuenta al seleccionar una región para las cargas de trabajo ](https://aws.amazon.com/blogs/architecture/what-to-consider-when-selecting-a-region-for-your-workloads/)
+ [ Well-Architected Labs: Restrict service usage by Region (Level 200) (Laboratorios de Well-Architected: restricción del uso del servicio por región [nivel 200]) ](https://www.wellarchitectedlabs.com/cost/200_labs/200_2_cost_and_usage_governance/2_ec2_restrict_region/)

# COST07-BP03 Seleccionar acuerdos de terceros con recursos rentables
<a name="cost_pricing_model_third_party"></a>

 Los acuerdos y recursos rentables garantizan que el costo de estos servicios vaya a la par de los beneficios que proporcionan. Seleccione los acuerdos y los precios que escalan si proporcionan beneficios adicionales a la organización. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Al utilizar soluciones o servicios de terceros en la nube, es importante que las estructuras de fijación de precios estén alineadas con los resultados de la optimización de costos. La fijación de precios debe ir a la par de los resultados y al valor que aportan. Un ejemplo de ello es el software que toma parte del ahorro que proporciona: cuanto más ahorra (resultado) más cobra. Los acuerdos que escalan con la factura no suelen alinearse con la optimización de costos, a menos que proporcionen resultados para cada parte de la factura específica. Por ejemplo, una solución que proporciona recomendaciones para Amazon Elastic Compute Cloud (Amazon EC2) y cobra un porcentaje de toda la factura se incrementará si usa otros servicios para los cuales no genera ningún beneficio. Otro ejemplo es un servicio administrado que se cobra según el porcentaje del costo de los recursos que se administran. Un mayor tamaño de la instancia puede no requerir necesariamente un mayor esfuerzo de administración, aunque sí se cobrará más. A fin de impulsar la eficiencia, asegúrese de que estos acuerdos de fijación de precios del servicio incluyan un programa o funciones de optimización de costos en su servicio.

**Pasos para la aplicación**
+ ** Analizar los acuerdos y recursos de terceros:** revise los precios en los acuerdos de terceros. Realice modelados de los diferentes niveles de uso e incluya nuevos costos como el uso de nuevos servicios o incrementos en los servicios actuales debido al crecimiento de la carga de trabajo. Decida si los costos adicionales proporcionan los beneficios necesarios para su negocio. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Acceso a recomendaciones de instancias reservadas](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ri-recommendations.html) 
+  [Opciones de compra de instancias](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html) 

 **Vídeos relacionados:** 
+  [Ahorre hasta un 90 % y ejecute cargas de trabajo de producción en spot](https://www.youtube.com/watch?v=BlNPZQh2wXs) 

# COST07-BP04 Implementar modelos de precios para todos los componentes de la carga de trabajo
<a name="cost_pricing_model_implement_models"></a>

 Al ejecutar recursos de forma permanente se debe utilizar la capacidad reservada como los Savings Plans o las instancias reservadas. La capacidad a corto plazo se configura con instancias o una flota de spot. Las instancias bajo demanda solo se usa para cargas de trabajo a corto plazo que no se pueden interrumpir y que no se ejecutan lo suficiente como para tener capacidad reservada: de un 25 a un 75 % del período, según el tipo de recurso. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

Considere los requisitos de los componentes de la carga de trabajo y comprenda los modelos de precios potenciales. Defina el requisito de disponibilidad del componente. Determine si hay varios recursos independientes que ejecuten la función en la carga de trabajo y cuáles son los requisitos de la carga de trabajo a lo largo del tiempo. Compare el costo de los recursos con el modelo de precios bajo demanda predeterminado y otros modelos aplicables. Tenga en cuenta los cambios potenciales en los recursos o en los componentes de la carga de trabajo.

**Pasos para la aplicación**
+  **Implementar modelos de precios: **use los resultados del análisis para comprar Savings Plans (SP), instancias reservadas (RI) o para implementar instancias de spot. Si es la primera compra de RI, elija las primeras 5 o 10 recomendaciones de la lista y monitoree y analice los resultados del próximo mes o dos meses. Compre pequeñas cantidades de ciclos regulares de descuentos por compromiso, por ejemplo, cada dos semanas o mensualmente. Implemente instancias de spot para las cargas de trabajo que se puedan interrumpir o no tengan estado. 
+  **Ciclo de revisión de la carga de trabajo:** implemente un ciclo de revisión de la carga de trabajo que analice específicamente la cobertura del modelo de precios. Cuando la carga de trabajo tenga la cobertura requerida, compre descuentos por compromiso adicionales cada dos a cuatro semanas o a medida que cambie el uso de la organización. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Acceso a recomendaciones de instancias reservadas](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ri-recommendations.html) 
+  [EC2 Fleet](https://aws.amazon.com/blogs/aws/ec2-fleet-manage-thousands-of-on-demand-and-spot-instances-with-one-request/) 
+  [Cómo comprar instancias reservadas](https://aws.amazon.com/ec2/pricing/reserved-instances/buyer/) 
+  [Opciones de compra de instancias](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html) 
+  [Instancias de spot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html) 

 **Vídeos relacionados:** 
+  [Ahorre hasta un 90 % y ejecute cargas de trabajo de producción en spot](https://www.youtube.com/watch?v=BlNPZQh2wXs) 

# COST07-BP05 Realizar análisis de modelos de precios en el nivel de la cuenta de administración
<a name="cost_pricing_model_master_analysis"></a>

Consulte las herramientas de facturación y administración de costes y vea los descuentos recomendados con compromisos y reservas para realizar análisis periódicos en el nivel de la cuenta de administración.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

La realización periódica de modelos de costes le ayuda a implementar oportunidades de optimización en múltiples cargas de trabajo. Por ejemplo, si varias cargas de trabajo usan instancias bajo demanda, en un nivel agregado el riesgo de cambio es menor, e implementar un descuento por compromiso tendrá un coste general inferior. Se recomienda realizar análisis en ciclos regulares de dos semanas a un mes. De este modo, podrá realizar compras de ajustes pequeños para que sus modelos de precios puedan seguir evolucionando a medida que cambien sus cargas de trabajo y sus componentes.

Utilice la herramienta de recomendaciones [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) para buscar descuentos por compromiso en su cuenta de administración. Las recomendaciones en el nivel de cuenta de administración se calculan teniendo en cuenta el uso en todas las cuentas de su organización de AWS que tienen activada la opción de compartir descuentos en instancias de reserva o Savings Plans (SP) para recomendar un compromiso que maximice el ahorro en todas las cuentas. 

 Aunque la compra a nivel de cuenta de administración permite conseguir el máximo ahorro en muchos casos, puede haber situaciones en las que podría plantearse la posibilidad de comprar SP a nivel de la cuenta vinculada cuando, por ejemplo, desee que los descuentos se apliquen primero al uso de esa cuenta vinculada en particular. Las recomendaciones para las cuentas de los miembros se calculan en el nivel de cuenta individual, para maximizar el ahorro de cada cuenta aislada. Si su cuenta es propietaria de compromisos de RI y SP, se aplicarán en este orden: 

 *RI zonal > RI estándar > RI convertible > Savings Plan de instancias > Savings Plan de computación* 

 Si compra un SP a nivel de cuenta de administración, el ahorro se aplicará en función del porcentaje de descuento más alto al más bajo. Los SP a nivel de cuenta de administración examinan todas las cuentas vinculadas y aplican el ahorro allí donde el descuento sea más alto. Si desea restringir dónde se aplica el ahorro, puede comprar un Savings Plan a nivel de cuenta vinculada para que, cada vez que esa cuenta utilice servicios de computación que cumplan los requisitos, el descuento se aplique primero allí. Cuando la cuenta no utilice servicios de computación que cumplan los requisitos, el descuento se compartirá entre las demás cuentas vinculadas de la misma cuenta de administración. La opción de compartir descuentos está activada de forma predeterminada, pero se puede desactivar si es necesario. 

 En una familia de facturación unificada, los Savings Plans se aplican primero al uso de la cuenta del propietario y, luego, al uso de otras cuentas. Esto solo ocurre si tiene activada la opción de compartir descuentos. Sus Savings Plans se aplican primero a su porcentaje de ahorro más alto. Si hay varios usos que tienen porcentajes de ahorro iguales, los Savings Plans se aplican al primer uso con la tarifa de Savings Plans más baja. Los Savings Plans seguirán aplicándose hasta que no queden más usos o hasta que se agote su compromiso. El uso restante se cobrará a las tarifas bajo demanda. Puede actualizar las recomendaciones de Savings Plans (SP) en AWS Cost Management para generar nuevas recomendaciones de Savings Plans en cualquier momento. 

Tras analizar la flexibilidad de las instancias, puede comprometerse siguiendo las recomendaciones. Cree modelos de costes con un análisis de los costes a corto plazo de la carga de trabajo con posibles opciones de recursos diferentes, un análisis de los modelos de precios de AWS y una alineación con los requisitos empresariales; de esta manera, conocerá el coste total de propiedad y [las oportunidades de optimización](https://docs.aws.amazon.com/whitepapers/latest/how-aws-pricing-works/aws-cost-optimization.html) de costes.

## Pasos para la implementación
<a name="implementation-steps"></a>
+ ** Realice un análisis de los descuentos por compromiso: **use Cost Explorer en su cuenta para revisar las recomendaciones de Savings Plans y de instancias reservadas. Asegúrese de que entiende las recomendaciones del Saving Plan, calcule el gasto mensual y calcule el ahorro mensual. Revise las recomendaciones en el nivel de cuenta de administración que se calculan teniendo en cuenta el uso en todas las cuentas de miembros de su organización de AWS que tengan activada la opción de compartir del descuento de las instancias de reserva o Savings Plans para obtener el máximo ahorro en todas las cuentas. Puede asegurarse de que ha implementado las recomendaciones correctas con los descuentos y riesgos necesarios si sigue los laboratorios de Well-Architected.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ ¿Cómo funcionan los precios de AWS? ](https://aws.amazon.com/pricing/)
+  [Opciones de compra de instancias](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html) 
+ [ Información general de Savings Plans ](https://docs.aws.amazon.com/savingsplans/latest/userguide/sp-overview.html)
+ [ Recomendaciones de Savings Plans ](https://docs.aws.amazon.com/savingsplans/latest/userguide/sp-recommendations.html)
+  [Acceso a recomendaciones de instancias reservadas](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ri-recommendations.html) 
+ [ How Savings Plans apply to your AWS usage (Cómo se aplican los Savings Plans a su uso de AWS) ](https://docs.aws.amazon.com/savingsplans/latest/userguide/sp-applying.html)
+ [ Savings Plans con facturación unificada ](https://aws.amazon.com/premiumsupport/knowledge-center/savings-plans-consolidated-billing/)
+ [ Activación de instancias reservadas compartidas y descuentos de Savings Plans ](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ri-turn-on-process.html)

 **Vídeos relacionados:** 
+  [Ahorre hasta un 90 % y ejecute cargas de trabajo de producción en spot](https://www.youtube.com/watch?v=BlNPZQh2wXs) 

 **Ejemplos relacionados:** 
+  [Laboratorio de Well-Architected: modelos de precios (nivel 200)](https://wellarchitectedlabs.com/Cost/Cost_Fundamentals/200_3_Pricing_Models/README.html) 
+ [ Laboratorio de Well-Architected: análisis de modelos de precios (nivel 200) ](https://www.wellarchitectedlabs.com/cost/200_labs/200_pricing_model_analysis/)
+ [ ¿Qué debo tener en cuenta antes de comprar un Savings Plans? ](https://aws.amazon.com/premiumsupport/knowledge-center/savings-plans-considerations/)
+ [ How can I use rolling Savings Plans to reduce commitment risk? (¿Cómo puedo usar Savings Plans continuos para reducir el riesgo de compromiso?) ](https://aws.amazon.com/blogs/aws-cloud-financial-management/how-can-i-use-rolling-savings-plans-to-reduce-commitment-risk/)
+ [ Cuándo usar las instancias de spot ](https://docs.aws.amazon.com/whitepapers/latest/cost-optimization-leveraging-ec2-spot-instances/when-to-use-spot-instances.html)

# COST 8 ¿Cómo planifica los gastos de transferencia de datos?
<a name="cost-08"></a>

Asegúrese de planificar y monitorear los cargos de transferencia de datos para que pueda tomar decisiones de diseño y minimizar los costes. Un cambio de diseño pequeño, pero efectivo, puede reducir drásticamente sus costos operativos con el tiempo. 

**Topics**
+ [COST08-BP01 Realizar un modelado de transferencia de datos](cost_data_transfer_modeling.md)
+ [COST08-BP02 Seleccionar componentes para optimizar el coste de la transferencia de datos](cost_data_transfer_optimized_components.md)
+ [COST08-BP03 Implementar servicios para reducir los costos de transferencia de datos](cost_data_transfer_implement_services.md)

# COST08-BP01 Realizar un modelado de transferencia de datos
<a name="cost_data_transfer_modeling"></a>

 Reúna los requisitos de la organización y realice un modelado de transferencia de datos de la carga de trabajo y de cada uno de sus componentes. Se identifica el punto de costo más bajo para los requisitos de transferencia de datos actuales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Debe comprender dónde se produce la transferencia de datos en la carga de trabajo, el costo de la transferencia y los beneficios asociados. De este modo podrá tomar una decisión informada para modificar o aceptar la decisión arquitectónica. Por ejemplo, puede tener una configuración de la zona de disponibilidad (AZ) múltiple donde replicar los datos entre las zonas de disponibilidad. Después, puede modelar el costo de la estructura y determinar que se trata de un costo aceptable (similar al de pagar por la computación y el almacenamiento en la zona de disponibilidad) para lograr la fiabilidad y resiliencia requeridas.

Debe modelar los costos según los distintos niveles de uso. El uso de la carga de trabajo puede cambiar con el tiempo y algunos servicios pueden ser más rentables en diferentes niveles.

Uso [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) o [AWS Cost and Usage Report](https://aws.amazon.com/aws-cost-management/aws-cost-and-usage-reporting/) (CUR) para comprender y modelar sus costos de transferencia de datos. Configure una prueba de concepto (POC) o pruebe su carga de trabajo y ejecute una prueba con una carga simulada realista. Puede modelar sus costos con distintas demandas de carga de trabajo.

**Pasos para la aplicación**
+ ** Calcular los costos de transferencia de datos: **use las páginas de fijación de precios [de AWS](https://aws.amazon.com/pricing/) y calcule los costos de transferencia de datos de la carga de trabajo. Calcule los costos de transferencia de datos en distintos niveles de uso para los incrementos y las reducciones del uso de la carga de trabajo. Si hay múltiples opciones para la arquitectura de la carga de trabajo, calcule el costo para cada opción para compararlas. 
+ ** Vincular costos y resultados:** especifique el resultado obtenido por la carga de trabajo para cada costo de transferencia de datos incurrido. Si es una transferencia entre componentes, puede deberse a un desacoplamiento y, si es entre zonas de disponibilidad, puede deberse a la redundancia. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Soluciones de almacenamiento en caché de AWS](https://aws.amazon.com/caching/aws-caching/) 
+  [Precios de AWS](https://aws.amazon.com/pricing/) 
+  [Precios de Amazon EC2](https://aws.amazon.com/ec2/pricing/on-demand/) 
+  [Precios de Amazon VPC](https://aws.amazon.com/vpc/pricing/) 
+  [Entregar contenido con mayor rapidez gracias a Amazon CloudFront](https://aws.amazon.com/getting-started/tutorials/deliver-content-faster/) 

# COST08-BP02 Seleccionar componentes para optimizar el coste de la transferencia de datos
<a name="cost_data_transfer_optimized_components"></a>

 Se seleccionan todos los componentes y se diseña la arquitectura para reducir los costos de transferencia de datos. Incluye el uso de componentes como la optimización de la red de área extensa (WAN) y las configuraciones de varias zonas de disponibilidad (Multi-AZ). 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

Minimice los costos de transferencia de datos con un diseño pensado para la transferencia de datos. Para hacerlo, es posible que deba usar redes de entrega de contenido para ubicar los datos más cerca de los usuarios, o bien, enlaces de red dedicados entre sus instalaciones y AWS. También puede usar la optimización de WAN y de las aplicaciones para reducir la cantidad de datos que se transfiere entre los componentes.

**Pasos para la aplicación**
+  **Seleccionar componentes para transferir datos: **use el modelado de transferencia de datos para centrarse en dónde se encuentran los mayores costes de transferencia de datos o dónde estarían si cambia el uso de la carga de trabajo. Busque arquitecturas alternativas o componentes adicionales que eliminen o reduzcan la necesidad de transferir datos, o reduzcan su coste. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Soluciones de almacenamiento en caché de AWS](https://aws.amazon.com/caching/aws-caching/) 
+  [Entregar contenido con mayor rapidez con Amazon CloudFront](https://aws.amazon.com/getting-started/tutorials/deliver-content-faster/) 

# COST08-BP03 Implementar servicios para reducir los costos de transferencia de datos
<a name="cost_data_transfer_implement_services"></a>

 Implemente servicios para reducir la transferencia de datos Por ejemplo, puede usar una red de entrega de contenido (CDN, por sus siglas en inglés) como Amazon CloudFront para entregar contenido a los usuarios finales, capas de almacenamiento en caché con Amazon ElastiCache o AWS Direct Connect en lugar de la VPN para conectarse con AWS. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

[Amazon CloudFront](https://aws.amazon.com/cloudfront/) es una red global de entrega de contenido que brinda datos con baja latencia y altas velocidades de transferencia. Almacena en caché los datos en ubicaciones de borde en todo el mundo, lo que reduce la carga de sus recursos. Con CloudFront, puede reducir el esfuerzo administrativo que supone entregar contenido a una gran cantidad de usuarios a nivel mundial y hacerlo con una latencia mínima.

[Direct Connect](https://aws.amazon.com/directconnect/) permite establecer una conexión de red dedicada con AWS. Esto puede reducir los costos de red, aumentar el ancho de banda y brindar una experiencia de red más coherente que las conexiones basadas en Internet.

[Site-to-Site VPN](https://aws.amazon.com/vpn/) le permite establecer una conexión segura y privada entre su red privada y la red global de AWS. Es ideal para oficinas pequeñas o socios empresariales porque proporciona una conectividad rápida y sencilla, además de ser un servicio elástico y completamente administrado.

[Los puntos de conexión de VPC](https://docs.aws.amazon.com/vpc/latest/privatelink/concepts.html) permiten la conexión entre los servicios de AWS a través de la red privada y se pueden usar para reducir los costos de la transferencia de datos pública y las [Puertas de enlace NAT](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html) . [Puntos de conexión de VPC de la puerta de enlace](https://docs.aws.amazon.com/vpc/latest/privatelink/gateway-endpoints.html) no se cobran por hora y son compatibles con Amazon Simple Storage Service(Amazon S3) y Amazon DynamoDB. [Los puntos de conexión de VPC de la interfaz](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) los proporciona [AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/privatelink-share-your-services.html) y tienen un tarifa por hora y un costo de uso por GB.

**Pasos para la aplicación**
+ ** Implementar servicios: **al usar el modelado de transferencia de datos debe buscar los mayores costos y los mayores flujos de volumen. Revise los servicios de AWS y evalúe si existe un servicio que reduzca o elimine la transferencia, especialmente en relación con la entrega de contenido y las redes. Busque también servicios de almacenamiento en caché donde haya acceso repetido a los datos o grandes cantidades de datos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Direct Connect](https://aws.amazon.com/directconnect/) 
+  [Explore nuestros productos de AWS](https://aws.amazon.com/) 
+  [Soluciones de almacenamiento en caché de AWS](https://aws.amazon.com/caching/aws-caching/) 
+  [Amazon CloudFront](https://aws.amazon.com/cloudfront/) 
+  [Entregar contenido con mayor rapidez con Amazon CloudFront](https://aws.amazon.com/getting-started/tutorials/deliver-content-faster/) 

# Administración de la demanda y suministro de recursos
<a name="a-manage-demand-and-supply-resources"></a>

**Topics**
+ [COST 9 ¿Cómo administra la demanda y aprovisiona los recursos?](cost-09.md)

# COST 9 ¿Cómo administra la demanda y aprovisiona los recursos?
<a name="cost-09"></a>

Para una carga de trabajo que tenga un gasto y un rendimiento equilibrados, asegúrese de que se use todo lo que paga y evite las instancias de infrautilización significativas. Una métrica de utilización sesgada en cualquier dirección tiene un efecto adverso en su organización, ya sea en los costes operativos (rendimiento degradado debido a la sobreutilización) o en los gastos desperdiciados de AWS (debido al sobreaprovisionamiento).

**Topics**
+ [COST09-BP01 Realizar un análisis de la demanda de la carga de trabajo](cost_manage_demand_resources_cost_analysis.md)
+ [COST09-BP02 Implementar un búfer o una limitación para administrar la demanda](cost_manage_demand_resources_buffer_throttle.md)
+ [COST09-BP03 Aprovisionar recursos de forma dinámica](cost_manage_demand_resources_dynamic.md)

# COST09-BP01 Realizar un análisis de la demanda de la carga de trabajo
<a name="cost_manage_demand_resources_cost_analysis"></a>

 Analice la demanda de la carga de trabajo a lo largo del tiempo. Compruebe que el análisis cubra las tendencias estacionales y represente con precisión las condiciones de servicio durante toda la vida útil de la carga de trabajo. El análisis debe reflejar los posibles beneficios; por ejemplo, el tiempo empleado es proporcional al coste de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Debe conocer los requisitos de la carga de trabajo. Los requisitos de la organización deberían indicar los tiempos de respuesta de la carga de trabajo frente a las solicitudes. El tiempo de respuesta se puede usar para determinar si la demanda está administrada o si el suministro de recursos cambiará para adaptarse a la demanda.

El análisis debería incluir la previsibilidad y la repetibilidad de la demanda, la tasa de cambio en la demanda y la cantidad de cambio en la demanda. Asegúrese de que el análisis se lleve a cabo durante un período suficiente de tiempo para que incorpore variantes estacionales, como un procesamiento de final de mes o los picos de las vacaciones.

Asegúrese de que el análisis refleje los posibles beneficios de la implementación del escalado. Consulte el coste total previsto del componente y cualquier incremento o descenso del uso, así como el coste durante el período de vida de la carga de trabajo.

Puede usar [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/) o bien [Amazon Quick](https://aws.amazon.com/quicksight/) con el AWS Cost and Usage Report (CUR) o sus registros de aplicaciones para realizar un análisis visual de la demanda de carga de trabajo.

**Pasos para la aplicación**
+ ** Analizar los datos existentes de la carga de trabajo: **analice los datos de la carga de trabajo existente, las versiones anteriores de la carga de trabajo o los patrones de uso previstos. Use los archivos de registro y los datos de supervisión para obtener información sobre cómo usan los clientes la carga de trabajo. Las métricas habituales son la demanda real en solicitudes por segundo, las horas en que la tasa de la demanda cambia o si está en distintos niveles, además de la tasa de cambio de la demanda. Asegúrese de analizar un ciclo completo de la carga de trabajo y no olvide recopilar datos de los cambios estacionales, como los eventos de final de mes o de final de año. El esfuerzo reflejado en este análisis debe mostrar las características de la carga de trabajo. Debe ponerse mayor empeño en las cargas de trabajo de mayor valor con mayores cambios en la demanda. Debe ponerse menor empeño en las cargas de trabajo de menor valor con menores cambios en la demanda. Las métricas más habituales de valor son el riesgo, el conocimiento de la marca, los ingresos y el coste de la carga de trabajo. 
+ ** Prever la influencia exterior: **reúnase con miembros de equipos de toda la organización que puedan influir o cambiar la demanda de la carga de trabajo. Estos equipos suelen ser los de ventas, marketing o desarrollo empresarial. Colabore con ellos para conocer los ciclos en los que operan y si hay eventos especiales que puedan cambiar la demanda de la carga de trabajo. Haga una previsión de la demanda de la carga de trabajo con estos datos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [Instance Scheduler en AWS](https://aws.amazon.com/answers/infrastructure-management/instance-scheduler/) 
+  [Introducción a Amazon SQS](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html) 
+ [AWS Cost Explorer](https://aws.amazon.com/aws-cost-management/aws-cost-explorer/)
+ [Amazon Quick](https://aws.amazon.com/quicksight/)

# COST09-BP02 Implementar un búfer o una limitación para administrar la demanda
<a name="cost_manage_demand_resources_buffer_throttle"></a>

 El almacenamiento en búfer y la limitación modifican la demanda de la carga de trabajo y suavizan los picos. Implemente limitaciones cuando sus clientes hagan reintentos. Implemente el almacenamiento en búfer para almacenar la solicitud y aplazar el procesamiento para más adelante. Verifique que las limitaciones y los búfers se hayan diseñado de tal manera que los clientes reciban una respuesta en el tiempo requerido. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

**Limitación:** si el origen de la demanda tiene capacidad de reintento, podrá implementar una limitación. Esta limitación le dice al origen que si no puede atender la solicitud en el momento actual debe intentarlo más tarde. El origen esperará un tiempo y volverá a probar la solicitud. Implementar una limitación tiene la ventaja de que se limita la cantidad máxima de recursos y costos de la carga de trabajo. En AWS, puede usar [Amazon API Gateway](https://aws.amazon.com/api-gateway/) para implementar la limitación. Consulte el [documento técnico Pilar de fiabilidad de Well-Architected](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/welcome.html) para obtener más detalles sobre cómo implementar la limitación.

**Basado en búfer: **de forma similar a la limitación, un búfer aplaza el procesamiento de las solicitudes, por lo que permite a las aplicaciones que se ejecutan a diferentes ritmos comunicarse de forma efectiva. El enfoque basado en búfer utiliza una cola para aceptar mensajes (unidades de trabajo) de los productores. De este modo, los consumidores pueden leer y procesar los mensajes, lo que permite que dichos mensajes se ejecuten a la velocidad que cumpla con los requisitos empresariales de los consumidores. No tiene que preocuparse por que los productores tengan que lidiar con problemas de limitación, como la durabilidad de los datos y la contrapresión (que hace que los productores reduzcan la velocidad porque su consumidor se ejecuta a una velocidad lenta).

En AWS, puede elegir entre varios servicios para implementar un enfoque basado en almacenamiento en búfer. [Amazon Simple Queue Service (Amazon SQS)](https://aws.amazon.com/sqs/) es un servicio administrado que brinda colas que permiten que un solo consumidor lea mensajes individuales. [Amazon Kinesis](https://aws.amazon.com/kinesis/) ofrece una secuencia que permite que muchos consumidores lean los mismos mensajes.

Al diseñar con un enfoque basado en búfer, garantiza que su carga de trabajo responda a la solicitud en el tiempo requerido y que usted pueda gestionar las solicitudes duplicadas.

**Pasos para la aplicación**
+ ** Analizar los requisitos de cliente: **analice los requisitos de cliente para determinar si pueden llevar a cabo reintentos. Para los clientes que no puedan, deberán implementarse búfers. Analice la demanda general, la tasa de cambio y el tiempo de respuesta requerido para determinar el tamaño de la limitación o el búfer requeridos. 
+ ** Implementar un búfer o una limitación:** implemente un búfer o una limitación en la carga de trabajo. Una cola como Amazon Simple Queue Service (Amazon SQS) puede proporcionar un búfer a sus componentes de la carga de trabajo. Amazon API Gateway puede proporcionar limitación a los componentes de la carga de trabajo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [Instance Scheduler en AWS](https://aws.amazon.com/answers/infrastructure-management/instance-scheduler/) 
+  [Amazon API Gateway](https://aws.amazon.com/api-gateway/) 
+  [Amazon Simple Queue Service](https://aws.amazon.com/sqs/) 
+  [Introducción a Amazon SQS](https://aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html) 
+  [Amazon Kinesis](https://aws.amazon.com/kinesis/) 

# COST09-BP03 Aprovisionar recursos de forma dinámica
<a name="cost_manage_demand_resources_dynamic"></a>

Los recursos se aprovisionan de manera planificada. Esto puede basarse en la demanda (por ejemplo, mediante el escalamiento automático) o en el tiempo, donde la demanda es predecible y los recursos se proporcionan en función del tiempo. Estos métodos conllevan la menor cantidad de aprovisionamiento excesivo o insuficiente.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Hay varias formas en que los clientes de AWS pueden aumentar los recursos disponibles para sus aplicaciones y suministrar recursos para satisfacer la demanda. Una de estas opciones es usar AWS Instance Scheduler, que automatiza el inicio y la parada de las instancias de Amazon Elastic Compute Cloud (Amazon EC2) y Amazon Relational Database Service (Amazon RDS). La otra opción es usar AWS Auto Scaling, lo que le permite escalar automáticamente los recursos de computación en función de la demanda de la aplicación o servicio. Suministrar recursos en función de la demanda le permitirá pagar únicamente por los recursos que utilice y reducir los costes, ya que solo lanza los recursos cuando se necesitan y los cancela cuando no. 

 [AWS Instance Scheduler](https://aws.amazon.com/solutions/implementations/instance-scheduler-on-aws/) le permite configurar la detención y el inicio de sus instancias de Amazon EC2 y Amazon RDS en momentos definidos para que pueda satisfacer la demanda de los mismos recursos según un patrón temporal coherente; por ejemplo, que todos los días los usuarios accedan a las ocho de la mañana a instancias de Amazon EC2 que no se necesitan después de las seis de la tarde. Esta solución contribuye a reducir los costes operativos, ya que se detienen los recursos que no están en uso y se ponen en marcha cuando se necesitan. 

![\[Diagrama que muestra la optimización de costes mediante AWS Instance Scheduler.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/instance-scheduler-diagram.png)


 

También puede configurar fácilmente los horarios de sus instancias de Amazon EC2 en todas sus cuentas y regiones con una interfaz de usuario (IU) sencilla mediante la configuración rápida de AWS Systems Manager. Puede programar instancias de Amazon EC2 o Amazon RDS con AWS Instance Scheduler y detener e iniciar las instancias existentes. Sin embargo, no puede detener ni iniciar instancias que formen parte de su grupo de Auto Scaling (ASG) o que administren servicios como Amazon Redshift o Amazon OpenSearch Service. Los grupos de Auto Scaling tienen su propia programación para las instancias del grupo y la creación de estas instancias. 

[AWS Auto Scaling](https://aws.amazon.com/autoscaling/) le ayuda a ajustar la capacidad para mantener un rendimiento predecible y estable al menor coste posible para satisfacer los cambios en la demanda. Es un servicio totalmente administrado y gratuito para escalar la capacidad de su aplicación, que se integra con las instancias y las flotas de spot de Amazon EC2, Amazon ECS, Amazon DynamoDB y Amazon Aurora. Auto Scaling detecta los recursos automáticamente, lo que le ayuda a buscar recursos en su carga de trabajo que se pueden configurar. Además, tiene estrategias de escalamiento integradas para optimizar el rendimiento y los costes, o un equilibrio entre ambos, y proporciona escalamiento predictivo para ayudar en los picos que se producen periódicamente. 

 Hay varias opciones de escalamiento disponibles para escalar su grupo de Auto Scaling: 
+  Mantener siempre los niveles de instancia actuales 
+  Escalar manualmente 
+  Escalar en función de una programación 
+  Escalar en función de la demanda 
+  Usar el escalamiento predictivo 

 Existen diferentes políticas de Auto Scaling. Se pueden clasificar en políticas de escalamiento dinámicas y programadas. Las políticas dinámicas son escalamientos manuales o dinámicos, que pueden ser programados o predictivos. Puede utilizar políticas de escalamiento para un escalamiento dinámico, programado y predictivo. También puede usar las métricas y las alarmas de [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) para desencadenar eventos de escalamiento para la carga de trabajo. Le recomendamos que utilice [plantillas de lanzamiento](https://docs.aws.amazon.com/autoscaling/ec2/userguide/launch-templates.html), que permiten acceder a las características y mejoras más recientes. No todas las características de Auto Scaling están disponibles cuando se utilizan configuraciones de lanzamiento. Por ejemplo, no puede crear un grupo de Auto Scaling que lance instancias de spot y bajo demanda o que especifique varios tipos de instancias. Debe utilizar una plantilla de lanzamiento para configurar estas características. Cuando utilice plantillas de lanzamiento, le recomendamos que realice un control de versiones en cada una de ellas. Con el control de versiones de las plantillas de lanzamiento, puede crear un subconjunto del conjunto completo de parámetros. Luego, puede volver a utilizarlo para crear otras versiones de la misma plantilla de lanzamiento. 

 Puede usar AWS Auto Scaling o incorporar el escalamiento en su código con las [API o SDK de AWS](https://aws.amazon.com/developer/tools/). Esto reduce los costes generales de la carga de trabajo al eliminar el coste operativo de realizar los cambios manualmente en su entorno. Además, los cambios se pueden realizar mucho más rápido. De este modo, también se adapta la dotación de recursos de la carga de trabajo a su demanda en cualquier momento. Para seguir esta práctica recomendada y suministrar recursos de forma dinámica a su organización, debe comprender el escalamiento horizontal y vertical en la Nube de AWS, así como la naturaleza de las aplicaciones que se ejecutan en las instancias de Amazon EC2. Es mejor que su equipo de administración financiera en la nube colabore con los equipos técnicos para seguir esta práctica recomendada. 

 [Elastic Load Balancing (Elastic Load Balancing)](https://aws.amazon.com/elasticloadbalancing/) le ayuda a escalar mediante la distribución de la demanda entre múltiples recursos. Con ASG y Elastic Load Balancing, puede administrar las solicitudes entrantes mediante el enrutamiento óptimo del tráfico para que ninguna instancia se sobrecargue en un grupo de Auto Scaling. Las solicitudes se distribuirían entre todos los destinatarios de un grupo objetivo por turnos, sin tener en cuenta la capacidad ni la utilización. 

 Las métricas habituales pueden ser métricas de Amazon EC2 estándar, como el uso de la CPU, el rendimiento de la red y la latencia de solicitud y respuesta observada de Elastic Load Balancing. Si es posible, debe usar una métrica indicativa de la experiencia del cliente. Suele ser una métrica personalizada que se puede originar en el código de la aplicación en la carga de trabajo. Para explicar cómo satisfacer la demanda de forma dinámica, vamos a agrupar Auto Scaling en dos categorías, modelos de suministro basados en la demanda y modelos de suministro basados en el tiempo, y analizaremos en profundidad cada una de ellas. 

**Suministro basado en la demanda:** aproveche la elasticidad de la nube para suministrar recursos que satisfagan los cambios en la demanda utilizando el estado de la demanda casi en tiempo real. Para el suministro basado en la demanda, utilice las API o las características del servicio para cambiar mediante programación la cantidad de recursos en la nube de su arquitectura. De esta forma, puede escalar componentes en su arquitectura y aumentar la cantidad de recursos durante los picos de demanda para mantener el rendimiento, así como disminuir la capacidad cuando la demanda disminuya para reducir los costes. 

![\[Diagrama que describe las políticas de escalamiento basadas en la demanda, como el escalamiento simple/escalonado y el seguimiento de objetivos.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/demand-based-supply.png)


 
+  **Escalamiento simple/escalonado:** monitoriza las métricas y añade o elimina instancias de acuerdo con los pasos definidos manualmente por los clientes. 
+  **Seguimiento de objetivos:** mecanismo de control similar a un termostato que añade o elimina instancias automáticamente para mantener las métricas en un objetivo definido por el cliente. 

Al diseñar con un enfoque basado en la demanda, tenga en cuenta dos consideraciones clave. La primera: debe conocer la rapidez con la que necesita aprovisionar recursos nuevos. La segunda: tenga en cuenta que el tamaño del margen entre la oferta y la demanda cambiará. Debe estar preparado para poder hacer frente a la velocidad del cambio en la demanda y también a los errores de recursos.

**Suministro basado en el tiempo:** el enfoque basado en el tiempo adapta la capacidad de los recursos a una demanda que es predecible o que está bien definida por el tiempo. Normalmente, este enfoque no depende de los niveles de utilización de los recursos. El enfoque basado en tiempo garantiza que los recursos estén disponibles en el momento específico en que se necesiten y que se puedan proporcionar sin retrasos debidos a los procedimientos de inicio y comprobaciones del sistema o de coherencia. Con el enfoque basado en tiempo, puede brindar recursos adicionales o aumentar la capacidad durante los periodos de mayor actividad.

![\[Diagrama que describe las políticas de escalamiento basadas en el tiempo, como el escalamiento programado y predictivo.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/time-based-supply.png)


 

Puede utilizar el escalamiento automático programado o predictivo para implementar un enfoque basado en el tiempo. Las cargas de trabajo se pueden programar para escalarse o desescalarse horizontalmente en momentos definidos (como el inicio del horario laboral). De este modo, los recursos están disponibles cuando lleguen los usuarios o aumente la demanda. El escalamiento predictivo utiliza patrones para escalar horizontalmente, mientras que el escalamiento programado utiliza tiempos predefinidos para escalar horizontalmente. También puede utilizar [la estrategia de selección de tipos de instancias (ABS) basada en atributos](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html) en grupos de Auto Scaling, lo que permite expresar los requisitos de la instancia como un conjunto de atributos, como la vCPU, la memoria y el almacenamiento. De este modo, también puede utilizar automáticamente los tipos de instancia de nueva generación cuando se lancen y acceder a una gama más amplia de capacidad con las instancias de spot de Amazon EC2. La flota de Amazon EC2 y Amazon EC2 Auto Scaling seleccionan y lanzan instancias que se ajusten a los atributos especificados, por lo que no es necesario elegir manualmente los tipos de instancia. 

También puede utilizar las [API y los SDK de AWS](https://aws.amazon.com/developer/tools/) y [AWS CloudFormation](https://aws.amazon.com/cloudformation/) para aprovisionar y retirar entornos completos de manera automática según sus necesidades. Este enfoque es ideal para los entornos de desarrollo o pruebas que se ejecutan únicamente en horarios laborales o periodos definidos. Puede usar API para escalar el tamaño de los recursos dentro de un entorno (escalado vertical). Por ejemplo, puede escalar verticalmente una carga de trabajo de producción mediante el cambio del tamaño o la clase de instancia. Para ello, hay que detener o iniciar la instancia y seleccionar el tamaño o la clase de instancia diferente. Esta técnica también se puede aplicar a otros recursos, tales como los volúmenes elásticos de Amazon EBS, los cuales se pueden modificar para aumentar el tamaño, ajustar el rendimiento (IOPS) o cambiar el tipo de volumen mientras están en uso.

Al diseñar con un enfoque basado en tiempo, tenga en cuenta dos consideraciones clave. La primera: ¿qué grado de consistencia presenta el patrón? La segunda: ¿en qué afectaría el patrón si cambiara? Puede aumentar la precisión de las predicciones mediante la supervisión de sus cargas de trabajo y el uso de la inteligencia empresarial. Si observa cambios considerables en el patrón de uso, puede ajustar los tiempos para asegurarse de que se proporcione cobertura.

## Pasos para la implementación
<a name="implementation-steps"></a>
+ ** Configure el escalamiento programado: **en caso de cambios predecibles en la demanda, el escalamiento basado en el tiempo puede proporcionar el número correcto de recursos de manera oportuna. También es útil si la creación y configuración de recursos no es suficientemente rápida a la hora de responder a los cambios en la demanda. Use el análisis de las cargas de trabajo para configurar el escalamiento programado con AWS Auto Scaling. Para configurar la programación en función del tiempo, puede utilizar el escalamiento predictivo del escalamiento programado para aumentar por adelantado el número de instancias de Amazon EC2 de sus grupos de Auto Scaling en función de los cambios de carga previstos o predecibles.
+  **Configure el escalamiento predictivo:** el escalamiento predictivo le permite aumentar el número de instancias de Amazon EC2 de su grupo de Auto Scaling según la previsión de los patrones diarios y semanales de los flujos de tráfico. Si tiene picos de tráfico regulares y aplicaciones que tardan mucho en iniciarse, debería plantearse el uso del escalamiento predictivo. El escalamiento predictivo puede ayudarle a escalar más rápidamente mediante la inicialización de la capacidad antes de la carga prevista si se compara con el escalamiento dinámico únicamente, que es de naturaleza reactiva. Por ejemplo, si los usuarios empiezan a utilizar su carga de trabajo con el inicio del horario laboral y no la utilizan fuera de dicho horario, el escalamiento predictivo puede añadir capacidad antes del horario laboral, lo que elimina el retraso del escalamiento dinámico para reaccionar ante los cambios en el tráfico. 
+ ** Configure el escalamiento automático dinámico: **para configurar el escalamiento en función de las métricas de las cargas de trabajo activas, utilice Auto Scaling. Use los análisis y configure Auto Scaling para que se lance en los niveles de recursos correctos y verifique que la carga de trabajo se escala en el tiempo requerido. Puede lanzar y escalar automáticamente una flota de instancias bajo demanda e instancias de spot en un mismo grupo de Auto Scaling. Además de beneficiarse de descuentos por utilizar instancias de spot, puede usar las instancias reservadas o un Savings Plan para obtener descuentos en los precios habituales de las instancias bajo demanda. Todos estos factores combinados le ayudarán a optimizar el ahorro de costes de las instancias de Amazon EC2 y a obtener la escala y el rendimiento que desea para su aplicación.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Auto Scaling](https://aws.amazon.com/autoscaling/) 
+  [AWS Instance Scheduler](https://aws.amazon.com/answers/infrastructure-management/instance-scheduler/) 
+  Escalar el tamaño de su grupo de Auto Scaling 
+  [Getting Started with Amazon EC2 Auto Scaling (Introducción a Amazon EC2 Auto Scaling)](https://docs.aws.amazon.com/autoscaling/ec2/userguide/GettingStartedTutorial.html) 
+  [Getting started with Amazon SQS (Introducción a Amazon SQS)](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html) 
+  [Scheduled Scaling for Amazon EC2 Auto Scaling (Escalamiento programado para Amazon EC2 Auto Scaling)](https://docs.aws.amazon.com/autoscaling/ec2/userguide/schedule_time.html) 
+ [ Predictive scaling for Amazon EC2 Auto Scaling (Escalamiento predictivo para Amazon EC2 Auto Scaling) ](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-predictive-scaling.html)

 **Vídeos relacionados:** 
+ [ Target Tracking Scaling Policies for Auto Scaling (Políticas de escalamiento de seguimiento de destino para Auto Scaling) ](https://www.youtube.com/watch?v=-RumeaoPB2M)
+ [AWS Instance Scheduler ](https://www.youtube.com/watch?v=nTLEyo2NzUs)

 **Ejemplos relacionados:** 
+ [ Attribute based Instance Type Selection for Auto Scaling for Amazon EC2 Fleet (Selección de tipo de instancia basada en atributos para EC2 Auto Scaling y la flota de EC2) ](https://aws.amazon.com/blogs/aws/new-attribute-based-instance-type-selection-for-ec2-auto-scaling-and-ec2-fleet/)
+ [ Optimizing Amazon Elastic Container Service for cost using scheduled scaling (Optimización de Amazon Elastic Container Service para coste mediante el escalamiento programado) ](https://aws.amazon.com/blogs/containers/optimizing-amazon-elastic-container-service-for-cost-using-scheduled-scaling/)
+ [ Predictive scaling with Amazon EC2 Auto Scaling (Escalamiento predictivo con Amazon EC2 Auto Scaling) ](https://aws.amazon.com/blogs/compute/introducing-native-support-for-predictive-scaling-with-amazon-ec2-auto-scaling/)
+ [ How do I use Instance Scheduler with CloudFormation to schedule Amazon EC2 instances? (¿Cómo uso Instance Scheduler con AWS CloudFormation para programar instancias de Amazon EC2) ](https://aws.amazon.com/premiumsupport/knowledge-center/stop-start-instance-scheduler/)

# Optimización a lo largo del tiempo
<a name="a-optimize-over-time"></a>

**Topics**
+ [COST 10 ¿Cómo evalúa los servicios nuevos?](cost-10.md)
+ [COST 11 ¿Cómo evalúa el coste del esfuerzo?](cost-11.md)

# COST 10 ¿Cómo evalúa los servicios nuevos?
<a name="cost-10"></a>

A medida que AWS lanza nuevos servicios y funciones, se recomienda revisar sus decisiones de diseño existentes para asegurarse de que sigan siendo las más rentables.

**Topics**
+ [COST10-BP01 Desarrollo de un proceso de revisión de la carga de trabajo](cost_evaluate_new_services_review_process.md)
+ [COST10-BP02 Revisión y análisis de esta carga de trabajo con regularidad](cost_evaluate_new_services_review_workload.md)

# COST10-BP01 Desarrollo de un proceso de revisión de la carga de trabajo
<a name="cost_evaluate_new_services_review_process"></a>

 Desarrolle un proceso que defina los criterios y el proceso para la revisión de las cargas de trabajo. El esfuerzo de revisión debe reflejar la ventaja potencial. Por ejemplo, las cargas de trabajo principales o las cargas de trabajo con un valor por encima del 10 % de la factura se revisan trimestral o semestralmente, mientras que las cargas de trabajo por debajo del 10 % se revisan anualmente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** alto 

## Guía para la implementación
<a name="implementation-guidance"></a>

Para tener siempre la carga de trabajo más rentable, debe revisar periódicamente la carga de trabajo para saber si hay oportunidades de implementar nuevos servicios, características y componentes. Para conseguir reducir los costes totales, el proceso debe ser proporcional al volumen potencial de ahorro. Por ejemplo, las cargas de trabajo que suponen el 50 % de sus gastos totales se deben revisar con mayor regularidad y más a fondo que las cargas de trabajo que constituyen el 5 % de sus gastos totales. Tenga en cuenta los factores externos o la volatilidad. Si la carga de trabajo da servicio a un segmento geográfico o de mercado específico y se prevén cambios en ese ámbito, unas revisiones más frecuentes podrían suponer un ahorro de costes. Otro factor de revisión es el esfuerzo para implementar los cambios. Si las pruebas y la validación de los cambios suponen un coste importante, las revisiones deberían ser menos frecuentes. 

Hay que tener en cuenta el coste a largo plazo del mantenimiento de componentes y recursos obsoletos y heredados, y la imposibilidad de implementar nuevas características en ellos. El coste actual de las pruebas y la validación puede superar el beneficio propuesto. Sin embargo, con el tiempo, el coste de realizar el cambio puede aumentar significativamente a medida que se incrementa la brecha entre la carga de trabajo y las tecnologías actuales, lo que se traduce en costes aún mayores. Por ejemplo, el coste de pasar a un nuevo lenguaje de programación puede no ser rentable en la actualidad. No obstante, dentro de cinco años, el coste de las personas con competencias en ese lenguaje puede aumentar y, debido al crecimiento de la carga de trabajo, estaría trasladando un sistema aún mayor al nuevo lenguaje, lo que requeriría un esfuerzo aún mayor que el anterior. 

Divida la carga de trabajo en componentes, asigne el coste del componente (basta con una estimación) y, a continuación, enumere los factores (por ejemplo, el esfuerzo y los mercados externos) junto a cada componente. Utilice estos indicadores para determinar la frecuencia de revisión de cada carga de trabajo. Por ejemplo, es posible que los servidores web tengan un coste elevado, un esfuerzo de cambio bajo y unos factores externos elevados, lo que da lugar a una frecuencia de revisión alta. Una base de datos central puede tener un coste medio, un esfuerzo de cambio alto y unos factores externos bajos, lo que da lugar a una frecuencia de revisión media. 

 Defina un proceso para evaluar nuevos servicios, patrones de diseño, tipos de recursos y configuraciones para optimizar el coste de la carga de trabajo a medida que estén disponibles. De forma similar a los procesos de revisión de los pilares de [rendimiento](https://docs.aws.amazon.com/wellarchitected/latest/framework/perf-06.html) y [fiabilidad](https://docs.aws.amazon.com/wellarchitected/latest/framework/rel_monitor_aws_resources_review_monitoring.html), identifique, valide y priorice las actividades de optimización y mejora, así como la corrección de problemas, e incorpórelas a sus tareas pendientes. 

**Pasos para la implementación**
+  **Definir la frecuencia de revisión: **defina con qué frecuencia se deben revisar la carga de trabajo y sus componentes. Asigne tiempo y recursos a la mejora continua y revise la frecuencia para mejorar la eficacia y la optimización de su carga de trabajo. Se trata de una combinación de factores y puede diferir de una carga de trabajo a otra en su organización y entre los componentes de la carga de trabajo. Entre los factores más comunes se encuentran la importancia para la organización medida en cuanto a los ingresos o la marca, el coste total de la ejecución de la carga de trabajo (incluidos los costes de funcionamiento y de recursos), la complejidad de la carga de trabajo, la facilidad para implementar un cambio, cualquier acuerdo de licencia de software y si un cambio supusiera un aumento significativo de los costes de licencia debido a las licencias punitivas. Los componentes pueden definirse funcional o técnicamente, como servidores web y bases de datos, o recursos de computación y almacenamiento. Equilibre los factores de la forma correspondiente y desarrolle un periodo para la carga de trabajo y sus componentes. Puede decidir revisar toda la carga de trabajo cada 18 meses, revisar los servidores web cada 6 meses, la base de datos cada 12 meses, la computación y el almacenamiento a corto plazo cada 6 meses y el almacenamiento a largo plazo cada 12 meses.
+ **Definir la exhaustividad de la revisión:** defina cuánto esfuerzo se dedica a la revisión de la carga de trabajo o de los componentes de la carga de trabajo. Al igual que sucede con la frecuencia de revisión, se trata de equilibrar múltiples factores. Evalúe y priorice las oportunidades de mejora para centrar los esfuerzos donde aporten los mayores beneficios, al tiempo que realiza una estimación del esfuerzo necesario para estas actividades. Si los resultados previstos no alcanzan los objetivos y el esfuerzo necesario cuesta más, repita el proceso con acciones alternativas. Sus procesos de revisión deben incluir tiempo y recursos de sus procesos para hacer posibles las mejoras incrementales continuas. Por ejemplo, puede decidir dedicar una semana de análisis al componente de base de datos, una semana de análisis a los recursos de computación y cuatro horas a las revisiones de almacenamiento.

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/) 
+  [Tipos de informática en la nube](https://aws.amazon.com/types-of-cloud-computing/) 
+  [Novedades de AWS](https://aws.amazon.com/new/) 

 **Ejemplos relacionados:** 
+ [AWS Support Proactive Services ](https://aws.amazon.com/premiumsupport/technology-and-programs/proactive-services/)(Servicios proactivos de asistencia de AWS)
+ [ Regular workload reviews for SAP workloads ](https://docs.aws.amazon.com/wellarchitected/latest/sap-lens/best-practice-4-4.html)(Revisiones periódicas de las cargas de trabajo de SAP)

# COST10-BP02 Revisión y análisis de esta carga de trabajo con regularidad
<a name="cost_evaluate_new_services_review_workload"></a>

Las cargas de trabajo existentes se revisan periódicamente en función de cada proceso definido para averiguar si se pueden adoptar nuevos servicios, reemplazar los existentes o rediseñar las cargas de trabajo.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

AWS añade constantemente nuevas características para que pueda experimentar e innovar más rápidamente con la tecnología más reciente. En [Novedades de AWS](https://aws.amazon.com/new/) se detalla cómo AWS está haciendo esto y ofrece información general rápida de los servicios, las características y los anuncios de ampliaciones regionales de AWS a medida que se publican. Puede profundizar en los lanzamientos que se han anunciado y utilizarlos para revisar y analizar sus cargas de trabajo existentes. Para obtener las ventajas de los nuevos servicios y características de AWS, debe revisar sus cargas de trabajo e implementar los nuevos servicios y características según sea necesario. Esto significa que es posible que tenga que reemplazar los servicios existentes que utiliza para la carga de trabajo o modernizarla para adoptar estos nuevos servicios de AWS. Por ejemplo, podría revisar sus cargas de trabajo y reemplazar el componente de mensajería por Amazon Simple Email Service. Esto elimina el coste de utilizar y mantener una flota de instancias, a la vez que proporciona toda la funcionalidad a un coste reducido. 

 Para analizar su carga de trabajo y destacar las posibles oportunidades, debe tener en cuenta no solo nuevos servicios, sino también nuevas formas de crear soluciones. Vea los vídeos de [This is My Architecture](https://aws.amazon.com/architecture/this-is-my-architecture) en AWS para conocer los diseños de arquitectura de otros clientes, sus desafíos y sus soluciones. Consulte [All-In series](https://aws.amazon.com/architecture/all-in-series/) para conocer las aplicaciones reales de los servicios de AWS y las historias de clientes. También puede ver la serie de vídeos [Back to Basics](https://aws.amazon.com/architecture/back-to-basics/), donde se explican, examinan y desglosan las prácticas recomendadas básicas de los patrones de arquitectura en la nube. Otra fuente son los vídeos [How to Build This](https://aws.amazon.com/architecture/how-to-build-this/), diseñados para ayudar a las personas con grandes ideas a dar vida a su producto mínimo viable (MVP, por sus siglas en inglés) mediante servicios de AWS. Es una forma de que los creadores de todo el mundo que tengan una idea sólida reciban orientación sobre arquitectura de arquitectos de soluciones de AWS experimentados. Por último, puede consultar los materiales de recursos de [Introducción](https://aws.amazon.com/getting-started/), que contiene tutoriales paso a paso. 

 Antes de ejecutar el proceso de revisión, cumpla los requisitos de su empresa en cuanto a carga de trabajo, seguridad y privacidad de los datos para poder utilizar un servicio específico o los requisitos de la región y rendimiento mientras sigue el proceso de revisión acordado. 

**Pasos para la implementación**
+ **Revisar periódicamente la carga de trabajo: **mediante su proceso definido, realice las revisiones con la frecuencia especificada. Compruebe que dedica el esfuerzo adecuado a cada componente. Este proceso sería similar al del diseño inicial, en el que seleccionó los servicios para la optimización de costes. Analice los servicios y las ventajas que aportarían. Esta vez, tenga en cuenta el coste de realizar el cambio, no solo las ventajas a largo plazo. 
+ **Implementar los nuevos servicios:** si la conclusión del análisis es implementar cambios, realice primero una base de referencia de la carga de trabajo para conocer el coste actual de cada resultado. Implemente los cambios y, a continuación, realice un análisis para confirmar el nuevo coste de cada resultado. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Blog de noticias de AWS](https://aws.amazon.com/blogs/aws/) 
+  [Novedades de AWS](https://aws.amazon.com/new/) 
+ [Documentación de AWS](https://docs.aws.amazon.com/)
+ [Introducción a AWS](https://aws.amazon.com/getting-started/)
+ [Recursos generales de AWS](https://docs.aws.amazon.com/#general_resources)

 **Vídeos relacionados: ** 
+  [AWS - This is My Architecture](https://aws.amazon.com/architecture/this-is-my-architecture) 
+  [AWS - Back to Basics](https://aws.amazon.com/architecture/back-to-basics/) 
+  [AWS - All-In series](https://aws.amazon.com/architecture/all-in-series/) 
+  [How to Build This](https://aws.amazon.com/architecture/how-to-build-this/) 

# COST 11 ¿Cómo evalúa el coste del esfuerzo?
<a name="cost-11"></a>

**Topics**
+ [COST11-BP01 Realizar automatizaciones de las operaciones](cost_evaluate_cost_effort_automations_operations.md)

# COST11-BP01 Realizar automatizaciones de las operaciones
<a name="cost_evaluate_cost_effort_automations_operations"></a>

 Evalúe el coste del esfuerzo de las operaciones en la nube. Cuantifique la reducción de tiempo y esfuerzo en las tareas de administración, despliegue y otras operaciones mediante la automatización. Evalúe el tiempo y el coste necesarios para el esfuerzo de las operaciones y automatice las tareas administrativas para reducir el esfuerzo manual en la medida de lo posible. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

 La automatización de las operaciones mejora la coherencia y la escalabilidad, proporciona más visibilidad, fiabilidad y flexibilidad, reduce los costes y acelera la innovación al liberar recursos humanos y mejorar las métricas. Reduce la frecuencia de las tareas manuales, mejora la eficacia y beneficia a las empresas ya que ofrece una experiencia coherente y fiable al desplegar, administrar u operar cargas de trabajo. Puede liberar recursos de infraestructura de las tareas operativas manuales y utilizarlos para tareas de mayor valor e innovaciones, con lo que se mejorarán los resultados empresariales. Las empresas necesitan una forma probada y contrastada de administrar sus cargas de trabajo en la nube. Esa solución debe ser segura, rápida y rentable, con mínimo riesgo y máxima fiabilidad. 

 Comience por priorizar sus operaciones en función del esfuerzo necesario, mediante el análisis del coste global de las operaciones en la nube. Por ejemplo, ¿cuánto tiempo se tarda en desplegar nuevos recursos en la nube, realizar cambios de optimización en los existentes o implementar las configuraciones necesarias? Analice el coste total de las acciones humanas teniendo en cuenta el coste de las operaciones y de la administración. Dé prioridad a las automatizaciones de las tareas administrativas para reducir el esfuerzo manual. El esfuerzo de revisión debe reflejar la ventaja potencial. Por ejemplo, el tiempo dedicado a realizar tareas manualmente frente al tiempo dedicado a realizarlas de forma automática. Dé prioridad a la automatización de las actividades repetitivas y de alto valor. Las actividades que entrañan un mayor riesgo de errores humanos suelen ser el mejor lugar para empezar a automatizar, ya que el riesgo suele suponer un coste operativo adicional no deseado (por ejemplo, que el equipo de operaciones trabaje horas extra). 

 Mediante servicios de AWS, herramientas o productos de terceros, puede elegir qué automatizaciones de AWS se implementarán y personalizarán según sus requisitos específicos. En la tabla siguiente se muestran algunas de las funciones y capacidades de funcionamiento básicas que puede conseguir con los servicios de AWS para automatizar la administración y el funcionamiento: 
+  [AWS Audit Manager](https://aws.amazon.com/audit-manager/): audite su uso de AWS de forma continua para simplificar la evaluación del riesgo y el cumplimiento. 
+  [AWS Backup](https://aws.amazon.com/backup/): administre y automatice la protección de datos de forma centralizada. 
+  [AWS Config](https://aws.amazon.com/config/): configure los recursos de computación, valore, audite y evalúe las configuraciones y el inventario de recursos. 
+  [AWS CloudFormation](https://aws.amazon.com/cloudformation/): lance recursos de alta disponibilidad con la infraestructura como código. 
+  [AWS CloudTrail](https://aws.amazon.com/cloudtrail/): administración de cambios de TI, cumplimiento y control. 
+  [Amazon EventBridge](https://aws.amazon.com/eventbridge/): programe eventos y desencadene la acción de AWS Lambda. 
+  [AWS Lambda](https://aws.amazon.com/lambda/): automatice los procesos repetitivos desencadenándolos con eventos o ejecutándolos según una programación fija con Amazon EventBridge. 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/): inicie y detenga las cargas de trabajo, aplique revisiones a los sistemas operativos, automatice la configuración y la administración continua. 
+  [AWS Step Functions](https://aws.amazon.com/step-functions/): programe trabajos y automatice flujos de trabajo. 
+  [AWS Service Catalog](https://aws.amazon.com/servicecatalog/): consumo de plantillas e infraestructura como código con cumplimiento y control. 

 Considere el ahorro de tiempo que permitirá a su equipo centrarse en la retirada de la deuda técnica, la innovación y las características de valor añadido. Por ejemplo, es posible que deba migrar su entorno local mediante lift-and-shift a la nube lo más rápido posible y optimizarlo más adelante. Merece la pena explorar el ahorro que podría conseguir mediante el uso de servicios completamente administrados mediante AWS que eliminen o reduzcan los costes de las licencias como [Amazon Relational Database Service](https://aws.amazon.com/rds/), [Amazon EMR](https://aws.amazon.com/emr/), [Amazon WorkSpaces](https://aws.amazon.com/workspaces/) y [Amazon SageMaker AI](https://aws.amazon.com/sagemaker/). Los servicios administrados eliminan la carga operativa y administrativa del mantenimiento de un servicio, lo que le permite centrarse en la innovación. Y dado que los servicios administrados operan a la escala de la nube, pueden ofrecer un costo menor por transacción o servicio. 

 Si desea adoptar automatizaciones de forma inmediata con el uso de productos y servicios de AWS y si no dispone de competencias en su organización, póngase en contacto con [AWS Managed Services (AMS)](https://aws.amazon.com/managed-services/), [AWS Professional Services](https://aws.amazon.com/professional-services/) o los [socios de AWS](https://aws.amazon.com/partners/work-with-partners/) para aumentar la adopción de la automatización y mejorar su excelencia operativa en la nube. 

 [AWS Managed Services (AMS)](https://aws.amazon.com/managed-services/) es un servicio que utiliza la infraestructura de AWS en nombre de los clientes y socios de la empresa. Proporciona un entorno seguro y conforme en el que puede desplegar sus cargas de trabajo. AMS utiliza modelos operativos de nube empresarial con automatización para permitirle cumplir con los requisitos de su organización, pasar a la nube más rápidamente y reducir los costes de administración continua. 

 [AWS Professional Services](https://aws.amazon.com/professional-services/) también puede ayudarle a conseguir los resultados empresariales deseados y a automatizar las operaciones con AWS. AWS Professional Services proporciona prácticas especializadas globales para ayudarle en sus esfuerzos en áreas específicas de la computación en la nube empresarial. Las prácticas especializadas ofrecen orientación específica a través de prácticas recomendadas, marcos, herramientas y servicios en áreas temáticas de soluciones, tecnología y sectores. Ayudan a los clientes a desplegar operaciones de TI automatizadas, sólidas y ágiles, así como capacidades de gobernanza optimizadas para el centro en la nube. 

 **Pasos para la implementación** 
+  **Crear una vez y desplegar muchas veces:** utilice infraestructura como código como AWS CloudFormation, AWS SDK o AWS Command Line Interface (AWS CLI) para desplegar una vez y utilizar muchas veces para el mismo entorno o para escenarios de recuperación de desastres. Etiquete mientras despliega para realizar un seguimiento de su consumo, tal y como se define en otras prácticas recomendadas. Utilice [AWS Launch Wizard](https://aws.amazon.com/launchwizard/) para reducir el tiempo de despliegue de muchas cargas de trabajo empresariales populares. AWS Launch Wizard le guía a través del dimensionamiento, la configuración y el despliegue de cargas de trabajo empresariales según las prácticas recomendadas de AWS. También puede utilizar el [AWS Service Catalog](https://aws.amazon.com/servicecatalog/), que le ayuda a crear y administrar plantillas aprobadas de infraestructura como código para su uso en AWS para que cualquiera pueda descubrir recursos en la nube aprobados y de autoservicio. 
+  **Automatizar operaciones: ** ejecute operaciones rutinarias automáticamente sin intervención manual. Con los servicios y las herramientas de AWS, puede elegir qué automatizaciones de AWS implementar y personalizar según sus requisitos específicos. Por ejemplo, utilice [EC2 Image Builder](https://aws.amazon.com/image-builder/) para crear, probar y desplegar imágenes de máquinas virtuales y de contenedores para su uso en AWS o en un entorno local. Si la acción que desea llevar a cabo no se puede realizar con los servicios de AWS o necesita acciones más complejas con recursos de filtrado, automatice sus operaciones con las herramientas de [AWS CLI](https://aws.amazon.com/cli/index.html) o AWS SDK. AWS CLI proporciona la posibilidad de automatizar todo el proceso de control y administración de servicios de AWS mediante scripts sin necesidad de utilizar la consola de AWS. Seleccione sus SDK de AWS preferidos para interactuar con los servicios de AWS. Para ver otros ejemplos de código, consulte el [repositorio de ejemplos de código de AWS SDK](https://github.com/awsdocs/aws-doc-sdk-examples). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Modernización de las operaciones en la Nube de AWS](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-operations-integration/welcome.html)
+ [ Servicios de AWS para la automatización ](https://docs.aws.amazon.com/prescriptive-guidance/latest/migration-operations-integration/aws-services-for-automation.html)
+ [ Automatización de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-automation.html)
+ [ Automatizaciones de AWS para la administración y las operaciones de SAP ](https://docs.aws.amazon.com/prescriptive-guidance/latest/strategy-sap-automation/automations.html)
+ [AWS Managed Services](https://aws.amazon.com/managedservices/index.html)
+ [AWS Professional Services ](https://aws.amazon.com/professional-services/)
+ [ Automatización de la infraestructura ](https://aws.amazon.com/blogs/infrastructure-and-automation/)

 **Ejemplos relacionados:** 
+ [ Reinventing automated operations (Part I) ](https://aws.amazon.com/blogs/mt/reinventing-automated-operations-part-i/) (Reinvención de las operaciones automatizadas [parte I])
+ [ Reinventing automated operations (Part II) ](https://aws.amazon.com/blogs/mt/reinventing-automated-operations-part-ii/) (Reinvención de las operaciones automatizadas [parte II])
+ [ Automatizaciones de AWS para la administración y las operaciones de SAP ](https://docs.aws.amazon.com/prescriptive-guidance/latest/strategy-sap-automation/automations.html)
+ [ IT Automations with AWS Lambda](https://aws.amazon.com/lambda/it-automation/) (Automatizaciones de TI con AWS Lambda)
+ [ Repositorio de ejemplos de código de AWS](https://github.com/awsdocs/aws-doc-sdk-examples)
+ [ Muestras de AWS](https://github.com/aws-samples)

# Sostenibilidad
<a name="a-sustainability"></a>

El pilar de sostenibilidad incluye comprender las repercusiones de los servicios que se usan, cuantificar el impacto durante todo el ciclo de vida de la carga de trabajo y aplicar tanto principios de diseño como prácticas recomendadas para reducir estas repercusiones al diseñar cargas de trabajo en la nube. Encontrará una guía prescriptiva sobre implementación en el [documento técnico Pilar de sostenibilidad](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/sustainability-pillar.html?ref=wellarchitected-wp).

**Topics**
+ [Selección de regiones](a-region-selection.md)
+ [Alineación con la demanda](a-alignment-to-demand.md)
+ [Software y arquitectura](a-sus-software-architecture.md)
+ [Almacenamiento](a-sus-data.md)
+ [Hardware y servicios](a-sus-hardware-and-services.md)
+ [Proceso y cultura](a-sus-process-and-culture.md)

# Selección de regiones
<a name="a-region-selection"></a>

**Topics**
+ [SUS 1 ¿Cómo selecciona las regiones para la carga de trabajo?](w2aac19c17b7b5.md)

# SUS 1 ¿Cómo selecciona las regiones para la carga de trabajo?
<a name="w2aac19c17b7b5"></a>

La elección de la región para su carga de trabajo afecta significativamente a sus KPI, incluidos el rendimiento, el coste y la huella de carbono. Para mejorar eficazmente estos KPI, debe elegir las regiones para sus cargas de trabajo basándose tanto en los requisitos empresariales como en los objetivos de sostenibilidad.

**Topics**
+ [SUS01-BP01 Elegir la región basándose tanto en los requisitos empresariales como en los objetivos de sostenibilidad](sus_sus_region_a2.md)

# SUS01-BP01 Elegir la región basándose tanto en los requisitos empresariales como en los objetivos de sostenibilidad
<a name="sus_sus_region_a2"></a>

Elija una región para su carga de trabajo basándose tanto en los requisitos empresariales como en los objetivos de sostenibilidad para optimizar sus KPI, incluidos el rendimiento, el coste y la huella de carbono.

 **Patrones comunes de uso no recomendados:** 
+  Selecciona la región de la carga de trabajo en función de la propia ubicación. 
+  Consolida todos los recursos de la carga de trabajo en una ubicación geográfica. 

 **Beneficios de establecer esta práctica recomendada:** la colocación de una carga de trabajo cerca de proyectos de energías renovables de Amazon o de regiones con baja intensidad de carbono publicada puede ayudar a reducir la huella de carbono de una carga de trabajo en la nube. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

La Nube de AWS es una red en constante expansión de regiones y puntos de presencia (POP), con una infraestructura de red global que los une. La elección de la región para su carga de trabajo afecta significativamente a sus KPI, incluidos el rendimiento, el coste y la huella de carbono. Para mejorar eficazmente estos KPI, debe elegir las regiones para su carga de trabajo basándose tanto en los requisitos empresariales como en los objetivos de sostenibilidad.

 **Pasos para la aplicación** 
+  Siga estos pasos para evaluar y preseleccionar las posibles regiones para la carga de trabajo en función de los requisitos empresariales, incluido el cumplimiento, las características disponibles, el coste y la latencia: 
  +  Confirme que estas regiones cumplen con la normativa local vigente. 
  +  Utilice las [listas de servicios regionales de AWS](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/) para comprobar si las regiones disponen de los servicios y las características que necesita para ejecutar su carga de trabajo. 
  +  Calcule el coste de la carga de trabajo en cada región mediante [Calculadora de precios de AWS](https://calculator.aws/). 
  +  Pruebe la latencia de la red entre las ubicaciones de sus usuarios finales y cada Región de AWS. 
+  Elija regiones cerca de proyectos de energías renovables de Amazon y regiones en las que la intensidad de carbono recogida en la cuadrícula sea más baja que en otras ubicaciones (o regiones). 
  +  Determine las directrices de sostenibilidad pertinentes para realizar un seguimiento y comparar las emisiones de carbono de un año a otro basándose en el [protocolo de gases de efecto invernadero](https://ghgprotocol.org/) (métodos basados en el mercado y en la ubicación). 
  +  Elija la región en función del método que utilice para hacer un seguimiento de las emisiones de carbono. Para obtener más detalles sobre la elección de una región en función de sus directrices de sostenibilidad, consulte [How to select a Region for your workload based on sustainability goals](https://aws.amazon.com/blogs/architecture/how-to-select-a-region-for-your-workload-based-on-sustainability-goals/) (Cómo seleccionar una región para su carga de trabajo en función de los objetivos de sostenibilidad). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Descripción de las estimaciones de emisiones de carbono](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/ccft-estimation.html) 
+  [Amazon en todo el mundo](https://sustainability.aboutamazon.com/about/around-the-globe?energyType=true) 
+  [Metodología de energía renovable](https://sustainability.aboutamazon.com/amazon-renewable-energy-methodology) 
+  [Qué tener en cuenta al seleccionar una región para las cargas de trabajo](https://aws.amazon.com/blogs/architecture/what-to-consider-when-selecting-a-region-for-your-workloads/) 

 **Vídeos relacionados: ** 
+  [Architecting sustainably and reducing your AWS carbon footprint](https://www.youtube.com/watch?v=jsbamOLpCr8) ( Arquitectura sostenible y reducción de la huella de carbono de AWS) 

# Alineación con la demanda
<a name="a-alignment-to-demand"></a>

**Topics**
+ [SUS 2 ¿Cómo alinea los recursos en la nube a su demanda?](sus-02.md)

# SUS 2 ¿Cómo alinea los recursos en la nube a su demanda?
<a name="sus-02"></a>

La forma en que los usuarios y las aplicaciones consumen sus cargas de trabajo y otros recursos puede ayudarle a identificar las mejoras necesarias para alcanzar sus objetivos de sostenibilidad. Escale la infraestructura para adaptarla continuamente a la demanda y compruebe que solo utiliza los recursos mínimos necesarios para prestar asistencia a sus usuarios. Alinee los niveles de servicio con las necesidades de los clientes. Posicione los recursos de forma que se limite el uso de red necesario para que los usuarios y las aplicaciones puedan consumirlos. Elimine los activos sin usar. Proporcione a los miembros de su equipo dispositivos que satisfagan sus necesidades con un impacto mínimo en la sostenibilidad.

**Topics**
+ [SUS02-BP01 Escalar la infraestructura de la carga de trabajo dinámicamente](sus_sus_user_a2.md)
+ [SUS02-BP02: Alineación de los SLA con los objetivos de sostenibilidad](sus_sus_user_a3.md)
+ [SUS02-BP03: Detener la creación y el mantenimiento de los recursos no utilizados](sus_sus_user_a4.md)
+ [SUS02-BP04 Optimizar la ubicación geográfica de las cargas de trabajo en función de sus requisitos de red](sus_sus_user_a5.md)
+ [SUS02-BP05: Optimización de los recursos de los miembros del equipo para las actividades realizadas](sus_sus_user_a6.md)
+ [SUS02-BP06 Implementar el almacenamiento en búfer o la limitación para aplanar la curva de demanda](sus_sus_user_a7.md)

# SUS02-BP01 Escalar la infraestructura de la carga de trabajo dinámicamente
<a name="sus_sus_user_a2"></a>

Utilice la elasticidad de la nube y escale su infraestructura de forma dinámica para adaptar la oferta de recursos en la nube a la demanda y evitar un exceso de capacidad en su carga de trabajo.

**Patrones comunes de uso no recomendados:**
+ No se escala la infraestructura con la carga de usuarios.
+ La infraestructura se escala manualmente todo el tiempo.
+ Deja la capacidad aumentada después de un evento de ajuste de escala en lugar de volver a desescalar verticalmente.

 **Ventajas de establecer esta práctica recomendada:** la configuración y las pruebas de la elasticidad de la carga de trabajo contribuyen a ajustar de forma eficaz la oferta de recursos en la nube a la demanda y a evitar el exceso de capacidad aprovisionada. Puede aprovechar la elasticidad de la nube para escalar automáticamente la capacidad durante y después de los picos de demanda para asegurarse de que solo utiliza el número correcto de recursos necesarios para satisfacer los requisitos empresariales.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La nube ofrece la flexibilidad de ampliar o reducir sus recursos de forma dinámica a través de diversos mecanismos para satisfacer los cambios en la demanda. La correspondencia óptima entre la oferta y la demanda ofrece el menor impacto medioambiental para una carga de trabajo. 

 La demanda puede ser fija o variable, lo que requiere métricas y automatización para garantizar que la administración no resulte difícil. Las aplicaciones pueden escalarse o desescalarse verticalmente mediante la modificación del tamaño de la instancia, escalarse o desescalarse horizontalmente mediante la modificación del número de instancias, o una combinación de ambas. 

 Puede usar distintos enfoques para hacer que el suministro de recursos coincida con la demanda. 
+  **Enfoque de seguimiento de objetivos:** supervise su métrica de escalado y aumente o reduzca de forma automática la capacidad a medida que la necesite. 
+  **Escalamiento predictivo:** desescale horizontalmente para prever las tendencias diarias y semanales. 
+  **Enfoque basado en la programación:** configure su propia programación según los cambios de carga predecibles. 
+  **Escalamiento de servicios:** elija servicios (como los que son sin servidor) que se escalan de forma nativa por diseño o proporcione el escalamiento automático como una característica. 

 Identifique los períodos de uso reducido o inexistente y escale los recursos en consonancia para eliminar el exceso de capacidad y mejorar la eficiencia. 

## Pasos para la aplicación
<a name="implementation-steps"></a>
+ La elasticidad hace coincidir la oferta de los recursos que tiene con la demanda de esos recursos. Las instancias, los contenedores y las funciones proporcionan mecanismos de elasticidad, ya sea en combinación con el escalamiento automático o como características del servicio. AWS proporciona una serie de mecanismos de escalamiento automático para garantizar que las cargas de trabajo puedan desescalarse verticalmente de forma rápida y sencilla durante los periodos con poca carga de usuarios. A continuación, se presentan algunos ejemplos de mecanismos de escalamiento automático:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_user_a2.html)
+  A menudo se habla de escalamiento en relación con servicios de computación como instancias de Amazon EC2 o funciones AWS Lambda. Considere la configuración de servicios no computacionales como unidades de capacidad de lectura y escritura de [Amazon DynamoDB](https://aws.amazon.com/dynamodb/) o particiones de [Amazon Kinesis Data Streams](https://aws.amazon.com/kinesis/data-streams/) para ajustarse a la demanda. 
+  Verifique que las métricas para escalar o desescalar verticalmente se validan con respecto al tipo de carga de trabajo que se está desplegando. Si está desplegando una aplicación de transcodificación de vídeo, se espera una utilización del 100 % de la CPU y no debería ser su métrica principal. Puede usar una [métrica personalizada](https://aws.amazon.com/blogs/mt/create-amazon-ec2-auto-scaling-policy-memory-utilization-metric-linux/) (como la utilización de la memoria) para su política de escalamiento si es necesario. Para elegir las métricas adecuadas, tenga en cuenta las siguientes directrices para Amazon EC2: 
  +  La métrica debe ser una métrica de utilización válida y describir el grado de ocupación de una instancia. 
  +  El valor de la métrica debe aumentar o disminuir proporcionalmente al número de instancias del grupo de Auto Scaling. 
+  Utilice el [escalamiento dinámico](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scale-based-on-demand.html) en lugar del [manual](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-manual-scaling.html) para su grupo de Auto Scaling. También le recomendamos que use las [políticas de escalamiento de seguimiento de destino](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-scaling-target-tracking.html) en el escalamiento dinámico. 
+  Verifique que los despliegues de la carga de trabajo puedan manejar los eventos de escalamiento y desescalamiento horizontales. Cree escenarios de prueba para los eventos de escalamiento con el fin de verificar que la carga de trabajo se comporta del modo previsto y no afecta a la experiencia del usuario (como la pérdida de sesiones persistentes). Puede utilizar el [historial de actividades](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-verify-scaling-activity.html) para verificar una actividad de escalamiento correspondiente a un grupo de Auto Scaling. 
+  Evalúe los patrones predecibles de su carga de trabajo y escale de forma proactiva al anticiparse a los cambios previstos y planeados en la demanda. Con el escalamiento predictivo, puede eliminar la necesidad de aprovisionar capacidad en exceso. Para obtener más detalles, consulte [Escalamiento predictivo con Amazon EC2 Auto Scaling](https://aws.amazon.com/blogs/compute/introducing-native-support-for-predictive-scaling-with-amazon-ec2-auto-scaling/). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Getting Started with Amazon EC2 Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/GettingStartedTutorial.html) (Introducción a Amazon EC2 Auto Scaling) 
+  [Predictive Scaling for EC2, Powered by Machine Learning (Escalado predictivo para EC2, impulsado por el aprendizaje automático)](https://aws.amazon.com/blogs/aws/new-predictive-scaling-for-ec2-powered-by-machine-learning/) 
+  [Analyze user behavior using Amazon OpenSearch Service, Amazon Data Firehose and Kibana](https://aws.amazon.com/blogs/database/analyze-user-behavior-using-amazon-elasticsearch-service-amazon-kinesis-data-firehose-and-kibana/) (Análisis del comportamiento del usuario con Amazon OpenSearch Service, Amazon Data Firehose y Kibana) 
+  [¿Qué es Amazon CloudWatch?](https://docs.aws.amazon.com/Amazon/latest/monitoring/WhatIs.html) 
+  [Supervisión de la carga de bases de datos con Información sobre rendimiento en Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html) 
+  [Introducing Native Support for Predictive Scaling with Amazon EC2 Auto Scaling](https://aws.amazon.com/blogs/compute/introducing-native-support-for-predictive-scaling-with-amazon-ec2-auto-scaling/) (Introducción a la compatibilidad nativa para escalado predictivo con Amazon EC2 Auto Scaling) 
+  [Introducing Karpenter - An Open-Source, High-Performance Kubernetes Cluster Autoscaler (Presentación de Karpenter: Cluster Autoscaler de Kubernetes de código abierto y alto rendimiento)](https://aws.amazon.com/blogs/aws/introducing-karpenter-an-open-source-high-performance-kubernetes-cluster-autoscaler/) 
+  [Deep Dive on Amazon ECS Cluster Auto Scaling](https://aws.amazon.com/blogs/containers/deep-dive-on-amazon-ecs-cluster-auto-scaling/) (Profundización en Auto Scaling de clúster de Amazon ECS) 

 **Vídeos relacionados: ** 
+  [Build a cost-, energy-, and resource-efficient compute environment](https://www.youtube.com/watch?v=8zsC5e1eLCg) (Crear un entorno de computación rentable, eficiente en términos de costes, energía y recursos) 
+  [Better, faster, cheaper compute: Cost-optimizing Amazon EC2](https://www.youtube.com/watch?v=_dvh4P2FVbw) (Computación mejor, más rápida y más barata: Optimización de costes de Amazon EC2) (CMP202-R1) 

 **Ejemplos relacionados:** 
+  [Lab: Amazon EC2 Auto Scaling Group Examples](https://github.com/aws-samples/amazon-ec2-auto-scaling-group-examples) (Laboratorio: ejemplos de grupos de Amazon EC2 Auto Scaling) 
+  [Lab: Implement Autoscaling with Karpenter (Laboratorio: Implementar escalado automático con Karpenter)](https://www.eksworkshop.com/beginner/085_scaling_karpenter/) 

# SUS02-BP02: Alineación de los SLA con los objetivos de sostenibilidad
<a name="sus_sus_user_a3"></a>

 Revise y optimice los acuerdos de nivel de servicio (SLA) de la carga de trabajo en función de sus objetivos de sostenibilidad a fin de minimizar los recursos necesarios para admitir la carga de trabajo sin dejar de satisfacer las necesidades empresariales. 

 **Antipatrones usuales:** 
+  Los SLA de carga de trabajo se desconocen o son ambiguos. 
+  Define su SLA solo para la disponibilidad y el rendimiento. 
+  Utiliza el mismo patrón de diseño (como la arquitectura multi-AZ) para todas sus cargas de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** la alineación de los SLA con los objetivos de sostenibilidad conlleva un uso óptimo de los recursos, al tiempo que se satisfacen las necesidades empresariales. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los SLA definen el nivel de servicio que se espera de una carga de trabajo en la nube, como el tiempo de respuesta, la disponibilidad y la retención de datos. Influyen en la arquitectura, el uso de recursos y el impacto medioambiental de una carga de trabajo en la nube. Con una cadencia regular, revise los SLA y realice concesiones para reducir significativamente el uso de recursos a cambio de disminuciones aceptables en los niveles de servicio. 

 **Pasos para la implementación** 
+  Defina o rediseñe SLA que respalden sus objetivos de sostenibilidad y que, a la vez, cumplan sus requisitos empresariales sin superarlos. 
+  Haga concesiones para disminuir significativamente las repercusiones en la sostenibilidad a cambio de reducciones aceptables en los niveles de servicio. 
  +  **Sostenibilidad y fiabilidad:** las cargas de trabajo de alta disponibilidad tienden a consumir más recursos. 
  +  **Sostenibilidad y rendimiento:** el uso de más recursos para aumentar el rendimiento podría tener mayor impacto medioambiental. 
  +  **Sostenibilidad y seguridad:** las cargas de trabajo demasiado seguras podrían tener mayor impacto medioambiental. 
+  Use patrones de diseño, como [microservicios en AWS](https://docs.aws.amazon.com/whitepapers/latest/microservices-on-aws/microservices-on-aws.html), que den prioridad a las funciones fundamentales y permitan unos niveles de servicio más bajos (como objetivos de tiempo de respuesta o de tiempo de recuperación) para las funciones que no sean esenciales. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Acuerdos de nivel de servicios (SLA) de AWS](https://aws.amazon.com/legal/service-level-agreements/?aws-sla-cards.sort-by=item.additionalFields.serviceNameLower&aws-sla-cards.sort-order=asc&awsf.tech-category-filter=*all) 
+  [Importance of Service Level Agreement for SaaS Providers](https://aws.amazon.com/blogs/apn/importance-of-service-level-agreement-for-saas-providers/) (Importancia de los acuerdos de nivel de servicio para los proveedores de SaaS) 

 **Vídeos relacionados: ** 
+ [ Delivering sustainable, high-performing architectures ](https://www.youtube.com/watch?v=FBc9hXQfat0)(Entrega de arquitecturas sostenibles y de alto rendimiento)
+ [Build a cost-, energy-, and resource-efficient compute environment (Crear un entorno de computación rentable, eficiente en términos de costes, energía y recursos)](https://www.youtube.com/watch?v=8zsC5e1eLCg)

# SUS02-BP03: Detener la creación y el mantenimiento de los recursos no utilizados
<a name="sus_sus_user_a4"></a>

Retire los activos no utilizados de su carga de trabajo para reducir el número de recursos en la nube necesarios para atender su demanda y minimizar los residuos.

 **Patrones comunes de uso no recomendados:** 
+  No analiza su aplicación en busca de activos redundantes o que ya no son necesarios. 
+  No elimina los activos que son redundantes o que ya no son necesarios. 

 **Beneficios de establecer esta práctica recomendada:** la eliminación de los activos no utilizados libera recursos y mejora la eficacia general de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los activos no utilizados consumen recursos de la nube, como espacio de almacenamiento y potencia de computación. Con la identificación y eliminación de estos activos, podrá liberar estos recursos, lo que dará lugar a una arquitectura en la nube más eficiente. Realice análisis periódicos en los activos de aplicaciones (como los informes precompilados, los conjuntos de datos y las imágenes estáticas) y los patrones de acceso a los activos para identificar cualquier tipo de redundancia, infrautilización y los posibles objetivos de retirada. Elimine esos activos redundantes para reducir el despilfarro de recursos en su carga de trabajo. 

 **Pasos para la implementación** 
+  Utilice herramientas de supervisión para identificar los activos estáticos que ya no sean necesarios. 
+  Antes de eliminar un activo, evalúe el impacto de su eliminación en la arquitectura. 
+  Desarrolle un plan y elimine los activos que ya no sean necesarios. 
+  Consolide los recursos generados superpuestos para eliminar el procesamiento redundante. 
+  Actualice las aplicaciones para que dejen de producir y almacenar activos que no sean necesarios. 
+  Indique a terceros que administren en su nombre recursos que ya no son necesarios que dejen de producirlos y almacenarlos. 
+  Indique a terceros que consoliden los recursos redundantes producidos en su nombre. 
+  Revise periódicamente la carga de trabajo para identificar y eliminar los activos no utilizados. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Optimización de la infraestructura de AWS para la sostenibilidad, parte II: almacenamiento](https://aws.amazon.com/blogs/architecture/optimizing-your-aws-infrastructure-for-sustainability-part-ii-storage/) 
+ [¿Cómo puedo terminar los recursos activos que ya no necesito en mi Cuenta de AWS?](https://aws.amazon.com/premiumsupport/knowledge-center/terminate-resources-account-closure/)

 **Vídeos relacionados: ** 
+ [ How do I check for and then remove active resources that I no longer need on my Cuenta de AWS? ](https://www.youtube.com/watch?v=pqg9AqESRlg)(¿Cómo puedo comprobar y, a continuación, eliminar los recursos activos que ya no necesito en mi Cuenta de AWS?)

# SUS02-BP04 Optimizar la ubicación geográfica de las cargas de trabajo en función de sus requisitos de red
<a name="sus_sus_user_a5"></a>

Seleccione para su carga de trabajo una ubicación y unos servicios en la nube que acorten la distancia que debe recorrer el tráfico de red y reduzcan el total de recursos de red necesarios para admitir su carga de trabajo.

 ** Patrones comunes de uso no recomendados: ** 
+  Se selecciona la región de la carga de trabajo en función de la propia ubicación. 
+  Consolida todos los recursos de la carga de trabajo en una ubicación geográfica. 
+  Todo el tráfico fluye a través de sus centros de datos existentes. 

 **Beneficios de establecer esta práctica recomendada:** Colocar una carga de trabajo cerca de sus usuarios permite obtener la menor latencia, al tiempo que disminuye el movimiento de datos a través de la red y reduce el impacto medioambiental. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La infraestructura de Nube de AWS se crea en torno a opciones de ubicación como regiones, zonas de disponibilidad, grupos de ubicaciones y ubicaciones periféricas como [AWS Outposts](https://docs.aws.amazon.com/outposts/latest/userguide/what-is-outposts.html) y [Zonas locales de AWS](https://aws.amazon.com/about-aws/global-infrastructure/localzones/). Estas opciones de ubicación son las responsables de mantener la conectividad entre los componentes de las aplicaciones, los servicios en la nube, las redes periféricas y los centros de datos locales. 

 Analice los patrones de acceso a la red en su carga de trabajo para identificar cómo utilizar estas opciones de ubicación en la nube y reducir la distancia que debe recorrer el tráfico de red. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Analice los patrones de acceso de la red en su carga de trabajo para identificar cómo utilizan los usuarios su aplicación. 
  +  Use herramientas de monitorización como [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) y [AWS CloudTrail](https://aws.amazon.com/cloudtrail/)para recopilar datos sobre las actividades de la red. 
  +  Analice los datos para identificar el patrón de acceso de la red. 
+  Seleccione las regiones para el despliegue de la carga de trabajo en función de los siguientes elementos clave: 
  +  **Su objetivo de sostenibilidad:** como se explica en la [Selección de regiones](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/region-selection.html). 
  +  **Dónde se encuentran sus datos:** en el caso de las aplicaciones con gran cantidad de datos (como macrodatos y machine learning), el código de la aplicación debe ejecutarse lo más cerca posible de los datos. 
  +  **Dónde se encuentran sus usuarios:** para las aplicaciones orientadas al usuario, elija una región (o regiones) cercana a los usuarios de su carga de trabajo.
  + **Otras restricciones:** tenga en cuenta restricciones como la seguridad y el cumplimiento como se explica en [Qué tener en cuenta al seleccionar una región para las cargas de trabajo](https://aws.amazon.com/blogs/architecture/what-to-consider-when-selecting-a-region-for-your-workloads/).
+  Utilice almacenamiento en caché local o [Soluciones de almacenamiento en caché de AWS](https://aws.amazon.com/caching/aws-caching/) para los recursos de uso frecuente con el fin de mejorar el rendimiento, reducir el movimiento de datos y disminuir el impacto medioambiental.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_user_a5.html)
+  Utilice servicios que puedan ayudarle a ejecutar el código más cerca de los usuarios de su carga de trabajo:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_user_a5.html)
+  Use la agrupación de conexiones para permitir reutilizar las conexiones y reducir la cantidad de recursos necesarios. 
+  Use los almacenes de datos distribuidos que no se basen en conexiones persistentes y en actualizaciones sincrónicas por coherencia para atender a las poblaciones regionales. 
+  Reemplace la capacidad de red estática preaprovisionada por capacidad dinámica compartida y comparta el impacto en la sostenibilidad de la capacidad de red con otros suscriptores. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Optimización de la infraestructura de AWS para la sostenibilidad, parte III: redes](https://aws.amazon.com/blogs/architecture/optimizing-your-aws-infrastructure-for-sustainability-part-iii-networking/) 
+  [Documentación de Amazon ElastiCache](https://docs.aws.amazon.com/elasticache/index.html) 
+  [¿Qué es Amazon CloudFront?](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html) 
+  [Características clave de Amazon CloudFront](https://aws.amazon.com/cloudfront/features/) 

 **Vídeos relacionados:** 
+  [Demystifying data transfer on AWS (Desmitificación de la transferencia de datos en AWS)](https://www.youtube.com/watch?v=-MqXgzw1IGA) 
+ [ Scaling network performance on next-gen Amazon EC2 instances (Escalar el rendimiento de la red en instancias de EC2 de nueva generación) ](https://www.youtube.com/watch?v=jNYpWa7gf1A)

 **Ejemplos relacionados:** 
+  [AWS Networking Workshops (Talleres de red de AWS)](https://catalog.workshops.aws/networking/en-US) 
+ [ Architecting for sustainability - Minimize data movement across networks (Diseño de una arquitectura para la sostenibilidad: minimice el movimiento de datos entre las redes) ](https://catalog.us-east-1.prod.workshops.aws/workshops/7c4f8394-8081-4737-aa1b-6ae811d46e0a/en-US)

# SUS02-BP05: Optimización de los recursos de los miembros del equipo para las actividades realizadas
<a name="sus_sus_user_a6"></a>

Optimice los recursos proporcionados a los miembros del equipo para minimizar el impacto en la sostenibilidad medioambiental a la vez que se cubren sus necesidades. 

 **Patrones comunes de uso no recomendados:** 
+  Ignora el impacto de los dispositivos utilizados por los miembros de su equipo en la eficacia global de su aplicación en la nube. 
+  Administra y actualiza manualmente los recursos que utilizan los miembros del equipo. 

 **Beneficios de establecer esta práctica recomendada:** la optimización de los recursos de los miembros del equipo mejora la eficacia general de las aplicaciones basadas en la nube. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Analice los dispositivos que usan los miembros de su equipo para consumir sus servicios, el ciclo de vida que se espera que tengan y el impacto económico y en la sostenibilidad. Implemente estrategias para optimizar estos recursos. Por ejemplo, realice las operaciones complejas (como la representación y la compilación) en escritorios en una infraestructura escalable con un uso intensivo, en lugar de hacerlo en sistemas de usuarios únicos de gran potencia infrautilizados. 

 **Pasos para la implementación** 
+  Aprovisione las estaciones de trabajo y otros dispositivos para alinearlos con la forma en que se usan. 
+  Use escritorios virtuales y streaming de aplicaciones para limitar los requisitos de dispositivos y actualizaciones. 
+  Traslade a la nube las tareas con un uso intensivo del procesador o la memoria para usar su elasticidad. 
+  Evalúe el impacto de los procesos y los sistemas en el ciclo de vida de los dispositivos y seleccione aquellas soluciones que minimizan los requisitos para el reemplazo de dispositivos a la vez que satisfacen los requisitos empresariales. 
+  Implemente la administración remota de los dispositivos para reducir la necesidad de realizar viajes de negocios. 
  +  [Administrador de flotas de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/fleet.html) es una experiencia de interfaz de usuario (IU) unificada que le ayuda a administrar de forma remota sus nodos que se ejecutan en AWS o en un entorno local. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es Amazon WorkSpaces?](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) 
+ [ Optimizador de costes para Amazon WorkSpaces ](https://docs.aws.amazon.com/solutions/latest/cost-optimizer-for-workspaces/overview.html)
+  [Documentación de Amazon AppStream 2.0](https://docs.aws.amazon.com/appstream2/) 
+  [NICE DCV](https://docs.aws.amazon.com/dcv/) 

 **Vídeos relacionados: ** 
+  [Managing cost for Amazon WorkSpaces on AWS](https://www.youtube.com/watch?v=0MoY31hZQuE) (Administración de costes para Amazon WorkSpaces en AWS) 

# SUS02-BP06 Implementar el almacenamiento en búfer o la limitación para aplanar la curva de demanda
<a name="sus_sus_user_a7"></a>

El almacenamiento en búfer y la limitación aplanan la curva de demanda y reducen la capacidad aprovisionada necesaria para su carga de trabajo. 

 **Patrones comunes de uso no recomendados:** 
+ Procesa las solicitudes de los clientes inmediatamente mientras no es necesario.
+ No analiza los requisitos de las solicitudes de los clientes.

 **Beneficios de establecer esta práctica recomendada:** el aplanamiento de la curva de demanda reduce la capacidad aprovisionada necesaria para la carga de trabajo. La reducción de la capacidad aprovisionada implica un menor consumo de energía y un menor impacto medioambiental. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

 El aplanamiento de la curva de demanda de la carga de trabajo puede ayudarle a reducir la capacidad aprovisionada para una carga de trabajo y a reducir su impacto medioambiental. Supongamos una carga de trabajo con la curva de demanda que se muestra en la siguiente figura. Esta carga de trabajo tiene dos picos y, para gestionarlos, se aprovisiona la capacidad de recursos que muestra la línea naranja. Los recursos y la energía utilizados para esta carga de trabajo no están indicados por el área situada debajo de la curva de demanda, sino por el área situada debajo de la línea de capacidad aprovisionada, ya que esta capacidad se necesita para gestionar esos dos picos. 

![\[Forma de onda de la capacidad aprovisionada con dos picos distintos que requieren una alta capacidad aprovisionada.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/provisioned-capacity-1.png)


 

 Puede utilizar el almacenamiento en búfer o la limitación para modificar la curva de demanda y suavizar los picos, lo que significa menos capacidad aprovisionada y menos energía consumida. Implemente limitaciones cuando sus clientes puedan realizar reintentos. Implemente el almacenamiento en búfer para almacenar la solicitud y aplazar el procesamiento para más adelante. 

![\[Diagrama de forma de onda que muestra una carga de trabajo con picos suavizados creados mediante el almacenamiento en búfer o la limitación.\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/images/provisioned-capacity-2.png)


 

 **Pasos para la implementación** 
+  Analice las solicitudes de los clientes para determinar cómo responder a ellas. Entre las preguntas a tener en cuenta se incluyen las siguientes: 
  +  ¿Esta solicitud puede procesarse de forma asíncrona? 
  +  ¿El cliente tiene capacidad de reintentos? 
+  Si el cliente tiene capacidad de reintentos, puede implementar la limitación, que le indica al origen que si no puede atender la solicitud en el momento actual debe intentarlo más tarde. 
  +  Puede usar [Amazon API Gateway](https://aws.amazon.com/api-gateway/) para implementar la limitación. 
+  En el caso de los clientes que no pueden realizar reintentos, es necesario implementar un búfer para aplanar la curva de demanda. Un búfer aplaza el procesamiento de las solicitudes, por lo que permite a las aplicaciones que se ejecutan a diferentes ritmos comunicarse de forma efectiva. El enfoque basado en búfer utiliza una cola o una secuencia para aceptar mensajes de los productores. De este modo, los consumidores pueden leer y procesar los mensajes, lo que permite que dichos mensajes se ejecuten a la velocidad que cumpla con los requisitos empresariales de los consumidores. 
  +  [Amazon Simple Queue Service (Amazon SQS)](https://aws.amazon.com/sqs/) es un servicio administrado que proporciona colas que permiten que un solo consumidor lea mensajes individuales. 
  +  [Amazon Kinesis](https://aws.amazon.com/kinesis/) ofrece una secuencia que permite que muchos consumidores lean los mismos mensajes. 
+  Analice la demanda general, la tasa de cambio y el tiempo de respuesta requerido para dimensionar correctamente la limitación o el búfer requeridos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Getting started with Amazon SQS ](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-getting-started.html)(Introducción a Amazon SQS)
+ [ Application integration Using Queues and Messages ](https://aws.amazon.com/blogs/architecture/application-integration-using-queues-and-messages/)(Integración de aplicaciones mediante colas y mensajes)

 **Vídeos relacionados: ** 
+ [ Choosing the Right Messaging Service for Your Distributed App ](https://www.youtube.com/watch?v=4-JmX6MIDDI)(Elección del servicio de mensajería correcto para su aplicación distribuida)

# Software y arquitectura
<a name="a-sus-software-architecture"></a>

**Topics**
+ [SUS 3 ¿Cómo puede sacar partido de los patrones de software y de arquitectura para respaldar sus objetivos de sostenibilidad?](sus-03.md)

# SUS 3 ¿Cómo puede sacar partido de los patrones de software y de arquitectura para respaldar sus objetivos de sostenibilidad?
<a name="sus-03"></a>

Implemente patrones que permitan suavizar la carga y mantener un uso elevado consistente de los recursos implementados para minimizar los recursos consumidos. Puede haber componentes que queden inactivos debido a la falta de uso relacionada con los cambios en el comportamiento de los usuarios a lo largo del tiempo. Revise los patrones y la arquitectura para consolidar los componentes infrautilizados a fin de incrementar el uso general. Retire los componentes que ya no son necesarios. Analice el rendimiento de los componentes de su carga de trabajo y optimice aquellos que consumen la mayor cantidad de recursos. Tenga en cuenta los dispositivos que usan los clientes para acceder a sus servicios e implemente patrones para minimizar la necesidad de realizar actualizaciones de los dispositivos. 

**Topics**
+ [SUS03-BP01: Optimizar el software y la arquitectura para los trabajos asíncronos y programados](sus_sus_software_a2.md)
+ [SUS03-BP02 Eliminar o refactorizar los componentes de cargas de trabajo con uso reducido o nulo](sus_sus_software_a3.md)
+ [SUS03-BP03: Optimización de las áreas de código que consumen la mayor parte del tiempo o de los recursos](sus_sus_software_a4.md)
+ [SUS03-BP04 Optimizar el impacto en los dispositivos y equipos](sus_sus_software_a5.md)
+ [SUS03-BP05: Uso de los patrones de software y las arquitecturas que mejor respaldan los patrones de almacenamiento y el acceso a los datos](sus_sus_software_a6.md)

# SUS03-BP01: Optimizar el software y la arquitectura para los trabajos asíncronos y programados
<a name="sus_sus_software_a2"></a>

Utilice patrones de software y arquitectura eficientes, como los basados en colas, para mantener una utilización elevada y coherente de los recursos desplegados.

 **Patrones comunes de uso no recomendados:** 
+  Realiza un aprovisionamiento excesivo de los recursos de su carga de trabajo en la nube para hacer frente a picos imprevistos de la demanda. 
+  Su arquitectura no desacopla los emisores y los receptores de mensajes asíncronos mediante un componente de mensajería. 

 **Beneficios de establecer esta práctica recomendada:** 
+  Los patrones de software y arquitectura eficientes minimizan los recursos no utilizados en la carga de trabajo y mejoran la eficiencia global. 
+  Puede escalar el procesamiento independientemente de la recepción de mensajes asíncronos. 
+  Mediante un componente de mensajería, tendrá unos requisitos de disponibilidad más relajados que podrá cumplir con menos recursos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Utilice patrones de arquitectura eficientes, como la [arquitectura basada en eventos](https://aws.amazon.com/event-driven-architecture/), que dan como resultado una utilización uniforme de los componentes y minimizan el aprovisionamiento excesivo en la carga de trabajo. El uso de patrones de arquitectura eficientes minimiza los recursos inactivos por falta de uso debido a cambios en la demanda a lo largo del tiempo. 

 Comprenda los requisitos de los componentes de la carga de trabajo y adopte patrones de arquitectura que aumenten la utilización global de los recursos. Retire los componentes que ya no son necesarios. 

 **Pasos para la aplicación** 
+  Analice la demanda de su carga de trabajo para determinar cómo responder a ella. 
+  En el caso de solicitudes o trabajos que no requieran respuestas síncronas, utilice arquitecturas basadas en colas y empleados de escalamiento automático para maximizar la utilización. A continuación, encontrará algunos ejemplos de cuándo podría plantearse una arquitectura basada en colas:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_software_a2.html)
+  En el caso de solicitudes o trabajos que puedan procesarse en cualquier momento, utilice mecanismos de programación para procesar los trabajos por lotes y obtener una mayor eficacia. A continuación, se presentan algunos ejemplos de mecanismos de programación en AWS:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_software_a2.html)
+  Si utiliza mecanismos de sondeo y webhooks en su arquitectura, reemplácelos por eventos. Utilice [arquitecturas basadas en eventos](https://docs.aws.amazon.com/lambda/latest/operatorguide/event-driven-architectures.html) para crear cargas de trabajo de elevada eficacia. 
+  Aproveche la [tecnología sin servidor en AWS](https://aws.amazon.com/serverless/) para eliminar la infraestructura aprovisionada en exceso. 
+  Dimensione correctamente los componentes individuales de su arquitectura para evitar recursos inactivos mientras se espera la entrada. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es Amazon Simple Queue Service?](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/welcome.html) 
+  [¿Qué es Amazon MQ?](https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/welcome.html) 
+  [Escalamiento basado en Amazon SQS](https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-using-sqs-queue.html) 
+  [¿Qué es AWS Step Functions?](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) 
+  [¿Qué es AWS Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) 
+  [Uso de AWS Lambda con Amazon SQS](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html) 
+  [¿Qué es Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/what-is-amazon-eventbridge.html) 

 **Vídeos relacionados: ** 
+  [Moving to event-driven architectures](https://www.youtube.com/watch?v=h46IquqjF3E) (Migración a arquitecturas basadas en eventos) 

# SUS03-BP02 Eliminar o refactorizar los componentes de cargas de trabajo con uso reducido o nulo
<a name="sus_sus_software_a3"></a>

Elimine los componentes que ya no se usan ni se necesitan y refactorice aquellos con un uso reducido para minimizar el desperdicio en su carga de trabajo.

 **Patrones comunes de uso no recomendados:** 
+  No comprueba periódicamente el nivel de utilización de los componentes individuales de la carga de trabajo. 
+  No comprueba ni analiza recomendaciones de herramientas de dimensionamiento de AWS como [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/). 

 **Beneficios de establecer esta práctica recomendada:** la eliminación de los activos no utilizados libera recursos y mejora la eficacia general de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Revise la carga de trabajo para identificar los componentes inactivos o no utilizados. Es un proceso de mejora iterativo que puede desencadenarse por cambios en la demanda o por el lanzamiento de un nuevo servicio en la nube. Por ejemplo, un descenso significativo del tiempo de ejecución de una función de [AWS Lambda](https://docs.aws.amazon.com/lambda/) puede ser un indicador de la necesidad de reducir el tamaño de la memoria. Además, a medida que AWS lanza nuevos servicios y características, los servicios y la arquitectura óptimos para su carga de trabajo también pueden cambiar. 

 Supervise continuamente la actividad de la carga de trabajo y busque oportunidades para mejorar el nivel de uso de los componentes individuales. Con la eliminación de los componentes ociosos y la realización de actividades de redimensionamiento, cumplirá los requisitos de su empresa con el menor número de recursos en la nube. 

 **Pasos para la implementación** 
+  Supervise y capture las métricas de utilización de los componentes críticos de su carga de trabajo (como la utilización de la CPU, la utilización de la memoria o el rendimiento de la red en [métricas de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html)). 
+  Para cargas de trabajo estables, compruebe las herramientas de redimensionamiento de AWS como [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) a intervalos regulares para identificar los componentes ociosos, no utilizados o infrautilizados. 
+  En el caso de las cargas de trabajo efímeras, evalúe las métricas de utilización para identificar los componentes inactivos, no utilizados o infrautilizados. 
+  Retire los componentes y activos asociados (como las imágenes de Amazon ECR) que ya no sean necesarios. 
+  Refactorice o consolide los componentes infrautilizados con otros recursos para mejorar la eficiencia de uso. Por ejemplo, puede aprovisionar varias bases de datos pequeñas en una sola instancia de base de datos de [Amazon RDS](https://aws.amazon.com/rds/) en vez de ejecutar bases de datos en instancias individuales infrautilizadas. 
+  Entienda los [recursos aprovisionados por su carga de trabajo para completar una unidad de trabajo](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/evaluate-specific-improvements.html). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+  [¿Qué es Amazon CloudWatch?](https://docs.aws.amazon.com/Amazon/latest/monitoring/WhatIs.html) 
+  [Limpieza automatizada de imágenes no utilizadas en Amazon ECR](https://aws.amazon.com/blogs/compute/automated-cleanup-of-unused-images-in-amazon-ecr/) 

 **Ejemplos relacionados:** 
+ [ Well-Architected Lab - Rightsizing with AWS Compute Optimizer](https://wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/)(Laboratorio de Well-Architected: redimensionamiento con AWS Compute Optimizer)
+ [ Well-Architected Lab - Optimize Hardware Patterns and Observe Sustainability KPIs ](https://wellarchitectedlabs.com/sustainability/200_labs/200_optimize_hardware_patterns_observe_sustainability_kpis/)(Laboratorio de Well-Architected: optimizar los patrones de hardware y observar los KPI de sostenibilidad)

# SUS03-BP03: Optimización de las áreas de código que consumen la mayor parte del tiempo o de los recursos
<a name="sus_sus_software_a4"></a>

Optimice el código que se ejecuta en los distintos componentes de su arquitectura para minimizar el uso de los recursos y, a la vez, maximizar el rendimiento.

 **Patrones comunes de uso no recomendados:** 
+  Ignora la optimización del código para el uso de recursos. 
+  Normalmente responde a los problemas de rendimiento con un aumento de los recursos. 
+  Su proceso de revisión y desarrollo del código no realiza un seguimiento de los cambios de rendimiento. 

 **Beneficios de establecer esta práctica recomendada:** El uso de código eficiente minimiza el uso de recursos y mejora el rendimiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Es fundamental examinar cada área funcional, incluido el código de una aplicación con arquitectura de nube, para optimizar su uso de recursos y su rendimiento. Supervise continuamente el rendimiento de la carga de trabajo en los entornos de creación y producción e identifique oportunidades para mejorar los fragmentos de código que tienen un uso de recursos especialmente elevado. Adopte un proceso de revisión periódico para identificar errores o antipatrones en su código que utilicen los recursos de forma ineficiente. Use algoritmos sencillos y eficaces que produzcan los mismos resultados para su caso de uso. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Durante el desarrollo de sus cargas de trabajo, adopte un proceso automatizado de revisión del código para mejorar la calidad e identificar errores y antipatrones. 
  + [ Automate code reviews with Amazon CodeGuru Reviewer (Revisiones automáticas de código con Amazon CodeGuru Reviewer) ](https://aws.amazon.com/blogs/devops/automate-code-reviews-with-amazon-codeguru-reviewer/)
  + [ Detecting concurrency bugs with Amazon CodeGuru (Detección de errores de simultaneidad con Amazon CodeGuru) ](https://aws.amazon.com/blogs/devops/detecting-concurrency-bugs-with-amazon-codeguru/)
  + [ Raising code quality for Python applications using Amazon CodeGuru (Mejora de la calidad del código para aplicaciones Python con Amazon CodeGuru) ](https://aws.amazon.com/blogs/devops/raising-code-quality-for-python-applications-using-amazon-codeguru/)
+  A medida que ejecute las cargas de trabajo, supervise los recursos para identificar los componentes con elevados requisitos de recursos por unidad de trabajo como objetivos de las revisiones de código. 
+  Para las revisiones de código, use un generador de perfiles de código para identificar las áreas de código que emplean más tiempo o recursos como objetivo de la optimización. 
  + [ Reducing your organization's carbon footprint with Amazon CodeGuru Profiler (Reducción de la huella de carbono de su organización con Amazon CodeGuru Profiler) ](https://aws.amazon.com/blogs/devops/reducing-your-organizations-carbon-footprint-with-codeguru-profiler/)
  + [ Understanding memory usage in your Java application with Amazon CodeGuru Profiler (Descripción del uso de memoria en su aplicación Java con Amazon CodeGuru Profiler) ](https://aws.amazon.com/blogs/devops/understanding-memory-usage-in-your-java-application-with-amazon-codeguru-profiler/)
  + [ Improving customer experience and reducing cost with Amazon CodeGuru Profiler (Mejora de la experiencia del cliente y reducción de costes con Amazon CodeGuru Profiler) ](https://aws.amazon.com/blogs/devops/improving-customer-experience-and-reducing-cost-with-codeguru-profiler/)
+  Use el sistema operativo y el lenguaje de programación más eficaces para la carga de trabajo. Para obtener más información sobre los lenguajes de programación energéticamente eficientes (incluido Rust), consulte [Sustainability with Rust (Sostenibilidad con Rust)](https://aws.amazon.com/blogs/opensource/sustainability-with-rust/). 
+  Reemplace los algoritmos que hacen un uso intensivo de la computación por versiones más sencillas y eficientes que produzcan el mismo resultado. 
+  Elimine el código innecesario, como la ordenación y el formato. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es Amazon CodeGuru Profiler?](https://docs.aws.amazon.com/codeguru/latest/profiler-ug/what-is-codeguru-profiler.html) 
+  [Instancias de FPGA](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/fpga-getting-started.html) 
+  [SDK de AWS en Herramientas para crear en AWS](https://aws.amazon.com/tools/) 

 **Vídeos relacionados:** 
+ [ Improve Code Efficiency Using Amazon CodeGuru Profiler (Mejora de la eficiencia del código con Amazon CodeGuru Profiler) ](https://www.youtube.com/watch?v=1pU4VddsBRw)
+ [ Automate Code Reviews and Application Performance Recommendations with Amazon CodeGuru (Automatización de las revisiones de código y las recomendaciones de rendimiento de aplicaciones con Amazon CodeGuru) ](https://www.youtube.com/watch?v=OD8H63C0E0I)

# SUS03-BP04 Optimizar el impacto en los dispositivos y equipos
<a name="sus_sus_software_a5"></a>

Analice los dispositivos y los equipos empleados en la arquitectura y utilice estrategias para reducir su uso. Esto puede minimizar el impacto medioambiental global de su carga de trabajo en la nube. 

 **Patrones comunes de uso no recomendados:** 
+  Ignora el impacto medioambiental de los dispositivos que utilizan sus clientes. 
+  Administra y actualiza manualmente los recursos que utilizan los clientes. 

 **Beneficios de establecer esta práctica recomendada:** la implementación de patrones y características de software optimizados para el dispositivo del cliente puede reducir el impacto medioambiental general de la carga de trabajo en la nube. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La implementación de patrones y características de software optimizados para el dispositivo del cliente puede reducir el impacto medioambiental general de la carga de trabajo en la nube. 
+  La implementación de nuevas características compatibles con versiones anteriores puede reducir el número de reemplazos de hardware. 
+  La optimización de una aplicación para que funcione de forma eficiente en los dispositivos puede contribuir a reducir su consumo de energía y a prolongar la duración de su batería (si funcionan con ella). 
+  La optimización de una aplicación para dispositivos también puede reducir la transferencia de datos a través de la red. 

 Comprenda los dispositivos y equipos utilizados en su arquitectura, su ciclo de vida previsto y el impacto de reemplazar esos componentes. Implemente patrones y características de software que puedan minimizar el consumo de energía del dispositivo, la necesidad de los clientes de reemplazarlo y también de actualizarlo manualmente. 

 **Pasos para la implementación** 
+  Realice un inventario de los dispositivos utilizados en su arquitectura. Los dispositivos pueden ser móviles, tabletas, dispositivos IoT, luces inteligentes o incluso dispositivos inteligentes en una fábrica. 
+  Optimice la aplicación que se ejecuta en los dispositivos: 
  +  Utilice estrategias como la ejecución de tareas en segundo plano para reducir su consumo de energía. 
  +  Tenga en cuenta la latencia y el ancho de banda de la red al crear cargas e implemente capacidades que ayuden al funcionamiento óptimo de las aplicaciones en enlaces de alta latencia y ancho de banda bajo. 
  +  Convierta las cargas útiles y los archivos a los formatos optimizados que requieren los dispositivos. Por ejemplo, puede utilizar [Amazon Elastic Transcoder](https://docs.aws.amazon.com/elastic-transcoder/) o [AWS Elemental MediaConvert](https://aws.amazon.com/mediaconvert/) para convertir archivos multimedia digitales de gran tamaño y alta calidad a formatos que los usuarios puedan reproducir en dispositivos móviles, tabletas, navegadores web y televisores conectados. 
  +  Realice las actividades con un uso intensivo de los recursos informáticos (como la representación de imágenes) en el lado del servidor o use el streaming de aplicaciones para mejorar la experiencia del usuario en los dispositivos más antiguos. 
  +  Segmente y pagine los resultados, sobre todo en las sesiones interactivas, para administrar las cargas y limitar los requisitos de almacenamiento local. 
+  Utilice el mecanismo automatizado vía inalámbrica (OTA) para desplegar actualizaciones en uno o varios dispositivos. 
  +  Puede utilizar una [canalización de CI/CD](https://aws.amazon.com/blogs/mobile/build-a-cicd-pipeline-for-your-android-app-with-aws-services/) para actualizar las aplicaciones móviles. 
  +  Puede utilizar [AWS IoT Device Management](https://aws.amazon.com/iot-device-management/) para administrar a distancia los dispositivos conectados a escala. 
+  Para probar nuevas características y actualizaciones, utilice granjas de dispositivos administrados con conjuntos representativos de hardware e itere el desarrollo para maximizar los dispositivos admitidos. Para obtener más información, consulte [SUS06-BP04 Usar granjas de dispositivos administrados para pruebas](sus_sus_dev_a5.md). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es AWS Device Farm?](https://docs.aws.amazon.com/devicefarm/latest/developerguide/welcome.html) 
+  [Documentación de Amazon AppStream 2.0](https://docs.aws.amazon.com/appstream2/) 
+  [NICE DCV](https://docs.aws.amazon.com/dcv/) 
+ [ Tutorial de OTA para actualizar el firmware en dispositivos que ejecutan FreeRTOS ](https://docs.aws.amazon.com/freertos/latest/userguide/dev-guide-ota-workflow.html)

 **Vídeos relacionados: ** 
+ [Introduction to AWS Device Farm](https://www.youtube.com/watch?v=UiJo_PEZkD4)(Introducción a AWS Device Farm)

# SUS03-BP05: Uso de los patrones de software y las arquitecturas que mejor respaldan los patrones de almacenamiento y el acceso a los datos
<a name="sus_sus_software_a6"></a>

Analice cómo se usan los datos en la carga de trabajo, cómo los consumen los usuarios, cómo se transfieren y cómo se almacenan. Utilice patrones y arquitecturas de software que admitan mejor el acceso a los datos y el almacenamiento para minimizar los recursos de computación, redes y almacenamiento necesarios para admitir la carga de trabajo.

 **Patrones comunes de uso no recomendados:** 
+  Supone que todas las cargas de trabajo tienen patrones similares de almacenamiento y acceso a los datos. 
+  Solo utiliza un nivel de almacenamiento, asumiendo que todas las cargas de trabajo encajan en ese nivel. 
+  Supone que los patrones de acceso a los datos se mantendrán coherentes a lo largo del tiempo. 
+  Su arquitectura admite una posible ampliación de acceso a los datos, lo que provoca que los recursos permanezcan inactivos la mayor parte del tiempo. 

 **Beneficios de establecer esta práctica recomendada:** la selección y la optimización de su arquitectura en función de los patrones de acceso y almacenamiento de datos le ayudará a disminuir la complejidad del desarrollo y a aumentar la utilización general. Saber cuándo utilizar las tablas globales, las particiones de datos y el almacenamiento en caché le ayudará a disminuir la sobrecarga operativa y a escalar en función de sus necesidades de carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Utilice los patrones de software y arquitectura que mejor se adapten a las características de sus datos y a sus patrones de acceso. Por ejemplo, utilice una [arquitectura de datos moderna en AWS](https://aws.amazon.com/big-data/datalakes-and-analytics/modern-data-architecture/) que le permita usar servicios personalizados optimizados para sus casos de uso de análisis exclusivos. Estos patrones de arquitectura permiten un procesamiento de datos eficaz y reducen el uso de recursos. 

 **Pasos para la implementación** 
+  Analice las características de los datos y los patrones de acceso para identificar la configuración correcta de sus recursos en la nube. Entre las características clave que se deben tener en cuenta se incluyen: 
  +  **Tipo de datos:** estructurados, semiestructurados, no estructurados 
  +  **Crecimiento de datos:** limitados, no limitados 
  +  **Durabilidad de datos:** persistentes, efímeros, transitorios 
  +  **Patrones de acceso:** lecturas o escrituras, frecuencia de actualización, con picos o constantes 
+  Utilice los patrones de arquitectura que mejor admitan los patrones de acceso y almacenamiento de datos. 
  + [ Let’s Architect\$1 Modern data architectures ](https://aws.amazon.com/blogs/architecture/lets-architect-modern-data-architectures/)(Let’s Architect\$1 Arquitecturas de datos modernas)
  + [ Databases on AWS: The Right Tool for the Right Job ](https://www.youtube.com/watch?v=-pb-DkD6cWg)(Bases de datos de AWS: la herramienta adecuada para el trabajo adecuado.)
+  Use tecnologías que funcionen de forma nativa con datos comprimidos. 
+  Utilice [servicios de análisis](https://aws.amazon.com/big-data/datalakes-and-analytics/?nc2=h_ql_prod_an_a) personalizados para el procesamiento de datos en su arquitectura. 
+  Use el motor de base de datos que mejor admita su patrón de consulta dominante. Administre sus índices de base de datos para garantizar una ejecución eficaz de las consultas. Para más detalles, consulte [Bases de datos de AWS](https://aws.amazon.com/products/databases/). 
+  Seleccione protocolos de red que reduzcan la cantidad de capacidad de red consumida en su arquitectura. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Formatos de archivo de compatibilidad con la compresión de Athena](https://docs.aws.amazon.com/athena/latest/ug/compression-formats.html) 
+  [Uso de COPY con formatos de datos de columnas con Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/copy-usage_notes-copy-from-columnar.html) 
+  [Conversión del formato de registro de entrada en Firehose](https://docs.aws.amazon.com/firehose/latest/dev/record-format-conversion.html) 
+  [Opciones de formato para las entradas y salidas de ETL en AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-format.html) 
+  [Mejora del rendimiento de las consultas en Amazon Athena con la conversión a formato de columnas](https://docs.aws.amazon.com/athena/latest/ug/convert-to-columnar.html) 
+  [Carga de archivos de datos comprimidos desde Amazon S3 con Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/t_loading-gzip-compressed-data-files-from-S3.html) 
+  [Supervisión de la carga de bases de datos con Información sobre rendimiento en Amazon Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html) 
+  [Supervisión de la carga de bases de datos con Información sobre rendimiento en Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PerfInsights.html) 
+ [Clase de almacenamiento de Amazon S3 Intelligent-Tiering ](https://aws.amazon.com/s3/storage-classes/intelligent-tiering/)

 **Vídeos relacionados: ** 
+ [ Building modern data architectures on AWS](https://www.youtube.com/watch?v=Uk2CqEt5f0o)(Creación de arquitecturas de datos modernas en AWS)

# Almacenamiento
<a name="a-sus-data"></a>

**Topics**
+ [SUS 4 ¿Cómo puede aprovechar los patrones y las políticas de administración de datos para admitir sus objetivos de sostenibilidad?](sus-04.md)

# SUS 4 ¿Cómo puede aprovechar los patrones y las políticas de administración de datos para admitir sus objetivos de sostenibilidad?
<a name="sus-04"></a>

Implemente prácticas de administración de datos para reducir el almacenamiento aprovisionado que se necesita para admitir la carga de trabajo y los recursos necesarios para su uso. Analice sus datos y use las configuraciones y tecnologías de almacenamiento que mejor admitan el valor empresarial de los datos y la forma en que se usan. Haga que el ciclo de vida de los datos incluya un almacenamiento más eficaz y de menor rendimiento cuando disminuyan los requisitos y elimine los datos que ya no se requieran. 

**Topics**
+ [SUS04-BP01: Implementación de una política de clasificación de datos](sus_sus_data_a2.md)
+ [SUS04-BP02 Usar tecnologías que admiten patrones de almacenamiento y acceso a los datos](sus_sus_data_a3.md)
+ [SUS04-BP03 Usar políticas para administrar el ciclo de vida de los conjuntos de datos](sus_sus_data_a4.md)
+ [SUS04-BP04 Utilice la elasticidad y la automatización para ampliar el almacenamiento de bloques o el sistema de archivos](sus_sus_data_a5.md)
+ [SUS04-BP05: Eliminación de datos innecesarios o redundantes](sus_sus_data_a6.md)
+ [SUS04-BP06 Usar sistemas de archivos o almacenamiento compartidos para acceder a datos comunes](sus_sus_data_a7.md)
+ [SUS04-BP07: Minimización del movimiento de datos entre redes](sus_sus_data_a8.md)
+ [SUS04-BP08: Realización de copias de seguridad de los datos solo cuando sea difícil volver a crearlos](sus_sus_data_a9.md)

# SUS04-BP01: Implementación de una política de clasificación de datos
<a name="sus_sus_data_a2"></a>

Clasifique los datos para comprender su criticidad para los resultados empresariales y elija el nivel de almacenamiento de bajo consumo adecuado para almacenar los datos.

 **Antipatrones usuales:** 
+  No identifica activos de datos con características similares (como sensibilidad, criticidad empresarial o requisitos normativos) que se estén procesando o almacenando. 
+  No ha implementado un catálogo de datos para inventariar sus activos de datos. 

 **Beneficios de establecer esta práctica recomendada:** la implementación de una política de clasificación de datos le permite determinar el nivel de almacenamiento de bajo consumo para los datos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La clasificación de datos implica la identificación de los tipos de datos que se están procesando y almacenando en un sistema de información propiedad de una organización o controlado por ella. También implica tomar una determinación sobre la criticidad de los datos y la posible repercusión de su divulgación, pérdida o uso indebido. 

 Implemente la política de clasificación de datos mediante un trabajo en sentido inverso a partir del uso contextual de los datos y la creación de un esquema de categorización que tenga en cuenta el nivel de criticidad de un conjunto de datos determinado para las operaciones de una organización. 

 **Pasos para la implementación** 
+  Realice un inventario de los distintos tipos de datos que existen para su carga de trabajo. 
  +  Para obtener más detalles sobre las categorías de clasificación de datos, consulte el [documento técnico Data Classification](https://docs.aws.amazon.com/whitepapers/latest/data-classification/data-classification.html) (Clasificación de datos). 
+  Determine la criticidad, la confidencialidad, la integridad y la disponibilidad de los datos en función del riesgo para la organización. Utilice estos requisitos para agrupar los datos en uno de los niveles de clasificación de datos que adopte. 
  +  Como ejemplo, consulte [Four simple steps to classify your data and secure your startup](https://aws.amazon.com/blogs/startups/four-simple-steps-to-classify-your-data-and-secure-your-startup/) (Cuatro sencillos pasos para clasificar sus datos y proteger su startup). 
+  Audite su entorno de forma periódica para detectar los datos no etiquetados y sin clasificar; a continuación, clasifique y etiquete los datos adecuadamente. 
  +  Como ejemplo, consulte [Catálogo de datos y rastreadores en AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/catalog-and-crawler.html). 
+  Establezca un catálogo de datos que proporcione capacidades de auditoría y gobernanza. 
+  Determine y documente los procedimientos de tratamiento de cada clase de datos. 
+  Utilice la automatización para auditar continuamente su entorno con el fin de identificar los datos sin etiquetar y sin clasificar, y clasifíquelos y etiquételos adecuadamente. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Uso de Nube de AWS para respaldar la clasificación de datos](https://docs.aws.amazon.com/whitepapers/latest/data-classification/leveraging-aws-cloud-to-support-data-classification.html) 
+  [Políticas de etiquetado deAWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_tag-policies.html) 

 **Vídeos relacionados: ** 
+ [ Enabling agility with data governance on AWS](https://www.youtube.com/watch?v=vznDgJkoH7k)(Facilitar la agilidad con la gobernanza de los datos en AWS)

# SUS04-BP02 Usar tecnologías que admiten patrones de almacenamiento y acceso a los datos
<a name="sus_sus_data_a3"></a>

 Use las tecnologías de almacenamiento que mejor respalden la forma en que accede y guarda sus datos a fin de minimizar los recursos aprovisionados para admitir la carga de trabajo. 

 **Patrones comunes de uso no recomendados:** 
+  Supone que todas las cargas de trabajo tienen patrones similares de almacenamiento y acceso a los datos. 
+  Solo utiliza un nivel de almacenamiento, asumiendo que todas las cargas de trabajo encajan en ese nivel. 
+  Supone que los patrones de acceso a los datos se mantendrán coherentes a lo largo del tiempo. 

 **Beneficios de establecer esta práctica recomendada:** seleccionar y optimizar sus tecnologías de almacenamiento en función de los patrones de acceso y almacenamiento de datos le ayudará a reducir los recursos necesarios en la nube para satisfacer sus necesidades empresariales y a mejorar la eficacia general de la carga de trabajo en la nube. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Seleccione la solución de almacenamiento que mejor se adapte a sus patrones de acceso, o bien considere cambiar sus patrones de acceso de modo que se adapten a la solución de almacenamiento, a fin de maximizar la eficiencia del rendimiento. 
+  Evalúe las características de sus datos y su patrón de acceso para recopilar las características clave de sus necesidades de almacenamiento. Entre las características clave que se deben tener en cuenta se incluyen: 
  +  **Tipo de datos:** estructurados, semiestructurados y no estructurados 
  +  **Crecimiento de los datos:** delimitado, no delimitado 
  +  **Durabilidad de los datos:** persistentes, efímeros, transitorios 
  +  **Patrones de acceso:** lecturas o escrituras, frecuencia, con picos o constantes 
+  Migre los datos a la tecnología de almacenamiento adecuada que sea compatible con las características de sus datos y su patrón de acceso. A continuación, le presentamos algunos ejemplos de tecnologías de almacenamiento de AWS y sus principales características:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_data_a3.html)
+  Para los sistemas de almacenamiento que tienen un tamaño fijo, como Amazon EBS o Amazon FSx, supervise el espacio de almacenamiento disponible y automatice la asignación de almacenamiento al alcanzar un umbral. Puede usar Amazon CloudWatch para recopilar y analizar diferentes métricas para [Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using_cloudwatch_ebs.html) y [Amazon FSx](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/monitoring-cloudwatch.html). 
+  Las clases de almacenamiento de Amazon S3 pueden configurarse en el nivel de objeto y un único bucket puede contener objetos almacenados en todas las clases de almacenamiento. 
+  También puede utilizar las políticas de ciclo de vida de Amazon S3 para realizar transiciones automáticas de objetos entre clases de almacenamiento o eliminar datos sin necesidad de realizar cambios en la aplicación. En general, tiene que equilibrar la eficiencia de los recursos, la latencia de acceso y la fiabilidad cuando considere estos mecanismos de almacenamiento. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Tipos de volumen de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html) 
+  [Almacén de instancias de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html) 
+  [Amazon S3 Intelligent-Tiering](https://docs.aws.amazon.com/AmazonS3/latest/userguide/intelligent-tiering.html) 
+ [ Características de E/S de Amazon EBS ](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ebs-io-characteristics.html)
+ [ Uso de clases de almacenamiento de Amazon S3 ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html)
+  [¿Qué es Amazon Glacier?](https://docs.aws.amazon.com/amazonglacier/latest/dev/introduction.html) 

 **Vídeos relacionados:** 
+  [Patrones de arquitectura para lagos de datos en AWS](https://www.youtube.com/watch?v=XpTly4XHmqc&ab_channel=AWSEvents) 
+ [ Deep dive on Amazon EBS (STG303-R1) (Conocer en profundidad Amazon EBS [STG303-R1]) ](https://www.youtube.com/watch?v=wsMWANWNoqQ)
+ [ Optimize your storage performance with Amazon S3 (STG343) (Optimizar el rendimiento del almacenamiento con Amazon S3 [STG343]) ](https://www.youtube.com/watch?v=54AhwfME6wI)
+ [ Building modern data architectures on AWS (Creación de arquitecturas de datos modernas en AWS) ](https://www.youtube.com/watch?v=Uk2CqEt5f0o)

 **Ejemplos relacionados:** 
+ [ Amazon EFS CSI Driver (Controlador CSI de Amazon EFS) ](https://github.com/kubernetes-sigs/aws-efs-csi-driver)
+ [ Amazon EBS CSI Driver (Controlador CSI de Amazon EBS) ](https://github.com/kubernetes-sigs/aws-ebs-csi-driver)
+ [ Amazon EFS Utilities (Utilidades de Amazon EFS) ](https://github.com/aws/efs-utils)
+ [ Amazon EBS Autoscale (Escala automática de Amazon EBS) ](https://github.com/awslabs/amazon-ebs-autoscale)
+ [ Amazon S3 Examples (Ejemplos de Amazon S3) ](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/s3-examples.html)

# SUS04-BP03 Usar políticas para administrar el ciclo de vida de los conjuntos de datos
<a name="sus_sus_data_a4"></a>

Administre el ciclo de vida de todos sus datos y aplique automáticamente la eliminación para minimizar el almacenamiento total necesario para su carga de trabajo.

 **Patrones comunes de uso no recomendados:** 
+  Elimina los datos manualmente. 
+  No elimina ningún dato de su carga de trabajo. 
+  No traslada los datos a niveles de almacenamiento de mayor eficiencia energética en función de sus requisitos de retención y acceso. 

 **Beneficios de establecer esta práctica recomendada:** el uso de políticas de ciclo de vida de los datos garantiza un acceso y una conservación eficaces de los datos en una carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los conjuntos de datos suelen tener distintos requisitos de conservación y acceso durante su ciclo de vida. Por ejemplo, su aplicación puede necesitar acceso frecuente a algunos conjuntos de datos durante un periodo de tiempo limitado. Después, se accede a esos conjuntos de datos con poca frecuencia. 

 Para administrar eficazmente los conjuntos de datos a lo largo de su ciclo de vida, configure las políticas de ciclo de vida, que son reglas que definen cómo administrar los conjuntos de datos. 

 Con las reglas de configuración del ciclo de vida, puede indicar al servicio de almacenamiento específico que realice la transición de un conjunto de datos a niveles de almacenamiento de mayor eficiencia energética, que lo archive o que lo elimine. 

 **Pasos para la aplicación** 
+  [Clasifique los conjuntos de datos de la carga de trabajo.](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/sus_sus_data_a2.html) 
+  Defina procedimientos de gestión para cada clase de datos. 
+  Establezca políticas de ciclo de vida automatizadas para la aplicación de reglas de ciclo de vida. A continuación, se ofrecen algunos ejemplos de cómo configurar políticas automatizadas de ciclo de vida para distintos servicios de almacenamiento de AWS:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_data_a4.html)
+  Elimine los volúmenes, las instantáneas y los datos no utilizados que estén fuera de su periodo de retención. Aproveche las características nativas del servicio, como el tiempo de vida de Amazon DynamoDB o la retención de registros de Amazon CloudWatch para su eliminación. 
+  Agregue y comprima datos cuando proceda en función de las reglas de ciclo de vida. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Optimice sus reglas de Amazon S3 Lifecycle con el análisis de clases de almacenamiento de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/analytics-storage-class.html) 
+  [Evaluación de recursos con Reglas de AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) 

 **Vídeos relacionados: ** 
+  [Simplify Your Data Lifecycle and Optimize Storage Costs With Amazon S3 Lifecycle](https://www.youtube.com/watch?v=53eHNSpaMJI) (Simplifique su ciclo de vida de datos y optimice los costes de almacenamiento con Amazon S3 Lifecycle) 
+ [ Reduce Your Storage Costs Using Amazon S3 Storage Lens](https://www.youtube.com/watch?v=A8qOBLM6ITY) (Reduzca sus costes de almacenamiento con Amazon S3 Storage Lens)

# SUS04-BP04 Utilice la elasticidad y la automatización para ampliar el almacenamiento de bloques o el sistema de archivos
<a name="sus_sus_data_a5"></a>

Utilice la elasticidad y la automatización para ampliar el almacenamiento de bloques o el sistema de archivos a medida que crecen los datos para minimizar el almacenamiento total aprovisionado.

 **Patrones comunes de uso no recomendados:** 
+  Adquiere un almacenamiento de bloques grande o un sistema de archivos de gran tamaño para necesidades futuras. 
+  Aprovisiona en exceso las operaciones de entrada y salida por segundo (IOPS) de su sistema de archivos. 
+  No supervisa el uso de sus volúmenes de datos. 

 **Beneficios de establecer esta práctica recomendada:** minimizar el aprovisionamiento excesivo del sistema de almacenamiento reduce los recursos inactivos y mejora la eficacia general de su carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Cree almacenamiento de bloques y sistemas de archivos con una asignación de tamaño, rendimiento y latencia adecuados para su carga de trabajo. Utilice la elasticidad y la automatización para ampliar el almacenamiento de bloques o el sistema de archivos a medida que crecen los datos sin tener que aprovisionar en exceso estos servicios de almacenamiento. 

 **Pasos para la implementación** 
+  En el caso del almacenamiento de tamaño fijo, como [Amazon EBS](https://aws.amazon.com/ebs/), asegúrese de supervisar la cantidad de almacenamiento utilizada en relación con el tamaño total del almacenamiento y cree una automatización, si es posible, para aumentar el tamaño del almacenamiento cuando se alcance un umbral. 
+  Use volúmenes elásticos y servicios administrados de datos en bloque para automatizar la asignación de almacenamiento adicional a medida que aumentan sus datos persistentes. Por ejemplo, puede utilizar [Volúmenes elásticos de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modify-volume.html) para cambiar el tamaño de volumen, el tipo de volumen o ajustar el rendimiento de sus volúmenes de Amazon EBS. 
+  Elija la clase de almacenamiento, el modo de rendimiento y el modo de caudal adecuados para que su sistema de archivos responda a su necesidad empresarial, sin excederse. 
  + [ Rendimiento de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/performance.html)
  + [ Rendimiento de los volúmenes de Amazon EBS en instancias de Linux ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSPerformance.html)
+  Establezca niveles como objetivo de uso para los volúmenes de datos y ajuste el tamaño de los volúmenes que estén fuera de los intervalos esperados. 
+  Establezca el tamaño correcto de los volúmenes de solo lectura según los datos. 
+  Migre los datos a almacenes de objetos para evitar el aprovisionamiento del exceso de capacidad de los tamaños de volúmenes fijos en el almacenamiento en bloque. 
+  Revise periódicamente los volúmenes elásticos y los sistemas de archivos para terminar los volúmenes inactivos y reducir los recursos aprovisionados en exceso para ajustarlos al tamaño actual de los datos. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Documentación de Amazon FSx](https://docs.aws.amazon.com/fsx/index.html) 
+  [What is Amazon Elastic File System?](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) (¿Qué es Amazon Elastic File System?) 

 **Vídeos relacionados: ** 
+ [ Deep Dive on Amazon EBS Elastic Volumes ](https://www.youtube.com/watch?v=Vi_1Or7QuOg)(Profundización en los volúmenes elásticos de Amazon EBS)
+ [ Amazon EBS and Snapshot Optimization Strategies for Better Performance and Cost Savings ](https://www.youtube.com/watch?v=h1hzRCsJefs)(Estrategias de optimización de Amazon EBS e instantáneas para mejorar el rendimiento y ahorrar costes)
+ [ Optimizing Amazon EFS for cost and performance, using best practices ](https://www.youtube.com/watch?v=9kfeh6_uZY8)(Optimización de Amazon EFS para costes y rendimiento, mediante prácticas recomendadas)

# SUS04-BP05: Eliminación de datos innecesarios o redundantes
<a name="sus_sus_data_a6"></a>

Elimine datos innecesarios o redundantes para minimizar los recursos de almacenamiento necesarios para guardar sus conjuntos de datos. 

 **Patrones comunes de uso no recomendados:** 
+  Duplica datos que se pueden obtener o recrear fácilmente. 
+  Realiza copia de seguridad de todos los datos sin tener en cuenta su criticidad. 
+  Solo elimina datos de forma irregular, en eventos operativos o no los elimina en absoluto. 
+  Almacena datos de forma redundante independientemente de la durabilidad del servicio de almacenamiento. 
+  Activa el control de versiones de Amazon S3 sin ninguna justificación empresarial. 

 **Beneficios de establecer esta práctica recomendada:** la eliminación de datos redundantes reduce el tamaño de almacenamiento necesario de la carga de trabajo y su impacto medioambiental. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 No almacene datos que no necesite. Automatice la eliminación de datos innecesarios. Use tecnologías que desdupliquen los datos en el nivel de archivo y de bloque. Aproveche las características de replicación y redundancia de datos nativos de los servicios. 

 **Pasos para la aplicación** 
+  Evalúe si puede evitar almacenar datos mediante los conjuntos de datos existentes de disponibilidad pública en [AWS Data Exchange](https://aws.amazon.com/data-exchange/) y [Open Data on AWS](https://registry.opendata.aws/) (Datos abiertos en AWS). 
+  Use mecanismos que puedan desduplicar los datos en el nivel de bloque y de objeto. A continuación, se ofrecen algunos ejemplos de cómo desduplicar datos en AWS:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_data_a6.html)
+  Analice el acceso de datos para identificar los datos innecesarios. Automatice las políticas de ciclo de vida. Aproveche las características nativas del servicio, como el [tiempo de vida de Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/TTL.html), [Amazon S3 Lifecycle](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lifecycle-mgmt.html) o la [retención de registros de Amazon CloudWatch](https://docs.aws.amazon.com/managedservices/latest/userguide/log-customize-retention.html) para su eliminación. 
+  Utilice las capacidades de virtualización de datos en AWS para mantener los datos en su origen y evitar la duplicación de datos. 
  +  [Cloud Native Data Virtualization on AWS](https://www.youtube.com/watch?v=BM6sMreBzoA) (Virtualización de datos nativos en la nube en AWS) 
  +  [Lab: Optimize Data Pattern Using Amazon Redshift Data Sharing](https://wellarchitectedlabs.com/sustainability/300_labs/300_optimize_data_pattern_using_redshift_data_sharing/) (Laboratorio: optimizar el patrón de datos mediante el uso compartido de datos de Amazon Redshift) 
+  Use una tecnología de copia de seguridad que pueda crear copias incrementales. 
+  Aproveche la durabilidad de [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/DataDurability.html) y la [replicación de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volumes.html) para conseguir sus objetivos de durabilidad en lugar de tecnologías autoadministradas (como una matriz redundante de discos independientes [RAID]). 
+  Centralice los datos de registro y de seguimiento, desduplique las entradas de registro que sean idénticas y establezca mecanismos para ajustar los detalles cuando sea necesario. 
+  Rellene las memorias caché previamente solo cuando se justifique. 
+  Establezca la supervisión y automatización de la memoria caché para ajustar el tamaño de esta en consonancia. 
+  Quite los despliegues y los recursos desfasados de los almacenes de objetos y las memorias caché periféricas al introducir nuevas versiones de su carga de trabajo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Cambio de la retención de datos de registro en CloudWatch Logs](https://docs.aws.amazon.com/Amazon/latest/logs/Working-with-log-groups-and-streams.html#SettingLogRetention) 
+  [Desduplicación de datos en Amazon FSx para Windows File Server](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-data-dedup.html) 
+  [Características de Amazon FSx para ONTAP, incluida la desduplicación de datos](https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/what-is-fsx-ontap.html#features-overview) 
+  [Invalidación de archivos en Amazon CloudFront](https://docs.aws.amazon.com/Amazon/latest/DeveloperGuide/Invalidation.html) 
+  [Uso de AWS Backup para hacer copias de seguridad y restaurar sistemas de archivos de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/awsbackup.html) 
+  [¿Qué es Amazon CloudWatch Logs?](https://docs.aws.amazon.com/Amazon/latest/logs/WhatIsLogs.html) 
+  [Trabajar con copias de seguridad en Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html) 

 **Vídeos relacionados: ** 
+  [Fuzzy Matching and Deduplicating Data with ML Transforms for AWS Lake Formation](https://www.youtube.com/watch?v=g34xUaJ4WI4) (Concordancia difusa y desduplicación de datos con transformaciones de ML para AWS Lake Formation) 

 **Ejemplos relacionados:** 
+  [¿Cómo analizo mis registros de acceso al servidor de Amazon S3 mediante Amazon Athena?](https://aws.amazon.com/premiumsupport/knowledge-center/analyze-logs-athena/) 

# SUS04-BP06 Usar sistemas de archivos o almacenamiento compartidos para acceder a datos comunes
<a name="sus_sus_data_a7"></a>

Adopte sistemas de archivos o almacenamiento compartidos para evitar la duplicación de datos y posibilitar una infraestructura más eficiente para su carga de trabajo. 

 **Patrones comunes de uso no recomendados:** 
+  Aprovisiona almacenamiento para cada cliente. 
+  No desconecta el volumen de datos de los clientes inactivos. 
+  No proporciona acceso al almacenamiento a través de plataformas y sistemas. 

 **Beneficios de establecer esta práctica recomendada:** el uso de sistemas de archivos o almacenamiento compartidos permite compartir los datos con uno o varios consumidores sin tener que copiarlos. De este modo, se reducen los recursos de almacenamiento necesarios para la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Si tiene varios usuarios o aplicaciones que acceden a los mismos conjuntos de datos, el uso de la tecnología de almacenamiento compartido es esencial para habilitar una infraestructura eficiente para su carga de trabajo. La tecnología de almacenamiento compartido proporciona una ubicación central para almacenar y administrar conjuntos de datos y evitar la duplicación de datos. También refuerza la coherencia de los datos entre los distintos sistemas. Además, la tecnología de almacenamiento compartido permite un uso más eficaz de la potencia de computación, ya que varios recursos de computación pueden acceder a los datos y procesarlos simultáneamente en paralelo. 

 Obtenga datos de estos servicios de almacenamiento compartido solo cuando los necesite y desconecte los volúmenes que no utilice para liberar recursos. 

 **Pasos para la implementación** 
+  Migre los datos al almacenamiento compartido cuando tengan varios consumidores. A continuación le mostramos algunos ejemplos de tecnología de almacenamiento compartido en AWS:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_data_a7.html)
+ Copie datos en sistemas de archivos compartidos, o recupérelos de ellos, solo cuando sea necesario. Por ejemplo, puede crear un [sistema de archivos de Amazon FSx for Lustre respaldado por Amazon S3](https://aws.amazon.com/blogs/storage/new-enhancements-for-moving-data-between-amazon-fsx-for-lustre-and-amazon-s3/) y cargar solo el subconjunto de datos necesarios para procesar los trabajos en Amazon FSx.
+ Elimine los datos según corresponda a sus patrones de uso, como se indica en [SUS04-BP03 Usar políticas para administrar el ciclo de vida de los conjuntos de datos](sus_sus_data_a4.md).
+  Desconecte los volúmenes de los clientes que no los estén usando de forma activa. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Linking your file system to an Amazon S3 bucket ](https://docs.aws.amazon.com/fsx/latest/LustreGuide/create-dra-linked-data-repo.html) (Vinculación del sistema de archivos a un bucket de Amazon S3)
+ [ Using Amazon EFS for AWS Lambda in your serverless applications ](https://aws.amazon.com/blogs/compute/using-amazon-efs-for-aws-lambda-in-your-serverless-applications/)(Uso de Amazon EFS para AWS Lambda en las aplicaciones sin servidor)
+ [ Amazon EFS Intelligent-Tiering Optimizes Costs for Workloads with Changing Access Patterns ](https://aws.amazon.com/blogs/aws/new-amazon-efs-intelligent-tiering-optimizes-costs-for-workloads-with-changing-access-patterns/)(Amazon EFS Intelligent-Tiering optimiza los costes para las cargas de trabajo con patrones de acceso cambiantes)
+ [ Using Amazon FSx with your on-premises data repository ](https://docs.aws.amazon.com/fsx/latest/LustreGuide/fsx-on-premises.html)(Uso de Amazon FSx con su repositorio de datos local)

 **Vídeos relacionados:** 
+ [ Storage cost optimization with Amazon EFS ](https://www.youtube.com/watch?v=0nYAwPsYvBo)(Optimización de costes de almacenamiento con Amazon EFS)

# SUS04-BP07: Minimización del movimiento de datos entre redes
<a name="sus_sus_data_a8"></a>

Utilice sistemas de archivos o almacenamiento de objetos compartidos para acceder a los datos comunes y minimizar el total de recursos de redes necesarios para admitir el movimiento de datos para su carga de trabajo.

 **Patrones comunes de uso no recomendados:** 
+  Almacena todos los datos en la misma Región de AWS independientemente de dónde se encuentren los usuarios de los datos. 
+  No optimiza el tamaño ni el formato de los datos antes de moverlos por la red. 

 **Beneficios de establecer esta práctica recomendada:** la optimización del movimiento de datos por la red reduce los recursos de redes totales necesarios para la carga de trabajo y disminuye su impacto medioambiental. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El movimiento de datos por la organización requiere recursos de computación, red y almacenamiento. Utilice técnicas para minimizar el movimiento de datos y mejorar la eficacia general de su carga de trabajo. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Considere la proximidad a los datos o a los usuarios como un factor de decisión cuando [seleccione una región para su carga de trabajo](https://aws.amazon.com/blogs/architecture/how-to-select-a-region-for-your-workload-based-on-sustainability-goals/). 
+  Particione los servicios que se consumen regionalmente para que los datos específicos de una región se almacenen en la región en la que se consumen. 
+  Utilice formatos de archivo eficientes (como Parquet u ORC) y comprima los datos antes de moverlos por la red. 
+  No mueva los datos no utilizados. Algunos ejemplos que pueden ayudarle a evitar mover datos no utilizados: 
  +  Reduzca las respuestas de la API solo a los datos relevantes. 
  +  Agregue los datos cuando estén detallados (no se requiere información en el nivel de registro). 
  +  Consulte [Well-Architected Lab: Optimize Data Pattern Using Amazon Redshift Data Sharing (Laboratorio de Well-Architected: optimizar el patrón de datos mediante el uso compartido de datos de Amazon Redshift).](https://wellarchitectedlabs.com/sustainability/300_labs/300_optimize_data_pattern_using_redshift_data_sharing/). 
  +  Considere [el uso compartido de datos entre cuentas en AWS Lake Formation.](https://docs.aws.amazon.com/lake-formation/latest/dg/cross-account-permissions.html). 
+  Utilice servicios que puedan ayudarle a ejecutar el código más cerca de los usuarios de su carga de trabajo.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_data_a8.html)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Optimización de la infraestructura de AWS para la sostenibilidad, parte III: redes](https://aws.amazon.com/blogs/architecture/optimizing-your-aws-infrastructure-for-sustainability-part-iii-networking/) 
+  [Infraestructura global de AWS](https://aws.amazon.com/about-aws/global-infrastructure/) 
+  [Características clave de Amazon CloudFront, incluida la red perimetral global de CloudFront](https://aws.amazon.com/cloudfront/features/) 
+  [Compresión de solicitudes HTTP en Amazon OpenSearch Service](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/gzip.html) 
+  [Compresión de datos intermedia con Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-output-compression.html#HadoopIntermediateDataCompression) 
+  [Carga de archivos de datos comprimidos desde Amazon S3 en Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/dg/t_loading-gzip-compressed-data-files-from-S3.html) 
+  [Entrega archivos comprimidos con Amazon CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html) 

 **Vídeos relacionados:** 
+ [ Demystifying data transfer on AWS (Desmitificación de la transferencia de datos en AWS) ](https://www.youtube.com/watch?v=-MqXgzw1IGA)

 **Ejemplos relacionados:** 
+ [ Architecting for sustainability - Minimize data movement across networks (Diseño de una arquitectura para la sostenibilidad: minimice el movimiento de datos entre las redes) ](https://catalog.us-east-1.prod.workshops.aws/workshops/7c4f8394-8081-4737-aa1b-6ae811d46e0a/en-US)

# SUS04-BP08: Realización de copias de seguridad de los datos solo cuando sea difícil volver a crearlos
<a name="sus_sus_data_a9"></a>

Evite realizar copias de seguridad de datos que no tengan valor empresarial para minimizar los requisitos de recursos de almacenamiento para su carga de trabajo. 

 **Patrones comunes de uso no recomendados:** 
+  No dispone de una estrategia de copia de seguridad para los datos. 
+  Hace copias de seguridad de datos que pueden volver a crearse fácilmente. 

 **Beneficios de establecer esta práctica recomendada:** evitar las copias de seguridad de los datos que no son fundamentales reduce los recursos de almacenamiento necesarios para la carga de trabajo y disminuye su impacto medioambiental. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Evitar la copia de seguridad de datos innecesarios puede contribuir a reducir los costes y los recursos de almacenamiento utilizados por la carga de trabajo. Realice copias de seguridad únicamente de aquellos datos que tengan valor empresarial o que sean necesarios para satisfacer los requisitos de cumplimiento. Examine las políticas de copia de seguridad y excluya el almacenamiento efímero que no proporcione valor alguno en un escenario de recuperación. 

 **Pasos para la implementación** 
+  Implemente la política de clasificación de datos tal y como se indica en [SUS04-BP01: Implementación de una política de clasificación de datos](sus_sus_data_a2.md). 
+  Utilice la criticidad de la clasificación de sus datos y diseñe la estrategia de copia de seguridad en función de su [objetivo de tiempo de recuperación (RTO) y de su objetivo de punto de recuperación (RPO](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/rel_planning_for_recovery_objective_defined_recovery.html)). Evite realizar copias de seguridad de datos no esenciales. 
  +  Excluya los datos que pueden volver a crearse fácilmente. 
  +  Excluya los datos efímeros de sus copias de seguridad. 
  +  Excluya las copias locales de los datos, a menos que el tiempo necesario para restaurar esos datos desde una ubicación común supere lo establecido en los acuerdos de nivel de servicio (SLA). 
+  Utilice una solución automatizada o un servicio administrado para realizar copias de seguridad de los datos fundamentales para la empresa. 
  +  [AWS Backup](https://docs.aws.amazon.com/aws-backup/latest/devguide/whatisbackup.html) es un servicio totalmente administrado que facilita la centralización y automatización de la protección de datos entre servicios de AWS, en la nube y en el entorno local. Para obtener orientación práctica sobre cómo crear copias de seguridad automatizadas con AWS Backup, consulte [Well-Architected Labs - Testing Backup and Restore of Data](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/) (Laboratorios de Well-Architected: Pruebas de copia de seguridad y restauración de datos). 
  +  [Automate backups and optimize backup costs for Amazon EFS using AWS Backup](https://aws.amazon.com/blogs/storage/automating-backups-and-optimizing-backup-costs-for-amazon-efs-using-aws-backup/) (Automatizar las copias de seguridad y optimizar los costes de copia de seguridad para Amazon EFS con AWS Backup). 

## Recursos
<a name="resources"></a>

 **Prácticas recomendadas relacionadas:** 
+ [REL09-BP01 Identificar todos los datos de los que se debe hacer una copia de seguridad y crearla o reproducir los datos a partir de los orígenes](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/rel_backing_up_data_identified_backups_data.html)
+ [REL09-BP03 Realizar copias de seguridad de los datos automáticamente](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/rel_backing_up_data_automated_backups_data.html)
+ [REL13-BP02 Usar estrategias de recuperación definidas para cumplir los objetivos de recuperación](https://docs.aws.amazon.com/wellarchitected/latest/reliability-pillar/rel_planning_for_recovery_disaster_recovery.html)

 **Documentos relacionados:** 
+  [Uso de AWS Backup para hacer copias de seguridad y restaurar sistemas de archivos de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/awsbackup.html) 
+  [Instantáneas de Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSSnapshots.html) 
+  [Trabajar con copias de seguridad en Amazon Relational Database Service](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_WorkingWithAutomatedBackups.html) 
+ [Socio de APN: socios que pueden ayudar con la copia de seguridad](https://partners.amazonaws.com/search/partners?keyword=Backup)
+ [AWS Marketplace: productos que pueden usarse para la copia de seguridad ](https://aws.amazon.com/marketplace/search/results?searchTerms=Backup)
+ [Copia de seguridad de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/efs-backup-solutions.html)
+ [Copia de seguridad de Amazon FSx para Windows File Server](https://docs.aws.amazon.com/fsx/latest/WindowsGuide/using-backups.html)
+ [ Copia de seguridad y restauración para Amazon ElastiCache (Redis OSS) ](https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/backups.html)

 **Vídeos relacionados: ** 
+ [AWS re:Invent 2021 - Backup, disaster recovery, and ransomware protection with AWS](https://www.youtube.com/watch?v=Ru4jxh9qazc) (AWS re:Invent 2021: copia de seguridad, recuperación de desastres y protección contra ransomware con AWS)
+ [AWS Backup Demo: Cross-Account and Cross-Region Backup ](https://www.youtube.com/watch?v=dCy7ixko3tE) (Demostración de AWS Backup: copia de seguridad entre cuentas y entre regiones)
+ [AWS re:Invent 2019: Deep dive on AWS Backup, ft. Rackspace (STG341) ](https://www.youtube.com/watch?v=av8DpL0uFjc)

 **Ejemplos relacionados:** 
+ [ Well-Architected Lab - Testing Backup and Restore of Data ](https://wellarchitectedlabs.com/reliability/200_labs/200_testing_backup_and_restore_of_data/)(Laboratorio de Well-Architected: probar la copia de seguridad y restauración de los datos)
+ [Well-Architected Lab - Backup and Restore with Failback for Analytics Workload](https://wellarchitectedlabs.com/reliability/200_labs/200_backup_restore_failback_analytics/) (Laboratorio de Well-Architected: copia de seguridad y restauración con conmutación por recuperación para cargas de trabajo de análisis)
+ [Well-Architected Lab - Disaster Recovery - Backup and Restore](https://wellarchitectedlabs.com/reliability/disaster-recovery/workshop_1/) (Laboratorio de Well-Architected: recuperación de desastres, copia de seguridad y restauración)

# Hardware y servicios
<a name="a-sus-hardware-and-services"></a>

**Topics**
+ [SUS 5 ¿Cómo selecciona y usa el hardware y los servicios en la nube de su arquitectura para lograr sus objetivos de sostenibilidad?](sus-05.md)

# SUS 5 ¿Cómo selecciona y usa el hardware y los servicios en la nube de su arquitectura para lograr sus objetivos de sostenibilidad?
<a name="sus-05"></a>

Realice cambios en sus prácticas de administración de hardware como forma de reducir el impacto en la sostenibilidad de las cargas de trabajo. Minimice la cantidad de hardware necesario para aprovisionar y desplegar y seleccione el hardware y los servicios más eficaces para su carga de trabajo individual. 

**Topics**
+ [SUS05-BP01 Usar la mínima cantidad de hardware para cumplir sus necesidades](sus_sus_hardware_a2.md)
+ [SUS05-BP02: Uso de los tipos de instancia con el menor impacto](sus_sus_hardware_a3.md)
+ [SUS05-BP03 Usar servicios administrados](sus_sus_hardware_a4.md)
+ [SUS05-BP04 Optimizar el uso de aceleradores de computación basados en hardware](sus_sus_hardware_a5.md)

# SUS05-BP01 Usar la mínima cantidad de hardware para cumplir sus necesidades
<a name="sus_sus_hardware_a2"></a>

Utilice la cantidad mínima de hardware para su carga de trabajo a fin de satisfacer eficazmente sus necesidades empresariales.

 **Patrones comunes de uso no recomendados:** 
+  No supervisa la utilización de los recursos. 
+  Tiene recursos con un bajo nivel de utilización en su arquitectura. 
+  No se revisa la utilización del hardware estático para determinar si debe redimensionarse. 
+  No establece objetivos de utilización de hardware para su infraestructura de computación en función de los KPI empresariales. 

 **Beneficios de establecer esta práctica recomendada:** el redimensionamiento de sus recursos en la nube contribuye a reducir el impacto medioambiental de una carga de trabajo, ahorrar dinero y mantener los niveles de rendimiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Seleccione de forma óptima el número total de hardware necesario para su carga de trabajo con el fin de mejorar su eficacia global. La Nube de AWS ofrece la flexibilidad de ampliar o reducir el número de recursos de forma dinámica a través de diversos mecanismos, como [AWS Auto Scaling](https://aws.amazon.com/autoscaling/), y satisfacer los cambios en la demanda. También proporciona [API y SDK](https://aws.amazon.com/developer/tools/) que permiten modificar los recursos con un mínimo esfuerzo. Use estas capacidades para hacer cambios frecuentes en las implementaciones de su carga de trabajo. Además, utilice las directrices de dimensionamiento de las herramientas de AWS para usar eficazmente sus recursos en la nube y satisfacer sus necesidades empresariales. 

 **Pasos para la implementación** 
+  Elija el tipo de instancia que mejor se adapte a sus necesidades. 
  + [ How do I choose the appropriate Amazon EC2 instance type for my workload?](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-instance-choose-type-for-workload/) (¿Cómo elijo el tipo de instancia Amazon EC2 apropiado para mi carga de trabajo?)
  + [Attribute based instance type selection for Amazon EC2 Fleet](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html) (Selección de tipo de instancia basada en atributos para Flota de Amazon EC2).
  + [ Crear un grupo de Auto Scaling mediante la selección del tipo de instancia basada en atributos](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-asg-instance-type-requirements.html).
+  Escale mediante pequeños incrementos para las cargas de trabajo variables. 
+  Utilice varias opciones de compra de computación para equilibrar la flexibilidad de las instancias, la escalabilidad y el ahorro de costes. 
  +  Las [instancias bajo demanda](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-on-demand-instances.html) son las más adecuadas para las cargas de trabajo nuevas, con estado y con picos que no pueden ser flexibles en cuanto al tipo de instancia, la ubicación o el tiempo. 
  +  Las [instancias de spot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html) son una excelente forma de complementar las demás opciones para aplicaciones con tolerancia a errores y que son flexibles. 
  +  Use los [Savings Plans para computación](https://aws.amazon.com/savingsplans/compute-pricing/) en cargas de trabajo en estado estable que permiten flexibilidad si cambian sus necesidades (como zona de disponibilidad, región, familias de instancias o tipos de instancia). 
+  Utilice la diversidad de instancias y zonas de disponibilidad para maximizar la disponibilidad de las aplicaciones y aprovechar el exceso de capacidad cuando sea posible. 
+  Use las recomendaciones de tamaño adecuado de las herramientas de AWS para adaptar su carga de trabajo. 
  + [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/)
  + [AWS Trusted Advisor](https://aws.amazon.com/premiumsupport/technology/trusted-advisor/)
+  Negocie acuerdos de nivel de servicio (SLA) que permitan una reducción temporal de la capacidad mientras la automatización despliega recursos de reemplazo. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [ Optimizing your AWS Infrastructure for Sustainability, Part I: Compute ](https://aws.amazon.com/blogs/architecture/optimizing-your-aws-infrastructure-for-sustainability-part-i-compute/)(Optimización de la infraestructura de AWS para la sostenibilidad, parte I: computación)
+ [Attribute based Instance Type Selection for Auto Scaling for Amazon EC2 Fleet](https://aws.amazon.com/blogs/aws/new-attribute-based-instance-type-selection-for-ec2-auto-scaling-and-ec2-fleet/) (Selección de tipo de instancia basada en atributos para Auto Scaling para Flota de Amazon EC2)
+ [Documentación de AWS Compute Optimizer](https://docs.aws.amazon.com/compute-optimizer/index.html)
+  [Operating Lambda: Performance optimization](https://aws.amazon.com/blogs/compute/operating-lambda-performance-optimization-part-2/) (Operación de Lambda: optimización de rendimiento) 
+  [Documentación de Auto Scaling](https://docs.aws.amazon.com/autoscaling/index.html) 

 **Vídeos relacionados: ** 
+ [Build a cost-, energy-, and resource-efficient compute environment (Crear un entorno de computación rentable, eficiente en términos de costes, energía y recursos)](https://www.youtube.com/watch?v=8zsC5e1eLCg)

 **Ejemplos relacionados:** 
+ [Well-Architected Labs - Rightsizing with AWS Compute Optimizer and Memory Utilization Enabled (Level 200)](https://www.wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/5_ec2_computer_opt/) (Laboratorios de Well-Architected: redimensionamiento con AWS Compute Optimizer y uso de memoria activado [nivel 200])

# SUS05-BP02: Uso de los tipos de instancia con el menor impacto
<a name="sus_sus_hardware_a3"></a>

Supervise y utilice continuamente nuevos tipos de instancias para aprovechar las mejoras de la eficiencia energética.

 **Patrones comunes de uso no recomendados:** 
+  Solo utiliza una familia de instancias. 
+  Solo utiliza instancias x86. 
+  Especifica un tipo de instancia en su configuración de Amazon EC2 Auto Scaling. 
+  Utiliza instancias de AWS para fines para las que no fueron diseñadas (por ejemplo, utiliza instancias optimizadas para computación para una carga de trabajo de uso intensivo de memoria). 
+  No evalúa de forma regular nuevos tipos de instancia. 
+  No comprueba recomendaciones de herramientas de dimensionamiento de AWS como [AWS Compute Optimizer.](https://aws.amazon.com/compute-optimizer/) 

 **Beneficios de establecer esta práctica recomendada:** Al utilizar instancias energéticamente eficientes y del tamaño adecuado, podrá reducir en gran medida el impacto medioambiental y el coste de su carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 El uso de instancias eficientes en la carga de trabajo en la nube es fundamental para el uso reducido de recursos y la rentabilidad. Supervise de forma continuada el lanzamiento de nuevos tipos de instancia y aproveche las mejoras de la eficiencia energética; se incluyen los tipos de instancia diseñados para admitir cargas de trabajo específicas, como el entrenamiento y la inferencia en machine learning y la transcodificación de vídeo. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Conozca y explore los tipos de instancia que pueden reducir el impacto medioambiental de su carga de trabajo. 
  +  Suscríbase a [Novedades de AWS](https://aws.amazon.com/new/) para estar al día con las últimas tecnologías e instancias de AWS. 
  +  Conozca los diferentes tipos de instancias de AWS. 
  +  Conozca las instancias basadas en Graviton de AWS que ofrecen el mejor rendimiento por vatio de uso de energía en Amazon EC2 con [re:Invent 2020 - Conocer en profundidad las instancias de Amazon EC2 con procesador AWS Graviton2](https://www.youtube.com/watch?v=NLysl0QvqXU) y [Conocer en profundidad las instancias C7g de Amazon EC2 y AWS Graviton3](https://www.youtube.com/watch?v=WDKwwFQKfSI&ab_channel=AWSEvents). 
+  Planifique y realice la transición de su carga de trabajo a los tipos de instancia con el menor impacto. 
  +  Defina un proceso para evaluar nuevas funciones o instancias para su carga de trabajo. Aproveche la agilidad de la nube para probar rápidamente cómo los nuevos tipos de instancia pueden mejorar la sostenibilidad medioambiental de su carga de trabajo. Utilice las métricas proxy para medir cuántos recursos necesita para completar una unidad de trabajo. 
  +  Si es posible, modifique su carga de trabajo para que funcione con diversas cantidades de vCPU y de memoria para sacar el máximo partido de su elección de tipo de instancia. 
  +  Considere la posibilidad de cambiar su carga de trabajo a instancias basadas en Graviton para mejorar la eficiencia del rendimiento de su carga de trabajo. 
    +  [AWS Graviton Fast Start](https://aws.amazon.com/ec2/graviton/fast-start/) 
    +  [Considerations when transitioning workloads to AWS Graviton-based Amazon Elastic Compute Cloud instances (Consideraciones al trasladar cargas de trabajo a instancias de Amazon EC2 basadas en AWS Graviton)](https://github.com/aws/aws-graviton-getting-started/blob/main/transition-guide.md) 
    +  [Graviton2 de AWS para ISV](https://docs.aws.amazon.com/whitepapers/latest/aws-graviton2-for-isv/welcome.html) 
  +  Considere la selección de la opción de Graviton de AWS en el uso de [los servicios administrados de AWS.](https://github.com/aws/aws-graviton-getting-started/blob/main/managed_services.md) 
  +  Migre su carga de trabajo a las regiones que ofrezcan las instancias con menor impacto en la sostenibilidad y que sigan cumpliendo sus requisitos empresariales. 
  +  Para las cargas de trabajo de machine learning, utilice hardware personalizado específico para su carga de trabajo, como [AWS Trainium](https://aws.amazon.com/machine-learning/trainium/), [AWS Inferentia](https://aws.amazon.com/machine-learning/inferentia/) y [Amazon EC2 DL1.](https://aws.amazon.com/ec2/instance-types/dl1/) Las instancias de AWS Inferentia, como las instancias Inf2, ofrecen hasta un 50 % más de rendimiento por vatio que las instancias de Amazon EC2 comparables. 
  +  Utilice [Amazon SageMaker AI Inference Recommender](https://docs.aws.amazon.com/sagemaker/latest/dg/inference-recommender.html) para el tamaño correcto del punto de conexión de inferencia de ML. 
  +  Para cargas de trabajo con picos (cargas de trabajo con requisitos poco frecuentes de capacidad adicional), utilice [instancias de rendimiento ampliable.](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) 
  +  Para cargas de trabajo sin estado y tolerantes a errores, utilice [Instancias de spot de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances.html) para incrementar el uso global de la nube y reducir el impacto en la sostenibilidad de los recursos no utilizados. 
+  Opere y optimice su instancia de carga de trabajo. 
  +  Para las cargas de trabajo efímeras, evalúe [las métricas de Amazon CloudWatch de instancias](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html#ec2-cloudwatch-metrics) como `CPUUtilization` para identificar si la instancia está inactiva o infrautilizada. 
  +  Para cargas de trabajo estables, compruebe las herramientas de redimensionamiento de AWS como [AWS Compute Optimizer](https://aws.amazon.com/compute-optimizer/) a intervalos regulares para identificar las oportunidades de optimizar y dimensionar las instancias. 
    + [ Well-Architected Lab - Rightsizing Recommendations (Laboratorio de Well-Architected: recomendaciones de redimensionamiento) ](https://wellarchitectedlabs.com/cost/100_labs/100_aws_resource_optimization/)
    + [ Well-Architected Lab - Rightsizing with Compute Optimizer (Laboratorio de Well-Architected: redimensionamiento con Compute Optimizer) ](https://wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/)
    + [ Well-Architected Lab - Optimize Hardware Patterns and Observice Sustainability KPIs (Laboratorio de Well-Architected: optimizar los patrones de hardware y observar los KPI de sostenibilidad) ](https://wellarchitectedlabs.com/sustainability/200_labs/200_optimize_hardware_patterns_observe_sustainability_kpis/)

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Optimización de la infraestructura de AWS para la sostenibilidad, Parte I: computación](https://aws.amazon.com/blogs/architecture/optimizing-your-aws-infrastructure-for-sustainability-part-i-compute/) 
+  [AWS Graviton](https://aws.amazon.com/ec2/graviton/) 
+  [Amazon EC2 DL1](https://aws.amazon.com/ec2/instance-types/dl1/) 
+  [Flotas de reservas de capacidad de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cr-fleets.html) 
+  [Flota de spot de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet.html) 
+  [Funciones: configuración de funciones de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html#function-configuration) 
+ [ Selección de tipo de instancia basada en atributos para la flota de Amazon EC2 ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html)
+ [Building Sustainable, Efficient, and Cost-Optimized Applications on AWS (Creación de aplicaciones sostenibles, eficientes y con optimización de costes en AWS)](https://aws.amazon.com/blogs/compute/building-sustainable-efficient-and-cost-optimized-applications-on-aws/)
+ [ How the Contino Sustainability Dashboard Helps Customers Optimize Their Carbon Footprint (Cómo el panel de sostenibilidad de Contino ayuda a los clientes a optimizar su huella de carbono) ](https://aws.amazon.com/blogs/apn/how-the-contino-sustainability-dashboard-helps-customers-optimize-their-carbon-footprint/)

 **Vídeos relacionados:** 
+  [Conocer en profundidad las instancias de Amazon EC2 con procesador AWS Graviton2](https://www.youtube.com/watch?v=NLysl0QvqXU) 
+  [Conocer en profundidad las instancias C7g de Amazon EC2 y AWS Graviton3](https://www.youtube.com/watch?v=WDKwwFQKfSI&ab_channel=AWSEvents) 
+ [ Build a cost-, energy-, and resource-efficient compute environment (Crear un entorno de computación rentable, eficiente en términos de costes, energía y recursos) ](https://www.youtube.com/watch?v=8zsC5e1eLCg)

 **Ejemplos relacionados:** 
+ [ Solution: Guidance for Optimizing Deep Learning Workloads for Sustainability on AWS (Solución: guía para optimizar las cargas de trabajo de aprendizaje profundo para la sostenibilidad en AWS) ](https://aws.amazon.com/solutions/guidance/optimizing-deep-learning-workloads-for-sustainability-on-aws/)
+  [Well-Architected Lab - Rightsizing Recommendations (Laboratorio de Well-Architected: recomendaciones de redimensionamiento)](https://wellarchitectedlabs.com/cost/100_labs/100_aws_resource_optimization/) 
+  [Well-Architected Lab - Rightsizing with Compute Optimizer (Laboratorio de Well-Architected: redimensionamiento con Compute Optimizer)](https://wellarchitectedlabs.com/cost/200_labs/200_aws_resource_optimization/) 
+  [Well-Architected Lab - Optimize Hardware Patterns and Observe Sustainability KPIs (Laboratorio de Well-Architected: optimizar los patrones de hardware y observar los KPI de sostenibilidad)](https://wellarchitectedlabs.com/sustainability/200_labs/200_optimize_hardware_patterns_observe_sustainability_kpis/) 
+ [ Well-Architected Lab - Migrating Services to Graviton (Laboratorio de Well-Architected: migración de servicios a Graviton) ](https://www.wellarchitectedlabs.com/sustainability/100_labs/100_migrate_services_to_graviton/)

# SUS05-BP03 Usar servicios administrados
<a name="sus_sus_hardware_a4"></a>

Utilice los servicios administrados para operar con mayor eficacia en la nube.

 **Patrones comunes de uso no recomendados:** 
+  Utiliza instancias de Amazon EC2 con baja utilización para ejecutar sus aplicaciones. 
+  Su equipo interno solo administra la carga de trabajo, sin tiempo para centrarse en la innovación o las simplificaciones. 
+  Despliega y mantiene tecnologías para tareas que pueden ejecutarse con mayor eficacia en servicios administrados. 

 **Beneficios de establecer esta práctica recomendada:** 
+  El uso de servicios administrados traslada la responsabilidad a AWS, que dispone de información sobre millones de clientes que puede ayudar a impulsar nuevas innovaciones y eficiencias. 
+  El servicio administrado distribuye el impacto medioambiental del servicio entre muchos usuarios gracias a los planos de control de varios principios. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Mediana 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Los servicios administrados traspasan a AWS la responsabilidad del mantenimiento de un uso elevado y la optimización de la sostenibilidad del hardware desplegado. Los servicios administrados también eliminan la carga operativa y administrativa del mantenimiento de un servicio, lo que permite a su equipo tener más tiempo para centrarse en la innovación. 

 Revise su carga de trabajo para identificar los componentes que se pueden reemplazar por servicios administrados por AWS. Por ejemplo, [Amazon RDS](https://aws.amazon.com/rds/), [Amazon Redshift](https://aws.amazon.com/redshift/) y [Amazon ElastiCache](https://aws.amazon.com/elasticache/) proporcionan un servicio de base de datos administrada. [Amazon Athena](https://aws.amazon.com/athena/), [Amazon EMR](https://aws.amazon.com/emr/) y [Amazon OpenSearch Service](https://aws.amazon.com/opensearch-service/) proporcionan un servicio de análisis administrados. 

 **Pasos para la implementación** 

1.  Realice un inventario de su carga de trabajo para servicios y componentes. 

1.  Evalúe e identifique los componentes que se pueden reemplazar por servicios administrados. A continuación, encontrará algunos ejemplos de cuándo podría plantearse el uso de un servicio administrado:     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_hardware_a4.html)

1.  Identifique las dependencias y cree un plan de migraciones. Actualice los runbooks y las guías de estrategias según corresponda. 
   +  [AWS Application Discovery Service](https://aws.amazon.com/application-discovery/) recopila y presenta de modo automático la información detallada sobre el uso y las dependencias de aplicaciones para que pueda tomar decisiones más fundamentadas cuando planifique la migración. 

1.  Pruebe el servicio antes de migrar al servicio administrado. 

1.  Utilice el plan de migración para reemplazar los servicios autoadministrados por un servicio administrado. 

1.  Supervise continuamente el servicio una vez finalizada la migración para realizar los ajustes necesarios y optimizar el servicio. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Productos de Nube de AWS](https://aws.amazon.com/products/)
+ [Calculadora de coste total de propiedad (TCO) de AWS](https://calculator.aws/#/)
+  [Amazon DocumentDB](https://aws.amazon.com/documentdb/) 
+  [Amazon Elastic Kubernetes Service (EKS)](https://aws.amazon.com/eks/) 
+  [Amazon Managed Streaming for Apache Kafka (Amazon MSK)](https://aws.amazon.com/msk/) 

 **Vídeos relacionados: ** 
+ [ Cloud operations at scale with AWS Managed Services](https://www.youtube.com/watch?v=OCK8GCImWZw)(Operaciones en la nube a escala con AWS Managed Services)

# SUS05-BP04 Optimizar el uso de aceleradores de computación basados en hardware
<a name="sus_sus_hardware_a5"></a>

Optimice el uso de instancias de computación acelerada para reducir las demandas de infraestructura física de su carga de trabajo.

 **Patrones comunes de uso no recomendados:** 
+  No supervisa el uso de GPU. 
+  Utiliza una instancia de uso general para la carga de trabajo, mientras que una instancia personalizada puede ofrecer mayor rendimiento, menor coste y mejor rendimiento por vatio. 
+  Utiliza aceleradores de computación basados en hardware para tareas en las que es más eficiente utilizar alternativas basadas en CPU. 

 **Beneficios de establecer esta práctica recomendada:** al optimizar el uso de los aceleradores basados en hardware, puede reducir las demandas de infraestructura física de su carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Si necesita una gran capacidad de procesamiento, puede beneficiarse del uso de instancias de computación acelerada, que proporcionan acceso a aceleradores de computación basados en hardware, como unidades de procesamiento gráfico (GPU) y matrices de puertas programables en campo (FPGA). Estos aceleradores de hardware realizan ciertas funciones, como el procesamiento gráfico o la concordancia de patrones de datos, de forma más eficiente que las alternativas basadas en CPU. Muchas cargas de trabajo aceleradas, como el renderizado, la transcodificación y el machine learning, son muy variables en cuanto al uso de recursos. Ejecute este hardware solo durante el tiempo que sea necesario y retírelo mediante automatización cuando no se requiera para minimizar los recursos consumidos. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Identifique qué [instancias de computación acelerada](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/accelerated-computing-instances.html) pueden satisfacer sus necesidades. 
+  Para las cargas de trabajo de machine learning, utilice hardware personalizado específico para su carga de trabajo, como [AWS Trainium](https://aws.amazon.com/machine-learning/trainium/), [AWS Inferentia](https://aws.amazon.com/machine-learning/inferentia/)y [Amazon EC2 DL1](https://aws.amazon.com/ec2/instance-types/dl1/). Las instancias de AWS Inferentia, como las instancias Inf2, tienen hasta [un 50 % más de rendimiento por vatio en comparación con instancias de Amazon EC2 comparables](https://aws.amazon.com/machine-learning/inferentia/). 
+  Recopile la métrica de uso de sus instancias de computación acelerada. Por ejemplo, puede usar un agente de CloudWatch para recopilar métricas como `utilization_gpu` y `utilization_memory` para sus GPU, como se muestra en [Collect NVIDIA GPU metrics with Amazon CloudWatch (Recopilación de métricas de CPU de NVIDIA con Amazon CloudWatch)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-NVIDIA-GPU.html). 
+  Optimice el código, el funcionamiento de la red y la configuración de los aceleradores de hardware para asegurarse de que se aprovecha al máximo el hardware subyacente. 
  +  [Optimizar la configuración de GPU](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/optimize_gpu.html) 
  +  [GPU Monitoring and Optimization in the Deep Learning AMI (Supervisión y optimización de la GPU en la AMI de aprendizaje profundo)](https://docs.aws.amazon.com/dlami/latest/devguide/tutorial-gpu.html) 
  +  [Optimizing I/O for GPU performance tuning of deep learning training in Amazon SageMaker AI (Optimización de la E/S para el ajuste del rendimiento de la GPU en el entrenamiento del aprendizaje profundo en Amazon SageMaker)](https://aws.amazon.com/blogs/machine-learning/optimizing-i-o-for-gpu-performance-tuning-of-deep-learning-training-in-amazon-sagemaker/) 
+  Utilice las bibliotecas de alto rendimiento y los controladores de GPU más recientes. 
+  Use la automatización para liberar instancias de GPU cuando no se estén usando. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Computación acelerada](https://aws.amazon.com/ec2/instance-types/#Accelerated_Computing) 
+ [ Let's Architect\$1 Architecting with custom chips and accelerators (Arquitectura con chips y aceleradores personalizados) ](https://aws.amazon.com/blogs/architecture/lets-architect-custom-chips-and-accelerators/)
+ [ How do I choose the appropriate Amazon EC2 instance type for my workload? (¿Cómo elijo el tipo de instancia de EC2 apropiado para mi carga de trabajo?) ](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-instance-choose-type-for-workload/)
+  [Instancias VT1 de Amazon EC2](https://aws.amazon.com/ec2/instance-types/vt1/) 
+  [Amazon Elastic Graphics](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html) 
+ [ Choose the best AI accelerator and model compilation for computer vision inference with Amazon SageMaker AI (Elija el mejor acelerador de IA y compilación de modelos para la inferencia de visión artificial con Amazon SageMaker) ](https://aws.amazon.com/blogs/machine-learning/choose-the-best-ai-accelerator-and-model-compilation-for-computer-vision-inference-with-amazon-sagemaker/)

 **Vídeos relacionados:** 
+ [ How to select Amazon EC2 GPU instances for deep learning (Cómo seleccionar las instancias de GPU de Amazon EC2 para el aprendizaje profundo) ](https://www.youtube.com/watch?v=4bVrIbgGWEA)
+  [Deep Dive on Amazon EC2 Elastic GPUs (Profundización en las GPU elásticas de Amazon EC2)](https://www.youtube.com/watch?v=HbJ2xxgrcCE) 
+  [Deploying Cost-Effective Deep Learning Inference (Despliegue rentable de la inferencia del aprendizaje profundo)](https://www.youtube.com/watch?v=WiCougIDRsw) 

# Proceso y cultura
<a name="a-sus-process-and-culture"></a>

**Topics**
+ [SUS 6 ¿Cómo respaldan sus procesos organizativos sus objetivos de sostenibilidad?](sus-06.md)

# SUS 6 ¿Cómo respaldan sus procesos organizativos sus objetivos de sostenibilidad?
<a name="sus-06"></a>

Realice cambios en sus prácticas de desarrollo, prueba e implementación como forma de reducir el impacto en la sostenibilidad. 

**Topics**
+ [SUS06-BP01 Adoptar métodos que permitan introducir mejoras en la sostenibilidad rápidamente](sus_sus_dev_a2.md)
+ [SUS06-BP02: Mantenimiento de una carga de trabajo actualizada](sus_sus_dev_a3.md)
+ [SUS06-BP03: Incremento de la utilización de los entornos de compilación](sus_sus_dev_a4.md)
+ [SUS06-BP04 Usar granjas de dispositivos administrados para pruebas](sus_sus_dev_a5.md)

# SUS06-BP01 Adoptar métodos que permitan introducir mejoras en la sostenibilidad rápidamente
<a name="sus_sus_dev_a2"></a>

Adopte métodos y procesos para validar las mejoras potenciales, minimizar los costes de las pruebas y ofrecer pequeñas mejoras.

 **Patrones comunes de uso no recomendados:** 
+  La revisión de su solicitud de sostenibilidad es una tarea que se realiza solo una vez al comienzo de un proyecto. 
+  Su carga de trabajo se ha quedado obsoleta, ya que el proceso de lanzamiento es demasiado complejo para incorporar pequeños cambios para la eficiencia de los recursos. 
+  No dispone de mecanismos para mejorar su carga de trabajo para la sostenibilidad. 

 **Beneficios de establecer esta práctica recomendada:** si establece un proceso para incorporar mejoras de sostenibilidad y realizar un seguimiento de ellas, podrá adoptar continuamente nuevas características y capacidades, eliminar problemas y mejorar la eficacia de la carga de trabajo. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Pruebe y valide las mejoras de sostenibilidad potenciales antes de desplegarlas en producción. Tenga en cuenta el coste de las pruebas al calcular las posibles ventajas futuras de una mejora. Desarrolle métodos de prueba de bajo coste para ofrecer pequeñas mejoras. 

 **Pasos para la implementación** 
+  Añada requisitos para la mejora de la sostenibilidad a sus tareas pendientes de desarrollo. 
+  Utilice un [proceso de mejora](https://docs.aws.amazon.com/wellarchitected/latest/sustainability-pillar/improvement-process.html) iterativo para identificar, evaluar, priorizar, probar y desplegar estas mejoras. 
+  Mejore y optimice continuamente sus procesos de desarrollo. Por ejemplo, [automatice su proceso de entrega de software mediante canalizaciones de integración y entrega continuas (CI/CD)](https://aws.amazon.com/getting-started/hands-on/set-up-ci-cd-pipeline/) para probar y desplegar posibles mejoras con el fin de reducir el nivel de esfuerzo y limitar los errores provocados por los procesos manuales. 
+  Desarrolle y pruebe posibles mejoras con los componentes representativos mínimos viables para reducir el coste de las pruebas. 
+  Evalúe continuamente el impacto de las mejoras y realice los ajustes necesarios. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS habilita soluciones de sostenibilidad](https://aws.amazon.com/sustainability/) 
+ [ Scalable agile development practices based on AWS CodeCommit](https://aws.amazon.com/blogs/devops/scalable-agile-development-practices-based-on-aws-codecommit/)(Prácticas de desarrollo ágil escalables basadas en AWS CodeCommit)

 **Vídeos relacionados: ** 
+ [ Delivering sustainable, high-performing architectures ](https://www.youtube.com/watch?v=FBc9hXQfat0)(Entrega de arquitecturas sostenibles y de alto rendimiento)

 **Ejemplos relacionados:** 
+  [Well-Architected Lab - Turning cost & usage reports into efficiency reports](https://www.wellarchitectedlabs.com/sustainability/300_labs/300_cur_reports_as_efficiency_reports/) (Laboratorio de Well-Architected: convertir informes sobre costes y uso en informes de eficiencia) 

# SUS06-BP02: Mantenimiento de una carga de trabajo actualizada
<a name="sus_sus_dev_a3"></a>

Mantenga actualizada su carga de trabajo para adoptar características eficaces, eliminar problemas y mejorar la eficacia general de su carga de trabajo. 

 **Patrones comunes de uso no recomendados:** 
+ Asume que su arquitectura actual es estática y no se actualizará con el tiempo.
+  No dispone de sistemas ni de una cadencia regular para evaluar si los programas y paquetes actualizados son compatibles con su carga de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** al establecer un proceso para mantener su carga de trabajo actualizada, puede adoptar nuevas funciones y capacidades, resolver problemas y mejorar la eficiencia de la carga de trabajo.

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 La actualización de sistemas operativos, tiempos de ejecución, middlewares, bibliotecas y aplicaciones puede mejorar la eficacia de la carga de trabajo y facilitar la adopción de tecnologías más eficientes. Un software actualizado también puede incluir características que midan el impacto de su carga de trabajo en la sostenibilidad de forma más precisa, ya que los proveedores ofrecen características para cumplir sus objetivos de sostenibilidad propios. Adopte una cadencia periódica para mantener su carga de trabajo al día de las últimas características y versiones. 

 **Pasos para la implementación** 
+  Defina un proceso y un calendario para evaluar nuevas funciones o instancias para su carga de trabajo. Aproveche la agilidad de la nube para probar rápidamente cómo las nuevas funciones pueden mejorar su carga de trabajo para: 
  +  Reducir el impacto en la sostenibilidad. 
  +  Lograr la eficacia operativa. 
  +  Eliminar las barreras para una mejora planificada. 
  +  Mejorar su capacidad a la hora de medir y administrar las repercusiones en la sostenibilidad. 
+  Inventariar el software y la arquitectura de su carga de trabajo e identificar los componentes que deben actualizarse. 
  +  Puede usar [Inventario de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-inventory.html) para recopilar los metadatos del sistema operativo (SO), las aplicaciones y los metadatos de instancias de sus instancias de Amazon EC2 y saber rápidamente qué instancias están ejecutando el software y las configuraciones requeridas por su política de software así como las instancias que deben actualizarse. 
+  Entienda cómo actualizar los componentes de su carga de trabajo.     
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/wellarchitected/2023-04-10/framework/sus_sus_dev_a3.html)
+  Utilice la automatización del proceso de actualización para reducir el nivel de esfuerzo para desplegar nuevas funciones y limitar los errores causados por los procesos manuales. 
  +  Puede utilizar [CI/CD](https://aws.amazon.com/blogs/devops/complete-ci-cd-with-aws-codecommit-aws-codebuild-aws-codedeploy-and-aws-codepipeline/) para actualizar automáticamente las AMI, las imágenes de contenedor y otros artefactos relacionados con su aplicación en la nube. 
  +  Puede utilizar herramientas como [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) para automatizar el proceso de actualizaciones del sistema y programar la actividad con [Ventanas de mantenimiento de AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-maintenance.html). 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Centro de arquitectura de AWS](https://aws.amazon.com/architecture) 
+  [Novedades de AWS](https://aws.amazon.com/new/?ref=wellarchitected&ref=wellarchitected) 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 

 **Ejemplos relacionados:** 
+  [Well-Architected Labs - Inventory and Patch Management](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_inventory_patch_management/) (Laboratorios de Well-Architected: administración de inventario y parches) 
+  [Laboratorio: AWS Systems Manager](https://mng.workshop.aws/ssm.html) 

# SUS06-BP03: Incremento de la utilización de los entornos de compilación
<a name="sus_sus_dev_a4"></a>

Aumente la utilización de recursos para desarrollar, probar y crear sus cargas de trabajo.

 **Patrones comunes de uso no recomendados:** 
+  Aprovisiona o finaliza manualmente sus entornos de compilación. 
+  Mantiene sus entornos de compilación en funcionamiento independientemente de las actividades de prueba, compilación o lanzamiento (por ejemplo, ejecución de un entorno fuera del horario laboral de los miembros de su equipo de desarrollo). 
+  Aprovisiona en exceso los recursos para sus entornos de compilación. 

 **Beneficios de establecer esta práctica recomendada:** al aumentar la utilización de los entornos de compilación, puede mejorar la eficacia general de su carga de trabajo en la nube y, al mismo tiempo, asignar los recursos a los creadores para que desarrollen, prueben y creen de forma eficaz. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Use la automatización y la infraestructura como código para incorporar los entornos de compilación cuando sea necesario y retirarlos cuando no se utilicen. Un patrón común consiste en programar períodos de disponibilidad que coincidan con las horas de trabajo de los miembros del equipo de desarrollo. Sus entornos de prueba deben parecerse mucho a la configuración de producción. Sin embargo, busque oportunidades para utilizar tipos de instancia con capacidad de ampliación, instancias de spot de Amazon EC2, servicios de base de datos de escalamiento automático, contenedores y tecnologías sin servidor para coordinar el desarrollo y la capacidad de prueba con el uso. Limite el volumen de datos para cumplir únicamente los requisitos de prueba. Si utiliza datos de producción en las pruebas, estudie las posibilidades de compartir los datos de producción y no trasladarlos. 

 **Pasos para la implementación** 
+  Utilice la infraestructura como código para aprovisionar sus entornos de compilación. 
+  Use la automatización para administrar el ciclo de vida de sus entornos de desarrollo y pruebas, y maximizar la eficiencia de sus recursos de compilación. 
+  Utilice estrategias para maximizar la utilización de los entornos de desarrollo y prueba. 
  +  Use el mínimo viable de entornos representativos para desarrollar y probar mejoras potenciales. 
  +  Utilice tecnologías sin servidor si es posible. 
  +  Use instancias bajo demanda para complementar sus dispositivos de desarrollador. 
  +  Use tipos de instancia con capacidad de ampliación, instancias de spot y otras tecnologías para alinear la capacidad de creación con el uso. 
  +  Adopte servicios nativos en la nube para obtener un acceso seguro al shell de instancias en lugar de implementar flotas de hosts bastión. 
  +  Escale automáticamente sus recursos de compilación en función de sus tareas de compilación. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [AWS Systems Manager Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) 
+  [Instancias de rendimiento ampliable de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html) 
+  [¿Qué es AWS CloudFormation?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) 
+ [¿Qué es AWS CodeBuild? ](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)
+ [ Instance Scheduler en AWS](https://aws.amazon.com/solutions/implementations/instance-scheduler-on-aws/)

 **Vídeos relacionados: ** 
+ [ Prácticas recomendadas de integración continua ](https://www.youtube.com/watch?v=77HvSGyBVdU)

# SUS06-BP04 Usar granjas de dispositivos administrados para pruebas
<a name="sus_sus_dev_a5"></a>

Utilice granjas de dispositivos administrados para probar eficazmente una nueva característica en un conjunto representativo de hardware.

 **Patrones comunes de uso no recomendados:** 
+  Prueba y despliega manualmente su aplicación en dispositivos físicos individuales. 
+  No utiliza el servicio de pruebas de aplicaciones para probar e interactuar con sus aplicaciones (por ejemplo, Android, iOS y aplicaciones web) en dispositivos físicos reales. 

 **Beneficios de establecer esta práctica recomendada:** el uso de granjas de dispositivos administrados para probar aplicaciones con tecnología basada en la nube proporciona una serie de ventajas: 
+  Incluyen características más eficaces para probar la aplicación en una amplia gama de dispositivos. 
+  Eliminan la necesidad de una infraestructura interna para las pruebas. 
+  Ofrecen diversos tipos de dispositivos, incluido el hardware más antiguo y menos popular, lo que elimina la necesidad de actualizaciones innecesarias de los dispositivos. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** bajo 

## Guía para la implementación
<a name="implementation-guidance"></a>

El uso de granjas de dispositivos administrados puede ayudarle a agilizar el proceso de prueba de nuevas características en un conjunto representativo de hardware. Las granjas de dispositivos administrados ofrecen diversos tipos de dispositivos, incluido el hardware más antiguo y menos popular, y evitan el impacto en la sostenibilidad para el cliente que tienen las actualizaciones innecesarias de dispositivos.

 **Pasos para la implementación** 
+  Defina los requisitos y el plan de pruebas (como el tipo de prueba, los sistemas operativos y el calendario de pruebas). 
  +  Puede utilizar [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) para recopilar y analizar datos en el cliente y dar forma a su plan de pruebas. 
+  Seleccione la granja de dispositivos administrada que pueda admitir sus requisitos de pruebas. Por ejemplo, puede utilizar [AWS Device Farm](https://docs.aws.amazon.com/devicefarm/latest/developerguide/welcome.html) para probar y comprender el impacto de sus cambios en un conjunto representativo de hardware. 
+  Utilice la integración continua/despliegue continuo (CI/CD) para programar y ejecutar sus pruebas. 
  + [ Integrating AWS Device Farm with your CI/CD pipeline to run cross-browser Selenium tests ](https://aws.amazon.com/blogs/devops/integrating-aws-device-farm-with-ci-cd-pipeline-to-run-cross-browser-selenium-tests/)(Integración de AWS Device Farm con su canalización de CI/CD para ejecutar pruebas de Selenium en varios navegadores)
  + [ Building and testing iOS and iPadOS apps with AWS DevOps and mobile services ](https://aws.amazon.com/blogs/devops/building-and-testing-ios-and-ipados-apps-with-aws-devops-and-mobile-services/)(Compilar y probar aplicaciones de iOS y iPadOS con AWS DevOps y servicios móviles)
+  Revise continuamente los resultados de sus pruebas y efectúe las mejoras necesarias. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+ [Lista de dispositivos de AWS Device Farm](https://awsdevicefarm.info/)
+ [Visualización del panel de CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM-view-data.html)

 **Ejemplos relacionados:** 
+ [Aplicación de muestra de AWS Device Farm para Android ](https://github.com/aws-samples/aws-device-farm-sample-app-for-android)
+ [Aplicación de muestra de AWS Device Farm para iOS ](https://github.com/aws-samples/aws-device-farm-sample-app-for-ios)
+ [ Pruebas web de Appium para AWS Device Farm](https://github.com/aws-samples/aws-device-farm-sample-web-app-using-appium-python)

 **Vídeos relacionados: ** 
+ [ Optimize applications through end user insights with Amazon CloudWatch RUM ](https://www.youtube.com/watch?v=NMaeujY9A9Y) (Optimizar las aplicaciones mediante la información del usuario final con Amazon CloudWatch RUM)