Comment lier le domaine godaddy à l'environnement AWS Elastic Beanstalk?

102

Je rencontre ce problème en essayant de lier mon domaine Godaddy à une instance AWS Elastic Beanstalk . J'ai trouvé beaucoup de documentation sur la façon de lier une instance EC2 avec un domaine sur Godaddy mais pas pour l'instance Elastic Beanstalk. Alors je me suis retrouvé avec cette URL:www.MY_SITE.elasticbeanstalk.com

Voici ce que j'ai fait pour une instance EC2:

  1. Je mis à jour les Nameservers sur mon domaine GoDaddy avec ceux de ma route 53 Zone Hosted .
  2. J'ai créé une nouvelle adresse IP Elastic sur la console EC2.
  3. Je suis retourné à Godaddy et j'ai mis à jour le champ DNS A @ de leur gestionnaire DNS, avec celui d'EC2 Elastic IP.
  4. Vous devez normalement attendre 1h à 48h et cela devrait fonctionner.

Comment puis-je faire de même pour une instance AWS Elastic Beanstalk, pas une instance EC2? Je ne peux pas voir l'instance que j'ai créée à partir de ma console EC2 afin de la lier à une adresse IP Elastic.

J'espère que c'est assez clair. Une aide?

Bob Bill
la source
Vous confondez diverses pièces du puzzle et il serait plus facile pour nous de vous aider si vous pouviez nous indiquer votre nom de domaine.
jamieb
Avez-vous une adresse IP ou simplement l'URL URL: www.MY_SITE.elasticbeanstalk.com pour votre instance Elastic Beanstalk?
Mike_GoDaddy
Article sur l'utilisation des noms de domaine personnalisés avec Elastic Beanstalk docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/…
Alexey

Réponses:

103

Pas besoin de créer un CNAME ou de faire un transfert - c'est mauvais du point de vue du référencement et non recommandé par Amazon. Même vous ne devriez pas diriger un enregistrement vers IP directement - cela causera beaucoup de problèmes à l'avenir car l'IP peut être modifiée à tout moment.

Le moyen le plus élégant consiste à migrer le service DNS de GoDaddy vers Route 53 . Vous serez toujours avec GoDaddy, mais la gestion des demandes pour votre site sera du côté d'Amazon.

Voici ce que tu dois faire:

  1. Créez une nouvelle zone hébergée pour votre site dans la console Route 53: entrez la description de l'image ici

  2. Ouvrez le nom de domaine nouvellement ajouté, recherchez les enregistrements NS et copiez les serveurs: entrez la description de l'image ici

  3. Dans le gestionnaire de domaine de GoDaddy, exportez les enregistrements via "Exporter le fichier de zone (Windows)".

  4. Importez ces enregistrements dans Route 53 (bouton "Importer un fichier de zone").

  5. Dans GoDaddy Domain Manager, définissez des serveurs de noms DNS personnalisés, obtenus à la 2ème étape: entrez la description de l'image ici

La migration peut prendre un certain temps (voire des jours). Vous pouvez désormais lier votre domaine à votre site Elastic Beanstalk. Pour ce faire, sélectionnez / créez un type d'enregistrement A approprié dans Route 53 et définissez l'alias pour celui-ci: entrez la description de l'image ici

J'espère que ça aide.

Vsevolod Krasnov
la source
1
Merci Monsieur. A fonctionné comme un charme.
An Illusion
4
Il y a un . à chaque nom dans les 4 serveurs de noms, vous avez mis en évidence l'image dans la boîte rouge, fait ça .uk '.' doivent également être ajoutés, sinon, je peux ajouter les serveurs de noms, mais s'ils sont ajoutés, j'obtiens des caractères invalides, désolé pour cette requête stupide mais je suis nouveau pour cette configuration. J'ai ajouté au passage les 4 serveurs de noms comme indiqué, mais j'obtiens toujours une erreur de site Web introuvable, comment déboguer car je peux cingler le www.mysitename.com
Vicky Dhas
3
@VickyDhas Cela fait un moment que je ne l'ai pas fait, mais je pense que vous n'avez pas besoin d'un point à la fin du nom du serveur de noms (ie ns-1783.awsdns-30.co.uk)
Vsevolod Krasnov
2
Pour ceux qui essaient cela pour la première fois: assurez-vous d'actualiser votre table de zone hébergée après avoir importé les enregistrements DNS. Les enregistrements n'apparaissent pas automatiquement comme vous le pensez. Cliquez ensuite sur l'enregistrement A (probablement la ligne du haut) et créez l'alias pour cet enregistrement comme décrit ci-dessus. C'est certainement la manière de procéder. Si vous travaillez avec un plus petit nombre d'enregistrements, ces changements se propagent assez rapidement.
jbcaveman
2
C'est une excellente réponse si vous travaillez avec un nouveau domaine inutilisé, mais pas génial si vous pointez déjà vers des endroits via GoDaddy. Dans mon cas, j'ai déjà le sous-domaine www (et d'autres e-mails liés) pointant vers quelque chose via GoDaddy, mais je dois maintenant pointer un autre sous-domaine vers mon beanstalk élastique.
Svet Angelov
41

Voici ce que j'ai fait lorsque j'ai été confronté au problème de la liaison d'un domaine GoDaddy avec AWS ElasticBeanstalk.

Gestionnaire DNS:

  • Un enregistrement @ : 64.202.189.170 (c'est-à-dire l'adresse IP de transfert de GoDaddy btw)
  • Cname www : domaine AWS EB (par exemple awseb-xyz.us-east-1.elb.amazonaws.com)

Expéditeur:

  • Transférer le domaine vers www.example.com (transfert uniquement, sans masquage)
  • Transférer le sous-domaine vers le domaine AWS EB (par exemple awseb-xyz.us-east-1.elb.amazonaws.com) (avec masquage)

Afin d'accéder au site sans www (ex: http://example.com ), j'ai dû configurer la redirection du domaine vers le www cname. Ce www cname est ensuite transféré vers le domaine AWS EB (avec masquage afin de conserver www.example.com dans la barre d'adresse).

sitiveni
la source
1
vous ne pouvez pas ajouter cname pour le domaine, c'est uniquement pour le sous
1
Transférer la première puce Transférer le domaine à www.monsite.com (en avant uniquement, sans masquage)? www.monsite.com est-ce le domaine que vous avez acheté chez godaddy ou est-ce un lien EB?
Hrishikesh Sardar
1
Pour moi, j'ai dû changer l'enregistrement A @ : en 184.168.221.3.
Felix
1
Cette solution n'est pas efficace du point de vue du référencement. Voir ci-dessous ma réponse, basée sur la documentation d'Amazon.
Vsevolod Krasnov
1
Transférer à un CNAME est une mauvaise forme comme mentionné - et il n'y a vraiment aucune raison à cela. La Route 53 est la voie à suivre ... pour tout ce qui a du sens en ce qui concerne le haricot.
bshea
8

Vous devez ajouter un enregistrement CNAME à votre nom de domaine Godaddy qui correspond à www.yourGoDaddyDomain.com -> MY_SITE.elasticbeanstalk.com.

Cela dirigera les requêtes vers votre nom de domaine vers l'équilibreur de charge qui s'exécute dans votre environnement Elastic Beanstalk. Vous ne voulez pas acheminer votre nom de domaine vers un serveur spécifique (c'est-à-dire une adresse IP élastique), vous voulez qu'il aille vers l'équilibreur de charge et qui acheminera les requêtes vers vos serveurs. Étant donné que les équilibreurs de charge AWS n'utilisent pas d'adresses IP (ils utilisent des noms de domaine), vous ne souhaitez pas configurer un enregistrement A pour cela - un enregistrement CNAME mappe les noms de domaine aux noms de domaine.

Consultez la section "Ajout ou modification de CNAME" de la documentation GoDaddy pour savoir comment procéder.

jaminto
la source
6
vous ne pouvez pas ajouter cname pour le domaine, c'est seulement pour le sous
Dans Godaddy, lorsque le sous-domaine est ajouté à l'enregistrement cname pointant vers mysiteloadbalancer.com, cela a fonctionné :)
Beniston
Comment puis-je pointer mon domaine vers mon adresse IP Elastic via le DNS de Godaddy ... sans utiliser de zones hébergées dans le processus? .. PS - C'est coûteux
Divij Sehgal
Je n'utilise pas Elastic Beanstalk.
Divij Sehgal
2

Votre configuration route53 doit pointer vers l'équilibreur de charge, pas l'instance ec2

wjin
la source