Capa Elastic Load Balancing - AWS OpsWorks

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.

Capa Elastic Load Balancing

importante

El AWS OpsWorks Stacks servicio llegó al final de su vida útil el 26 de mayo de 2024 y se ha desactivado tanto para los clientes nuevos como para los existentes. Recomendamos encarecidamente a los clientes que migren sus cargas de trabajo a otras soluciones lo antes posible. Si tienes preguntas sobre la migración, ponte en contacto con el AWS Support equipo en AWS Re:post o a través de Premium AWS Support.

Elastic Load Balancing funciona de forma algo diferente a una capa AWS OpsWorks de Stacks. En lugar de crear una capa y añadirle instancias, utilice la consola de Elastic Load Balancing o la AP para crear un equilibrador de carga y adjuntarlo después a una capa existente. Además de distribuir el tráfico entre las instancias de la capa, Elastic Load Balancing hace lo siguiente:

  • Detecta las instancias de Amazon EC2 en mal estado y redirige el tráfico hacia las otras instancias que se encuentran en buen estado, hasta que se restauren las instancias en mal estado.

  • Escala automáticamente la capacidad de gestión de solicitudes como respuesta al tráfico entrante.

  • Si activa el drenaje de conexiones, el equilibrador de carga deja de enviar nuevas solicitudes a las instancias que están en mal estado o cuyo registro está a punto de anularse pero mantiene la conexión, hasta un valor de tiempo de inactividad específico, para permitir a la instancia completar las solicitudes en tránsito.

Después de adjuntar un balanceador de carga a una capa, AWS OpsWorks Stacks hace lo siguiente:

  • Anula el registro de cualquier instancia registrada actualmente

  • Registra de forma automática las instancias de la capa cuando se conectan y anula el registro de las instancias cuando dejan de estar conectadas, incluidas las instancias basadas en tiempo y las basadas en carga

  • Inicia automáticamente las solicitudes de direccionamiento a instancias registradas en sus zonas de disponibilidad.

Si has activado la función de drenaje de conexiones del balanceador de cargas, puedes especificar si AWS OpsWorks Stacks la admite. Si habilitas la compatibilidad con el agotamiento de conexiones (la configuración predeterminada), después de cerrar una instancia, AWS OpsWorks Stacks hará lo siguiente:

  • Anula el registro de la instancia desde el balanceador de carga

    El balanceador de carga deja de enviar solicitudes nuevas y comienza el vaciado de conexiones.

  • Retrasa el disparo de un evento del ciclo de vida Shutdown hasta que el balanceador de carga haya completado el vaciado de conexiones.

Si no habilitas la compatibilidad con el agotamiento de la conexión, AWS OpsWorks Stacks activa el evento de cierre en cuanto se cierra la instancia, incluso si la instancia sigue conectada al balanceador de cargas.

Para utilizar Elastic Load Balancing con una pila, primero debe crear uno o varios equilibradores de carga en la misma región mediante la consola, la CLI o la API de Elastic Load Balancing. Debe ser consciente de lo siguiente:

  • Solo se puede adjuntar un balanceador de carga a una capa

  • Cada balanceador de carga puede gestionar una única capa

  • AWS OpsWorks Stacks no es compatible con Application Load Balancer. Solo puede usar el Equilibrador de carga clásico con AWS OpsWorks Stacks.

Esto significa que debe crear un equilibrador de carga Elastic Load Balancing independiente para cada capa en cada pila que desee equilibrar y utilizarla solo para dicho fin. Una práctica recomendada es asignar un nombre distintivo a cada balanceador de carga de Elastic Load Balancing que planee usar con AWS OpsWorks Stacks, como MyStack RailsLayer 1-ELB, para evitar usar un balanceador de carga para más de un propósito.

importante

Te recomendamos crear nuevos balanceadores de carga de Elastic Load Balancing para tus capas de AWS OpsWorks Stacks. Si decide utilizar un equilibrador de carga Elastic Load Balancing existente, primero debe confirmar que no se utiliza para otros fines y que no tiene instancias asociadas. Una vez que el balanceador de carga esté conectado a la capa, OpsWorks elimina todas las instancias existentes y configura el balanceador de carga para que gestione solo las instancias de la capa. Aunque es técnicamente posible utilizar la consola o la API de Elastic Load Balancing para modificar la configuración de un equilibrador de carga después de adjuntarlo a una capa, no debería hacerlo; los cambios no serán permanentes.

Asocia un equilibrado de carga Elastic Load Balancing a una capa especificada.
  1. Si aún no lo ha hecho, utilice la consola de Elastic Load Balancing, la API o la CLI para crear un equilibrador de carga en la región de la pila. Al crear el balanceador de carga, haga lo siguiente:

    • Asegúrese de especificar una ruta de ping de comprobación de estado adecuada para su aplicación.

      La ruta de ping predeterminada es /index.html, por lo que si la raíz de la aplicación no incluye index.html, debe especificar una ruta de ping adecuada o la comprobación de estado no funcionará correctamente.

    • Si desea utilizar el vaciado de conexiones, asegúrese de que la característica esté activada y tenga un valor de tiempo de inactividad adecuado.

    Para obtener más información, consulte Elastic Load Balancing.

  2. Cree la capa que desea equilibrar o edite la configuración de la red de la capa existente.

    nota

    No puede adjuntar un balanceador de carga al crear una capa personalizada. Debe editar la configuración de la capa.

  3. En Elastic Load Balancing, selecciona el balanceador de carga que deseas adjuntar a la capa y especifica si quieres que AWS OpsWorks Stacks admita el drenaje de conexiones.

Después de adjuntar un balanceador de carga a una capa, AWS OpsWorks Stacks activa un evento de configuración del ciclo de vida en las instancias de la pila para notificarles el cambio. AWS OpsWorks Stacks también activa un evento de configuración cuando desconectas un balanceador de carga.

nota

Una vez que se ha iniciado una instancia, AWS OpsWorks Stacks ejecuta las recetas de configuración e implementación, que instalan paquetes e implementan aplicaciones. Una vez finalizadas esas recetas, la instancia pasa a estar en línea y AWS OpsWorks Stacks la registra en Elastic Load Balancing. AWS OpsWorks Stacks también activa un evento de configuración una vez que la instancia se conecta. Esto significa que el registro de Elastic Load Balancing y las recetas Configure pueden ejecutarse de forma simultánea, y que la instancia puede registrarse antes de que las recetas Configure hayan terminado. Para asegurarse de que una receta termina antes de que se registre una instancia en Elastic Load Balancing, debe añadir la receta a los eventos del ciclo de vida Setup o Deploy de la capa. Para obtener más información, consulte Ejecución de recetas.

A veces es útil eliminar una instancia de un balanceador de carga. Por ejemplo, al actualizar una aplicación, le recomendamos que implemente la aplicación en una sola instancia y verifique que la aplicación funciona correctamente antes de implementarla en cada instancia. Normalmente se suele eliminar dicha instancia desde el balanceador de carga, por lo que no recibe solicitudes de usuarios hasta que se haya verificado la actualización.

Debe utilizar la consola o la API de Elastic Load Balancing para eliminar temporalmente una instancia online de un equilibrador de carga. A continuación se describe cómo utilizar la consola.

Para eliminar temporalmente una instancia de un balanceador de carga
  1. Abra la consola de Amazon EC2 y elija Load Balancers.

  2. Seleccione el balanceador de carga adecuado y abra la pestaña Instances (Instancias).

  3. Elija Remove from Load Balancer (Eliminar del balanceador de carga) en la columna Actions (Acciones) de la instancia.

  4. Cuando haya terminado, elija Edit Instances (Editar instancias) y devuelva la instancia al balanceador de carga.

importante

Si utilizas la consola o la API de Elastic Load Balancing para eliminar una instancia de un balanceador de carga, también debes usar Elastic Load Balancing para volver a colocarla. AWS OpsWorks Stacks no tiene conocimiento de las operaciones que realizas con otras consolas de servicio o API, y no devolverá la instancia al balanceador de cargas por ti. A veces, AWS OpsWorks Stacks puede volver a añadir la instancia al ELB, pero este comportamiento no está garantizado y no ocurre en todos los casos.

Puede adjuntar varios balanceadores de carga a un conjunto de instancias determinado de la siguiente manera:

Para adjuntar varios balanceadores de carga
  1. Utilice la consola de Elastic Load Balancing, la API o la CLI para crear un conjunto de equilibradores de carga.

  2. Cree una capa personalizada para cada balanceador de carga y adjunte uno de los balanceadores de carga. No es necesario implementar recetas personalizadas en estas capas; basta con una capa personalizada predeterminada.

  3. Añada el conjunto de instancias a cada capa personalizada.

Puede examinar las propiedades de un balanceador de carga accediendo a la página Instances y haciendo clic en el nombre del balanceador de carga.

PHP App Server instances table with instance names, status, size, type, and public IP addresses. (AI generated)

La página ELB muestra las propiedades básicas del balanceador de carga, incluidos el nombre de DNS y el estado de las instancias asociadas. Si la pila se ejecuta en una VPC, la página muestra las subredes en lugar de las zonas de disponibilidad. Una marca de verificación verde indica que la instancia está en buen estado. Puede hacer clic en el nombre para conectarse a un servidor a través del balanceador de carga.

ELB My-Stack-PHP page showing load balancer details, DNS name, layer, region, and health status of instances. (AI generated)