Como vincular o domínio godaddy ao ambiente AWS Elastic Beanstalk?

102

Estou tendo esse problema ao tentar vincular meu domínio Godaddy a uma instância do AWS Elastic Beanstalk . Encontrei muita documentação sobre como vincular uma instância EC2 a um domínio no Godaddy, mas não para a instância Elastic Beanstalk. Então acabei com este URL:www.MY_SITE.elasticbeanstalk.com

Aqui está o que eu fiz para uma instância EC2:

  1. Eu atualizei os nameservers em meu domínio Godaddy com os da minha Route 53 Hosted Zone .
  2. Criei um novo Elastic IP no console EC2.
  3. Voltei para o Godaddy e atualizei o campo DNS A @ do Gerenciador de DNS deles, com o EC2 Elastic IP.
  4. Normalmente você tem que esperar 1h a 48h e deve funcionar.

Como posso fazer o mesmo para uma instância do AWS Elastic Beanstalk, não EC2? Não consigo ver a instância que criei em meu console EC2 para vinculá-la a um Elastic IP.

Espero que esteja claro o suficiente .. Alguma ajuda?

Bob Bill
fonte
Você está confundindo várias peças do quebra-cabeça e seria mais fácil para nós ajudar se você pudesse nos dizer seu nome de domínio.
jamieb
Você tem um endereço IP ou apenas o URL URL: www.MY_SITE.elasticbeanstalk.com para sua instância do Elastic Beanstalk?
Mike_GoDaddy
Artigo sobre como usar nomes de domínio personalizados com Elastic Beanstalk docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/…
Alexey

Respostas:

103

Não há necessidade de criar um CNAME ou fazer qualquer encaminhamento - isso é ruim do ponto de vista de SEO e não é recomendado pela Amazon. Mesmo você não deve apontar um registro para o IP diretamente - isso causará muitos problemas no futuro porque o IP pode ser alterado a qualquer momento.

A maneira mais elegante é migrar o serviço DNS do GoDaddy para o Route 53 . Você ainda estará com GoDaddy, mas lidar com as solicitações para o seu site estará do lado da Amazon.

Aqui está o que você precisa fazer:

  1. Crie uma nova zona hospedada para o seu site no console do Route 53: insira a descrição da imagem aqui

  2. Abra o nome de domínio recém-adicionado, encontre o registro NS e copie os servidores: insira a descrição da imagem aqui

  3. No Gerenciador de domínio do GoDaddy, exporte os registros via "Export Zone File (Windows)".

  4. Importe esses registros para o Route 53 (botão "Import Zone File").

  5. No Gerenciador de domínio do GoDaddy, defina servidores de nomes DNS personalizados, obtidos na 2ª etapa: insira a descrição da imagem aqui

A migração pode levar algum tempo (até dias). Agora você pode vincular seu domínio ao seu site Elastic Beanstalk. Para fazer isso, selecione / crie o tipo de registro A adequado no Route 53 e defina o Alias ​​para ele: insira a descrição da imagem aqui

Espero que ajude.

Vsevolod Krasnov
fonte
1
Obrigado senhor. Funcionou como um encanto.
An Illusion
4
existe um . em cada nome nos 4 nameservers que você destacou a imagem na caixa vermelha, faz isso .uk '.' também tem que ser adicionado, se não, então eu posso adicionar os servidores de nomes, mas se adicionados eu recebo caracteres inválidos, desculpe por esta pergunta estúpida, mas sou novo para esta configuração. Eu adicionei os 4 servidores de nomes conforme instruído, mas ainda recebo o erro de site não encontrado, como depurar, pois posso fazer ping em www.mysitename.com
Vicky Dhas
3
@VickyDhas Já faz um tempo desde que fiz isso, mas acho que você não precisa de um ponto no final do nome do servidor de nomes (ou seja ns-1783.awsdns-30.co.uk)
Vsevolod Krasnov
2
Para aqueles que tentam fazer isso pela primeira vez: certifique-se de atualizar sua tabela de zona hospedada após importar os registros DNS. Os registros não aparecem automaticamente como você pensa. Em seguida, clique no registro A (provavelmente a linha superior) e crie o alias para esse registro conforme descrito acima. Esta é definitivamente a maneira de fazer isso. Se você estiver trabalhando com um número menor de registros, essas alterações se propagam muito rapidamente.
jbcaveman
2
Essa é uma ótima resposta se você estiver trabalhando com um novo domínio não utilizado, mas não é ótima se você já estiver apontando para lugares através do GoDaddy. No meu caso, já tenho o subdomínio www (e outro relacionado a e-mail) apontando para algo por meio do GoDaddy, mas agora preciso apontar outro subdomínio para meu pé de feijão elástico.
Svet Angelov
41

Aqui está o que eu fiz quando estava enfrentando o problema de vincular um domínio GoDaddy ao AWS ElasticBeanstalk.

Gerenciador DNS:

  • Um registro @ : 64.202.189.170 (esse é o IP de encaminhamento do GoDaddy btw)
  • Cname www : domínio AWS EB (por exemplo, awseb-xyz.us-east-1.elb.amazonaws.com)

Encaminhamento:

  • Encaminhar domínio para www.example.com (encaminhar apenas, sem mascarar)
  • Encaminhar subdomínio para o domínio AWS EB (por exemplo, awseb-xyz.us-east-1.elb.amazonaws.com) (com mascaramento)

Para acessar o site sem www (ex: http://example.com ), tive que configurar o encaminhamento do domínio para o cname www. Este www cname é então encaminhado para o domínio AWS EB (com mascaramento para manter www.example.com na barra de endereço).

sitiveni
fonte
1
você não pode adicionar cname para o domínio, é apenas para o subdomínio
1
Inforwarding the first bullet point Forward Domain to www.mysite.com (forward only, sem masking)? www.mysite.com é o domínio que você comprou no godaddy ou é o link EB?
Hrishikesh Sardar
1
Para mim, tive que alterar o registro A @ : para 184.168.221.3.
Felix
1
Esta solução não é eficaz do ponto de vista de SEO. Veja abaixo minha resposta, com base na documentação da Amazon.
Vsevolod Krasnov
1
O encaminhamento para um CNAME é uma forma incorreta, conforme mencionado - e realmente não há razão para isso. A Rota 53 é o caminho a percorrer .. para qualquer coisa significativa em relação ao beanstalk.
bshea
8

Você deve adicionar um registro CNAME ao seu nome de domínio Godaddy que mapeie de www.yourGoDaddyDomain.com -> MY_SITE.elasticbeanstalk.com.

Isso direcionará as solicitações ao seu nome de domínio para o balanceador de carga que está sendo executado em seu ambiente de beanstalk elástico. Você não deseja rotear seu nome de domínio para um servidor específico (ou seja, um IP elástico), você deseja que ele vá para o balanceador de carga e isso encaminhará as solicitações para seu (s) servidor (es). Como os balanceadores de carga AWS não usam IPs (eles usam nomes de domínio), você não deseja configurar um registro A para isso - um registro CNAME mapeia nomes de domínio para nomes de domínio.

Consulte a seção "Adicionando ou editando CNAMEs" da documentação do GoDaddy para saber como fazer isso.

Jaminto
fonte
6
você não pode adicionar cname para o domínio, é apenas para o subdomínio
No Godaddy, quando o subdomínio é adicionado ao registro cname apontando para mysiteloadbalancer.com funcionou :)
Beniston
Como posso apontar meu domínio para meu Elastic IP por meio do DNS do Godaddy ... sem usar nenhuma zona hospedada no processo? .. PS - É caro
Divij Sehgal
Não estou usando o Elastic Beanstalk.
Divij Sehgal
2

A configuração do route53 deve apontar para o balanceador de carga, não para a instância ec2

wjin
fonte