Utilice un equilibrador de carga de aplicaciones como destino de un equilibrador de carga de red
Puede crear un grupo de destino con un único equilibrador de carga de aplicación como destino y configurar el equilibrador de carga de red para que le redirija el tráfico. En este escenario, el equilibrador de carga de aplicación asume la decisión de equilibrio de carga en cuanto llega el tráfico. Esta configuración combina las funciones de ambos equilibradores de carga y ofrece las siguientes ventajas:
-
Puede usar la característica de enrutamiento basado en solicitudes de capa 7 del equilibrador de carga de aplicación en combinación con las características que admite el equilibrador de carga de red, como los servicios de punto de conexión (AWS PrivateLink) y las direcciones IP estáticas.
-
Puede usar esta configuración para aplicaciones que necesitan un único punto de conexión para varios protocolos, como los servicios multimedia que utilizan HTTP para la señalización y RTP para transmitir contenido.
Puede utilizar esta característica con un equilibrador de carga de aplicación interno o con acceso a Internet como destino de un equilibrador de carga de red interno o con acceso a Internet.
Consideraciones
-
Solo puede registrar un equilibrador de carga de aplicaciones por grupo de destino.
-
Para asociar un equilibrador de carga de aplicaciones como destino de un equilibrador de carga de red, ambos equilibradores de carga deben estar en la misma VPC y dentro de la misma cuenta.
-
Puede asociar un equilibrador de carga de aplicaciones como destino de hasta dos equilibradores de carga de red. Para ello, registre el equilibrador de carga de aplicaciones en un grupo de destino independiente para cada equilibrador de carga de red.
-
Cada equilibrador de carga de aplicaciones que registre en un equilibrador de carga de red reduce en 50 el número máximo de destinos por zona de disponibilidad para ese equilibrador de carga de red. Puede deshabilitar la equilibración de carga entre zonas en ambos equilibradores de carga para minimizar la latencia y evitar los cargos por transferencia de datos regionales. Para obtener más información, consulte Cuotas para los equilibradores de carga de red.
-
Si el tipo de grupo de destino es alb, no puede modificar los atributos del grupo de destino. Estos atributos siempre utilizan los valores predeterminados.
-
Después de registrar un equilibrador de carga de aplicación como destino, no podrá eliminar el equilibrador de carga de aplicación hasta que anule el registro de todos los grupos de destino.
-
La comunicación entre un equilibrador de carga de red y un equilibrador de carga de aplicaciones siempre utiliza IPv4.
Requisito previo
Si aún no tiene un equilibrador de carga de aplicaciones para usarlo como destino, cree el equilibrador de carga, sus oyentes y sus grupos de destino. Para obtener más información, consulte Crear un Equilibrador de carga de aplicación en la Guía del usuario para Equilibradores de carga de aplicación.
Paso 1: Creación de un grupo de destino de tipo alb
Cree un grupo de destino de tipo alb. Puede registrar el equilibrador de carga de aplicaciones como destino al crear el grupo de destino o más adelante.
- Console
-
Para crear un grupo de destino para un equilibrador de carga de aplicaciones como destino
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.
-
En el panel de navegación, en Load Balancing (Equilibración de carga), elija Target Groups (Grupos de destino).
-
Elija Crear grupo de destino.
-
En el panel Configuración básica, en Elegir un tipo de destino, seleccione Equilibrador de carga de aplicaciones.
-
En Nombre del grupo de destino, escriba el nombre del grupo de destino.
-
En Protocolo, solo se permite el TCP. Seleccione el Puerto para su grupo de destino. El puerto de este grupo de destino debe coincidir con el puerto del oyente del equilibrador de carga de aplicaciones. Si elige un puerto distinto para este grupo de destino, puede actualizar el puerto del oyente del equilibrador de carga de aplicaciones para que coincida.
-
En VPC, seleccione la nube privada virtual (VPC) para el grupo de destino. Debe ser la misma VPC que utiliza el equilibrador de carga de aplicaciones.
-
En Comprobaciones de estado, elija HTTP o HTTPS como el Protocolo de comprobación de estado. Las comprobaciones de estado se envían al equilibrador de carga de aplicación y se reenvían a sus destinos mediante el puerto, el protocolo y la ruta de ping especificados. Asegúrese de que su equilibrador de carga de aplicación pueda recibir estas comprobaciones de estado mediante un oyente con un puerto y un protocolo que coincidan con el puerto y el protocolo de la comprobación de estado.
-
(Opcional) Amplíe las Etiquetas. Para cada etiqueta, seleccione Agregar nueva etiqueta e introduzca una clave de etiqueta y un valor de etiqueta.
-
Elija Siguiente.
-
Si ya está listo para registrar el equilibrador de carga de aplicaciones, seleccione Registrar ahora, modifique el puerto predeterminado si es necesario y seleccione el equilibrador de carga de aplicaciones. El equilibrador de carga de aplicaciones debe tener un oyente en el mismo puerto que el grupo de destino. Puede agregar o editar un oyente en este equilibrador de carga para que coincida con el puerto del grupo de destino, o bien volver al paso anterior y cambiar el puerto del grupo de destino.
Si aún no está listo para registrar el equilibrador de carga de aplicaciones como destino, seleccione Registrar más adelante y registre el destino posteriormente. Para obtener más información, consulte Cómo registrar destinos.
-
Elija Crear grupo de destino.
- AWS CLI
-
Para crear un grupo de destino de tipo alb
Utilice el comando create-target-group. El protocolo debe ser TCP y el puerto debe coincidir con el puerto del oyente del equilibrador de carga de aplicaciones.
aws elbv2 create-target-group \
--name my-target-group \
--protocol TCP \
--port 80 \
--target-type alb \
--vpc-id vpc-1234567890abcdef0 \
--tags Key=department,Value=123
- CloudFormation
-
Para crear un grupo de destino de tipo alb
Defina un recurso de tipo AWS::ElasticLoadBalancingV2::TargetGroup. El protocolo debe ser TCP y el puerto debe coincidir con el puerto del oyente del equilibrador de carga de aplicaciones.
Resources:
myTargetGroup:
Type: 'AWS::ElasticLoadBalancingV2::TargetGroup'
Properties:
Name: my-target-group
Protocol: TCP
Port: 80
TargetType: alb
VpcId: !Ref myVPC
Tags:
- Key: 'department'
Value: '123'
Targets:
- Id: !Ref myApplicationLoadBalancer
Port: 80
Al crear el equilibrador de carga de red, puede configurar la acción predeterminada para reenviar el tráfico al equilibrador de carga de aplicaciones.
- Console
-
Para crear el equilibrador de carga de red
Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.
-
En el panel de navegación, en Load Balancing (Equilibrio de carga), elija Load Balancers (Equilibradores de carga).
-
Elija Crear un equilibrador de carga.
-
En Equilibrador de carga de red, elija Crear.
-
Configuración básica
-
En Nombre del balanceador de carga, escriba un nombre para el equilibrador de carga de red.
-
Para Scheme (Esquema), elija ya sea expuesto a internet o interno. Un equilibrador de carga de red expuesto a Internet enruta las solicitudes desde los clientes hasta los destinos a través de Internet. Un equilibrador de carga de red interno enruta las solicitudes hacia los destinos mediante direcciones IP privadas.
-
En Tipo de dirección IP del equilibrador de carga, seleccione IPv4 si los clientes usan direcciones IPv4 para comunicarse con el equilibrador de carga de red, o Doble pila si los clientes usan tanto direcciones IPv4 como IPv6 para comunicarse con el equilibrador de carga de red.
-
Asignación de redes
-
En VPC, seleccione la misma VPC que utilizó para el equilibrador de carga de aplicaciones. Cuando se utiliza un equilibrador de carga de acceso a Internet, solo se pueden seleccionar VPC que tengan una puerta de enlace de Internet.
-
En Zonas de disponibilidad y subredes, seleccione al menos una zona de disponibilidad y una subred por zona. Recomendamos seleccionar las mismas zonas de disponibilidad que están habilitadas para el equilibrador de carga de aplicaciones. Esto optimiza la disponibilidad, el escalado y el rendimiento.
(Opcional) Para usar direcciones IP estáticas, elija Usar una dirección IP elástica en la configuración de IPv4 de cada zona de disponibilidad. Con las direcciones IP estáticas, puede agregar determinadas direcciones IP a una lista de direcciones IP permitidas para los firewalls o puede usar una codificación rígida para direcciones IP de clientes.
-
Grupos de seguridad
Preseleccionamos el grupo de seguridad predeterminado para la VPC del equilibrador de carga. Puede seleccionar grupos de seguridad adicionales según sea necesario. Si no tiene un grupo de seguridad que cumpla con sus requisitos, elija crear un nuevo grupo de seguridad para crearlo ahora. Para obtener más información, consulte Crear un grupo de seguridad en la Guía del usuario de Amazon VPC.
Si no asocia ahora ningún grupo de seguridad al equilibrador de carga de red, no podrá asociarlo más adelante.
Para utilizar oyentes QUIC o TCP_QUIC, el equilibrador de carga de red no debe tener grupos de seguridad.
-
Los oyentes y el enrutamiento
-
De forma predeterminada, el oyente acepta tráfico de TCP en el puerto 80. Solo los oyentes de TCP pueden reenviar el tráfico a un grupo de destino del equilibrador de carga de aplicación. Debe mantener el Protocolo como TCP, pero puede modificar el Puerto según sea necesario.
Con esta configuración, puede usar oyentes HTTPS en el equilibrador de carga de aplicación para interrumpir el tráfico TLS.
-
En Acción predeterminada, seleccione el grupo de destino que creó en el paso anterior.
-
(Opcional) Elija Agregar etiqueta del oyente e introduzca una clave de etiqueta y un valor de etiqueta.
-
Etiquetas del equilibrador de carga
(Opcional) Amplíe Etiquetas del equilibrador de carga. Elija Agregar nueva etiqueta e introduzca una clave de etiqueta y un valor de etiqueta. Para obtener más información, consulte Etiquetas.
-
Resumen
Revise la configuración y seleccione Crear equilibrador de carga.
- AWS CLI
-
Para crear el equilibrador de carga de red
Utilice el comando create-load-balancer. Recomendamos que utilice las mismas zonas de disponibilidad que están habilitadas para el equilibrador de carga de aplicaciones.
aws elbv2 create-load-balancer \
--name my-load-balancer \
--type network \
--scheme internal \
--subnets subnet-1234567890abcdef0 subnet-0abcdef1234567890 \
--security-groups sg-1111222233334444
Para agregar un oyente TCP
Utilice el comando create-listener para agregar un oyente TCP. Solo los oyentes TCP pueden reenviar tráfico a un equilibrador de carga de aplicaciones. En la acción predeterminada, utilice el grupo de destino que creó en el paso anterior.
aws elbv2 create-listener \
--load-balancer-arn load-balancer-arn \
--protocol TCP \
--port 80 \
--default-actions Type=forward,TargetGroupArn=target-group-arn
- CloudFormation
-
Para crear el equilibrador de carga de red
Defina un recurso de tipo AWS::ElasticLoadBalancingV2::LoadBalancer y un recurso de tipo AWS::ElasticLoadBalancingV2::Listener. Solo los oyentes TCP pueden reenviar tráfico a un equilibrador de carga de aplicaciones. En la acción predeterminada, utilice el grupo de destino que creó en el paso anterior.
Resources:
myLoadBalancer:
Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer'
Properties:
Name: my-load-balancer
Type: network
Scheme: internal
Subnets:
- !Ref subnet-AZ1
- !Ref subnet-AZ2
SecurityGroups:
- !Ref mySecurityGroup
myTCPListener:
Type: 'AWS::ElasticLoadBalancingV2::Listener'
Properties:
LoadBalancerArn: !Ref myLoadBalancer
Protocol: TCP
Port: 80
DefaultActions:
- Type: forward
TargetGroupArn: !Ref myTargetGroup
Paso 3: (opcional) crear un servicio de punto de conexión de VPC
Para usar el equilibrador de carga de red que configuró en el paso anterior como punto de conexión para la conectividad privada, puede habilitar AWS PrivateLink. Con esto se establece una conexión privada a su equilibrador de carga como un servicio de punto de conexión.
Para crear un servicio de punto de conexión de VPC mediante el equilibrador de carga de red
-
En el panel de navegación, seleccione Load Balancers.
-
Seleccione el nombre del equilibrador de carga de red para abrir la página de detalles.
-
En la pestaña Integraciones, expanda Servicios de punto de conexión de VPC (AWS PrivateLink).
-
Elija Crear servicios de punto de conexión para abrir la página Servicios de punto de conexión. Para ver los pasos restantes, consulte Crear un servicio de punto de conexión en la Guía AWS PrivateLink.