yml virginia route manager elastic ec2 east configurar certificados certificado cert aws ssl amazon-web-services amazon-ec2 load-balancing elastic-beanstalk

ssl - virginia - Entorno AWS Elastic Beanstalk con mĂșltiples Load Balancers



ssl amazon ec2 (5)

Tengo la siguiente situación: tengo 1 aplicación Rails que tiene 2 dominios, cada uno de estos dominios tiene subdominios múltiples / dinámicos. Esta aplicación está en AWS usando Elastic Beanstalk con equilibrio de carga.

Lo que necesito es que esos 2 dominios que apuntan a mi aplicación Rails solo para trabajar bajo SLL en el puerto 443.

Pero dado que Elastic Beanstalk solo tiene un equilibrador de carga, solo puedo usar un único certificado SSL en el puerto 433 :( Usar un certificado SLG UCC no será la solución porque necesito que cada certificado de dominio sea comodín, por lo que los subdominios dinámicos también trabajo.

¿Alguna idea sobre cómo hacer que múltiples equilibradores de carga jueguen bien con un entorno Elastic Beanstalk?

Mejor.


Es difícil con Elastic Beanstalk, ya que tienen una forma sencilla de implementar su aplicación y si no está en sus opciones, entonces tiene que "piratearla" o simplemente usar una solución completamente diferente usando EC2 o servidores de nube simple.

Una cosa que puede intentar es crear otro ELB con el certificado del segundo dominio (y subdominios) y apuntarlo a su instancia Elastic Beanstalk. Si vas a la consola ELB deberías poder ver el ELB para el primer dominio. Luego, puede crear su segundo dominio basado en el primer dominio.

Espero eso ayude.


Para agregar múltiples Elastic Load Balancers (ELB) a una aplicación Elastic Beanstalk (EB), debe agregar el ELB adicional al grupo de autoescalamiento de la aplicación EB.

En la línea de comando

La forma más fácil de lograr esto es a través de AWS CLI ( https://aws.amazon.com/cli/ ):

aws autoscaling attach-load-balancers --auto-scaling-group-name <SG_NAME> --load-balancer-names <ELB_NAME>

En la consola de AWS

Por supuesto, esto también se puede hacer en AWS Console:

  1. Vaya a EC2 > Escalado automático > Grupos de escala automática
  2. seleccione el grupo al que desea agregar elb
  3. Seleccione la pestaña Detalles
  4. Editar-Botón en la parte superior derecha
  5. Use la función Autocompletar en el campo Load Balancers para agregar su balanceador de carga
  6. Salvar

Para su comodidad, puede ver dónde debe hacer clic para los 5 pasos (¡no olvide guardar!)

Para mí, esto también funciona en grupos de autoescala generados por eb (Región: eu-central-1).

Esto podría no haber estado disponible en el momento de la pregunta, pero es ahora.


Creo que la mejor solución para su problema es tener múltiples dominios en el mismo certificado SSL y luego asignar ese certificado a su entorno ELB.

(puede tener comodines, tal vez eso no estaba disponible en el momento en que se hizo la pregunta)

No necesita balanceadores de carga adicionales.


Esto funcionó para mí,

Primero, crea el balanceador de carga

aws elb create-load-balancer --load-balancer-name my-load-balancer --listeners "Protocol=HTTP,LoadBalancerPort=80,InstanceProtocol=HTTP,InstancePort=80" "Protocol=HTTPS,LoadBalancerPort=443,InstanceProtocol=HTTP,InstancePort=80,SSLCertificateId=arn-of-certificate" --subnets eb-subnet-of-primary-elb --security-groups sg-of-primary-elb

A continuación, conecte el equilibrador de carga al grupo de autoescalamiento primario del entorno EB

aws autoscaling attach-load-balancers --auto-scaling-group-name asg-name-of-primary-asg-in-eb --load-balancer-names my-load-balancer


Una cosa más a tener en cuenta es que las instancias creadas por EBS deben permitir que su ELB personalizado les hable.

Debe crear una regla INBOUND en su grupo de seguridad creado automáticamente por EBS (con la descripción SecurityGroup for ElasticBeanstalk environment ) para permitir el acceso TCP: 80. Tenía mis ELB personalizados en un grupo de seguridad diferente, así que especifiqué esa ID de sg - **** como fuente.