Je rencontre des difficultés à accéder à une instance MySQL RDS.
J'essaie de me connecter à l'instance RDS depuis une instance EC2. Les deux instances RDS et EC2 sont toutes deux contenues dans le même VPC, myVPC. J'ai confirmé cela en vérifiant que le VPC répertorié sous l'instance RDS et l'instance RC2 correspondent.
La plupart des questions sur ce problème que j'ai trouvées tournaient autour des groupes de sécurité. De nombreux utilisateurs rencontraient des difficultés et leur problème était résolu en s'assurant que le groupe de sécurité VPC associé à l'instance RDS était le même que celui de leur instance EC2. Dans mon cas, les deux instances sont sur le même VPC et utilisent le même groupe de sécurité. Dans ce groupe de sécurité, j'ai une règle qui permet tout le trafic entrant sur l'ensemble de la plage d'adresses IP de mon VPC (par exemple, 172.35.0.0/16). Dans une tentative de faire fonctionner, j'ai permis TOUT le trafic sur tous les ports depuis toutes les adresses IP pour ce groupe de sécurité. Cela n'a toujours pas fonctionné.
Après lecture de la documentation, il semble qu'il faille s'assurer que vos sous-réseaux sont associés à la même table de routage utilisée par votre VPC. J'ai fait cela en allant à la table de routage associée à tous les sous-réseaux de mon VPC avec cette table de routage.
J'ai également essayé avec et sans une IP élastique. Je parviens à me connecter à mon instance EC2 avec l'adresse IP élastique.
Je réalise que cette question est posée assez souvent. Jusqu'à présent, je n'ai pas encore trouvé de solution à mon problème.
Modifié : Ajoute plus de détails sur les paramètres de sécurité L'instance ec2 et RDS utilisent le même groupe de sécurité. Dans ce groupe de sécurité se trouve une ligne qui indique quelque chose comme
MYSQL TCP 3306 172.35.0.0/16
Ma plage CIDR
J'ai ajouté
MYSQL TCP 3306 172.35.0.1/32
L'adresse IP privée de mon instance ec2
Aucune des solutions ci-dessus n'a fonctionné.
La solution qui a fonctionné était de modifier une ligne de mes paramètres de liste de contrôle d'accès réseau de
1 MySQL(3306) TCP(6) 3306 172.35.0.1/32 AUTORISER
à
1 TOUT LE TRAFIC TOUS TOUS 0.0.0.0/32 AUTORISER
Donc, mon problème a été résolu, mais maintenant j'ai une autre question. Comment puis-je éviter d'avoir le port 3306 ouvert à toutes les connexions entrantes? Je pourrais poser cette question comme une nouvelle question et la lier ici.