3 votes

Erreur 2003 (HY000) lorsque j'essaie de connecter un serveur amazon rds à partir d'un serveur ec2

Je sais que je dois configurer le groupe de sécurité RDS pour autoriser la connexion depuis le groupe de sécurité EC2.

J'ai une instance EC2 qui fonctionne dans le groupe de sécurité par défaut. J'ai donc ajouté le groupe de sécurité EC2 au groupe de sécurité RDS DB. Lorsque j'essaie de me connecter à l'aide du client mysql à partir de mon instance EC2, je reçois l'erreur suivante :

ERROR 2003 (HY000): Can't connect to MySQL server on 'xxxx.xxxx.us-east-1.rds.amazonaws.com' (110)

La commande que j'ai utilisée est :

mysql -udbuser -p -hxxxx.xxxx.us-east-1.rds.amazonaws.com

J'ai trouvé ce message avec exactement le même problème que moi, mais personne ne répond.

https://forums.aws.amazon.com/message.jspa?messageID=328603

Je suis capable d'ajouter des règles CIDR/IP et cela fonctionne parfaitement depuis mon ordinateur portable. Cependant, j'ai vraiment besoin que mon instance ec2 soit connectée à mes rds. Merci d'avance pour toute aide.

5voto

Gorneman Points 11

J'ai résolu ce problème en ajoutant l'adresse IP publique de mon serveur EC2 à la politique par défaut du groupe de sécurité de la DB.

2 votes

Comment avez-vous fait ?

3voto

Dav.id Points 1266

Pour développer la réponse de Yuzhou, et répondre à la question d'Amit, vous pouvez créer un nouveau groupe de sécurité avec la plage IP/sous-réseau correspondante de votre ou vos instances EC2. Vous pouvez utiliser les adresses IP exactes, ou utiliser le(s) sous-réseau(x) de votre VPC comme plage.

Une fois créée, vous pouvez faire un clic droit sur votre instance RDS dans la console de gestion et sélectionner "Modifier". De là, vous pouvez modifier les groupes de sécurité associés.

1voto

ghusse Points 974

La réponse donnée par Yuzhou Zhu fonctionnera, mais une meilleure option serait d'ajouter le groupe de sécurité de l'instance EC2 au groupe de sécurité de votre base de données RDS. Dans ce cas, même si vous n'utilisez pas d'IP élastique, votre solution fonctionnera même après avoir arrêté/démarré votre EC2 (ce qui pourrait changer l'IP publique de votre instance).

1voto

Dr. Big Man Points 21

Pour mon problème, outre l'ajout d'une nouvelle règle permettant d'autoriser une ou plusieurs IP, l'accessibilité publique doit également être activée.

Modifier]->[Réseau et sécurité]

Public accessibility
Info
Yes
EC2 instances and devices outside of the VPC hosting the DB instance will connect to the DB instances. You must also select one or more VPC security groups that specify which EC2 instances and devices can connect to the DB instance.

No
DB instance will not have a public IP address assigned. No EC2 instance or devices outside of the VPC will be able to connect.

Cochez Oui, et appliquez les modifications.

0voto

Aditya Singh Points 11

Pour développer la réponse de mok, vous devez spécifier le client source qui enverra les demandes entrantes dans votre RDS> La source peut être spécifiée sous la forme d'un groupe de sécurité ou d'IP. Dans mon cas, pendant le développement, je veux autoriser l'accès de n'importe où pour pouvoir dépanner depuis mon ordinateur portable. Avant de lancer la production, je vais changer la source pour le groupe de sécurité associé à l'instance EC2. Auparavant, j'omettais complètement une source, et donc mon groupe de sécurité RDS ne parvenait pas à se créer, bien que silencieusement, ce qui rendait le problème encore plus énigmatique. Voici un extrait pertinent de mon modèle CloudFormation,

MyDatabaseSecurityGroup:
    DependsOn: [MyVpc]
    Type: AWS::EC2::SecurityGroup
    Properties:
      GroupDescription: Security group for Amazon RDS cluster
      SecurityGroupIngress:
        - IpProtocol: tcp
          FromPort: 3306
          ToPort: 3306
          # TODO: After development phase completes, restrict access from EC2 only
          #       as opposed to the entire world by uncommenting below line
          #       and commenting out the one after it
          #SourceSecurityGroupId: !Ref MyWebSecurityGroup
          CidrIp: 0.0.0.0/0
      VpcId: !Ref MyVpc

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X