Por que os IPs Elastic do Amazon EC2 são incentivados a serem usados com um registro CNAME em vez de um registro “A”?

7

Estou configurando um servidor no EC2 que será usado por pessoas que ficarão assustadas quando virem o ec2-111-111-111-111.compute-1.amazonaws.com na barra de URL. Eu sei que isso seria resolvido usando um registro A em vez de um CNAME, mas a documentação da Amazon diz para usar um CNAME.

O que acontece se eu usar um registro A? Eu vi alguns tutoriais na web dizendo, mas também preciso que meu site seja confiável.

O site está sendo executado usando apenas uma instância e provavelmente será executado com apenas uma instância, por isso não acho que é importante ter várias instâncias conversando entre si.

    
por Canuk 05.02.2010 / 02:00

4 respostas

13

Versão simplificada: os registros apontam para endereços IP. O CNAME aponta para outros registros A.

Você pode usar um registro A, mas para isso você deve ter um endereço IP altamente disponível para sua instância do EC2. A Amazon chama esse produto de "endereços IP elásticos".

Se você configurar um CNAME para um registro A que a Amazon gerencia, a Amazon terá controle sobre uma camada de indireção. Por exemplo, após uma falha no servidor, a Amazon poderia usar isso para alterar o registro A para um novo endereço IP. Dessa forma, a Amazon poderia fazer o serviço funcionar novamente e você não precisaria alterar nada.

Em geral, é uma boa prática usar duas entradas DNS, um registro A para o servidor específico e o CNAME para os serviços fornecidos, como "www". Dessa forma, você tem uma separação clara entre hardware e serviços e isso facilita a administração em muitos casos.

Então, se você não está pagando por "Elastic IP Addresses", então você deve usar um CNAME para o registro A da Amazon configurado para você, ou seja, um CNAME para "www.seudominio.com.br" apontando para "ec2- 111-111-111-111.compute-1.amazonaws.com. ".

    
por 05.02.2010 / 03:06
2

Eles nunca verão o ec2-111-111-111-111.compute-1.amazonaws.com com um registro CNAME. Se você acessar seu domínio CNAMEed redireciona para o URL amazonaws.com, não é por ser um CNAME, é algo que seu aplicativo ou servidor da Web está fazendo.

    
por 05.02.2010 / 02:39
2

Os nomes dos hosts ec2-*.amazonaws.com são resolvidos para endereços IP diferentes , dependendo de você estar resolvendo-os externamente da Internet ou internamente de outra instância do EC2.

Isso significa que, se você tiver dois servidores EC2, digamos, um servidor de banco de dados e um servidor da Web, seu servidor da Web verá o servidor de banco de dados em um endereço IP 10.xxx interno, enquanto do mundo externo, o servidor da web em um endereço IP regular não privado. (É claro que você não desejaria que um servidor de banco de dados fosse visível do mundo externo, mas esse é apenas um exemplo prático.)

Se você usa um endereço IP elástico, você tem um endereço IP permanente conhecido e deve ser bom usar um registro A para apontar para ele. Se você não tem um Elastic IP (e porque não, eles são gratuitos), parece que você gostaria de usar o CNAME caso a Amazon altere seu endereço IP.

Mas se você tiver vários servidores, eu continuo com o CNAME para que você obtenha a resolução mágica interna / externa do endereço IP.

    
por 14.10.2010 / 20:15
1

O motivo para usar um registro CNAME é para que o site seja acessível de dentro e de fora da ec2.

Por exemplo, receba ping. Se você executar o ping c2-111-111-111-111.compute-1.amazonaws.com externamente, ele será resolvido para 111.111.111.111, mas internamente para um endereço 10.0.0.0/8. No entanto, se você fizer ping 111.111.111.111, ele não estará disponível internamente.

    
por 14.10.2010 / 18:57