Aspectos generales

P: ¿Qué es Amazon EC2 Auto Scaling?

Amazon EC2 Auto Scaling es un servicio completamente administrado diseñado para lanzar o terminar instancias de Amazon EC2 automáticamente con el objetivo de garantizar el número correcto de instancias de Amazon EC2 disponibles para administrar la carga de su aplicación. Amazon EC2 Auto Scaling ayuda a conservar el nivel de disponibilidad de las aplicaciones mediante la administración de flotas de instancias EC2, lo que detecta y reemplaza instancias defectuosas, y mediante el escalado de la capacidad de Amazon EC2 automáticamente en función de las condiciones definidas. Puede usar Amazon EC2 Auto Scaling para incrementar automáticamente la cantidad de instancias de Amazon EC2 durante los picos de demanda, a fin de mantener el nivel de rendimiento y reducir la capacidad durante los períodos de menor demanda para minimizar los costos.

P: ¿Cuándo debe usar Amazon EC2 Auto Scaling en lugar de AWS Auto Scaling?

Debe utilizar AWS Auto Scaling si desea más orientación sobre cómo definir el plan de escalado de aplicaciones o si desea escalar varios recursos más allá de EC2, como tablas e índices de Amazon DynamoDB o tareas de Amazon ECS. Actualmente, para usar AWS Auto Scaling, debe crear su aplicación mediante AWS CloudFormation o AWS Elastic Beanstalk. AWS Auto Scaling lo ayuda a administrar todas las políticas de escalado para sus aplicaciones en un solo lugar, lo que permite que el ajuste sea más sencillo e intuitivo.

Debería usar Amazon EC2 Auto Scaling si solo necesita escalar grupos de Amazon EC2 Auto Scaling o si únicamente quiere conservar el funcionamiento correcto de la flota de EC2.

P: ¿Cuáles son los beneficios del uso de Amazon EC2 Auto Scaling?

Amazon EC2 Auto Scaling ayuda a mantener la disponibilidad de su instancia de Amazon EC2. Tanto si utiliza una instancia de Amazon EC2 o miles, puede usar Amazon EC2 Auto Scaling para detectar las instancias deterioradas de Amazon EC2 y sustituirlas sin necesidad de intervención. Así se garantiza que su aplicación tenga la capacidad de cómputo esperada. Puede usar Amazon EC2 Auto Scaling para escalar automáticamente su flota de Amazon EC2 siguiendo la curva de demanda de sus aplicaciones, lo que reduce la necesidad de aprovisionar manualmente la capacidad de Amazon EC2 por adelantado. Por ejemplo, puede definir una condición para añadir nuevas instancias de Amazon EC2 en incrementos al grupo de Auto Scaling cuando el uso medio de su flota de Amazon EC2 es elevado. Del mismo modo, puede definir una condición para eliminar instancias en incrementos cuando la utilización de la CPU sea baja. También puede usar Amazon CloudWatch para enviar alarmas a fin de activar las actividades de escalado, mientras que Elastic Load Balancing (ELB) lo puede ayudar a distribuir el tráfico a las instancias mediante grupos de Amazon EC2 Auto Scaling. Si los cambios en la carga son predecibles, puede utilizar Amazon EC2 Auto Scaling para programar las actividades de escalado. Amazon EC2 Auto Scaling le permite ejecutar su flota de Amazon EC2 con una utilización óptima.

P: ¿Qué es la administración de flota y en qué difiere del escalado dinámico?

Si su aplicación se ejecuta en instancias de Amazon EC2, entonces tiene lo que se conoce como una "flota". Administración de flota se refiere a la funcionalidad que reemplaza automáticamente las instancias defectuosas y mantiene su flota en la capacidad deseada. La administración de flota de Amazon EC2 Auto Scaling garantiza que su aplicación pueda recibir tráfico y de que las instancias funcionen adecuadamente. Cuando Auto Scaling detecta una comprobación de estado errónea, puede sustituir la instancia automáticamente.

Las capacidades de escalado dinámico de Amazon EC2 Auto Scaling se refieren a la funcionalidad que automáticamente aumenta o disminuye la capacidad en función de la carga u otras métricas. Por ejemplo, si la CPU supera el 80% (y tiene configurada una alarma), Amazon EC2 Auto Scaling puede agregar una nueva instancia de forma dinámica.

P: ¿Qué es el seguimiento de valores objetivo?

El seguimiento de valores objetivo es un nuevo tipo de política de escalado que puede usar a fin de configurar el escalado dinámico para su aplicación en solo unos sencillos pasos. Con el seguimiento de valores objetivo, selecciona una métrica de carga para su aplicación, como la utilización de la CPU o el recuento de solicitudes, establece el valor objetivo y Amazon EC2 Auto Scaling ajusta la cantidad de instancias de EC2 en su grupo de EC2 Auto Scaling, según sea necesario para mantener ese valor objetivo. Actúa como el termostato de una casa, que ajusta automáticamente el sistema para mantener el ambiente a la temperatura deseada. Por ejemplo, puede configurar el seguimiento de valores objetivo para mantener el uso de la CPU para su flota de servidores web en un 50%. A partir de ahí, Amazon EC2 Auto Scaling lanza o termina las instancias EC2 según sea necesario para mantener la utilización promedio de la CPU en 50%.

P: ¿Qué es un grupo de Amazon EC2 Auto Scaling?

Un grupo de Amazon EC2 Auto Scaling contiene un conjunto de instancias EC2 que comparten características similares y se tratan como una agrupación lógica para fines de administración de flotas y escalado dinámico. Por ejemplo, si una sola aplicación opera en varias instancias, es posible que desee aumentar la cantidad de instancias en ese grupo para mejorar el rendimiento de la aplicación, o disminuir la cantidad de instancias para reducir costos cuando la demanda es baja. Amazon EC2 Auto Scaling ajustará automáticamente la cantidad de instancias en el grupo para mantener una cantidad fija, incluso si una instancia es defectuosa, o según los criterios que usted especifique. Puede encontrar más información sobre los grupos de Amazon EC2 Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

P: ¿Qué les ocurre a mis instancias de Amazon EC2 si elimino mi grupo de EC2 Auto Scaling?

Si posee un grupo de EC2 Auto Scaling con instancias en ejecución y decide eliminarlo, se interrumpirán las instancias y se eliminará el mencionado grupo.

P: ¿Cómo sé cuándo EC2 Auto Scaling está lanzando o terminando las instancias de EC2 en un grupo de EC2 Auto Scaling?

Cuando utiliza Amazon EC2 Auto Scaling para escalar automáticamente sus aplicaciones, es útil saber cuándo EC2 Auto Scaling está lanzando o terminando las instancias EC2 en su grupo de EC2 Auto Scaling. Amazon SNS coordina y administra la entrega o el envío de notificaciones a los clientes suscriptores o puntos de enlace. Puede configurar EC2 Auto Scaling para que envíe una notificación de SNS siempre que su grupo de EC2 Auto Scaling escale. Amazon SNS puede entregar notificaciones como POST HTTP o HTTPS, correo electrónico (SMTP, ya sea en texto sin formato o con formato JSON), o como un mensaje publicado en una cola de Amazon SQS. Por ejemplo, si configura su grupo de EC2 Auto Scaling para usar el tipo de notificación de escalado automático EC2_INSTANCE_TERMINATE, y su grupo de EC2 Auto Scaling termina una instancia, envía una notificación por correo electrónico. Este correo electrónico contiene los detalles de la instancia terminada, como el ID de la instancia y el motivo por el cual la instancia se terminó.

Para obtener más información, consulte Obtener notificaciones de SNS cuando su grupo de EC2 Auto Scaling escale.

P: ¿En qué consiste una configuración de lanzamiento?

Una configuración de lanzamiento es una plantilla que utiliza un grupo de EC2 Scaling para lanzar instancias EC2. Cuando crea una configuración de lanzamiento, especifica información para las instancias, como el ID de Amazon Machine Image (AMI), el tipo de instancia, un par de claves, uno o más grupos de seguridad y un mapeo de dispositivos de bloque. Si ha lanzado una instancia EC2 anteriormente, ha especificado la misma información para lanzarla. Al crear un grupo de EC2 Auto Scaling, debe especificar una configuración de lanzamiento. Puede especificar su configuración de lanzamiento con múltiples grupos de EC2 Auto Scaling. Sin embargo, solo puede especificar una configuración de lanzamiento para un grupo de EC2 Auto Scaling a la vez, y no puede modificarla después de haberla creado. Por lo tanto, si desea cambiar la configuración de lanzamiento para su grupo de C2 Auto Scaling, debe crear una y luego actualizar su grupo de C2 Auto Scaling con esta nueva configuración. Cuando cambia la configuración de lanzamiento para su grupo de EC2 Auto Scaling, todas las instancias nuevas se lanzan con los parámetros de la nueva configuración, pero las existentes no se ven afectadas. Puede consultar la sección configuraciones de lanzamiento de la Guía del usuario de EC2 Auto Scaling para obtener más detalles.

P: ¿Cuántas instancias puede tener un grupo de EC2 Auto Scaling?

Puede tener tantas instancias en su grupo de EC2 Auto Scaling como lo permita su cuota de EC2.

P: ¿Qué ocurre si una actividad de escalado hace que alcance mi límite de instancias de Amazon EC2?

Amazon EC2 Auto Scaling no puede escalar más allá del límite de instancias de Amazon EC2 que usted puede ejecutar. Si necesita más instancias de Amazon EC2, complete el formulario de solicitud de instancias de Amazon EC2.

P: ¿Los grupos de EC2 Auto Scaling pueden abarcar varias regiones de AWS?

Los grupos de EC2 Auto Scaling son conceptos regionales. Pueden abarcar las zonas de disponibilidad, pero no las regiones de AWS.

P: ¿Puedo lanzar diferentes tipos de instancias de EC2 en el mismo grupo de EC2 Auto Scaling?

Los grupos de EC2 Auto Scaling se optimizan cuando todos los tipos de instancia son iguales. Puede usar la API AttachInstances para asociar instancias de diferentes tipos a un grupo de Auto Scaling y también puede actualizar su configuración de lanzamiento para que cualquier instancia nueva en el grupo se lance con un tipo de instancia diferente. Sin embargo, esto no afectará ninguna de las instancias existentes.

P: ¿Cómo puedo implementar cambios en varias instancias en un grupo de EC2 Auto Scaling?

Puede utilizar AWS CodeDeploy o CloudFormation para organizar los cambios de código en varias instancias en su grupo de EC2 Auto Scaling.

P: Si tengo datos instalados en un grupo de EC2 Auto Scaling y más tarde se crea dinámicamente una nueva instancia, ¿los datos se copian a las nuevas instancias?

Los datos no se copian automáticamente de las instancias existentes a las nuevas. Puede usaran enlaces de ciclo de vida para copiar los datos, o una base de datos de Amazon RDS que incluya réplicas.

P: Cuando creo un grupo de EC2 Auto Scaling a partir de una instancia existente, ¿se crea una nueva AMI (Amazon Machine Image)?

Cuando crea un grupo de Auto Scaling a partir de una instancia existente, no se crea una nueva AMI. Para obtener más información, consulte Crear un grupo de Auto Scaling Group con una instancia EC2.

P: ¿Cómo funciona la capacidad de balanceo de Amazon EC2 Auto Scaling?

El balanceo de recursos es una práctica recomendada entre zonas de disponibilidad para aplicaciones bien diseñadas, ya que esto aumenta en gran medida la disponibilidad del sistema agregado. Amazon EC2 Auto Scaling balancea automáticamente las instancias de EC2 en las zonas cuando configura múltiples zonas en los ajustes de su grupo de EC2 Auto Scaling. Amazon EC2 Auto Scaling siempre lanza nuevas instancias de manera que el balance entre zonas sea lo más uniforme posible en toda la flota. Además, Amazon EC2 Auto Scaling solo se lanza en zonas de disponibilidad en las que hay capacidad disponible para el tipo de instancia solicitado.

P: ¿Qué son los enlaces de ciclo de vida?

Los enlaces de ciclo de vida le permiten tomar medidas antes de que una instancia comience a funcionar o antes de que termine. Esto puede ser especialmente útil si no está armando su entorno de software en una Amazon Machine Image (AMI). Por ejemplo, los enlaces de lanzamiento pueden realizar la configuración del software en una instancia para asegurarse de que esté totalmente preparada para manejar el tráfico antes de que Amazon EC2 Auto Scaling proceda a conectarlo a su balanceador de carga. Una forma de hacerlo es conectando el enlace de lanzamiento a una función AWS Lambda que invoca RunCommand en la instancia. Los enlaces de terminación pueden ser útiles para recopilar datos importantes de una instancia antes de que desaparezca. Por ejemplo, puede usar un enlace de terminación para conservar los archivos de registro de su flota copiándolos en un bucket de Amazon S3 cuando las instancias dejen de funcionar.

Visite enlaces de ciclo de vida en nuestra Guía del usuario de Amazon EC2 Auto Scaling para obtener más información.

P: ¿Cuáles son las características de una instancia "defectuosa"?

Una instancia defectuosa es aquella en la que el hardware se ha deteriorado por algún motivo (disco defectuoso, etc.) o no está pasando una comprobación de estado de ELB que configuró el usuario. Amazon EC2 Auto Scaling realiza comprobaciones de estado en cada instancia EC2 individual en intervalos regulares y, si la instancia está conectada a un balanceador de carga de Elastic Load Balancing, también puede realizar comprobación de estado de ELB.

P: ¿Puedo personalizar una comprobación de estado?

Sí, hay una API llamada SetInstanceHealth que le permite cambiar el estado de una instancia DEFECTUOSA, lo que dará como resultado la terminación de la instancia y su reemplazo.

P: ¿Puedo suspender los controles de estado (por ejemplo, para evaluar instancias defectuosas)?

Sí, puede suspender temporalmente las comprobaciones de Amazon EC2 Auto Scaling utilizando la API SuspendProcesses. Puede usar la API ResumeProcesses para reanudar las comprobaciones de estado automáticas.

P: ¿Qué tipo de comprobación de estado debo seleccionar?

Si usa Elastic Load Balancing (ELB) con su grupo, debe seleccionar una comprobación de estado ELB. Si no está utilizando ELB con su grupo, debe seleccionar la comprobación de estado EC2.

P: ¿Puedo usar Amazon EC2 Auto Scaling para comprobaciones de estado y reemplazar instancias defectuosas si no estoy usando Elastic Load Balancing (ELB)?

No tiene que usar ELB para usar Auto Scaling. Puede usar la comprobación de estado de EC2 para identificar y reemplazar instancias defectuosas.

P: ¿Las comprobaciones de estado de Elastic Load Balancing (ELB) funcionan con balanceadores de carga de aplicaciones y balanceadores de carga de red? ¿Se marcará una instancia como defectuosa si algún grupo objetivo asociado a ella se torna defectuoso?

Sí, Amazon EC2 Auto Scaling funciona con balanceadores de carga de aplicaciones y balanceadores de carga de red, que incluyen la función de comprobación de estado.

P: ¿Hay alguna forma de utilizar Amazon EC2 Auto Scaling para agregar solo un volumen sin agregar una instancia?

Cuando se agrega una nueva instancia, se asocia un volumen. Amazon EC2 Auto Scaling no agrega automáticamente un volumen cuando el existente se acerca a la capacidad especificada. Puede usar la API de EC2 para agregar un volumen a una instancia existente.

P: ¿A qué se refiere el término "instancias con estado"?

Cuando nos referimos a una instancia con estado, hacemos referencia a una instancia que tiene datos en ella y que solo existen en esa instancia. En general, la terminación de una instancia con estado significa que se pierden los datos (o información del estado) que se encuentran en la instancia. Es posible que desee considerar el uso de los enlaces de ciclo de vida para copiar los datos de una instancia con estado antes que se termine, o habilitar la protección de instancias para evitar que Amazon EC2 Auto Scaling la termine.

P: Mis instancias EC2 se crean con scripts Ansible. ¿Cómo uso Ansible con Amazon EC2 Auto Scaling?

Puede encontrar detalles sobre el uso de Ansible con Auto Scaling en el sitio web de Ansible.

Reemplazar instancias deterioradas

P: ¿Cómo reemplaza Amazon EC2 Auto Scaling una instancia deteriorada?

Cuando una instancia deteriorada no pasa una comprobación de estado, Amazon EC2 Auto Scaling la elimina automáticamente y la sustituye por otra. Si está utilizando un balanceador de carga Elastic Load Balancing, Amazon EC2 Auto Scaling desconecta correctamente la instancia deteriorada del balanceador de carga antes de aprovisionar una nueva y asociarla a este. Todo esto se hace automáticamente, por lo que no es necesario que responda manualmente cuando una instancia debe ser reemplazada.

P: ¿Cómo puedo controlar qué instancias de Amazon EC2 Auto Scaling terminan durante el escalado descendente y cómo protejo los datos en una instancia?

Con cada grupo de Amazon EC2 Auto Scaling, usted controla cuándo Amazon EC2 Auto Scaling agrega instancias (lo que se conoce como escalado ascendente) o quita instancias (denominadas escalado descendente) de su grupo. Puede escalar manualmente el tamaño de su grupo asociando y desconectando instancias, o puede automatizar el proceso mediante el uso de una política de escalado. Cuando Amazon EC2 Auto Scaling escala automáticamente en forma descendente, debe decidir qué instancias de Amazon EC2 Auto Scaling debe terminar primero. Puede configurar esto mediante el uso de una política de terminación. También puede usar la protección de instancias para evitar que Amazon EC2 Auto Scaling seleccione instancias específicas que se terminarán durante el escalado descendente. Si tiene datos en una instancia y necesita que persistan, incluso si se la va a escalar de manera descendente, puede usar un servicio como S3, RDS o DynamoDB, para asegurarse de que se almacenen fuera de la instancia.

P: ¿Cuál es el tiempo de respuesta para que Amazon EC2 Auto Scaling active una nueva instancia en el estado "En servicio" después de detectar un servidor defectuoso?

El tiempo de respuesta es minutos. La mayoría de los reemplazos ocurren en menos de 5 minutos, y en promedio el tiempo es significativamente menor. Depende de varios factores, incluido el tiempo que lleva iniciar la AMI de su instancia.

P: Si Elastic Load Balancing (ELB) determina que una instancia es defectuosa y queda offline, ¿las solicitudes anteriores enviadas a la instancia errónea se pondrán en la cola y se redirigirán a otras instancias dentro del grupo?

Cuando ELB nota que la instancia es defectuosa, detendrá las solicitudes de direccionamiento hacia ella. Sin embargo, antes de detectar que la instancia es defectuosa, algunas solicitudes a esa instancia tendrán errores.

P: Si no usa Elastic Load Balancing (ELB), ¿cómo se direccionará a los usuarios a otros servidores de un grupo si se produce un error?

Puede integrarse con Route53 (que Amazon EC2 Auto Scaling no admite en la actualidad, pero muchos clientes lo usan). También puede usar su propio proxy inverso o, en el caso de microservicios internos, puede usar soluciones de detección de servicios.

Seguridad

P: ¿Cómo controlo el acceso a los recursos de Amazon EC2 Auto Scaling?

Amazon EC2 Auto Scaling se integra con AWS Identity and Access Management (IAM), un servicio que le permite hacer lo siguiente:

  • Crear usuarios y grupos en la cuenta de AWS de su organización
  • Asignar credenciales de seguridad únicas a cada usuario en su cuenta de AWS
  • Controlar los permisos de cada usuario para realizar tareas mediante recursos de AWS
  • Permitir a los usuarios de otra cuenta de AWS compartir sus recursos de AWS
  • Crear roles para su cuenta de AWS y definir los usuarios o servicios que pueden asumirlos
  • Usar identidades existentes para que su compañía conceda permisos para realizar tareas mediante recursos de AWS

Por ejemplo, puede crear una política de IAM que otorgue permiso al grupo Administradores para usar solo las operaciones de API DescribeAutoScalingGroups, DescribeLaunchConfigurations, DescribeScalingActivities, y DescribePolicies. Los usuarios del grupo Administradores pueden usar esas operaciones con cualquier grupo de Amazon EC2 Auto Scaling y lanzar configuraciones. Con los permisos de nivel de recursos de Amazon EC2 Auto Scaling, puede restringir el acceso a un grupo de EC2 Auto Scaling en particular o a la configuración de lanzamiento.

Para obtener más información, consulte la sección Controlar el acceso a sus recursos de Auto Scaling de la guía del usuario de Amazon EC2 Auto Scaling.

P: ¿Puede definir una contraseña de administrador predeterminada en instancias de Windows con Amazon EC2 Auto Scaling?

Puede usar el parámetro Key Name en CreateLaunchConfiguration con el fin de asociar un par de claves con su instancia. Puede usar la API GetPasswordData en EC2. Esto también es posible a través de la consola de administración de AWS.

P: ¿Los agentes de CloudWatch se instalan automáticamente en las instancias EC2 cuando se crea un grupo de Amazon EC2 Auto Scaling?

Si su AMI contiene un agente de CloudWatch, se instala automáticamente en las instancias de EC2 cuando crea un grupo de EC2 Auto Scaling. Con la AMI de Amazon Linux, necesita instalarlo (se recomienda hacerlo a través de yum).

Precios

P: ¿Cuáles son los costos del uso de Amazon EC2 Auto Scaling?

La administración de flota de Amazon EC2 Auto Scaling para instancias EC2 genera tarifas adicionales. Amazon CloudWatch habilita las capacidades de escalado dinámico de Amazon EC2 Auto Scaling y tampoco genera tarifas adicionales. Se aplican las tarifas de servicio de Amazon EC2 y Amazon CloudWatch y se facturan por separado.

Más información sobre los precios de Amazon EC2 Auto Scaling

Visite la página de precios
¿Listo para comenzar?
Inscribirse
¿Tiene más preguntas?
Contacte con nosotros