Wie stelle ich eine Verbindung zu einer Amazon-RDS-DB-Instance her, die ein öffentliches oder privates Subnetz einer Amazon VPC verwendet?
Ich möchte eine Verbindung zu meiner Amazon Relational Database Service (Amazon RDS)-DB-Instance herstellen, die sich in einem öffentlichen oder privaten Subnetz einer Amazon Virtual Private Cloud (Amazon VPC) befindet.
Kurzbeschreibung
Wenn du RDS-DB-Instances im öffentlichen oder privaten Subnetz einer VPC startest, können aus den folgenden Gründen Verbindungsprobleme auftreten:
- Falsche VPC-Konfiguration auf der DB-Instance
- Falsche Konfiguration oder Verbindungsprobleme auf dem Client, von dem aus du eine Verbindung herstellst
Führe die für deine Umgebung passende Lösung durch, um diese Probleme zu beheben.
Lösung
Hinweis: Wenn du beim Ausführen von AWS Command Line Interface (AWS CLI)-Befehlen Fehlermeldungen erhältst, findest du weitere Informationen dazu unter Problembehandlung bei der AWS CLI. Stelle außerdem sicher, dass du die neueste Version der AWS CLI verwendest.
Verbindungsprobleme mit einer DB-Instance in einem öffentlichen Subnetz über das Internet von deinem lokalen Computer aus beheben
Wenn die Eigenschaft Öffentlich zugänglich der DB-Instance auf Nein gesetzt ist, können Verbindungsprobleme auftreten. Gehe wie folgt vor, um zu überprüfen, ob die DB-Instance öffentlich zugänglich ist:
- Öffne die Amazon Aurora- und RDS-Konsole.
- Wähle im Navigationsbereich Datenbanken aus.
- Wähle deine DB-Instance aus.
- Überprüfe anschließend den Abschnitt Konnektivität und Sicherheit der Instance.
-oder-
Führe den AWS-CLI-Befehl describe-db-instances aus:
Hinweis: Ersetze example_instance_id durch deine Instance-ID.aws rds describe-db-instances --db-instance-id example_instance_id
Gehe wie folgt vor, um die Eigenschaft Öffentlich zugänglich der DB-Instance zu aktualisieren:
- Öffne die Aurora- und RDS-Konsole.
- Wähle im Navigationsbereich Datenbanken und dann deine DB-Instance aus.
- Wähle Ändern aus.
- Erweitere unter Konnektivität den Abschnitt Zusätzliche Konfiguration und wähle dann Öffentlich zugänglich aus.
- Wähle Weiter aus.
- Wähle DB-Instance ändern aus.
Hinweis: Amazon RDS wendet die Änderung sofort an, auch wenn du die Option Sofort anwenden nicht auswählst. Eine Ausfallzeit tritt nur auf, wenn du eine ausstehende Wartungsmaßnahme hast, die eine Ausfallzeit erfordert, und du Sofort anwenden wählst.
Wenn du die Eigenschaft Öffentlich zugänglich aktiviert hast, aber immer noch keine Verbindung zur Instance herstellen kannst, überprüfe die folgenden Details:
- Stelle sicher, dass deiner VPC ein Internet-Gateway zugeordnet ist.
- Stelle sicher, dass die Regeln für eingehenden Datenverkehr der Sicherheitsgruppe der DB-Instance Verbindungen von deiner Quell-IP-Adresse zulassen.
Behebe Probleme mit der Verbindung zu einer DB-Instance in einem privaten Subnetz von deinem lokalen Computer aus
Um dieses Problem zu beheben, verwende eine der folgenden Methoden, die am besten zu deinem Anwendungsfall passt:
- Verwende ein öffentliches Subnetz. Wenn du ein öffentliches Subnetz verwendest, sind alle Ressourcen im Subnetz über das Internet zugänglich.
- Verwende AWS Site-to-Site VPN. Mit Site-to-Site VPN konfigurierst du ein Kunden-Gateway, mit dem du die VPC mit dem Remote-Netzwerk verbinden kannst.
- Verwende eine Amazon Elastic Compute Cloud (Amazon EC2)-Instance als Bastion (Jump)-Host.
Gehe wie folgt vor, um zu einem öffentlichen Subnetz zu wechseln:
-
Öffne die Aurora- und RDS-Konsole.
-
Wähle im Navigationsbereich Datenbanken und dann deine DB-Instance aus.
-
Kopiere im Abschnitt Konnektivität und Sicherheit den Endpunkt der DB-Instance.
-
Führe einen nslookup am DB-Instance-Endpunkt von einer EC2-Instance innerhalb der VPC aus, ähnlich dem folgenden Beispiel:
nslookup myexampledb.xxxx.us-east-1.rds.amazonaws.com Server: xx.xx.xx.xx Address: xx.xx.xx.xx#53Beispielausgabe:
Non-authoritative answer: Name: myexampledb.xxxx.us-east-1.rds.amazonaws.com Address: 172.31.xx.x -
Nachdem du die private IP-Adresse der DB-Instance erhalten hast, verknüpfe die private IP-Adresse mit einem bestimmten Subnetz in der VPC. Das VPC-Subnetz basiert auf dem CIDR-Bereich des Subnetzes und der privaten IP-Adresse.
-
Öffne die Amazon-VPC-Konsole.
-
Wähle im Navigationsbereich die Option Subnetze.
-
Wähle das Subnetz aus, das der DB-Instance zugeordnet ist, die du in Schritt 5 gefunden hast.
-
Wähle im Bereich Beschreibung die Routing-Tabelle aus.
-
Wähle Aktionen und dann Routen bearbeiten aus.
-
Wähle Route hinzufügen aus. Gib für IPv4- und IPv6-Verkehr im Feld „Ziel“ die Routen für dein externes oder On-Premises Netzwerk ein. Wähle dann die Internet-Gateway-ID in der Ziel-Liste aus.
Hinweis: Stelle sicher, dass die Sicherheitsgruppenregel für eingehenden Datenverkehr für die Instance den Datenverkehr auf die Adressen des externen oder On-Premises-Netzwerks einschränkt. -
Wähle Speichern aus.
Wenn auf die DB-Instance immer noch nicht zugegriffen werden kann, stelle sicher, dass die DB-Instance öffentlich zugänglich ist. Weitere Informationen findest du im vorherigen Abschnitt Beheben von Problemen bei der Verbindung mit einer DB-Instance in einem öffentlichen Subnetz über das Internet von deinem lokalen Computer aus.
Problembehandlung beim DB-Instance-Zugriff über eine EC2-Instance von einer anderen VPC
Wenn du von einer EC2-Instance in einer anderen VPC nicht auf die DB-Instance zugreifen kannst, erstelle eine VPC-Peering-Verbindung. Eine VPC-Peering-Verbindung verwendet private IP-Adressen, um den VPCs die Kommunikation zu ermöglichen.
Führe die folgenden Schritte aus:
- Erstelle eine VPC-Peering-Verbindung.
Hinweis: Achte darauf, dass sich die IPv4-CIDR-Blöcke nicht überschneiden, wenn sich die VPCs im gleichen AWS-Konto befinden. Weitere Informationen findest du unter VPC-Peering-Einschränkungen. - Akzeptiere die Verbindung.
- Aktualisiere beide Routing-Tabellen.
- Aktualisiere die Sicherheitsgruppen, sodass sie auf Peer-VPC-Gruppen verweisen.
- Aktiviere die Unterstützung der DNS-Auflösung für die VPC-Peering-Verbindung.
- Verwende auf der EC2-Instance ein Netzwerkdienstprogramm, um die VPC-Peering-Verbindung ähnlich dem folgenden Beispiel zu testen:
Hinweis: Ersetze hostname durch deinen Hostnamen und port durch deinen Port.nc -zv hostname port
Wenn die Verbindung funktioniert, sieht die Ausgabe in etwa wie folgt aus:nc -zv myexampledb.xxxx.us-east-1.rds.amazonaws.com 5439 found 0 associations found 1 connections: 1: flags=82<CONNECTED,PREFERRED> outif en0 src xx.xxx.xxx.xx port 53396 dst xx.xxx.xxx.xxx port 5439 rank info not available TCP aux info available Connection to myexampledb.xxxx.us-east-1.rds.amazonaws.com port 5439 [tcp/*] succeeded!
Ähnliche Informationen
- Themen
- Database
- Sprache
- Deutsch
Ähnliche Videos


Relevanter Inhalt
AWS OFFICIALAktualisiert vor 2 Jahren