

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

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

# OPS 4  ¿Cómo diseña la carga de trabajo para poder comprender su estado?
<a name="w2aac19b5b7b5"></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 función, la telemetría de aplicaciones informa sobre la forma de crear, operar y 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. 

 **Patrones de uso no recomendados comunes:** 
+  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 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. 

 Como ejemplo, una empresa de comercio electrónico tiene una arquitectura basada en microservicios. Como parte de su proceso de diseño arquitectónico, identificaron la telemetría de la aplicación que les 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 registrarían los errores, las advertencias y la información sobre las transacciones. La telemetría se enviaría a Amazon CloudWatch para su almacenamiento y análisis. 

 **Pasos para la implementación** 

 El primer paso es identificar una ubicación central para el almacenamiento de telemetría para las aplicaciones de su carga de trabajo. Si no dispone de una plataforma [Amazon CloudWatch](https://aws.amazon.com/cloudwatch) ofrece funciones de recopilación de telemetría, paneles, análisis y generación de eventos. 

 Para identificar qué telemetría necesita, comience con las siguientes preguntas: 
+  ¿Está mi aplicación en buen estado? 
+  ¿Está logrando mi aplicación resultados empresariales? 

   Su aplicación debe emitir registros y métricas que respondan colectivamente a estas preguntas. Si no puede responder a esas preguntas con la telemetría de la aplicación existente, trabaje con las partes interesadas de la empresa e ingeniería para crear una lista de telemetría que pueda hacerlo. Puede solicitar el asesoramiento técnico de su equipo de Cuenta de AWS para identificar y desarrollar nuevas aplicaciones de telemetría. 

   Una vez identificada la telemetría adicional de la aplicación, trabaje con sus interlocutores de ingeniería para instrumentar su aplicación. [AWS Distro for OpenTelemetry](https://aws-otel.github.io/) proporciona API, bibliotecas y agentes que recogen la telemetría de las 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). 

   Los clientes que quieran conocer los servicios de observabilidad que ofrece AWS pueden trabajar a través del [Taller sobre observabilidad](https://catalog.workshops.aws/observability/en-US) por su cuenta o solicitar el soporte de su equipo de Cuenta de AWS para que les guíe. Este taller le guiará a través de las soluciones de observabilidad en AWS y proporciona ejemplos prácticos de cómo se utilizan. 

   Para profundizar en la telemetría de aplicaciones, lea el artículo [Instrumenting distributed systems for operational visibility (Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones)](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) en la Amazon Builder’s Library 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:** Mediana 

## 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 la aplicación. La actividad de los usuarios, como los eventos de añadir al carro, 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 la aplicación 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 manejan estos eventos se emite a través de su telemetría de aplicación. 

[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 (Instrumentación de los sistemas distribuidos para la visibilidad de las operaciones)](https://aws.amazon.com/builders-library/instrumenting-distributed-systems-for-operational-visibility/) 
+  [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/AmazonCloudWatch/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 (Supervisión del estado y el rendimiento de las aplicaciones con AWS Distro for OpenTelemetry)](https://aws.amazon.com/blogs/opensource/monitoring-application-health-and-performance-with-aws-distro-for-opentelemetry/) 
+  [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)](https://aws.amazon.com/blogs/devops/new-how-to-better-monitor-your-custom-application-metrics-using-amazon-cloudwatch-agent/) 
+  [Observability at AWS (Observabilidad en AWS)](https://aws.amazon.com/products/management-and-governance/use-cases/monitoring-and-observability/) 
+  [Scenario – Publish metrics to CloudWatch (Escenario: Publicar métricas en CloudWatch)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/PublishMetrics.html) 
+  [Start Building – How to Monitor your Applications Effectively (Empezar a crear: Cómo supervisar aplicaciones eficazmente)](https://aws.amazon.com/startups/start-building/how-to-monitor-applications/) 
+  [Using CloudWatch with an AWS SDK (Uso de CloudWatch con un SDK de AWS)](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/sdk-general-information-section.html) 

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

 **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) 

# 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 (por ejemplo, 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. 

 **Patrones de uso no recomendados comunes:** 
+  Sus desarrolladores han desplegado una nueva característica sin telemetría de usuario y el uso ha aumentado. No puede determinar si el aumento del uso se debe a la utilización de la nueva característica o es un problema incorporado con el nuevo código. 
+  Sus desarrolladores han desplegado una nueva característica sin telemetría de usuario. No puede saber si sus clientes la utilizan sin ponerse en contacto con ellos y preguntarles. 

 **Beneficios de establecer esta práctica recomendada:** Entienda cómo utilizan los clientes la aplicación para identificar patrones de uso, comportamientos inesperados y para permitirle responder si es 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>
+  Implemente la telemetría de actividad de usuario: diseñe el código de aplicación para emitir información sobre la actividad de los usuarios (por ejemplo, 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. 

# 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 (por ejemplo, la accesibilidad o el tiempo de respuesta) de los recursos de los que depende. Ejemplos de dependencias externas 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. 

 **Antipatrones usuales:** 
+  No puede determinar si la razón por la que su aplicación no está accesible 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:** Entender el estado de sus dependencias le permite responder 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>
+  Implementar telemetría de dependencias: diseñe y configure la carga de trabajo para emitir información sobre el estado y la situación de los sistemas de los que depende. Entre algunos ejemplos se incluyen bases de datos externas, DNS, conectividad de red y servicios de procesamiento externo de tarjetas de crédito. 
  +  [Agente de Amazon CloudWatch con integración de AWS Systems Manager: métrica unificada y colección de registros para Linux y Windows](https://aws.amazon.com/blogs/aws/new-amazon-cloudwatch-agent-with-aws-systems-manager-integration-unified-metrics-log-collection-for-linux-windows/) 
  +  [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:** 
+  [Agente de Amazon CloudWatch con integración de AWS Systems Manager: métrica unificada y colección de registros para Linux y Windows](https://aws.amazon.com/blogs/aws/new-amazon-cloudwatch-agent-with-aws-systems-manager-integration-unified-metrics-log-collection-for-linux-windows/) 
+  [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) 

   **Ejemplos relacionados:** 
+  [laboratorios de Well-Architected: Supervisión de dependencias](https://wellarchitectedlabs.com/operational-excellence/100_labs/100_dependency_monitoring/) 

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

 Implemente el código de la aplicación y configure los componentes de la carga de trabajo para emitir información sobre el flujo de transacciones a través de la carga de trabajo. Utilice esta información para determinar cuándo se requiere una respuesta y para identificar los factores que contribuyen al problema. 

 En AWS, puede utilizar servicios de seguimiento distribuido, como [AWS X-Ray](https://aws.amazon.com/xray/), para recopilar y registrar los seguimientos a medida que las transacciones viajan a través de su carga de trabajo, generar mapas para ver cómo fluyen las transacciones a través de su carga de trabajo y servicios, obtener información sobre las relaciones entre los componentes, e identificar y analizar los problemas en tiempo real. 

 **Patrones de uso no recomendados comunes:** 
+  Ha implementado una arquitectura de microservicios sin servidor que abarca múltiples cuentas. Sus clientes están experimentando problemas intermitentes de rendimiento. No puede descubrir qué función o componente es el responsable porque carece del seguimiento que le permitiría determinar en qué parte de la aplicación existe el problema de rendimiento y cuál es la causa del mismo. 
+  Está tratando de determinar dónde están los cuellos de botella de rendimiento en su carga de trabajo para poder abordarlos en su trabajo de desarrollo. No puede ver la relación entre los componentes de su aplicación y los servicios con los que interactúan para determinar dónde están los cuellos de botella porque carece del seguimiento que le permitiría profundizar en los servicios y rutas específicas que afectan al rendimiento de la aplicación. 

 **Beneficios de establecer esta práctica recomendada:** comprender el flujo de transacciones en su carga de trabajo le permite entender el comportamiento esperado de las transacciones de su carga de trabajo y las variaciones del comportamiento esperado en su carga de trabajo, permitiéndole responder cuando sea 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>
+  Implementar la trazabilidad de las transacciones: diseñe su aplicación y carga de trabajo para emitir información sobre el flujo de transacciones a través de los componentes del sistema, como 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. Esto le ayuda a determinar cuándo se requiere una respuesta. Por ejemplo, unos tiempos de respuesta de las transacciones más largos de los previstos dentro de un componente pueden indicar problemas con ese componente. 
  +  [AWS X-Ray](https://aws.amazon.com/xray/) 
  +  [¿Qué es AWS X-Ray?](https://docs.aws.amazon.com/xray/latest/devguide/aws-xray.html) 

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

 **Documentos relacionados:** 
+  [AWS X-Ray](https://aws.amazon.com/xray/) 
+  [¿Qué es 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="w2aac19b5b7b7"></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>

 Pruebe y valide los cambios para limitar y detectar errores. Automatice las pruebas para reducir tanto los errores causados por los procesos manuales como el nivel de esfuerzo de las pruebas. 

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

 **Patrones de uso no recomendados comunes:** 
+  Despliega su nuevo código en producción y los clientes empiezan a llamar porque su aplicación ya no funciona. 
+  Aplica nuevos grupos de seguridad para mejorar la seguridad de su perímetro. Funciona con consecuencias no deseadas; sus usuarios no pueden acceder a las aplicaciones. 
+  Modifica un método invocado por su nueva función. Otra función también dependía de ese método y ya no funciona. El problema no se detecta y entra en producción. La otra función no se invoca durante algún tiempo y finalmente falla en producción sin ninguna correlación con la causa. 

 **Beneficios de establecer esta práctica recomendada:** al realizar las pruebas y validar los cambios con antelación, podrá abordar los problemas con mínimos costes y limitar el impacto en sus clientes. Al realizar las pruebas antes del despliegue, se minimiza la introducción de 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>
+  Probar y validar cambios: los cambios deben probarse, y los resultados validarse en todas las etapas del ciclo de vida (por ejemplo, desarrollo, pruebas y producción). Use los resultados de las pruebas para confirmar características nuevas y mitigar el riesgo y las repercusiones de una implementación fallida. Automatice las pruebas y la validación para garantizar la sistematización de la revisión y reducir tanto los errores causados por los procesos manuales como el nivel de esfuerzo. 
  +  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html) 
  +  [Compatibilidad con compilación local para AWS CodeBuild](https://aws.amazon.com/blogs/devops/announcing-local-build-support-for-aws-codebuild/) 

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

 **Documentos relacionados:** 
+  [Herramientas para desarrolladores de AWS](https://aws.amazon.com/products/developer-tools/) 
+  [Compatibilidad con compilación local para AWS CodeBuild](https://aws.amazon.com/blogs/devops/announcing-local-build-support-for-aws-codebuild/) 
+  [¿Qué es AWS CodeBuild?](https://docs.aws.amazon.com/codebuild/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. 

 En AWS, la aplicación, la computación, la infraestructura y las operaciones pueden definirse y administrarse a través de metodologías de código. Esto permite que el lanzamiento, el poder compartir y adoptar sea fácil. 

 Muchos servicios y recursos de AWS están diseñados para compartirse entre cuentas, lo que le permite compartir activos creados y aprendizajes entre sus equipos. Por ejemplo, puede compartir [repositorios de CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/cross-account.html) , [funciones de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-permissions.html) , [Buckets de Amazon S3](https://aws.amazon.com/premiumsupport/knowledge-center/cross-account-access-s3/) y [AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharingamis-explicit.html) con cuentas específicas. 

 Cuando publique nuevos recursos o actualizaciones, utilice Amazon SNS para proporcionar [notificaciones entre cuentas](https://docs.aws.amazon.com/lambda/latest/dg/with-sns-example.html). Los suscriptores pueden usar Lambda para obtener nuevas versiones. 

 Si se aplican las normas compartidas en su organización, es fundamental que existan mecanismos para solicitar adiciones, cambios y excepciones a las normas en apoyo de las actividades de los equipos. Sin esta opción, las normas se convierten en un obstáculo para la innovación. 

 **Antipatrones usuales:** 
+  Ha creado su propio mecanismo de autenticación de usuarios, al igual que los demás equipos de desarrollo de su organización. Sus usuarios tienen que mantener un conjunto de credenciales separado para cada parte del sistema a la que quieran acceder. 
+  Ha creado su propio mecanismo de autenticación de usuarios, al igual que los demás equipos de desarrollo de su organización. Su organización recibe un nuevo requisito de conformidad que debe cumplir. Cada equipo de desarrollo debe invertir ahora los recursos necesarios para aplicar el nuevo requisito. 
+  Ha creado su propio diseño de pantalla, al igual que los demás equipos de desarrollo de su organización. Sus usuarios se quejan de la dificultad de navegar por interfaces incoherentes. 

 **Beneficios de establecer esta práctica recomendada:** Utilice normas compartidas para apoyar la adopción de las prácticas recomendadas y maximizar los beneficios de los esfuerzos de desarrollo cuando las normas satisfacen los requisitos de múltiples aplicaciones u organizaciones. 

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

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Compartir estándares de diseño: comparta entre equipos las prácticas recomendadas, los estándares de diseño, las listas de verificación, los procedimientos operativos y los requisitos de orientación y gobernanza para reducir la complejidad y maximizar los beneficios de los esfuerzos de desarrollo. Asegúrese de que existan procedimientos para solicitar cambios, adiciones y excepciones a los estándares de diseño para apoyar la mejora y la innovación continuas. Asegúrese de que los equipos están al tanto del contenido publicado para que puedan aprovecharlo, y limite la repetición de trabajos y el esfuerzo desperdiciado. 
  +  [Delegar el acceso a su entorno de AWS](https://www.youtube.com/watch?v=0zJuULHFS6A&t=849s) 
  +  [Compartir un repositorio de AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-share-repository.html) 
  +  [Autorización fácil de las funciones de AWS Lambda](https://aws.amazon.com/blogs/compute/easy-authorization-of-aws-lambda-functions/) 
  +  [Compartir una AMI con determinadas cuentas de Cuentas de AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharingamis-explicit.html) 
  +  [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:** 
+  [Autorización fácil de las funciones de AWS Lambda](https://aws.amazon.com/blogs/compute/easy-authorization-of-aws-lambda-functions/) 
+  [Compartir un repositorio de AWS CodeCommit](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-share-repository.html) 
+  [Compartir una AMI con determinadas cuentas de Cuentas de AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharingamis-explicit.html) 
+  [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:** 
+  [Delegar el acceso a su entorno de AWS](https://www.youtube.com/watch?v=0zJuULHFS6A&t=849s) 

# 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. Entre algunos ejemplos se incluyen el desarrollo basado en pruebas, las revisiones de código y la adopción de estándares. 

 En AWS, puede integrar servicios como [Amazon CodeGuru](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) con su canalización para identificar automáticamente [posibles problemas de código y seguridad](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/how-codeguru-reviewer-works.html) utilizando el análisis de programas y machine learning. CodeGuru proporciona recomendaciones sobre cómo aplicar las prácticas recomendadas de AWS para resolver estos problemas. 

 **Patrones de uso no recomendados comunes:** 
+  Para poder probar su función antes, ha decidido no integrar su biblioteca de saneamiento de entrada estándar. Después de las pruebas, confirma su código sin acordarse de completar la incorporación de la biblioteca. 
+  Tiene una experiencia mínima con el conjunto de datos que está procesando y no es consciente de que hay una serie de casos límite que pueden existir en su conjunto de datos. Esos casos límite no son compatibles con el código que ha implementado. 

 **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. 

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

## Guía para la implementación
<a name="implementation-guidance"></a>
+  Adoptar prácticas para mejorar la calidad del código: adopte prácticas para mejorar la calidad del código y minimizar los defectos y el riesgo de su despliegue. Por ejemplo, el desarrollo basado en pruebas, la programación en pareja, las revisiones de código y la adopción de estándares. 
  +  [Amazon CodeGuru](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html) 

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

 **Documentos relacionados:** 
+  [Amazon CodeGuru](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/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 implementación?
<a name="w2aac19b5b7b9"></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="w2aac19b5b7c11"></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-BP01 Garantizar la capacidad del personal
<a name="ops_ready_to_support_personnel_capability"></a>

 Disponga de un mecanismo para comprobar que cuenta con la cantidad adecuada de personal capacitado para atender a sus necesidades operativas. Forme al personal y ajuste su capacidad según sea necesario para mantener una cobertura efectiva. 

 Deberá contar con suficientes miembros del equipo para cubrir todas las actividades (incluidas las guardias). Asegúrese de que sus equipos tienen las habilidades necesarias para tener éxito con la formación sobre su carga de trabajo, sus herramientas de operaciones y AWS. 

 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/), [Charlas técnicas 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. Además, [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. 

 **Patrones de uso no recomendados comunes:** 
+  Desplegar una carga de trabajo sin miembros del equipo capacitados para dar soporte a la plataforma y los servicios en uso. 
+  Desplegar una carga de trabajo sin que haya miembros del equipo disponibles durante las horas de asistencia previstas. 
+  Desplegar una carga de trabajo sin suficientes miembros del equipo para respaldarla en caso de que haya miembros del equipo de baja o enfermos. 
+  Desplegar cargas de trabajo adicionales sin revisar el impacto adicional en los miembros del equipo que lo soportan y en otras cargas de trabajo. 

 **Beneficios de establecer esta práctica recomendada:** Contar con miembros del equipo cualificados permite apoyar eficazmente 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>
+  Capacidad del personal: compruebe que haya suficiente personal capacitado para atender eficazmente la carga de trabajo. 
  +  Tamaño del equipo: asegúrese de contar con suficientes miembros del equipo para cubrir las actividades operativas, incluidas las de guardia. 
  +  Habilidad del equipo: asegúrese de que los miembros del equipo cuentan con suficiente formación técnica sobre AWS, la carga de trabajo y las herramientas de operaciones para llevar a cabo sus tareas. 
    +  [Eventos y seminarios web de AWS](https://aws.amazon.com/about-aws/events/) 
    +  [Bienvenido a Formación de AWS and Certification](https://aws.amazon.com/training/) 
  +  Revisar capacidades: revise el tamaño y la habilidad del equipo según cambien las condiciones operativas y las cargas de trabajo para asegurarse de contar con suficiente capacidad para mantener la excelencia operativa. Haga ajustes para que el tamaño y la habilidad del equipo coincidan con los requisitos operacionales de las cargas de trabajo que atiende el equipo. 

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

 **Documentos relacionados:** 
+  [Blogs de AWS](https://aws.amazon.com/blogs/) 
+  [Eventos y seminarios web de AWS](https://aws.amazon.com/about-aws/events/) 
+  [Centro de recursos introductorios de AWS](https://aws.amazon.com/getting-started/) 
+  [Charlas técnicas en línea de AWS](https://aws.amazon.com/getting-started/) 
+  [Bienvenido a Formación de AWS and Certification](https://aws.amazon.com/training/) 

 **Ejemplos relacionados:** 
+  [Laboratorios de Well-Architected](https://wellarchitectedlabs.com/) 

# 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 conformidad](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 gestió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 gestió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>

 Evalúe las capacidades del equipo para atender a la carga de trabajo y la conformidad de esta con la gobernanza. Evalúelas en función de los beneficios de la implementación a la hora de decidir si un sistema o cambio pasan a la fase de producción. Comprenda los beneficios y los riesgos para tomar decisiones bien fundadas. 

 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 anticiparse a los errores y crear procedimientos cuando sea apropiado. Cuando haga cambios en las listas de control que utiliza para evaluar sus cargas de trabajo, planifique lo que hará con los sistemas activos que ya no cumplen los requisitos. 

 **Patrones de uso no recomendados comunes:** 
+  Decidir desplegar una carga de trabajo sin conocer los riesgos de seguridad presentes en ella. 
+  Decidir desplegar una carga de trabajo sin saber si cumple con su gobernanza y sus normas. 
+  Decidir desplegar una carga de trabajo sin saber si su equipo puede soportarla. 
+  Decidir desplegar una carga de trabajo sin entender cómo beneficia a la organización. 

 **Beneficios de establecer esta práctica recomendada:** contar con miembros del equipo cualificados permite apoyar eficazmente 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>
+  Tomar decisiones bien fundadas para desplegar cargas de trabajo y cambios: evalúe las capacidades del equipo para atender a la carga de trabajo y la conformidad de esta con la gobernanza. Evalúelas en función de los beneficios de la implementación a la hora de decidir si un sistema o cambio pasan a la fase de producción. Comprenda los beneficios y los riesgos, y tome decisiones bien fundadas. 