Introducción a Amazon EC2 Auto Scaling - Amazon EC2 Auto Scaling

Introducción a Amazon EC2 Auto Scaling

Cuando use Amazon EC2 Auto Scaling, debe utilizar determinados componentes básicos para empezar. Este tutorial le guiará por el proceso de configuración de bloques de creación para crear una infraestructura básica para Amazon EC2 Auto Scaling.

Antes de crear un grupo de escalado automático para usarlo con una aplicación, revísela a fondo mientras se pone en marcha en la nube de Nube de AWS. Considere lo siguiente:

  • Entre cuántas zonas de disponibilidad debe distribuirse el grupo de Auto Scaling.

  • Qué recursos existentes se pueden utilizar, como grupos de seguridad o imágenes de máquina de Amazon (AMI).

  • Si desea escalar para aumentar o disminuir la capacidad, o solo desea asegurarse de que siempre haya un número específico de servidores en funcionamiento. Tenga en cuenta que Amazon EC2 Auto Scaling puede hacer ambas cosas a la vez.

  • Qué métricas son más relevantes para el rendimiento de la aplicación.

  • Cuánto tiempo tarda en lanzar y configurar un servidor.

Cuanto mejor conozca su aplicación, mayor será la eficacia de su arquitectura de Auto Scaling.

nota

Para ver un video de introducción, consulte AWS re:Invent 2018: Capacity Management Made Easy with Amazon EC2 Auto Scaling (re:Invent 2018: La gestión de la capacidad es más sencilla con Amazon EC2 Auto Scaling) en YouTube.

Resumen del tutorial

En esta explicación, usted:

  • Cree una plantilla de configuración que defina las instancias EC2. Puede elegir la plantilla de lanzamiento o la configuración de lanzamiento según sus preferencias. Aunque puede utilizar una configuración de lanzamiento, le recomendamos una plantilla de lanzamiento para que pueda utilizar las últimas características de Amazon EC2 y Amazon EC2 Auto Scaling.

  • Cree un grupo de Auto Scaling con una sola instancia.

  • Finalice la instancia y verifique que la instancia se quitó del servicio y se reemplazó. Para mantener un número constante de instancias, Amazon EC2 Auto Scaling detecta y responde automáticamente a las comprobaciones de estado y accesibilidad de Amazon EC2.

Si creó la Cuenta de AWS hace menos de 12 meses y aún no ha excedido los beneficios del nivel gratuito de Amazon EC2, no incurrirá en costos para completar este tutorial, porque ayudamos a seleccionar un tipo de instancias que esté dentro de los beneficios del nivel gratuito. De lo contrario, cuando se este tutorial, se aplicarán cargos por uso de Amazon EC2 estándar desde el momento en que se lanza la instancia hasta que se elimina el grupo de Auto Scaling (que es la última tarea de este tutorial) y el estado de la instancia cambia a terminated.

Prepararse para el tutorial

En esta explicación se presupone que está familiarizado con el lanzamiento de instancias EC2 y que ya ha creado un par de claves y un grupo de seguridad. Para obtener más información, consulte Configuración de Amazon EC2 en la Guía del usuario de Amazon EC2 para instancias de Linux.

Si está empezando con Amazon EC2 Auto Scaling y desea empezar a utilizar el servicio, puede utilizar la VPC predeterminada para su Cuenta de AWS. La VPC predeterminada incluye una subred pública predeterminada en cada zona de disponibilidad y una gateway de Internet asociada a la VPC. Puede ver sus VPC en la página de Your VPCs (Sus VPC) de la consola de Amazon Virtual Private Cloud (Amazon VPC).

Paso 1: Crear una plantilla de lanzamiento

En este paso, tiene que iniciar sesión en la consola de Amazon EC2 con su Cuenta de AWS y crear una plantilla de lanzamiento que especifica el tipo de instancia EC2 que Amazon EC2 Auto Scaling crea en su nombre. Incluya información como el ID de la Amazon Machine Image (AMI) que se va a usar, el tipo de instancia, el par de claves y los grupos de seguridad.

nota

También puede utilizar una configuración de lanzamiento para crear un grupo de Auto Scaling en lugar de utilizar una plantilla de lanzamiento. Para obtener las instrucciones de la configuración de lanzamiento, consulte Create a launch configuration.

Para crear una plantilla de lanzamiento

  1. Abra la página Launch templates (Plantillas de lanzamiento) de la consola de Amazon EC2.

  2. En la barra de navegación de la parte superior de la pantalla, debe seleccionar una Región de AWS. La plantilla de lanzamiento y el grupo de escalado automático que cree están vinculados a la región que especifica.

  3. Elija Create launch template (Crear plantilla de lanzamiento).

  4. Para Launch template name (Nombre de plantilla de lanzamiento), ingrese my-template-for-auto-scaling.

  5. En Auto Scaling guidance (Guía de Auto Scaling), seleccione la casilla de verificación.

  6. En Application and OS Images (Amazon Machine Image) (Imágenes de aplicación y SO [imagen de máquina de Amazon]), elija una versión de Amazon Linux 2 (HVM) en la lista Quick Start (Inicio rápido). La (AMI) sirve de plantilla de configuración básica para sus instancias.

  7. En Instance type (Tipo de instancia), elija una configuración de hardware que sea compatible con la AMI que ha especificado.

    nota

    Si su cuenta tiene menos de 12 meses de antigüedad, puede utilizar una instancia t2.micro de manera gratuita con determinados límites de uso. Para obtener más información, consulte nivel gratuito de AWS.

  8. (Opcional) Para Key pair (login) (Par de claves [inicio de sesión]), elija un par de claves existente. Los pares de claves se utilizan durante la conexión SSH a una instancia de Amazon EC2. La conexión a una instancia no se incluye como parte de este tutorial. Por lo tanto, no tiene que especificar un par de claves, a menos que tenga la intención de conectarse a la instancia mediante SSH.

  9. Para Network settings (Configuración de red), Security groups (Grupos de seguridad), elija un grupo de seguridad en la misma VPC que piensa utilizar como VPC para el grupo de Auto Scaling. Si no especifica ningún grupo de seguridad, la instancia se asocia automáticamente al grupo de seguridad predeterminado de la VPC.

  10. Puede dejar Advanced network configuration (Configuración avanzada de red) en blanco. Al dejar esta configuración vacía se crea una interfaz de red principal con direcciones IP que seleccionamos para la instancia en función de la subred con la que está establecida la interfaz de red. Si en su lugar elige configurar una interfaz de red, el grupo de seguridad debe formar parte de ella.

  11. Elija Create launch template (Crear plantilla de lanzamiento).

  12. En la página de confirmación, seleccione Create Auto Scaling group (Crear grupo de Auto Scaling.

Si actualmente no está utilizando plantillas de lanzamiento y prefiere no crear ninguna ahora, puede crear una configuración de lanzamiento en su lugar.

Una configuración de lanzamiento es similar a una plantilla de lanzamiento, ya que especifica el tipo de instancia EC2 que Amazon EC2 Auto Scaling crea automáticamente. Cree la configuración de lanzamiento incluyendo información como, por ejemplo, el ID de la Amazon Machine Image (AMI) que se va a utilizar, el tipo de instancia, el par de claves y los grupos de seguridad.

Para crear una configuración de lanzamiento

  1. Tiene que abrir la página Launch configurations (Configuraciones de lanzamiento) (Configuraciones de lanzamiento) de la consola Amazon EC2.

  2. En la barra de navegación, debe seleccionar una Región de AWS. El grupo de configuración de lanzamiento y el grupo de escalado automático que cree están vinculados a la región que especifica.

  3. Elija Create launch configuration (Crear configuración de lanzamiento) y, a continuación, ingrese my-first-launch-configuration en el campo de Name (Nombre).

  4. Para Amazon machine image (AMI), elija una AMI. Para encontrar una AMI específica, puede buscar una AMI adecuada, anote su ID e ingrese el ID como criterio de búsqueda.

    Para obtener el ID de la AMI de Amazon Linux 2:

    1. Abra la consola de Amazon EC2.

    2. En el panel de navegación, en Instances (Instancias), elija Instances (Instancias) y seleccione Launch Instance (Lanzar instancias).

    3. En la pestaña Quick Start (Inicio rápido) de la página Choose an Amazon Machine Image (Elegir una Amazon Machine Image), observe el ID de la AMI junto a Amazon Linux 2 AMI (HVM) (AMI de Amazon Linux 2 [HVM]). Observe que estas AMI están marcadas como "Free tier eligible" (Apta para el nivel gratuito).

  5. Para Instance Type (Tipo de instancias), seleccione la configuración de hardware de la instancia.

    nota

    Si su cuenta tiene menos de 12 meses de antigüedad, puede utilizar una instancia t2.micro de manera gratuita con determinados límites de uso. Para obtener más información, consulte nivel gratuito de AWS.

  6. En Additional configuration (Configuración adicional), para Advanced details (Detalles avanzados), IP address type (Tipo de dirección IP), haga una selección. Para proporcionar conectividad a Internet a las instancias de una VPC, elija una opción que asigne una dirección IP pública. Si una instancia se lanza en una VPC predeterminada, el valor predeterminado es asignar una dirección IP pública. Si desea proporcionar conectividad a Internet a la instancia pero no sabe con seguridad si dispone de una VPC predeterminada, elija Assign a public IP address to every instance (Asignar una dirección IP pública a cada instancia).

  7. Para Security groups (grupos de seguridad), elija Grupo de seguridad existente. Si deja la opción Create a new security group (Crear un nuevo grupo de seguridad) seleccionada como predeterminada, se configura una regla SSH para instancias Amazon EC2 que ejecutan Linux. Se configura una regla de RDP predeterminada para instancias de Amazon EC2 que ejecutan Windows.

  8. Para Key pair (login) (Par de claves [inicio de sesión]), elija una opción en Key pair options (Opciones de par de claves) según las instrucciones. La conexión a una instancia no se incluye como parte de este tutorial. Por tanto, puede seleccionar Proceed without a key pair (Continuar sin un par de claves), a menos que pretenda conectarse a la instancia mediante SSH.

  9. Elija Create launch configuration.

  10. Seleccione la casilla situada junto al nombre de la nueva configuración de lanzamiento y elija Actions (Acciones), Auto Scaling group (Grupo de Auto Scaling).

Paso 2: Crear un grupo de Auto Scaling de instancia única

Utilice ahora Amazon EC2 Auto Scaling para crear un grupo de Auto Scaling y agregar la plantilla de lanzamiento o la configuración de lanzamiento al grupo. Incluya también información como las subredes de VPC para las instancias.

Utilice el siguiente procedimiento para continuar donde lo dejó después de crear una plantilla de lanzamiento o una configuración de lanzamiento.

Para crear un grupo de Auto Scaling

  1. En la página Choose launch template or configuration (Elegir una plantilla de lanzamiento o configuración), para Auto Scaling group name (Nombre de grupo de Auto Scaling), ingrese my-first-asg.

  2. Elija Next (Siguiente).

    Aparece la página Choose instance launch options (Elegir opciones de lanzamiento de instancias), que le permite elegir la configuración de red de la VPC que desea que utilice el grupo de Auto Scaling y le ofrece opciones para lanzar instancias bajo demanda e instancias de spot (si elige una plantilla de lanzamiento).

  3. En la sección Network, tiene que conservar la VPC predeterminada de la Región de AWS que ha elegido o seleccionar su propia VPC. La VPC predeterminada se configura automáticamente para proporcionar conectividad a Internet a la instancia. Esta VPC incluye una subred pública en cada zona de disponibilidad de la región.

  4. En Availability Zones and subnets (Zonas de disponibilidad y subredes), elija una subred de cada zona de disponibilidad que desee incluir. Utilice subredes en varias zonas de disponibilidad para lograr una alta disponibilidad. Para obtener más información, consulte Consideraciones a la hora de elegir subredes de VPC .

  5. [Solo plantilla de lanzamiento] En la sección Instance type requirements (Requisitos del tipo de instancia), utilice la configuración predeterminada para simplificar este paso. (No anule la plantilla de lanzamiento). En este tutorial, solo lanzará una instancia bajo demanda con el tipo de instancia especificado en la plantilla de lanzamiento.

  6. Mantenga el resto de los valores predeterminados para este tutorial y elija Skip to review (Omitir para revisar).

    nota

    El tamaño inicial del grupo está determinado por su capacidad deseada. El valor predeterminado es instancia 1.

  7. En la página Review (Revisar), revise la información del grupo y elija Auto Scaling group (Grupo de Auto Scaling).

Paso 3: Verificar el grupo de Auto Scaling

Ahora que ha creado su grupo de Auto Scaling, está listo para verificar si el grupo ha lanzado una instancia EC2.

sugerencia

En el siguiente procedimiento, observará las secciones Activity history (Historial de actividad) e Instances (Instancias) del grupo de Auto Scaling. En ambas, ya deberían aparecer las columnas con nombre. Para mostrar las columnas ocultas o cambiar el número de filas que aparecen, elija el icono de engranaje en la esquina superior derecha de cada sección para abrir el modal de preferencias, actualice la configuración según sea necesario y seleccione Confirm (Confirmar).

Para verificar si el grupo de Auto Scaling ha lanzado una instancia EC2

  1. Abra la página Auto Scaling groups (Grupos de escalado automático) (Grupos de escalado automático) de la consola de Amazon EC2.

  2. Seleccione la casilla de verificación junto al grupo de Auto Scaling que acaba de crear.

    Se abre un panel dividido en la parte inferior de la página Auto Scaling groups (Grupos de Auto Scaling). La primera pestaña disponible es la pestaña Details (Detalles) que muestra información sobre el grupo de Auto Scaling.

  3. Seleccione la segunda pestaña, Activity (Actividad). En Activity history (Historial de actividad), puede ver el progreso de las actividades que están asociadas al grupo de Auto Scaling. La columna Status (Estado) muestra el estado actual de su instancia. Mientras se está lanzando la instancia, la columna de estado muestra PreInService. El estado cambia a Successful cuando se lanza la instancia. También puede utilizar el botón de actualización para ver el estado actual de la instancia.

  4. En la pestaña Instance management (Administración de instancia), en Instances (Instancias), puede ver el estado de la instancia.

  5. Compruebe que la instancia se ha lanzado correctamente. La instancia tarda poco tiempo en lanzarse.

    • La columna Lifecycle (Ciclo de vida) muestra el estado de su instancia. Al principio, la instancia tiene el estado Pending. Cuando una instancia está lista para recibir tráfico, su estado es InService.

    • La columna Health status (Estado) muestra el resultado de la comprobación de estado de instancias EC2 correspondiente a su instancia.

Paso 4: Terminar una instancia en el grupo de Auto Scaling

Utilice estos pasos para obtener más información sobre cómo funciona Amazon EC2 Auto Scaling, específicamente, cómo lanza nuevas instancias cuando sea necesario. El tamaño mínimo del grupo de Auto Scaling creado en este aprendizaje es una instancia. Por lo tanto, si termina la instancia en ejecución, Amazon EC2 Auto Scaling debe lanzar una instancia nueva para sustituirla.

  1. Abra la página Auto Scaling groups (Grupos de escalado automático) (Grupos de escalado automático) de la consola de Amazon EC2.

  2. Seleccione la casilla del grupo de Auto Scaling correspondiente.

  3. En la pestaña Instance management (Administración de instancias), en Instances (Instancias), seleccione el ID de la instancia.

    Tras ello, accederá a la página Instances (Instancias)) de la consola de Amazon EC2, donde puede terminar la instancia.

  4. Elija Actions (Acciones), Instance State (Estado de la instancia), Terminate (Terminar). Cuando se le pida confirmación, elija Yes, Terminate.

  5. En el panel de navegación, seleccione Auto Scaling (Escalado automático) y elija Auto Scaling Groups (Grupos de escalado automático). Seleccione el grupo de Auto Scaling y elija la pestaña Activity (Actividad).

    El periodo de recuperación predeterminado del grupo de Auto Scaling es de 300 segundos (5 minutos), por lo que pasarán unos 5 minutos hasta que pueda ver la actividad de escalado. En el historial de actividad, cuando comience la actividad de escalado, verá una entrada para la terminación de la primera instancia y una entrada para el lanzamiento de una nueva instancia.

  6. En la pestaña Instance management (Administración de instancias), la sección Instances (Instancias) muestra solo la nueva instancia.

  7. En el panel de navegación, en Instances (Instancias), elija Instances. Esta página muestra la instancia terminada y la nueva instancia en ejecución.

Paso 5: Siguientes pasos

Vaya al siguiente paso si desea eliminar la infraestructura básica para el escalado automático que acaba de crear. De lo contrario, puede utilizar esta infraestructura como punto de partida y realizar alguna de las siguientes operaciones:

Paso 6: Limpieza

Puede eliminar la infraestructura de escalado o eliminar únicamente el grupo de Auto Scaling y conservar la plantilla de lanzamiento o la configuración de lanzamiento para usarla en otro momento.

Si ha lanzado una instancia que no está dentro del nivel gratuito de AWS, debe terminar la instancia para evitar cargos adicionales. Cuando termine la instancia, los datos asociados con ella también se eliminarán.

Para eliminar el grupo de Auto Scaling

  1. Abra la página Auto Scaling groups (Grupos de escalado automático) (Grupos de escalado automático) de la consola de Amazon EC2.

  2. Seleccione el grupo de Auto Scaling (my-first-asg).

  3. Elija Eliminar. Cuando se le pida confirmación, elija Delete (Eliminar).

    Un icono de carga en la columna Name (Nombre) indica que el grupo de Auto Scaling se está eliminando. Una vez eliminado, las columnas Desired (Deseadas), Min (Mín.) y Max (Máx.) muestran instancias de 0 para el grupo de Auto Scaling. Se tarda unos minutos en terminar la instancia y eliminar el grupo. Actualice la lista para ver el estado actual.

Omita el procedimiento siguiente si desea mantener su plantilla de lanzamiento.

Para eliminar la plantilla de lanzamiento

  1. Abra la página Launch templates (Plantillas de lanzamiento) de la consola de Amazon EC2.

  2. Seleccione la plantilla de lanzamiento (my-template-for-auto-scaling).

  3. Elija Actions, Delete template. Cuando se le pida confirmación, elija Delete launch template.

Omita el procedimiento siguiente si desea mantener su configuración de lanzamiento.

Para eliminar su configuración de lanzamiento

  1. Abra la página Launch configurations (Configuraciones de lanzamiento) (Configuraciones de lanzamiento) de la consola Amazon EC2.

  2. Seleccione la configuración de lanzamiento (my-first-launch-configuration).

  3. Seleccione Actions, Delete launch configuration. Cuando se le indique que confirme, seleccione Yes, Delete (Sí, borrar).