Necesito una dirección IP estática para mi equilibrador de carga de aplicación. Quiero registrar el equilibrador de carga de aplicación tras un equilibrador de carga de red.
Descripción breve
No puedes asignar una dirección IP estática a un equilibrador de carga de aplicación. Si tu equilibrador de carga de aplicación requiere una dirección IP estática, entonces se recomienda registrarla detrás de un equilibrador de carga de red. La dirección IP estática que se asigna a un equilibrador de carga de red no cambia y proporciona un punto de entrada fijo para el equilibrador de carga de aplicación.
Nota: En la siguiente solución se utiliza la nueva experiencia de inicio en la consola de Amazon Elastic Compute Cloud (Amazon EC2). Activa esta característica en la consola de Amazon EC2 para completar los siguientes pasos de resolución.
Resolución
Consola de Amazon EC2
Utiliza la consola de Amazon EC2 para crear nuevos grupos objetivo y registrar tu equilibrador de carga de aplicación como objetivo. A continuación, crea y configura un equilibrador de carga de red para reenviar el tráfico a tu equilibrador de carga de aplicación.
Creación de nuevos grupos objetivo para el tráfico TCP 80 y TCP 443 y registro del equilibrador de carga de aplicación como objetivo
Para crear nuevos grupos objetivo y registrar objetivos para las instancias de EC2, sigue estos pasos:
- Abre la consola de Amazon EC2.
- En el panel de navegación, amplía Equilibrio de carga y, a continuación, selecciona Grupos objetivo.
- Selecciona Crear un grupo objetivo.
- En Elegir un tipo de objetivo, selecciona Equilibrador de carga de aplicación.
- En Nombre del grupo objetivo, introduce un nombre para el grupo objetivo.
- En Protocolo, selecciona TLS. En Puerto, elige 80 para el tráfico HTTP.
- En VPC, selecciona la nube virtual privada (VPC) para el equilibrador de carga de aplicación.
- En Protocolo de comprobación de estado, selecciona HTTP o HTTPS para tu equilibrador de carga de aplicación, que devuelve un estado HTTP 200-399.
- Selecciona Siguiente.
- En Equilibrador de carga de aplicación, selecciona tu equilibrador de carga de aplicación.
- Selecciona Crear un grupo objetivo.
- Repite los pasos 3 a 11 para crear un grupo objetivo adicional. Cuando repitas el paso 6, elige el protocolo TCP y el puerto 443 para crear otro grupo objetivo para el tráfico HTTPS.
Creación y configuración de un equilibrador de carga de red para reenviar el tráfico HTTP y HTTPS a tu equilibrador de carga de aplicación
Para crear y configurar un equilibrador de carga de red para que reenvíe el tráfico HTTP y HTTPS a tu equilibrador de carga de aplicación, sigue estos pasos:
- Abre la consola de Amazon EC2.
- En el panel de navegación, amplía Equilibrio de carga y, a continuación, selecciona Equilibradores de carga.
- Elige Crear un equilibrador de carga.
- En Tipos de equilibradores de carga, selecciona Equilibrador de carga de red y, a continuación, Crear.
- En Nombre de equilibrador de carga, introduce un nombre para el equilibrador de carga de red.
- En Esquema, elige Orientado a Internet o Interno. Puedes utilizar un equilibrador de carga de aplicación interno con un equilibrador de carga de red orientado a Internet.
- En Tipo de dirección IP, elige IPv4.
- En VPC, selecciona tu VPC.
- En Asignaciones, elige una o varias zonas de disponibilidad y subredes. Elige subredes privadas para equilibradores de carga internos o subredes públicas para equilibradores de carga orientados a Internet.
- En Dirección IPv4, elige Asignado por AWS o Uso de una dirección IP elástica.
- En Protocolo, selecciona TLS. En Puerto, elige 80 para el tráfico HTTP.
- En Acción predeterminada, elige el grupo objetivo que contenga tu equilibrador de carga de aplicación como objetivo registrado.
- Elige Agregar agente de escucha y, a continuación, repite los pasos 11-12. Elige el protocolo TCP y el puerto 443 con una acción predeterminada que reenvíe el tráfico al grupo objetivo TCP 443 para tu equilibrador de carga de aplicación.
- Selecciona Crear un equilibrador de carga.
- Prueba el equilibrador de carga.
Nota: Para usar las redirecciones de HTTP a HTTPS en tu equilibrador de carga de aplicación con esta configuración, debes crear dos grupos objetivo. Crea un grupo objetivo de equilibrador de carga de aplicación para TCP 80 y otro para TCP 443.
Configura los grupos de seguridad y las listas de control de acceso de la red (ACL de la red) de tu equilibrador de carga de aplicación de modo que se permitan las comprobaciones de estado desde la dirección IP privada del equilibrador de carga de red.
AWS CLI
Nota: Si se muestran errores al ejecutar comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), consulta Solución de errores de la AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.
Para usar la AWS CLI para registrar un equilibrador de carga de aplicación tras un equilibrador de carga de red, sigue estos pasos:
- Crea un nuevo grupo objetivo y utiliza el tipo de objetivo alb:
aws elbv2 create-target-group \
--name <name> \
--protocol TCP \
--port <port> \
--target-type alb \
--vpc-id <vpc_id>
Nota: Sustituye name por el nombre de tu grupo objetivo, port por el número del puerto y vpc_id por el ID de la VPC.
- Registra el equilibrador de carga de aplicación con el grupo objetivo:
aws elbv2 register-targets \
--target-group-arn <tg_arn from previous command> \
--targets Id=<alb_arn>
Nota: Sustituye tg_arn from previous command por el ARN de tu grupo objetivo y alb_arn por el ARN del equilibrador de carga de aplicación.
- Crea un equilibrador de carga de red:
aws elbv2 create-load-balancer \
--name <nlb name> \
--type network \
--scheme internal \
--subnets <subnet_ids>
Nota: Sustituye nlb_name por el nombre de tu equilibrador de carga de red y subnet_ids por los ID de tus subredes.
- Crea un agente de escucha:
aws elbv2 create-listener --load-balancer-arn ${nlb1_arn} \
--protocol TCP --port <port> \
--default-actions Type=forward,TargetGroupArn=<target group>
Información relacionada
Uso de AWS Lambda para activar direcciones IP estáticas para equilibradores de carga de aplicación
El equilibrador de carga de aplicación ahora activa AWS PrivateLink y las direcciones IP estáticas mediante la integración directa con el equilibrador de carga de red