SUS02-BP01 Amplíe la infraestructura de carga de trabajo de forma dinámica - Pilar de sostenibilidad

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

SUS02-BP01 Amplíe la infraestructura de carga de trabajo de forma dinámica

Utilice la elasticidad de la nube y escale su infraestructura de forma dinámica para adaptar la oferta de recursos en la nube a la demanda y evitar un exceso de capacidad en su carga de trabajo.

Patrones comunes de uso no recomendados:

  • No escalar la infraestructura con la carga de usuarios.

  • Escalar la infraestructura manualmente todo el tiempo.

  • Dejar la capacidad aumentada después de un evento de ajuste de escala en lugar de volver a desescalar verticalmente.

Beneficios de establecer esta práctica recomendada: configurar y probar la elasticidad de la carga de trabajo ayuda a adaptar de manera eficiente el suministro de recursos de la nube a la demanda y a evitar el exceso de aprovisionamiento de la capacidad. Puede aprovechar la elasticidad de la nube para escalar automáticamente la capacidad durante y después de los picos de demanda para asegurarse de que solo utiliza el número correcto de recursos necesarios para satisfacer los requisitos empresariales.

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

Guía para la implementación

La nube ofrece la flexibilidad de ampliar o reducir sus recursos de forma dinámica a través de diversos mecanismos para satisfacer los cambios en la demanda. La correspondencia óptima entre la oferta y la demanda ofrece el menor impacto medioambiental para una carga de trabajo.

La demanda puede ser fija o variable, lo que requiere métricas y automatización para garantizar que la administración no resulte difícil. Las aplicaciones pueden escalarse o desescalarse verticalmente mediante la modificación del tamaño de la instancia, escalarse o desescalarse horizontalmente mediante la modificación del número de instancias, o una combinación de ambas.

Puede usar distintos enfoques para hacer que el suministro de recursos coincida con la demanda.

  • Enfoque de seguimiento de objetivos: supervise la métrica de escalado y aumente o reduzca de forma automática la capacidad en función de sus necesidades.

  • Escalado predictivo: reduzca horizontalmente de antemano según las tendencias diarias y semanales previstas.

  • Enfoque basado en la programación: establezca su propia programación de escalado según los cambios de carga predecibles.

  • Escalado de servicios: elija servicios (como los servicios sin servidor) que se escalen de forma nativa por diseño o que incluyan el escalado automático como característica.

Identifique los periodos de uso reducido o inexistente y escale los recursos en consonancia para eliminar el exceso de capacidad y mejorar la eficiencia.

Pasos para la implementación

  • La elasticidad hace coincidir la oferta de los recursos que tiene con la demanda de esos recursos. Las instancias, los contenedores y las funciones proporcionan mecanismos de elasticidad, ya sea en combinación con el escalado automático o como una característica del servicio. AWS proporciona una gama de mecanismos de escalado automático para garantizar que las cargas de trabajo puedan reducirse rápida y fácilmente durante los períodos de baja carga de usuarios. A continuación, se presentan algunos ejemplos de mecanismos de escalado automático:

    Mecanismo de escalado automático Dónde se usa

    Amazon EC2 Auto Scaling

    Úsala para comprobar que tienes el número correcto de EC2 instancias de Amazon disponibles para gestionar la carga de usuarios de tu aplicación.

    Aplicación de escalado automático

    Úselo para escalar automáticamente los recursos de AWS servicios individuales más allá de AmazonEC2, como las funciones de Lambda o los servicios de Amazon Elastic Container Service ECS (Amazon).

    Escalador automático de clústeres de Kubernetes

    Se utiliza para escalar automáticamente los clústeres de Kubernetes. AWS

  • A menudo se habla del escalado en relación con los servicios de cómputo, como las EC2 instancias o AWS Lambda funciones de Amazon. Considere la posibilidad de configurar servicios no computacionales, como las unidades de capacidad de lectura y escritura de Amazon DynamoDB o las particiones de Amazon Kinesis Data Streams, para satisfacer la demanda.

  • Verifique que las métricas para escalar o reducir verticalmente se validan con respecto al tipo de carga de trabajo que se está implementando. Si está implementando una aplicación de transcodificación de vídeo, se espera una CPU utilización del 100% y no debería ser su métrica principal. Si es necesario, puede utilizar una métrica personalizada (como el uso de la memoria) para su política de escalado. Para elegir las métricas correctas, ten en cuenta las siguientes instrucciones para AmazonEC2:

    • La métrica debe ser una métrica de utilización válida y describir el grado de ocupación de una instancia.

    • El valor de la métrica debe aumentar o disminuir proporcionalmente al número de instancias del grupo de escalado automático.

  • Utilice el escalado dinámico en lugar del escalado manual para su grupo de escalado automático. También le recomendamos que utilice políticas de escalado de seguimiento objetivo en su escalado dinámico.

  • Verifique que las implementaciones de la carga de trabajo puedan manejar los eventos de escalado y desescalado horizontales. Cree escenarios de prueba para los eventos de escalado con el fin de verificar que la carga de trabajo se comporta del modo previsto y no afecta a la experiencia del usuario (como la pérdida de sesiones persistentes). Puede utilizar el historial de actividad para verificar una actividad de escalado para un grupo de escalado automático.

  • Evalúe los patrones predecibles de su carga de trabajo y escale de forma proactiva para anticiparse a los cambios previstos y planeados en la demanda. Con el escalado predictivo, puede eliminar la necesidad de aprovisionar capacidad en exceso. Para obtener más información, consulte Escalado predictivo con Amazon EC2 Auto Scaling.

Recursos

Documentos relacionados:

Videos relacionados:

Ejemplos relacionados: