virginia tipos pricing precios elb ec2 east carga balancer balanceador aws application amazon-web-services nginx load-balancing spdy

amazon-web-services - pricing - tipos de elb



¿Alguien ha logrado que SPDY trabaje detrás de Amazon ELB? (2)

Hacer SSL -> SSL no envía todos los paquetes TCP a su servidor web. AWS descifra los paquetes usando el certificado y lo vuelve a cifrar. Su backend solo recibe los paquetes modificados. La opción viable es cambiar los protocolos a TCP, pero necesitará el parche proxy nginx para los encabezados http o para que funcione mejor.

También tengo el mismo problema y estoy esperando que AWS habilite la negociación NPN en ELB o que nginx agregue el parche accept-proxy a su módulo.

Hemos estado usando nginx compilado con el módulo spdy desde hace algún tiempo y, a pesar de ser solo el borrador 2 de las especificaciones, estamos bastante satisfechos con su rendimiento.

Sin embargo, ahora tenemos la necesidad de escalar horizontalmente y hemos puesto nuestras instancias EC2 detrás de Elastic Load Balancer.

Como ELB no es compatible con el protocolo NPN, hemos configurado a los oyentes para lo siguiente:

SSL 443 -> SSL 443

También hemos habilitado el nuevo protocolo proxy como se describe aquí:

http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/enable-proxy-protocol.html

Todo funciona completamente bien con esta configuración. Nuestra aplicación tiene un balance de carga exitoso en todas nuestras instancias.

Sin embargo, al ejecutar http://spdycheck.org/ , informa que SPDY no está habilitado. Sin embargo, si señalo spdycheck a la IP elástica de una sola instancia, informa correctamente que SPDY está habilitado.

Cualquier ayuda sería muy apreciada.


Acabamos de lanzarlo anoche en https://www.ritani.com . Necesitarás una versión de nginx que admita spdy y proxy_protocol. Estamos en 1.6.2.

A través de AWS CLI, agregue y adjunte proxy_protocol a su ELB. http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/enable-proxy-protocol.html#enable-proxy-protocol-cli

A través de la interfaz de usuario web de AWS para ese ELB, elimine los 443 oyentes. Agregue un nuevo oyente como TCP 443 -> TCP 443.

En tu bloque de servidor de configuración nginx:

listen 443 ssl spdy proxy_protocol;

add_header Alternate-Protocol 443:npn-spdy/3;

all the standard ssl directives...

Para obtener el grapado ocsp, tuve que usar tres certs. La forma estándar de concatenar my.crt y my.intermediate.crt no funcionó. Tuve que separarlos de la siguiente manera.

ssl_certificate /etc/nginx/ssl/my.crt;

ssl_certificate_key /etc/nginx/ssl/my.private.key;

ssl_trusted_certificate /etc/nginx/ssl/my.intermediate.crt;

Por último, intercambie las instancias de $remote_addr con $proxy_protocol_addr . $ remote_addr ahora es elb y $ proxy_protocol_addr es la IP del cliente remoto.