Amazon CloudFormation: Como obter o IP privado de um ELB para uma sub-rede específica?

2

TL; DR - É possível que um modelo do CloudFormation insira o endereço IP interno específico da sub-rede de um ELB específico no UserData de uma instância dentro dessa sub-rede?

Temos uma frota de servidores da web EC2 em uma Amazon VPC com seis sub-redes, uma privada e outra pública em cada um dos três AZs no EU-West-1. Todos os servidores estão configurados com o CloudFormation.

Gostaríamos de configurar o mod_rpaf do Apache para registrar o cabeçalho X-Forwarded-For (podemos alterar o LogFormat, mas isso não se traduz facilmente em logs de erros do PHP ou do Apache; o RPAF é a solução mais interessante para nós).

Até onde eu sei, a maneira como um ELB é arquitetado significa que ele tem um 'pé' em cada um de seus AZs configurados, e isso pode mudar se o ELB for derrubado ou recriado.

Parece que a versão do mod_rpaf nos repositórios do Ubuntu 12.04 não foi atualizada para permitir a notação CIDR para a diretiva ProxyIPS e, em teoria, o endereço IP do ELB pode ser qualquer coisa dentro de nossas três sub-redes públicas.

A solução restante é configurar o módulo via Puppet, usando hieradados gerados pelo UserData da instância. Eu sei que até certo ponto você pode interpolar referências e variáveis dentro de modelos do CloudFormation, mas não tenho certeza se é possível dizer efetivamente "Dê-me o endereço IP privado para este ELB nesta sub-rede" . / p>     

por Craig Watson 30.04.2014 / 22:57

4 respostas

3

Infelizmente não. Fui para trás e para frente com nosso engenheiro de soluções da AWS e atualmente não há como consultar os IPs internos de um ELB. No momento, estou raspando arquivos de log para encontrá-los.

    
por 01.05.2014 / 08:14
26

Nós tivemos o mesmo problema, abaixo do comando que eu uso para obter IP interno do ELB "LAMP-Prod"

aws ec2 describe-network-interfaces --filters "Name=description,Values=ELB LAMP-Prod" |grep -wE 'Description|PrivateIpAddress'
    
por 16.08.2014 / 01:44
7

Se você deseja obter o endereço IP privado de um elb, verifique as interfaces de rede em rede e segurança em seu painel ec2. Lá você pode encontrar tudo que eu penso

    
por 24.07.2017 / 19:51
6

Versão de análise do JQ, apenas FYI.

aws ec2 describe-network-interfaces --filters "Name=description,Values=ELB your-elb-name" --output json | jq ".NetworkInterfaces[].PrivateIpAddresses[].PrivateIpAddress"

    
por 04.01.2017 / 16:18