Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Konfigurieren einer DB-Instance für Amazon RDS Custom für Oracle
Sie können eine RDS Custom DB-Instance erstellen und sich dann über Secure Shell (SSH) mit dieser oder AWS Systems Manager verbinden.
Weitere Informationen zum Herstellen einer Verbindung und Anmeldung bei einer RDS Custom for Oracle-DB-Instance finden Sie in den folgenden Themen.
Erstellen einer RDS Custom für Oracle DB-Instance
Erstellen Sie eine Amazon RDS Custom for Oracle DB-Instance mit entweder dem AWS Management Console oder dem AWS CLI. Das Verfahren ähnelt dem Verfahren zum Erstellen einer Amazon RDS DB-Instance. Weitere Informationen finden Sie unter Erstellen einer Amazon RDS-DB-Instance.
Wenn Sie Installationsparameter in Ihr CEV-Manifest aufgenommen haben, verwendet Ihre DB-Instance die Oracle-Basis, das Oracle-Standardverzeichnis sowie die ID und den Namen des von Ihnen angegebenen UNIX/Linux-Benutzers und der Gruppe. Die oratab
-Datei, die von Oracle Database während der Installation erstellt wird, verweist auf den tatsächlichen Installationsort und nicht auf einen symbolischen Link. Wenn RDS Custom für Oracle Befehle ausführt, wird es als konfigurierter Betriebssystembenutzer und nicht als Standardbenutzer rdsdb
ausgeführt. Weitere Informationen finden Sie unter Schritt 5: Bereiten Sie das CEV Manifest vor.
Sie müssen die Aufgaben im Abschnitt Einrichten Ihrer Umgebung für Amazon RDS Custom for Oracle abschließen, bevor Sie versuchen, eine DB-Instance von RDS Custom zu erstellen oder eine Verbindung mit einer solchen DB-Instance herzustellen.
So erstellen Sie eine RDS Custom for Oracle DB-Instance
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/
. -
Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.
-
Wählen Sie Create database (Datenbank erstellen) aus.
-
Wählen Sie unter Choose a database creation method (Wählen Sie eine Datenbankerstellungsmethode aus) Standard Create (Standarderstellung) aus.
-
Gehen Sie im Abschnitt Engine-Optionen wie folgt vor:
-
Wählen Sie in Engine type (Engine-Typ) Oracle.
-
Für Typ der Datenbankverwaltung, wählenBenutzerdefiniert Amazon RDS Custom aus.
-
Führen Sie unter Architektureinstellungen einen der folgenden Schritte aus:
-
Wählen Sie Multi-Tenant-Architektur aus, um eine Container-Datenbank (CDB) zu erstellen. Zum Zeitpunkt der Erstellung enthält Ihre CDB einen PDB-Seed und eine anfängliche PDB.
Anmerkung
Die Einstellung Multi-Tenant-Architektur wird nur für Oracle Database 19c unterstützt.
-
Deaktivieren Sie Multi-Tenant-Architektur, um eine Nicht-CDB zu erstellen. Eine Nicht-CDB kann nicht enthalten. PDBs
-
-
Wählen Sie für Edition Oracle Enterprise Edition oder Oracle Standard Edition 2.
-
Wählen Sie für Benutzerdefinierte Engine-Version eine vorhandene benutzerdefinierte Engine-Version (CEV) von RDS Custom aus. Eine CEV hat folgendes Format:
. Ein Beispiel-Bezeichner istmajor-engine-version
.customized_string
19.cdb_cev1
.Wenn Sie im vorherigen Schritt die Multitenant-Architektur gewählt haben, können Sie nur ein CEV angeben, das den
custom-oracle-se2-cdb
Engine-Typcustom-oracle-ee-cdb
oder verwendet. Die Konsole filtert heraus CEVs , welche mit unterschiedlichen Engine-Typen erstellt wurden.
-
-
Wählen Sie für VorlagenProduktion.
-
Gehen Sie im Abschnitt Settings (Einstellungen) wie folgt vor:
-
Geben Sie für DB-Instance-Kennung einen eindeutigen Namen für Ihre DB-Instance ein.
-
Geben Sie im Feld Hauptbenutzername einen Benutzernamen ein. Sie können diesen Wert später von der Konsole abrufen.
Wenn Sie eine Verbindung mit einer Nicht-CDB herstellen, ist der Hauptbenutzer der Benutzer der Nicht-CDB. Wenn Sie eine Verbindung mit einer CDB herstellen, ist der Hauptbenutzer der Benutzer der PDB. Um eine Verbindung zum CDB-Root herzustellen, melden Sie sich beim Host an, starten Sie einen SQL-Client und erstellen Sie einen Administratorbenutzer mit SQL-Befehlen.
-
Deaktivieren Sie Passwort automatisch generieren.
-
-
Wählen Sie eine DB-Instance-Klasse aus.
Informationen zu unterstützten Klassen finden Sie unter Unterstützung von DB-Instance-Klassen für RDS Custom for Oracle.
-
Gehen Sie im Abschnitt Storage (Speicher) wie folgt vor:
-
Wählen Sie als Speichertyp einen SSD-Typ aus: io1, gp2 oder gp3. Ihnen stehen folgende zusätzliche Optionen zur Verfügung:
-
Wählen Sie für io1 oder gp3 eine Rate für Bereitgestellte IOPS aus. Die Standardeinstellung ist 1 000 für io1 und 12 000 für gp3.
-
Wählen Sie für gp3 eine Rate für den Speicherdurchsatz aus. Die Standardeinstellung ist 500 MiBps.
-
-
Wählen Sie für Zugewiesener Speicher eine Speichergröße aus. Der Standardwert ist 40 GiB.
-
-
Geben Sie für Konnektivität Ihre Virtual Private Cloud (VPC), DB-Subnetzgruppe und VPC-Sicherheitsgruppe (Firewall) an.
-
FürRDS Benutzerdefinierte Sicherheitwie folgt:
-
Für IAM-Instance-Profil, wählen Sie das Instanzprofil für Ihre RDS Custom for Oracle DB-Instance aus.
Das IAM-Instance-Profil muss mit
AWSRDSCustom
, z. B.AWSRDSCustomInstanceProfileForRdsCustomInstance
beginnen. -
Wählen Sie unter Verschlüsselung Enter a key ARN aus, um die verfügbaren AWS KMS Schlüssel aufzulisten. Wählen Sie dann Ihren Schlüssel aus der Liste aus.
Für RDS Custom ist ein AWS KMS Schlüssel erforderlich. Weitere Informationen finden Sie unter Schritt 1: Erstellen oder Wiederverwenden eines symmetrischen AWS KMS -Verschlüsselungsschlüssels.
-
-
Führen Sie unter Datenbankoptionen folgende Schritte aus:
-
(Optional) Geben Sie für System-ID (SID) einen Wert für die Oracle-SID ein, der auch der Name Ihrer CDB ist. Der SID ist der Name der Oracle-Datenbank-Instance, die Ihre Datenbankdateien verwaltet. In diesem Zusammenhang bezieht sich der Begriff „Oracle-Datenbank-Instance“ ausschließlich auf die System Global Area (SGA) und die Oracle-Hintergrundprozesse. Wenn Sie keinen SID angeben, verwendet das System standardmäßig
RDSCDB
. -
(Optional) Geben Sie für Anfänglicher Datenbankname einen Namen ein. Der Standardwert ist
ORCL
. In der Multi-Tenant-Architektur ist der anfängliche Datenbankname der PDB-Name.Anmerkung
SID- und PDB-Name müssen unterschiedlich sein.
-
Wählen Sie für Optionsgruppe eine Optionsgruppe aus, oder akzeptieren Sie die Standardeinstellung.
Anmerkung
Die einzige unterstützte Option für RDS Custom for Oracle ist
Timezone
. Weitere Informationen finden Sie unter Oracle-Zeitzone. -
Wählen Sie unter Aufbewahrungszeitraum für Backups einen Wert aus. Sie können keine 0 Tage auswählen.
-
Geben Sie für die restlichen Abschnitte die gewünschten Einstellungen für die RDS Custom DB-Instance an. Weitere Informationen zu den einzelnen Einstellungen finden Sie unter Einstellungen für DB-Instances. Die folgenden Einstellungen werden nicht in der Konsole angezeigt und werden nicht unterstützt:
-
Prozessorfunktionen
-
Automatische Speicherskalierung
-
Passwort und Kerberos-AuthentifizierungOption inDatenbankauthentifizierung(nurPasswortauthentifizierungwird unterstützt)
-
Performance Insights
-
Protokollexporte
-
Auto minor version upgrade (Upgrade einer Unterversion automatisch durchführen)
-
Löschschutz
-
-
-
Wählen Sie Datenbank erstellen aus.
Wichtig
Wenn Sie Mal eine DB-Instance von RDS Custom für Oracle erstellen, wird möglicherweise der folgende Fehler angezeigt:
Die serviceverknüpfte Rolle wird gerade erstellt. Bitte versuchen Sie es später erneut.
Wenn Sie dies der Fall sind, warten Sie einige Minuten und versuchen Sie dann erneut, die DB-Instance zu erstellen.DieAnzeigen von Anmeldeinformationenerscheint auf der SchaltflächeDatenbankenangezeigten.
Um den Namen und das Passwort des Hauptbenutzers für die RDS Custom DB-Instance anzuzeigen, wählen Sie View credential details (Details zu Anmeldeinformationen anzeigen) aus.
Verwenden Sie den angezeigten Benutzernamen und das angezeigte Passwort, um eine Verbindung zu DB-Instance als Hauptbenutzer herzustellen.
Wichtig
Sie können dieses Passwort für den Hauptbenutzer in der Konsole nicht erneut anzeigen. Wenn Sie es nicht notieren, müssen Sie es möglicherweise ändern. Um das Passwort für den Hauptbenutzer zu ändern, nachdem die DB-Instance von RDS Custom verfügbar wurde, melden Sie sich bei der Datenbank an und führen Sie einen
ALTER USER
-Befehl aus. Sie können das Passwort nicht über die Option Ändern in der Konsole zurücksetzen. -
Klicken Sie aufDatenbankenum die Liste der RDS Custom DB-Instanzen anzuzeigen.
-
Wählen Sie die RDS-DB-Instance aus, die Sie soeben erstellt haben.
In der RDS-Konsole werden die Details der neuen DB-Instance angezeigt.
-
Die RDS Custom DB-Instance wird mit dem Status creating (Wird erstellt) angezeigt, bis sie erstellt wurde und einsatzbereit ist. Wenn sich der Status in available (Verfügbar) ändert, können Sie die Verbindung zur DB-Instance herstellen. Abhängig von der Klasse der DB-Instance und dem dieser zugeteilten Speicher kann es einige Minuten dauern, bis die neue DB-Instance verfügbar ist.
-
-Rolle hat den Wert Instanz (RDS Custom).
-
RDS Benutzerdefinierter Automatisierungsmodus hat den Wert Vollständige Automatisierung. Diese Einstellung bedeutet, dass die DB-Instance eine automatische Überwachung und Instanzwiederherstellung bietet.
-
Sie erstellen eine benutzerdefinierte RDS-DB-Instance mithilfe des create-db-instance AWS CLI Befehls.
Die folgenden Optionen sind erforderlich:
-
--db-instance-identifier
-
--db-instance-class
(eine Liste der unterstützten Klassen, finden Sie unter Unterstützung von DB-Instance-Klassen für RDS Custom for Oracle. -
--engine
, woengine-type
engine-type
istcustom-oracle-ee
custom-oracle-se2
,custom-oracle-ee-cdb
, odercustom-oracle-se2-cdb
-
--engine-version
(wocev
ist der Name der benutzerdefinierten Engine-Version, die Sie inErstellen einer CEV)cev
-
--kms-key-id
my-kms-key
-
--backup-retention-period
(wobeidays
ein Wert größerdays
0
ist) -
--no-auto-minor-version-upgrade
-
--custom-iam-instance-profile AWSRDSCustomInstanceProfile-
(wobeius-east-1
die AWS-Region ist, in der Sie Ihre DB-Instance erstellen)region
Im folgenden Beispiel wird eine RDS Custom-DB-Instance mit dem Namen erstell my-cfo-cdb-instance
. Die Datenbank ist eine CDB mit dem nicht standardmäßigen Namen. MYCDB
Der nicht standardmäßige PDB-Name ist. MYPDB
Die Aufbewahrungszeitraum für Backups beträgt drei Tage.
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Linux, macOS, oder Unix:
aws rds create-db-instance \ --engine
custom-oracle-ee-cdb
\ --db-instance-identifiermy-cfo-cdb-instance
\ --engine-version19.cdb_cev1
\ --db-nameMYPDB
\ --db-system-idMYCDB
\ --allocated-storage250
\ --db-instance-classdb.m5.xlarge
\ --db-subnet-groupmydbsubnetgroup
\ --master-usernamemyuser
\ --master-user-passwordmypassword
\ --backup-retention-period3
\ --port8200
\ --kms-key-idmy-kms-key
\ --no-auto-minor-version-upgrade \ --custom-iam-instance-profile AWSRDSCustomInstanceProfile-us-east-1
Wählen Sie in der &Snowconsole; Ihren Auftrag aus der Tabelle. Windows:
aws rds create-db-instance ^ --engine custom-oracle-ee-cdb ^ --db-instance-identifier
my-cfo-cdb-instance
^ --engine-version19.cdb_cev1
^ --db-nameMYPDB
^ --db-system-idMYCDB
^ --allocated-storage250
^ --db-instance-classdb.m5.xlarge
^ --db-subnet-groupmydbsubnetgroup
^ --master-usernamemyuser
^ --master-user-passwordmypassword
^ --backup-retention-period3
^ --port8200
^ --kms-key-idmy-kms-key
^ --no-auto-minor-version-upgrade ^ --custom-iam-instance-profile AWSRDSCustomInstanceProfile-us-east-1
Anmerkung
Geben Sie aus Sicherheitsgründen ein anderes Passwort als hier angegeben an.
Rufen Sie Details zu Ihrer Instance ab, indem Sie diedescribe-db-instances
befehl.
aws rds describe-db-instances --db-instance-identifier
my-cfo-cdb-instance
Die folgende Teilausgabe zeigt die Engine, die Parametergruppen und andere Informationen.
{ "DBInstanceIdentifier": "my-cfo-cdb-instance", "DBInstanceClass": "db.m5.xlarge", "Engine": "custom-oracle-ee-cdb", "DBInstanceStatus": "available", "MasterUsername": "admin", "DBName": "MYPDB", "DBSystemID": "MYCDB", "Endpoint": { "Address": "my-cfo-cdb-instance.abcdefghijkl.us-east-1.rds.amazonaws.com", "Port": 1521, "HostedZoneId": "A1B2CDEFGH34IJ" }, "AllocatedStorage": 100, "InstanceCreateTime": "2023-04-12T18:52:16.353000+00:00", "PreferredBackupWindow": "08:46-09:16", "BackupRetentionPeriod": 7, "DBSecurityGroups": [], "VpcSecurityGroups": [ { "VpcSecurityGroupId": "sg-0a1bcd2e", "Status": "active" } ], "DBParameterGroups": [ { "DBParameterGroupName": "default.custom-oracle-ee-cdb-19", "ParameterApplyStatus": "in-sync" } ], ...
Überlegungen zur Multi-Tenant-Architektur
Wenn Sie eine Amazon RDS Custom for Oracle DB-Instance mit der Oracle Multitenant-Architektur (custom-oracle-ee-cdb
oder dem custom-oracle-se2-cdb
Engine-Typ) erstellen, ist Ihre Datenbank eine Container-Datenbank (CDB). Wenn Sie die Oracle-Multitenant-Architektur nicht angeben, handelt es sich bei Ihrer Datenbank um eine herkömmliche Nicht-CDB-Datenbank, die den Engine-Typ oder verwendet. custom-oracle-ee
custom-oracle-se2
Eine Nicht-CDB kann keine austauschbaren Datenbanken () enthalten. PDBs Weitere Informationen finden Sie unter Datenbankarchitektur für Amazon RDS Custom für Oracle.
Beachten Sie beim Erstellen einer CDB-Instance von RDS Custom für Oracle Folgendes:
-
Sie können eine Multi-Tenant-Datenbank nur von einer Oracle-Database-19c-CEV erstellen.
-
Sie können eine CDB-Instance nur erstellen, wenn das CEV den Engine-Typ oder verwendet.
custom-oracle-ee-cdb
custom-oracle-se2-cdb
-
Wenn Sie eine CDB-Instanz mit Standard Edition 2 erstellen, kann die CDB maximal 3 enthalten. PDBs
-
Standardmäßig erhält Ihre CDB den Namen
RDSCDB
. Dies ist auch der Name der Oracle-System-ID (Oracle SID). Sie können einen anderen Namen wählen. -
Ihre CDB enthält nur eine anfängliche PDB. Der PDB-Name ist standardmäßig
ORCL
. Sie können einen anderen Namen für Ihre anfängliche PDB auswählen, die Oracle-SID und der PDB-Name dürfen jedoch nicht identisch sein. -
RDS Custom for Oracle bietet kein Angebot APIs für. PDBs Verwenden Sie den Oracle SQL-Befehl PDBs, um weitere zu erstellen
CREATE PLUGGABLE DATABASE
. RDS Custom for Oracle schränkt die Anzahl der Dateien PDBs , die Sie erstellen können, nicht ein. Im Allgemeinen sind Sie wie bei einer lokalen Bereitstellung für die Erstellung und Verwaltung PDBs verantwortlich. -
Sie können RDS nicht APIs zum Erstellen, Ändern und Löschen verwenden PDBs: Sie müssen Oracle-SQL-Anweisungen verwenden. Wenn Sie eine PDB mit Oracle SQL erstellen, empfehlen wir, dass Sie anschließend einen manuellen Snapshot erstellen, falls Sie eine point-in-time Wiederherstellung (PITR) durchführen müssen.
-
PDBs Mit Amazon RDS können Sie bestehende Dateien nicht umbenennen APIs. Sie können die CDB auch nicht mit dem
modify-db-instance
-Befehl umbenennen. -
Der offene Modus für das CDB-Root ist
READ WRITE
in der primären undMOUNTED
in einer gemounteten Standby-Datenbank. RDS Custom for Oracle versucht, PDBs beim Öffnen der CDB alle zu öffnen. Wenn RDS Custom for Oracle nicht alle öffnen kann PDBs, wird das Ereignistenant database shutdown
ausgelöst.
RDS Benutzerdefinierte serviceverknüpfte Rolle
Eine serviceverknüpfte Rolle gewährt Amazon RDS Custom Zugriff auf Ressourcen in Ihrem AWS-Konto. Dadurch wird das Einrichten eines RDS Custom vereinfacht, da Sie die erforderlichen Berechtigungen nicht manuell hinzufügen müssen. RDS Custom definiert die Berechtigungen seiner serviceverknüpften Rollen. Sofern keine andere Konfiguration festgelegt wurde, kann nur RDS Custom die Rollen übernehmen. Die definierten Berechtigungen umfassen die Vertrauens- und Berechtigungsrichtlinie. Diese Berechtigungsrichtlinie kann keinen anderen IAM-Entitäten zugewiesen werden.
Wenn Sie eine RDS Custom DB-Instance erstellen, werden sowohl die mit Amazon RDS als auch RDS Custom Service verknüpften Rollen erstellt (falls sie noch nicht vorhanden sind) und verwendet. Weitere Informationen finden Sie unter Verwenden von serviceverknüpften Rollen für Amazon RDS Amazon.
Wenn Sie zum ersten Mal eine RDS Custom for Oracle DB-Instance erstellen, wird möglicherweise der folgende Fehler angezeigt:Die serviceverknüpfte Rolle wird gerade erstellt. Bitte versuchen Sie es später erneut.
Wenn Sie dies der Fall sind, warten Sie einige Minuten und versuchen Sie dann erneut, die DB-Instance zu erstellen.
Installieren zusätzlicher Softwarekomponenten auf Ihrer DB-Instance von RDS Custom für Oracle
In einer neu erstellten DB-Instance umfasst Ihre Datenbankumgebung Oracle-Binärdateien, eine Datenbank und einen Datenbank-Listener. Möglicherweise möchten Sie zusätzliche Software auf dem Host-Betriebssystem der DB-Instance installieren. Vielleicht möchten Sie beispielsweise Oracle Application Express (APEX), den Oracle Enterprise Manager (OEM) Agent oder den Guardium S-TAP Agent installieren. Richtlinien und allgemeine Anweisungen finden Sie im ausführlichen AWS Blogbeitrag Installieren zusätzlicher Softwarekomponenten auf Amazon RDS Custom for Oracle
Herstellen einer Verbindung mit Ihrer RDS Custom DB-Instance über SSH
Das Secure Shell Protocol (SSH) ist ein Netzwerkprotokoll, das verschlüsselte Kommunikation über ein nicht gesichertes Netzwerk unterstützt. Nachdem Sie Ihre DB-Instance von RDS Custom erstellt haben, können Sie sich über einen SSH-Client mit dieser Instance verbinden. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Ihrer Linux-Instance mithilfe von SSH.
Ihre SSH-Verbindungsmethode hängt davon ab, ob Ihre DB-Instance privat ist, was bedeutet, dass sie keine Verbindungen aus dem öffentlichen Internet akzeptiert. In diesem Fall müssen Sie SSH-Tunneling verwenden, um das SSH-Dienstprogramm mit Ihrer Instance zu verbinden. Diese Methode transportiert Daten mit einem dedizierten Datenstrom (Tunnel) innerhalb einer bestehenden SSH-Sitzung. Sie können das SSH-Tunneling mit AWS Systems Manager konfigurieren.
Anmerkung
Für den Zugriff auf private Instances werden verschiedene Strategien unterstützt. Informationen dazu, wie Sie einen SSH-Client mithilfe von Bastion-Hosts mit privaten Instances verbinden, finden Sie unter Linux Bastion Hosts in AWS
Wenn sich Ihre DB-Instance in einem öffentlichen Subnetz befindet und die Einstellung „Öffentlich verfügbar“ hat, ist kein SSH-Tunneling erforderlich. Sie können sich mit SSH genauso verbinden wie mit einer öffentlichen EC2 Amazon-Instance.
Führen Sie die folgenden Schritte aus, um einen SSH-Client mit Ihrer DB-Instance zu verbinden:
Schritt 1: Konfigurieren Ihrer DB-Instance, um SSH-Verbindungen zuzulassen
Gehen Sie wie folgt vor, um sicherzustellen, dass Ihre DB-Instance SSH-Verbindungen akzeptieren kann:
-
Stellen Sie sicher, dass Ihre Sicherheitsgruppe der DB-Instance eingehende Verbindungen an Port 22 für TCP zulässt.
Informationen zum Konfigurieren der Sicherheitsgruppe für Ihre DB-Instance finden Sie unter Zugriffskontrolle mit Sicherheitsgruppen.
-
Wenn Sie nicht vorhaben, SSH-Tunneling zu verwenden, stellen Sie sicher, dass sich Ihre DB-Instance in einem öffentlichen Subnetz befindet und öffentlich zugänglich ist.
In der Konsole ist das relevante Feld öffentlich zugänglich auf der Registerkarte Konnektivität und Sicherheit auf der Seite mit den Datenbankdetails. Führen Sie den folgenden Befehl aus, um Ihre Einstellungen in der CLI zu überprüfen:
aws rds describe-db-instances \ --query 'DBInstances[*].{DBInstanceIdentifier:DBInstanceIdentifier,PubliclyAccessible:PubliclyAccessible}' \ --output table
Informationen zum Ändern der Barrierefreiheitseinstellungen für Ihre DB-Instance finden Sie unter Ändern einer Amazon RDS DB-Instance.
Schritt 2: Rufen Sie Ihren geheimen SSH-Schlüssel und EC2 Ihre Instanz-ID ab
Zum Herstellen einer Verbindung mit der DB-Instance über SSH benötigen Sie das SSH-Schlüsselpaar, das der Instance zugeordnet ist. RDS Custom erstellt das SSH-Schlüsselpaar in Ihrem Namen unter Verwendung der Namenskonvention do-not-delete-rds-custom-ssh-privatekey-
oderresource_id
-uuid
rds-custom!oracle-do-not-delete-
. AWS Secrets Manager speichert Ihren privaten SSH-Schlüssel als Geheimnis.resource_id
-uuid
-ssh-privatekey
Rufen Sie Ihren geheimen SSH-Schlüssel mit einem AWS Management Console oder dem ab. AWS CLI Wenn Ihre Instance über ein öffentliches DNS verfügt und Sie nicht beabsichtigen, SSH-Tunneling zu verwenden, rufen Sie auch den DNS-Namen ab. Sie geben den DNS-Namen für öffentliche Verbindungen an.
So rufen Sie den geheimen SSH-Schlüssel ab
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/
. -
Wählen Sie im Navigationsbereich Databases (Datenbanken) und dann die RDS Custom DB-Instance aus, die Sie anhalten möchten.
-
Wählen Sie Konfiguration.
-
Beachten Sie dieRessourcen-IDWert. Die Ressourcen-ID der DB-Instance kann beispielsweise
db-ABCDEFGHIJKLMNOPQRS0123456
sein. -
Öffnen Sie die EC2 Amazon-Konsole unter https://console.aws.amazon.com/ec2/
. -
Wählen Sie im Navigationsbereich Instances aus.
-
Suchen Sie den Namen Ihrer EC2 Instance und wählen Sie die damit verknüpfte Instance-ID aus. Die EC2 Instanz-ID könnte beispielsweise lauten
i-abcdefghijklm01234
. -
In -Details, finden Sie Schlüsselpaarname. Der Paarname enthält die Ressourcen-ID der DB-Instance. Der Name des Paares könnte beispielsweise
do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c
oder lautenrds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey
. -
Wenn Ihre EC2 Instance öffentlich ist, notieren Sie sich den öffentlichen IPv4 DNS. Im Beispiel kann die DNS-Adresse (Public Domain Name System)
ec2-12-345-678-901.us-east-2.compute.amazonaws.com
sein. -
Öffnen Sie die AWS Secrets Manager Konsole unter https://console.aws.amazon.com/secretsmanager/
. -
Wählen Sie das Geheimnis aus, das den gleichen Namen wie Ihr key pair hat.
-
Wählen Sie Retrieve secret value (Secret-Wert abrufen) aus.
-
Kopieren Sie den privaten SSH-Schlüssel in eine Textdatei und speichern Sie die Datei anschließend mit der
.pem
-Erweiterung. Speichern Sie die Datei beispielsweise als/tmp/do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem
oder/tmp/rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey.pem
.
Um den privaten SSH-Schlüssel abzurufen und in einer PEM-Datei zu speichern, können Sie die AWS CLI verwenden.
-
Suchen Sie die DB-Ressourcen-ID Ihrer DB-Instance von RDS Custom mit
aws rds describe-db-instances
.aws rds describe-db-instances \ --query 'DBInstances[*].[DBInstanceIdentifier,DbiResourceId]' \ --output text
Die folgende Beispielausgabe zeigt die Ressourcen-ID für Ihre RDS Custom Instance. Das Präfix lautet
db-
.db-ABCDEFGHIJKLMNOPQRS0123456
-
Finden Sie die EC2 Instance-ID Ihrer DB-Instance mithilfe von
aws ec2 describe-instances
. Im folgenden Beispiel wird verwendetdb-ABCDEFGHIJKLMNOPQRS0123456
für die Ressourcen-ID.aws ec2 describe-instances \ --filters "Name=tag:Name,Values=db-ABCDEFGHIJKLMNOPQRS0123456" \ --output text \ --query 'Reservations[*].Instances[*].InstanceId'
Die folgende Beispielausgabe zeigt die EC2 Instance-ID.
i-abcdefghijklm01234
-
Um den Schlüsselnamen zu finden, geben Sie die EC2 Instanz-ID an. Das folgende Beispiel beschreibt die EC2 Instanz
i-0bdc4219e66944afa
.aws ec2 describe-instances \ --instance-ids i-0bdc4219e66944afa \ --output text \ --query 'Reservations[*].Instances[*].KeyName'
Die folgende Beispielausgabe zeigt den Schlüsselnamen, der das Benennungsformat
do-not-delete-rds-custom-ssh-privatekey-
oder verwendetresource_id
-uuid
rds-custom!oracle-do-not-delete-
.resource_id
-uuid
-ssh-privatekeydo-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey
-
Speichern Sie den privaten Schlüssel in einer PEM-Datei, die nach dem Schlüssel benannt ist, unter Verwendung von
aws secretsmanager
.Im folgenden Beispiel wird der Schlüssel
do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c
in einer Datei in Ihrem/tmp
Verzeichnis gespeichert.aws secretsmanager get-secret-value \ --secret-id do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c \ --query SecretString \ --output text >/tmp/do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem
Im folgenden Beispiel wird der Schlüssel
rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey
in einer Datei in Ihrem/tmp
Verzeichnis gespeichert.aws secretsmanager get-secret-value \ --secret-id rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey \ --query SecretString \ --output text >/tmp/rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey.pem
Schritt 3: Stellen Sie mithilfe des SSH-Dienstprogramms eine Verbindung zu Ihrer EC2 Instance her
Ihre Verbindungsmethode hängt davon ab, ob Sie eine Verbindung mit einer privaten DB-Instance oder mit einer öffentlichen Instance herstellen. Für eine private Verbindung müssen Sie SSH-Tunneling über AWS Systems Manager konfigurieren.
So stellen Sie mithilfe des EC2 SSH-Dienstprogramms eine Verbindung zu einer Instanz her
-
Ändern Sie für private Verbindungen Ihre SSH-Konfigurationsdatei, um Befehle an AWS Systems Manager Session Manager weiterzuleiten. Für öffentliche Verbindungen fahren Sie mit Schritt 2 fort.
Fügen Sie die folgenden Zeilen zu
~/.ssh/config
hinzu. Diese Zeilen leiten SSH-Befehle für Hosts weiter, deren Namen miti-
odermi-
beginnen.Host i-* mi-* ProxyCommand sh -c "aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters 'portNumber=%p'"
-
Wechseln Sie in das Verzeichnis, das Ihre PEM-Datei enthält. Benutzen Sie
chmod
und legen Sie die Berechtigungen auf400
fest.Im folgenden Beispiel wird das
/tmp
Verzeichnis geändert und die Berechtigungen für die PEM-Datei festgelegt.do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem
cd /tmp chmod 400 do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem
Im folgenden Beispiel wird das
/tmp
Verzeichnis geändert und die Berechtigungen für die PEM-Datei festgelegt.rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey.pem
cd /tmp chmod 400 rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey.pem
-
Führen Sie das SSH-Hilfsprogramm aus und geben Sie die PEM-Datei und entweder den öffentlichen DNS-Namen (für öffentliche Verbindungen) oder die EC2 Instanz-ID (für private Verbindungen) an. Melden Sie sich als Benutzer
ec2-user
an.Das folgende Beispiel stellt mithilfe des DNS-Namens eine Verbindung zu einer öffentlichen Instance her.
ec2-12-345-678-901.us-east-2.compute.amazonaws.com
# .pem file using naming prefix do-not-delete ssh -i \ "do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem" \ [email protected] # .pem file using naming prefix rds-custom!oracle-do-not-delete ssh -i \ "rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey.pem" \ [email protected]
Im folgenden Beispiel wird über die Instanz-ID eine Verbindung zu einer privaten EC2 Instance hergestellt
i-0bdc4219e66944afa
.# .pem file using naming prefix do-not-delete ssh -i \ "do-not-delete-rds-custom-ssh-privatekey-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c.pem" \ ec2-user@i-0bdc4219e66944afa # .pem file using naming prefix rds-custom!oracle-do-not-delete ssh -i \ "rds-custom!oracle-do-not-delete-db-ABCDEFGHIJKLMNOPQRS0123456-0d726c-ssh-privatekey.pem" \ ec2-user@i-0bdc4219e66944afa