Mi compañero y yo sólo han puesto en práctica ELB en una VPC con 2 subredes privadas en diferentes zonas de disponibilidad. La razón por la que obtiene tiempos de espera es que por cada subred que agrega al equilibrador de carga, obtiene una dirección IP externa. (prueba 'dig elb-dns-name-here' y verás varias direcciones IP). Si una de estas direcciones IP asigna una subred privada, se agotó el tiempo de espera. La IP que se mapea en su subred pública funcionará. Debido a que DNS puede darle cualquiera de las direcciones IP, a veces funciona, a veces agota el tiempo.
Después de ir y venir con Amazon, descubrimos que el ELB solo debe colocarse en subredes 'públicas', es decir, subredes que tienen una ruta hacia la puerta de enlace de Internet. Queríamos mantener nuestros servidores web en nuestras subredes privadas, pero permitimos que ELB les hable. Para resolver esto, tuvimos que asegurarnos de tener una subred pública correspondiente para cada zona de disponibilidad en la que teníamos subredes privadas. Luego agregamos al ELB, las subredes públicas para cada zona de disponibilidad.
Al principio, esto no parecía funcionar, pero después de probar todo, recreamos el ELB y todo funcionó como debería. Creo que esto es un error, o que el ELB estaba en un estado extraño debido a tantos cambios.
aquí es más o menos lo que hicimos:
- WebServer-1 se está ejecutando en PrivateSubnet-1 en zona de disponibilidad nos-este-1b con el grupo de seguridad llamado servidor web.
- WebServer-2 se está ejecutando en PrivateSubnet-2 en la zona de disponibilidad us-east-1c con un grupo de seguridad llamado web-server.
- Creado una subred pública en la zona us-east-1b, lo llamaremos PublicSubnet-1. Nos aseguramos de asociar la tabla de enrutamiento que incluye la ruta a Internet Gateway (ig-xxxxx) con esta nueva subred. (Si usó el asistente para crear una VPC pública/privada, esta ruta ya existe.)
- Creó una subred pública en la zona us-east-1c, la llamaremos PublicSubnet-2. Nos aseguramos de asociar la tabla de enrutamiento que incluye la ruta a Internet Gateway (ig-xxxxx) con esta nueva subred. (Si usó el asistente para crear una VPC pública/privada, esta ruta ya existe.)
- Creó una nueva ELB, añadiéndole PublicSubnet-1 y PublicSubnet-2 (no PrivateSubnet-X). Además, eligió las instancias para ejecutar en el ELB, en este caso WebServer-1 y WebServer-2. Se aseguró de asignar un grupo de seguridad que permite el puerto entrante 80 y 443. Llamemos a este grupo elb-group.
- En el grupo del servidor web, permita el tráfico desde el puerto 80 y 443 desde el grupo-elb.
Espero que ayude!
Sí, llegamos a la misma conclusión, me olvidé de actualizar esto. Gracias por la respuesta :) –
Esta es una buena fuente de información relacionada: https://forums.aws.amazon.com/thread.jspa?messageID=453594 –
Lamento tener solo un voto a favor. ¡Gracias! Estaba golpeando mi cabeza contra la pared durante las últimas 2 horas tratando de resolver esto. – Cfreak