tldr: Que dois-je faire pour utiliser une adresse IP élastique dans ma configuration de réplicas MongoDB?Comment configurer le réplicaset mongodb en utilisant des adresses IP élastiques dans EC2?
Nous avons une réplique MongoDB à trois nœuds exécutée sur EC2. Une des instances de l'ensemble a été retirée par AWS hier, et nous avons donc été contraints d'arrêter et de redémarrer l'instance EC2.
Malheureusement, lorsque nous avons configuré le réplicaset, nous étions relativement nouveaux dans AWS et nous ne savions pas que l'adresse DNS publique des instances pouvait être modifiée. Nous avons utilisé le DNS public de chaque instance dans la configuration de réplicaset et dans toutes les chaînes de connexion d'application de notre code. Après avoir lu sur le sujet hier, j'ai essayé de remettre le noeud en ligne en assignant une adresse IP élastique à l'instance et en changeant la configuration de réplicaset pour utiliser cette adresse IP. Après une certaine douleur, j'ai réussi à faire fonctionner les deux autres nœuds avec cette configuration, mais l'instance avec l'IP élastique a refusé de rejoindre la réplique, et l'erreur dans mongod.log dit:
[rsStart] replSet info self not present in the repl set configuration
Après encore plus lecture, j'ai trouvé que je n'aurais pas dû utiliser l'adresse IP réelle élastique dans la config, mais plutôt le nom DNS public de l'IP élastique. Ma question est, avant que je prenne tout hors ligne encore pour essayer ce changement, que devrais-je exactement devoir faire pour employer l'IP élastique dans la configuration de réplicaset? J'ai trouvé quelques informations sur cette page 10Gen: http://docs.mongodb.org/ecosystem/platforms/amazon-ec2/#communication-across-regions qui m'ont fait penser que je devrais jouer avec le nom d'hôte de l'instance et/ou le fichier hosts, mais je n'ai pas réussi à trouver quelqu'un décrivant mon scénario exact.
Des pensées?
Cela résout également à l'IP privée interne de sorte que vous n'êtes pas facturé pour le trafic externe. – Zambonilli