Klonen eines Volumes für einen Amazon-Aurora-DB-Cluster - Amazon Aurora

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.

Klonen eines Volumes für einen Amazon-Aurora-DB-Cluster

Mithilfe der Aurora-Klonfunktion können Sie einen neuen Cluster erstellen, der anfänglich diesselben Datenseiten wie das Original enthält, aber ein separates und unabhängiges Volume darstellt. Der Prozess ist so konzipiert, dass er schnell und kostengünstig ist. Der neue Cluster mit dem zugehörigen Datenvolume wird als clone (Klon) bezeichnet. Das Erstellen eines Klons ist schneller und platzsparender als das physische Kopieren der Daten mit anderen Techniken, wie z. B. das Wiederherstellen eines Snapshots.

Übersicht über das Aurora-Klonen

Aurora verwendet ein copy-on-write Protokoll, um einen Klon zu erstellen. Dieser Mechanismus verwendet minimalen zusätzlichen Speicherplatz, um einen ersten Klon zu erstellen. Wenn der Klon zum ersten Mal erstellt wird, behält Aurora eine einzelne Kopie der Daten, die vom Aurora-DB-Quellcluster und dem neuen (geklonten) Aurora-DB-Cluster verwendet werden. Zusätzlicher Speicher wird nur zugewiesen, wenn Änderungen an Daten (auf dem Aurora-Speicher-Volume) durch den Aurora-DB-Quellcluster oder den Aurora-DB-Clusterklon vorgenommen werden. Weitere Informationen zum copy-on-write Protokoll finden Sie unter Funktionsweise des Klonens von Aurora.

Das Klonen von Aurora ist besonders nützlich, um Testumgebungen mit Ihren Produktionsdaten schnell einzurichten, ohne Datenbeschädigung zu riskieren. Sie können Klone für viele Arten von Anwendungen verwenden, z. B. für Folgende:

  • Experimentieren Sie mit möglichen Änderungen (z. B. Schemaänderungen und Parametergruppenänderungen), um alle Auswirkungen zu bewerten.

  • Führen Sie Workload-intensive Vorgänge aus, z. B. das Exportieren von Daten oder das Ausführen analytischer Abfragen auf dem Klon.

  • Erstellen Sie eine Kopie Ihres Produktions-DB-Clusters zu Entwicklungs-, Test- oder anderen Zwecken.

Sie können mehr als einen Klon aus demselben Aurora-DB-Cluster erstellen. Sie können auch mehrere Klone aus einem anderen Klon erstellen.

Nachdem Sie einen Aurora-Klon erstellt haben, können Sie die Aurora-DB-Instances anders als den Aurora-DB-Quellcluster konfigurieren. Beispielsweise benötigen Sie möglicherweise keinen Klon für Entwicklungszwecke, um dieselben Hochverfügbarkeitsanforderungen zu erfüllen wie der Aurora-DB-Cluster für die Quellproduktion. In diesem Fall können Sie den Klon mit einer einzelnen Aurora-DB-Instance konfigurieren, anstatt mit mehreren DB-Instances, die vom Aurora-DB-Cluster verwendet werden.

Wenn Sie einen Klon mit einer anderen Bereitstellungskonfiguration als der Quelle erstellen, wird der Klon mit der neuesten Nebenversion der Aurora-DB-Engine der Quelle erstellt.

Wenn Sie Klone aus Ihren Aurora-DB-Clustern erstellen, werden die Klone in Ihrem AWS-Konto erstellt – dem gleichen Konto, dem der Aurora-DB-Quellcluster gehört. Sie können jedoch auch Aurora-DB-Cluster Aurora Serverless v2 und -Klone freigeben und für andere -AWSKonten bereitstellen. Weitere Informationen finden Sie unter Kontoübergreifendes Klonen mitAWS RAM und Amazon Aurora.

Wenn Sie den Klon für Test-, Entwicklungs- oder andere Zwecke nicht mehr verwenden, können Sie ihn löschen.

Einschränkungen für das Aurora-Klonen

Das Klonen von Aurora hat derzeit die folgenden Einschränkungen:

  • Sie können so viele Klone erstellen, wie Sie möchten, bis zur maximalen Anzahl von DB-Clustern, die in der AWS-Region zulässig sind.

    Sie können die Klone mit dem Protokoll copy-on-write oder dem Vollkopierprotokoll erstellen. Das Vollkopierprotokoll funktioniert wie eine point-in-time Wiederherstellung.

  • Sie können keinen Klon in einer anderen AWS-Region als der des Aurora-DB-Quell-Clusters erstellen.

  • Sie können keinen Klon von einem Aurora-DB-Cluster ohne die parallele Abfragefunktion für einen Cluster erstellen, der parallele Abfragen verwendet. Um Daten in einen Cluster zu bringen, der parallele Abfragen verwendet, erstellen Sie einen Snapshot des ursprünglichen Clusters und stellen Sie ihn in dem Cluster wieder her, der die parallele Abfragefunktion verwendet.

  • Sie können keinen Klon aus einem Aurora DB-Cluster erstellen, der keine DB-Instances hat. Sie können nur Aurora-DB-Cluster klonen, die über mindestens eine DB-Instance verfügen.

  • Sie können einen Klon in einer anderen Virtual Private Cloud (VPC) als der des Aurora-DB-Clusters erstellen. In diesem Fall müssen die Subnetze der VPCs denselben Availability Zones zugeordnet sein.

  • Sie können einen von Aurora bereitgestellten Klon aus einem bereitgestellten Aurora-DB-Cluster erstellen.

  • Cluster mit Aurora Serverless v2-Instances folgen den gleichen Regeln wie bereitgestellte Cluster.

  • Aurora Serverless v1:

    • Sie können einen bereitgestellten Klon aus einem -Aurora Serverless v1DB-Cluster erstellen.

    • Sie können einen Aurora Serverless v1 -Klon aus einem Aurora Serverless v1 oder bereitgestellten DB-Cluster erstellen.

    • Sie können keinen Aurora Serverless v1 Klon aus einem unverschlüsselten, bereitgestellten Aurora-DB-Cluster erstellen.

    • Das kontoübergreifende Klonen unterstützt derzeit das Klonen von Aurora Serverless v1-DB-Clustern nicht. Weitere Informationen finden Sie unter Einschränkungen für kontoübergreifendes Klonen.

    • Ein geklonter Aurora Serverless v1-DB-Cluster hat das gleiche Verhalten und die gleichen Einschränkungen wie jeder Aurora Serverless v1-DB-Cluster. Weitere Informationen finden Sie unter Verwenden von Amazon Aurora Serverless v1.

    • Aurora Serverless v1-DB-Cluster sind immer verschlüsselt. Wenn Sie einen Aurora Serverless v1-DB-Cluster in einen bereitgestellten Aurora-DB-Cluster klonen, wird der bereitgestellte Aurora-DB-Cluster verschlüsselt. Sie können den Verschlüsselungsschlüssel auswählen, aber Sie können die Verschlüsselung nicht deaktivieren. Um von einem bereitgestellten Aurora-DB-Cluster in einen zu klonenAurora Serverless v1, müssen Sie mit einem verschlüsselten bereitgestellten Aurora-DB-Cluster beginnen.

Funktionsweise des Klonens von Aurora

Das Klonen von Aurora funktioniert auf der Speicherschicht eines Aurora-DB-Clusters. Es verwendet ein copy-on-write Protokoll, das sowohl in Bezug auf die zugrunde liegenden dauerhaften Medien, die das Aurora-Speichervolumen unterstützen, schnell als auch platzsparend ist. Weitere Informationen zu Aurora-Cluster-Volumes finden Sie unterÜbersicht über Amazon-Aurora-Speicher.

Grundlegendes zum copy-on-write Protokoll

Ein Aurora-DB-Cluster speichert Daten in Seiten im zugrunde liegenden Aurora-Speicher-Volume.

Im folgenden Diagramm finden Sie beispielsweise einen Aurora-DB-Cluster (A) mit vier Datenseiten 1, 2, 3 und 4. Stellen Sie sich vor, dass ein Klon, Klon B, aus dem Aurora-DB-Cluster erstellt wird. Wenn der Klon erstellt wird, werden keine Daten kopiert. Stattdessen verweist der Klon auf denselben Seitensatz wie der Aurora-DB-Quellcluster.


                    Amazon-Aurora-Cluster-Volume mit 4 Seiten für Quellcluster A und Klon B

Wenn der Klon erstellt wird, ist normalerweise kein zusätzlicher Speicher erforderlich. Das copy-on-write Protokoll verwendet dasselbe Segment auf den physischen Speichermedien wie das Quellsegment. Zusätzlicher Speicher ist nur erforderlich, wenn die Kapazität des Quellsegments für das gesamte Klonsegment nicht ausreicht. Wenn dies der Fall ist, wird das Quellsegment auf ein anderes physisches Gerät kopiert.

In den folgenden Diagrammen finden Sie ein Beispiel für das copy-on-write Protokoll in Aktion mit demselben Cluster A und seinem Klon, B, wie oben gezeigt. Nehmen wir an, Sie nehmen eine Änderung an Ihrem Aurora-DB-Cluster (A) vor, was zu einer Änderung der Daten auf Seite 1 führt. Anstatt auf die ursprüngliche Seite 1 zu schreiben, erstellt Aurora eine neue Seite 1 [A]. Das Aurora-DB-Cluster-Volume für Cluster (A) verweist nun auf Seite 1 [A], 2, 3 und 4, während der Klon (B) weiterhin auf die ursprünglichen Seiten verweist.


              Amazon-Aurora-Quell-DB-Cluster-Volume und sein Klon, beide mit Änderungen.

Auf dem Klon wird eine Änderung an Seite 4 auf dem Speichervolume vorgenommen. Anstatt auf die ursprüngliche Seite 4 zu schreiben, erstellt Aurora eine neue Seite, 4 [B]. Der Klon verweist nun auf die Seiten 1, 2, 3 und auf Seite 4[B], während der Cluster (A) weiterhin auf 1[A], 2, 3 und 4 verweist.


        Amazon-Aurora-Quell-DB-Cluster-Volume und sein Klon, beide mit Änderungen.

Da im Laufe der Zeit mehr Änderungen sowohl im Aurora-DB-Cluster-Quellvolume als auch im Klon auftreten, wird mehr Speicherplatz benötigt, um die Änderungen zu erfassen und zu speichern.

Löschen eines Quell-Cluster-Volumes

Wenn Sie ein Quell-Cluster-Volume löschen, dem ein oder mehrere Klone zugeordnet sind, sind die Klone nicht betroffen. Die Klone verweisen weiter auf die Seiten, die zuvor im Besitz des Quell-Cluster-Volumes waren.

Erstellen eines Amazon-Aurora-DB-Klons

Sie können einen Klon im selben AWS-Konto wie den Aurora-DB-Quellcluster erstellen. Dazu können Sie das AWS Management Console oder das AWS CLI und die folgenden Verfahren verwenden.

Um einem anderen AWS-Konto zu erlauben, einen Klon zu erstellen oder einen Klon mit einem anderen AWS-Konto zu teilen, verwenden Sie die Verfahren in Kontoübergreifendes Klonen mitAWS RAM und Amazon Aurora.

Das folgende Verfahren beschreibt das Klonen eines Aurora-DB-Clusters mittels der AWS Management Console.

Erstellen eines Klons unter Verwendung der AWS Management Console-Ergebnisse in einem Aurora-DB-Cluster mit einer Aurora-DB-Instance.

Diese Anweisungen gelten für DB-Cluster, die sich im Besitz desselben AWS-Kontos befinden, das den Klon erstellt. Wenn der DB-Cluster einem anderenAWS-Konto gehört, lesen Sie stattdessen Kontoübergreifendes Klonen mitAWS RAM und Amazon Aurora.

So erstellen Sie mit AWS einen Klon eines DB-Clusters, der Ihrem AWS Management Console-Konto gehört:
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

  3. Wählen Sie Ihren Aurora-DB-Cluster aus der Liste aus, und wählen Sie für Aktionen die Option Klon erstellen aus.

    
                  Das Erstellen eines Klons beginnt mit der Auswahl Ihres Aurora-DB-Clusters.

    Die Seite „Klon erstellen“ wird geöffnet, auf der Sie Einstellungen, Konnektivität und andere Optionen für den Klon des Aurora-DB-Clusters konfigurieren können.

  4. Geben Sie als DB-Instance-ID den Namen ein, den Sie Ihrem geklonten Aurora-DB-Cluster geben möchten.

  5. Wählen Sie für Aurora Serverless v1 -DB-Cluster Bereitgestellt oder Serverless für Kapazitätstyp aus.

    Sie können Serverless nur auswählen, wenn der Aurora-DB-Quellcluster ein Aurora Serverless v1-DB-Cluster oder ein bereitgestellter Aurora-DB-Cluster ist, der verschlüsselt ist.

  6. Wählen Sie für Aurora Serverless v2 oder bereitgestellte DB-Cluster entweder Aurora I/O-Optimized oder Aurora Standard für Cluster-Speicherkonfiguration aus.

    Weitere Informationen finden Sie unter Speicherkonfigurationen für DB-Cluster von Amazon Aurora.

  7. Wählen Sie die Größe der DB-Instance oder die DB-Cluster-Kapazität aus:

    • Wählen Sie für einen bereitgestellten Klon eine DB-Instance-Klasse aus.

      
                                        Um einen bereitgestellten Klon zu erstellen, geben Sie die DB-Instance-Größe an.

      Sie können die bereitgestellte Einstellung akzeptieren oder eine andere DB-Instance-Klasse für Ihren Klon verwenden.

    • Wählen Sie für einen - Aurora Serverless v1 oder Aurora Serverless v2 -Klon die Kapazitätseinstellungen aus.

      
                                        Um einen Serverless-Klon aus einem Aurora-DB-Cluster zu erstellen, geben Sie die Kapazität an.

      Sie können die bereitgestellten Einstellungen akzeptieren oder sie für Ihren Klon ändern.

  8. Wählen Sie nach Bedarf andere Einstellungen für Ihren Klon aus. Weitere Informationen zu Aurora DB-Cluster- und -Instance-Einstellungen finden Sie unter Erstellen eines Amazon Aurora-DB Clusters.

  9. Wählen Sie Klon erstellen aus.

Wenn der Klon erstellt wird, wird er mit Ihren anderen Aurora-DB-Clustern im Abschnitt Datenbanken der Konsole aufgelistet und zeigt seinen aktuellen Status an. Ihr Klon ist einsatzbereit, wenn sein Status Verfügbar ist.

Die Verwendung von AWS CLI zum Klonen Ihres Aurora-DB-Clusters umfasst einige Schritte.

Der von Ihnen verwendete restore-db-cluster-to-point-in-time-Befehl AWS CLI führt zu einem leeren Aurora-DB-Cluster mit 0 Aurora-DB-Instances. Das heißt, der Befehl stellt nur den Aurora-DB-Cluster wieder her, nicht die DB-Instances für diesen Cluster. Sie tun dies separat, nachdem der Klon verfügbar ist. Die zwei Schritte im Prozess sind wie folgt:

  1. Erstellen Sie den Klon mit dem CLI-Befehl restore-db-cluster-to-point-in-time. Die Parameter, die Sie mit diesem Befehl verwenden, steuern den Kapazitätstyp und andere Details des leeren Aurora-DB-Clusters (Klon), der erstellt wird.

  2. Erstellen Sie die Aurora-DB-Instance für den Klon, indem Sie den create-db-instance CLI-Befehl verwenden, um die Aurora-DB-Instance im wiederhergestellten Aurora-DB-Cluster neu zu erstellen.

Erstellen des Klons

Die spezifischen Parameter, die Sie an den restore-db-cluster-to-point-in-time-CLI-Befehl übergeben, variieren. Was Sie übergeben, hängt vom Engine-Modus-Typ des Quell-DB-Clusters – Serverless oder bereitgestellt – und vom Typ des Klons ab, den Sie erstellen möchten.

So erstellen Sie einen Klon mit demselben Engine-Modus wie der Aurora-DB-Quellcluster
  • Verwenden Sie den restore-db-cluster-to-point-in-time-CLI-Befehl und geben Sie Werte für die folgenden Parameter an:

    • --db-cluster-identifier – Wählen Sie einen aussagekräftigen Namen für Ihren Klon. Sie benennen den Klon, wenn Sie den restore-db-cluster-to-point-in-timeCLI-Befehl verwenden. Anschließend übergeben Sie den Namen des Klons im create-db-instance CLI-Befehl .

    • --restore-type – Verwenden Sie copy-on-write, um einen Klon des Quell-DB-Clusters zu erstellen. Ohne diesen Parameter stellt restore-db-cluster-to-point-in-time den Aurora-DB-Cluster wieder her, anstatt einen Klon zu erstellen.

    • --source-db-cluster-identifier – Verwenden Sie den Namen des Aurora-DB-Quell-Clusters, den Sie klonen möchten.

    • --use-latest-restorable-time – Dieser Wert verweist auf die neuesten wiederherstellbaren Volume-Daten für den Quell-DB-Cluster. Verwenden Sie sie zum Erstellen von Klonen.

Im folgenden Beispiel wird ein Klon namens my-clone aus einem Cluster namens my-source-cluster erstellt.

Für Linux, macOSoder Unix:

aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier my-source-cluster \ --db-cluster-identifier my-clone \ --restore-type copy-on-write \ --use-latest-restorable-time

Windows:

aws rds restore-db-cluster-to-point-in-time ^ --source-db-cluster-identifier my-source-cluster ^ --db-cluster-identifier my-clone ^ --restore-type copy-on-write ^ --use-latest-restorable-time

Der Befehl gibt das JSON-Objekt zurück, das Details des Klons enthält. Stellen Sie sicher, dass Ihr geklonter DB-Cluster verfügbar ist, bevor Sie versuchen, die DB-Instance für Ihren Klon zu erstellen. Weitere Informationen finden Sie unter Überprüfen des Status und Abrufen von Klon-Details.

So erstellen Sie einen Klon mit einem anderen Engine-Modus als dem Aurora-DB-Quellcluster
  • Verwenden Sie den restore-db-cluster-to-point-in-time-CLI-Befehl und geben Sie Werte für die folgenden Parameter an:

    • --db-cluster-identifier – Wählen Sie einen aussagekräftigen Namen für Ihren Klon. Sie benennen den Klon, wenn Sie den restore-db-cluster-to-point-in-timeCLI-Befehl verwenden. Anschließend übergeben Sie den Namen des Klons im create-db-instance CLI-Befehl .

    • --source-db-cluster-identifier – Verwenden Sie den Namen des Aurora-DB-Quell-Clusters, den Sie klonen möchten.

    • --restore-type – Verwenden Sie copy-on-write, um einen Klon des Quell-DB-Clusters zu erstellen. Ohne diesen Parameter stellt restore-db-cluster-to-point-in-time den Aurora-DB-Cluster wieder her, anstatt einen Klon zu erstellen.

    • --use-latest-restorable-time – Dieser Wert verweist auf die neuesten wiederherstellbaren Volume-Daten für den Quell-DB-Cluster. Verwenden Sie sie zum Erstellen von Klonen.

    • --engine-mode – (Optional) Verwenden Sie diesen Parameter nur, um Klone zu erstellen, die einen anderen Typ als der Aurora-DB-Quellcluster haben. Wählen Sie den mit --engine-mode zu übergebenden Wert wie folgt aus:

      • Verwenden Sie provisioned, um einen bereitgestellten Aurora-DB-Clusterklon aus einem Aurora Serverless-DB-Cluster zu erstellen.

      • Verwenden Sie serverless, um einen Aurora Serverless v1-DB-Cluster-Klon aus einem bereitgestellten Aurora-DB-Cluster zu erstellen. Wenn Sie den serverless Engine-Modus angeben, können Sie auch die auswählen--scaling-configuration.

    • --scaling-configuration – (Optional) Verwenden Sie mit --engine-mode serverless, um die minimale und maximale Kapazität für einen Aurora Serverless v1 Klon zu konfigurieren. Wenn Sie diesen Parameter nicht verwenden, erstellt Aurora den Klon mit den Standardkapazitätswerten für die DB-Engine.

    • --serverless-v2-scaling-configuration – (Optional) Verwenden Sie diesen Parameter, um die minimale und maximale Kapazität für einen Aurora Serverless v2 Klon zu konfigurieren. Wenn Sie diesen Parameter nicht verwenden, erstellt Aurora den Klon mit den Standardkapazitätswerten für die DB-Engine.

Im folgenden Beispiel wird ein Aurora Serverless v1 Klon namens my-cloneaus einem bereitgestellten Aurora-DB-Cluster namens erstelltmy-source-cluster. Der bereitgestellte Aurora-DB-Cluster ist verschlüsselt.

Für Linux, macOSoder Unix:

aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier my-source-cluster \ --db-cluster-identifier my-clone \ --engine-mode serverless \ --scaling-configuration MinCapacity=8,MaxCapacity=64 \ --restore-type copy-on-write \ --use-latest-restorable-time

Windows:

aws rds restore-db-cluster-to-point-in-time ^ --source-db-cluster-identifier my-source-cluster ^ --db-cluster-identifier my-clone ^ --engine-mode serverless ^ --scaling-configuration MinCapacity=8,MaxCapacity=64 ^ --restore-type copy-on-write ^ --use-latest-restorable-time

Diese Befehle geben das JSON-Objekt zurück, das Details des Klons enthält, den Sie zum Erstellen der DB-Instance benötigen. Dies ist erst möglich, wenn der Status des Klons (der leere Aurora-DB-Cluster) den Status Verfügbar hat.

Anmerkung

Der restore-db-cluster-to-point-in-timeAWSCLI-Befehl stellt nur den DB-Cluster wieder her, nicht die DB-Instances für diesen DB-Cluster. Sie müssen den create-db-instance Befehl aufrufen, um DB-Instances für den wiederhergestellten DB-Cluster zu erstellen, wobei Sie die Kennung des wiederhergestellten DB-Clusters in angeben--db-cluster-identifier. Sie können DB-Instances erst dann erstellen, wenn der Befehl restore-db-cluster-to-point-in-time abgeschlossen ist und der DB-Cluster verfügbar ist.

Angenommen, Sie haben einen Cluster mit dem Namen tpch100g, den Sie klonen möchten. Im folgenden Linux-Beispiel wird ein geklonter Cluster namens tpch100g-clone und eine primäre Instance mit dem Namen tpch100g-clone-instance für den neuen Clusters erstellt. Einige Parameter wie --master-username und --master-user-password müssen nicht angegeben werden. Aurora ermittelt diese automatisch aus dem ursprünglichen Cluster. Sie müssen die zu verwendende DB-Engine angeben. Daher testet das Beispiel den neuen Cluster, um den richtigen Wert für den Parameter --engine zu ermitteln.

$ aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier tpch100g \ --db-cluster-identifier tpch100g-clone \ --restore-type copy-on-write \ --use-latest-restorable-time $ aws rds describe-db-clusters \ --db-cluster-identifier tpch100g-clone \ --query '*[].[Engine]' \ --output text aurora-mysql $ aws rds create-db-instance \ --db-instance-identifier tpch100g-clone-instance \ --db-cluster-identifier tpch100g-clone \ --db-instance-class db.r5.4xlarge \ --engine aurora-mysql

Überprüfen des Status und Abrufen von Klon-Details

Mit dem folgenden Befehl können Sie den Status Ihres neu erstellten leeren DB-Clusters überprüfen.

$ aws rds describe-db-clusters --db-cluster-identifier my-clone --query '*[].[Status]' --output text

Oder Sie können den Status und die anderen Werte abrufen, die Sie zum Erstellen der DB-Instance für Ihren Klon benötigen, indem Sie die folgende AWS CLI-Abfrage verwenden.

Für Linux, macOSoder Unix:

aws rds describe-db-clusters --db-cluster-identifier my-clone \ --query '*[].{Status:Status,Engine:Engine,EngineVersion:EngineVersion,EngineMode:EngineMode}'

Windows:

aws rds describe-db-clusters --db-cluster-identifier my-clone ^ --query "*[].{Status:Status,Engine:Engine,EngineVersion:EngineVersion,EngineMode:EngineMode}"

Diese Abfrage gibt eine Ausgabe ähnlich der folgenden zurück.

[ { "Status": "available", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.04.1", "EngineMode": "provisioned" } ]

Erstellen einer Aurora-DB-Instance für Ihren Klon

Verwenden Sie den create-db-instance CLI-Befehl , um die DB-Instance für Ihren oder Aurora Serverless v2bereitgestellten Klon zu erstellen. Sie erstellen keine DB-Instance für einen Aurora Serverless v1 -Klon.

Die DB-Instance erbt die --master-user-password Eigenschaften --master-username und vom Quell-DB-Cluster.

Im folgenden Beispiel wird eine DB-Instance für einen bereitgestellten Klon erstellt.

Für Linux, macOSoder Unix:

aws rds create-db-instance \ --db-instance-identifier my-new-db \ --db-cluster-identifier my-clone \ --db-instance-class db.r5.4xlarge \ --engine aurora-mysql

Windows:

aws rds create-db-instance ^ --db-instance-identifier my-new-db ^ --db-cluster-identifier my-clone ^ --db-instance-class db.r5.4xlarge ^ --engine aurora-mysql

Zu verwendende Parameter für das Klonen

Die folgende Tabelle fasst die verschiedenen Parameter zusammen, die mit restore-db-cluster-to-point-in-time zum Klonen von Aurora-DB-Clustern verwendet werden.

Parameter Beschreibung

--source-db-cluster-identifier

Verwenden Sie den Namen des Aurora-DB-Quell-Clusters, den Sie klonen möchten.

--db-cluster-identifier

Wählen Sie einen aussagekräftigen Namen für Ihren Klon aus, wenn Sie ihn mit dem restore-db-cluster-to-point-in-time Befehl erstellen. Dann übergeben Sie diesen Namen an den create-db-instance-Befehl.

--restore-type

Geben Sie copy-on-write als --restore-type an, um einen Klon des Quell-DB-Clusters zu erstellen, anstatt den Quell-Aurora-DB-Cluster wiederherzustellen.

--use-latest-restorable-time

Dieser Wert verweist auf die neuesten wiederherstellbaren Volume-Daten für den Quell-DB-Cluster. Verwenden Sie sie zum Erstellen von Klonen.

--engine-mode

Verwenden Sie diesen Parameter, um Klone zu erstellen, die einen anderen Typ als der Aurora-DB-Quellcluster haben, mit einem der folgenden Werte:

  • Verwenden Sie provisioned, um einen bereitgestellten oder Klon aus einem Aurora Serverless v2 -DB-Cluster Aurora Serverless v1 zu erstellen.

  • Verwenden Sie Aurora Serverless v1 serverless, um einen -Klon aus einem bereitgestellten oder -DB-Cluster Aurora Serverless v2 zu erstellen.

    Wenn Sie den serverless Engine-Modus angeben, können Sie auch die auswählen--scaling-configuration.

--scaling-configuration

Verwenden Sie diesen Parameter, um die minimale und maximale Kapazität für einen Aurora Serverless v1 Klon zu konfigurieren. Wenn Sie diesen Parameter nicht angeben, erstellt Aurora den Klon mit den Standardkapazitätswerten für die DB-Engine.

--serverless-v2-scaling-configuration

Verwenden Sie diesen Parameter, um die minimale und maximale Kapazität für einen Aurora Serverless v2 Klon zu konfigurieren. Wenn Sie diesen Parameter nicht angeben, erstellt Aurora den Klon mit den Standardkapazitätswerten für die DB-Engine.

Kontoübergreifendes Klonen mitAWS RAM und Amazon Aurora

Durch die Verwendung von AWS Resource Access Manager (AWS RAM) mit Amazon Aurora können Sie Aurora-DB-Cluster und -Klone, die zu Ihrem AWS-Konto gehören, mit einem anderen AWS-Konto oder einer anderen Organisation teilen. Ein solches kontoübergreifendes Klonen ist viel schneller als das Erstellen und Wiederherstellen eines Datenbank-Snapshots. Sie können einen Klon eines Ihrer Aurora-DB-Cluster erstellen und den Klon freigeben. Oder Sie können Ihren Aurora-DB-Cluster mit einem anderen AWS-Konto teilen und den Kontoinhaber den Klon erstellen lassen. Welchen Ansatz Sie wählen, hängt von Ihrem Anwendungsfall ab.

Beispielsweise müssen Sie möglicherweise regelmäßig einen Klon Ihrer Finanzdatenbank für das interne Revisionsteam Ihres Unternehmens freigeben. In diesem Fall hat Ihr Prüfungsteam ein eigenes AWS-Konto für die von ihm verwendeten Anwendungen. Sie können dem AWS-Konto des Prüfungs-Teams die Berechtigung erteilen, auf Ihren Aurora-DB-Cluster zuzugreifen und ihn nach Bedarf zu klonen.

Auf der anderen Seite, wenn ein externer Anbieter Ihre Finanzdaten prüft, ziehen Sie es möglicherweise vor, den Klon selbst zu erstellen. Sie geben dann dem externen Anbieter nur Zugriff auf den Klon.

Sie können auch das kontoübergreifende Klonen verwenden, um viele der gleichen Anwendungsfälle für das Klonen innerhalb desselben AWS-Kontos zu unterstützen, z. B. Entwicklung und Tests. Ihre Organisation kann beispielsweise unterschiedliche AWS-Konten für Produktion, Entwicklung, Tests usw. verwenden. Weitere Informationen finden Sie unter Übersicht über das Aurora-Klonen.

Daher möchten Sie möglicherweise einen Klon mit einem anderen AWS-Konto teilen oder einem anderen AWS-Konto erlauben, Klone Ihrer Aurora-DB-Cluster zu erstellen. Beginnen Sie in jedem Fall mit AWS RAM, um ein Freigabeobjekt zu erstellen. Vollständige Informationen zur gemeinsamen Nutzung von AWS-Ressourcen zwischen AWS-Konten finden Sie im AWS RAM-Benutzerhandbuch.

Für das Erstellen eines kontoübergreifenden Klons sind Aktionen von dem AWS-Konto erforderlich, das Besitzer des ursprünglichen Clusters ist, und von dem AWS-Konto, das den Klon erstellt. Zuerst ändert der ursprüngliche Clusterbesitzer den Cluster, um es einem oder mehreren anderen Konten zu ermöglichen, ihn zu klonen. Wenn sich eines der Konten in einer anderen AWS-Organisation befindet, generiert AWS eine Freigabeeinladung. Das andere Konto muss die Einladung annehmen, bevor Sie fortfahren können. Dann kann jedes autorisierte Konto den Cluster klonen. Während dieses Prozesses wird der Cluster durch seinen eindeutigen Amazon-Ressourcennamen (ARN) identifiziert.

Wie beim Klonen innerhalb desselben AWS-Kontos wird zusätzlicher Speicherplatz nur verwendet, wenn Änderungen an den Daten durch die Quelle oder den Klon vorgenommen werden. Zu diesem Zeitpunkt werden dann Gebühren für die Speicherung erhoben. Wenn der Quellen-Cluster gelöscht wird, werden Speicherkosten gleichmäßig auf die verbleibenden geklonten Cluster verteilt.

Einschränkungen für kontoübergreifendes Klonen

Kontoübergreifendes Aurora-Klonen hat folgende Einschränkungen:

  • Sie können einen Aurora Serverless v1-Cluster nicht über AWS-Konten hinweg klonen.

  • Sie können Einladungen zu freigegebenen Ressourcen mit AWS Management Console nicht anzeigen oder annehmen. Verwenden Sie AWS CLI, die Amazon-RDS-API oder die AWS RAM-Konsole, um Einladungen zu freigegebenen Ressourcen anzuzeigen und anzunehmen.

  • Sie können nur einen neuen Klon aus einem Klon erstellen, der mit Ihrem AWS-Konto geteilt wurde.

  • Sie können keine Ressourcen (Klone oder Aurora-DB-Cluster) freigeben, die für Ihr AWS-Konto freigegeben wurden.

  • Sie können maximal 15 kontoübergreifende Klone aus einem einzelnen Aurora-DB-Cluster erstellen.

  • Jeder der 15 kontoübergreifenden Klone muss einem anderen AWS-Konto gehören. Das heißt, Sie können innerhalb eines AWS-Kontos nur einen kontoübergreifenden Klon eines Clusters erstellen.

  • Nachdem Sie einen Cluster geklont haben, werden der ursprüngliche Cluster und sein Klon als identisch angesehen, um Grenzwerte für kontoübergreifende Klone durchzusetzen. Sie können keine kontoübergreifenden Klone sowohl des ursprünglichen Clusters als auch des geklonten Clusters innerhalb desselben AWS-Kontos erstellen. Die Gesamtzahl der kontoübergreifenden Klone für den ursprünglichen Cluster und einen seiner Klone darf 15 nicht überschreiten.

  • Sie können einen Aurora-DB-Cluster nicht für andere AWS-Konten freigeben, es sei denn, der Cluster befindet sich in einem ACTIVE-Status.

  • Sie können einen Aurora-DB-Cluster, der mit anderen AWS-Konten geteilt wurde, nicht umbenennen.

  • Sie können keinen kontoübergreifenden Klon eines Clusters erstellen, der mit dem RDS-Standardschlüssel verschlüsselt ist.

  • Sie können in einem AWS Konto keine unverschlüsselten Klone von verschlüsselten Aurora DB-Clustern erstellen, die von einem anderen AWS Konto freigegeben wurden. Der Clustereigentümer muss die Erlaubnis zum Zugriff auf den Quellcluster AWS KMS key. Sie können jedoch auch einen anderen Schlüssel verwenden, wenn Sie den Klon erstellen.

Zulassen des Klonens Ihres Clusters durch andere AWS-Konten

Um anderen AWS-Konten zu erlauben, einen Cluster, den Sie besitzen, zu klonen, verwenden Sie AWS RAM, um die Freigabeberechtigung festzulegen. Dadurch wird außerdem eine Einladung an jedes der anderen Konten gesendet, die sich in einer unterschiedlichen AWS-Organisation befinden.

Informationen zu den Verfahren zur Freigabe von Ressourcen, die Sie besitzen, in der AWS RAM-Konsole finden Sie im Artikel zum Freigeben von Ressourcen, die Sie besitzen im AWS RAM-Benutzerhandbuch.

Gewähren der Berechtigung für andere AWS-Konten zum Klonen Ihres Clusters

Wenn der Cluster, den Sie gemeinsam nutzen, verschlüsselt ist, teilen Sie auch die AWS KMS key für den Cluster. Sie können zulassen, dass AWS Identity and Access Management (IAM)-Benutzer oder -Rollen in einem AWS Konto einen KMS-Schlüssel in einem anderen Konto verwenden.

Dazu fügen Sie zunächst das externe Konto (Root-Benutzer) über AWS KMSzur Schlüsselrichtlinie des KMS-Schlüssels hinzu. Sie fügen der Schlüsselrichtlinie nicht die einzelnen Benutzer oder Rollen hinzu, sondern nur das externe Konto, das sie enthält. Sie können nur einen von Ihnen erstellten KMS-Schlüssel freigeben, nicht den Standardschlüssel des RDS-Dienstes. Informationen zur Zugriffskontrolle für KMS-Schlüssel finden Sie unter Authentifizierung und Zugriffskontrolle für AWS KMS.

So gewähren Sie die Berechtigung zum Klonen Ihres Clusters
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

  3. Wählen Sie den DB-Cluster aus, den Sie freigeben möchten, um seine Details-Seite anzuzeigen, und wählen Sie dann die Registerkarte Connectivity & security (Konnektivität und Sicherheit) aus.

  4. Geben Sie im Abschnitt DB-Cluster für andere AWS-Konten freigeben die numerische ID für das AWS-Konto ein, dem Sie erlauben möchten, diesen Cluster zu klonen. Bei Konto-IDs in derselben Organisation können Sie die ersten Zeichen in das Feld eintippen und dann aus dem Menü auswählen.

    Wichtig

    In manchen Fällen möchten Sie vielleicht, dass ein Konto, das sich nicht in derselben AWS-Organisation befindet wie Ihr Konto, einen Cluster klont. In diesen Fällen meldet die Konsole aus Sicherheitsgründen nicht, wer diese Konto-ID besitzt oder ob das Konto existiert.

    Seien Sie vorsichtig, wenn Sie Kontonummern eingeben, die sich nicht in derselben AWS-Organisation befinden wie Ihr AWS-Konto. Überprüfen Sie sofort, ob Sie die Freigabe für das beabsichtigte Konto erteilt haben.

  5. Überprüfen Sie auf der Bestätigungsseite, dass die von Ihnen angegebene Konto-ID richtig ist. Geben Sie im Bestätigungsfeld share ein, um dies zu bestätigen.

    Auf der Seite Details wird unter Accounts that this DB cluster is shared with (Konten, für die dieser DB-Cluster freigegeben ist) ein Eintrag mit der angegebenen AWS-Konto-ID angezeigt. Die Spalte Status zeigt ursprünglich den Status Pending (Ausstehend) an.

  6. Wenden Sie sich an den Besitzer des anderen AWS-Kontos oder melden Sie sich bei diesem Konto an, wenn Sie beide besitzen. Weisen Sie den Besitzer des anderen Kontos an, die Freigabeeinladung anzunehmen und den DB-Cluster zu klonen, wie nachfolgend beschrieben.

So gewähren Sie die Berechtigung zum Klonen Ihres Clusters
  1. Tragen Sie die Daten für die erforderlichen Parameter zusammen. Sie benötigen den ARN für Ihren Cluster und die numerische ID für das andere AWS-Konto.

  2. Führen Sie den AWS RAM-CLI-Befehl create-resource-share aus.

    Für Linux, macOSoder Unix:

    aws ram create-resource-share --name descriptive_name \ --region region \ --resource-arns cluster_arn \ --principals other_account_ids

    Windows:

    aws ram create-resource-share --name descriptive_name ^ --region region ^ --resource-arns cluster_arn ^ --principals other_account_ids

    Geben Sie, um mehrere Konto-IDs für den --principals-Parameter einzuschließen, IDs mit Leerzeichen voneinander getrennt ein. Um anzugeben, ob die genehmigten Konto-IDs außerhalb Ihrer AWS-Organisation sein können, schließen Sie auch den --allow-external-principals- bzw. den --no-allow-external-principals-Parameter für create-resource-share ein.

So gewähren Sie die Berechtigung zum Klonen Ihres Clusters
  1. Tragen Sie die Daten für die erforderlichen Parameter zusammen. Sie benötigen den ARN für Ihren Cluster und die numerische ID für das andere AWS-Konto.

  2. Rufen Sie die APIAWS RAM-Operation auf CreateResourceShareund geben Sie die folgenden Werte an:

    • Geben Sie die Konto-IDs mindestens eines AWS-Kontos als principals-Parameter an.

    • Geben Sie die ARN mindestens eines Aurora-DB-Clusters als resourceArns-Parameter an.

    • Geben Sie an, ob sich die genehmigten Konto-IDs außerhalb Ihrer AWS-Organisation befinden dürfen, indem Sie einen booleschen Wert für den allowExternalPrincipals-Parameter einfügen.

Neuerstellen eines Clusters, der den RDS-Standardschlüssel verwendet

Wenn der verschlüsselte Cluster, den Sie freigeben möchten, den RDS-Standardschlüssel verwendet, stellen Sie sicher, dass der Cluster neu erstellt wird. Erstellen Sie dazu einen manuellen Snapshot Ihres DB-Clusters, verwenden Sie eine AWS KMS key, und stellen Sie den Cluster dann in einem neuen Cluster wieder her. Geben Sie dann den neuen Cluster frei. Führen Sie die folgenden Schritte aus, um diesen Vorgang durchzuführen.

So erstellen Sie einen verschlüsselten Cluster neu, der den RDS-Standardschlüssel verwendet
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich die Option Snapshots aus.

  3. Wählen Sie Ihren Snapshot aus.

  4. Wählen Sie unter Actions (Aktionen) die Option Copy Snapshot (Snapshot kopieren) und anschließend Enable encryption (Verschlüsselung aktivieren) aus.

  5. Wählen Sie für AWS KMS key den neuen Verschlüsselungscode, den Sie verwenden möchten.

  6. Stellen Sie den kopierten Snapshot wieder her. Eine Schritt-für-Schritt-Anleitung hierzu finden Sie unter Wiederherstellen aus einem DB-Cluster-Snapshot. Die neue DB-Instance verwendet Ihren neuen Verschlüsselungsschlüssel.

  7. (Optional) Löschen Sie den alten DB-Cluster, wenn Sie ihn nicht mehr benötigen. Eine Schritt-für-Schritt-Anleitung hierzu finden Sie unter Löschen eines DB-Cluster-Snapshots. Bevor Sie dies tun, überprüfen Sie, ob Ihr neuer Cluster über alle notwendigen Daten verfügt und ob Ihre Anwendung erfolgreich darauf zugreifen kann.

Überprüfen, ob ein Cluster, den Sie besitzen, für andere AWS-Konten freigegeben ist

Sie können überprüfen, ob andere Benutzer die Berechtigung für die Freigabe eines Clusters haben. Dies kann hilfreich sein, um zu wissen, ob der Cluster sich dem Limit für die maximale Anzahl an kontoübergreifenden Klonen nähert.

Informationen zu den Verfahren zur Freigabe von Ressourcen mithilfe der AWS RAM-Konsole finden Sie im Artikel zum Freigeben von Ressourcen, die Sie besitzen im AWS RAM-Benutzerhandbuch.

So finden Sie heraus, ob ein Cluster, der Ihnen gehört, mit anderen AWS-Konten geteilt wird
  • Rufen Sie den AWS RAM-CLI-Befehl list-principals auf und verwenden Sie dabei Ihre Konto-ID als Ressourcenbesitzer und den ARN Ihres Clusters als Ressourcen-ARN. Sie können mit dem folgenden Befehl alle Freigaben anzeigen. Die Ergebnisse zeigen an, welche AWS-Konten den Cluster klonen dürfen.

    aws ram list-principals \ --resource-arns your_cluster_arn \ --principals your_aws_id
So finden Sie heraus, ob ein Cluster, der Ihnen gehört, mit anderen AWS-Konten geteilt wird
  • Rufen Sie die AWS RAM-API-Operation ListPrincipals auf. Verwenden Sie Ihre Konto-ID als Ressourcenbesitzer und den ARN Ihres Clusters als Ressourcen-ARN.

Klonen eines Clusters, der einem anderen AWS-Konto gehört

Um einen Cluster zu klonen, der einem anderen AWS-Konto gehört, verwenden Sie AWS RAM, um die Berechtigung zum Erstellen des Klons zu erhalten. Wenn Sie die erforderliche Berechtigung haben, verwenden Sie das Standardverfahren zum Klonen eines Aurora-Clusters.

Sie können auch überprüfen, ob ein Cluster, den Sie besitzen, ein Klon eines Clusters ist, der einem anderen AWS-Konto gehört.

Anweisungen für das Arbeiten mit Ressourcen, die anderen gehören, in der AWS RAM-Konsole finden Sie im Artikel über das Zugreifen auf für Sie freigegebene Ressourcen im AWS RAM-Benutzerhandbuch.

Anzeigen von Einladungen zum Klonen von Clustern, die anderen AWS-Konten gehören

Um mit Einladungen zum Klonen von Clustern zu arbeiten, die anderen AWS-Konten in anderen AWS-Organisationen gehören, verwenden Sie die AWS CLI, die AWS RAM-Konsole oder die AWS RAM-API. Aktuell können Sie dieses Verfahren nicht mithilfe der Amazon RDS-Konsole durchführen.

Anweisungen für das Arbeiten mit Einladungen in der AWS RAM-Konsole finden Sie im Artikel über das Zugreifen auf für Sie freigegebenen Ressourcen im AWS RAM-Benutzerhandbuch.

So zeigen Sie Einladungen zum Klonen von Clustern, die anderen AWS-Konten gehören, an
  1. Führen Sie den AWS RAM-CLI-Befehl get-resource-share-invitations aus.

    aws ram get-resource-share-invitations --region region_name

    Die Ergebnisse des vorausgehenden Befehls zeigen alle Einladungen, Cluster zu klonen, an, einschließlich aller Einladungen, die Sie bereits angenommen oder abgelehnt haben.

  2. (Optional) Filtern Sie die Liste, um nur die Einladungen anzuzeigen, die eine Aktion Ihrerseits erforderlich machen. Fügen Sie dafür den -Parameter hinz --query 'resourceShareInvitations[?status==`PENDING`]'.

So zeigen Sie Einladungen zum Klonen von Clustern, die anderen AWS-Konten gehören, an
  1. Rufen Sie die AWS RAM-API-Operation GetResourceShareInvitations auf. Diese Operation gibt all diese Einladungen zurück, einschließlich derer, die Sie bereits angenommen oder abgelehnt haben.

  2. (Optional) Suchen Sie nur die Einladungen, die eine Aktion Ihrerseits erforderlich machen, indem Sie das Rückgabefeld resourceShareAssociations für den status-Wert PENDING aktivieren.

Annehmen von Einladungen zum Freigeben von Clustern, die anderen AWS-Konten gehören

Sie können Einladungen zur Freigabe von Clustern, die anderen AWS-Konten in anderen AWS-Organisationen gehören, annehmen. Um mit diesen Einladungen zu arbeiten, verwenden Sie die AWS CLI, die AWS RAM- und RDS-APIs oder die AWS RAM-Konsole. Aktuell können Sie dieses Verfahren nicht mithilfe der RDS-Konsole durchführen.

Anweisungen für das Arbeiten mit Einladungen in der AWS RAM-Konsole finden Sie im Artikel über das Zugreifen auf für Sie freigegebenen Ressourcen im AWS RAM-Benutzerhandbuch.

So nehmen Sie eine Einladung für die Freigabe eines Clusters von einem anderen AWS-Konto an
  1. Suchen Sie den Einladungs-ARN, indem Sie den AWS RAM-CLI-Befehl get-resource-share-invitations ausführen, wie oben gezeigt.

  2. Nehmen Sie die Einladung an, indem Sie den AWS RAM-CLI-Befehl accept-resource-share-invitation aufrufen, wie nachfolgend gezeigt.

    Für Linux, macOSoder Unix:

    aws ram accept-resource-share-invitation \ --resource-share-invitation-arn invitation_arn \ --region region

    Windows:

    aws ram accept-resource-share-invitation ^ --resource-share-invitation-arn invitation_arn ^ --region region
So nehmen Sie Einladung zur Freigabe eines Clusters, der jemand anderem gehört, an
  1. Suchen Sie den Einladungs-ARN, indem Sie die AWS RAM-API-Operation GetResourceShareInvitations aufrufen, wie oben gezeigt.

  2. Übergeben Sie diesen ARN als resourceShareInvitationArn Parameter an die RDS-API-Operation AcceptResourceShareInvitation.

Klonen eines Aurora-Clusters, der einem anderen AWS-Konto gehört

Nach dem Annehmen der Einladung von dem AWS-Konto, das den DB-Cluster besitzt, wie oben gezeigt, können Sie den Cluster klonen.

So klonen Sie einen Aurora-Cluster, der einem anderen AWS-Konto gehört
  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

    Ganz oben in der Datenbankliste sollten Sie mindestens ein Element mit dem Role (Rolle)-Wert Shared from account #account_id sehen. Aus Sicherheitsgründen können Sie nur eingeschränkte Informationen über die ursprünglichen Cluster sehen. Die Eigenschaften, die Sie sehen können, sind solche wie etwa die Datenbank-Engine und -Version, die in Ihrem geklonten Cluster identisch sein müssen.

  3. Wählen Sie den Cluster aus, den Sie vorhaben zu klonen.

  4. Wählen Sie für Actions (Aktionen) Create clone (Klon erstellen) aus.

  5. Gehen Sie entsprechend dem Verfahren unter Konsole vor, um die Einrichtung des geklonten Clusters durchzuführen.

  6. Aktivieren Sie je nach Bedarf die Verschlüsselung für den geklonten Cluster. Wenn der Cluster, den Sie klonen, verschlüsselt ist, müssen Sie die Verschlüsselung für den geklonten Cluster aktivieren. Das AWS-Konto, das den Cluster für Sie freigegeben hat, muss auch den KMS-Schlüssel freigeben, der zur Verschlüsselung des Clusters verwendet wurde. Sie können denselben KMS-Schlüssel zur Verschlüsselung des Klons verwenden oder Ihren eigenen KMS-Schlüssel. Sie können keinen kontoübergreifenden Klon für einen Cluster erstellen, der mit dem Standard-KMS-Schlüssel verschlüsselt ist.

    Das Konto, dem der Verschlüsselungsschlüssel gehört, muss dem Zielkonto die Berechtigung zur Verwendung des Schlüssels mithilfe einer Schlüsselrichtlinie erteilen. Dieser Vorgang ist ähnlich dem Verfahren, mit dem verschlüsselte Snapshots freigegeben werden, mithilfe einer Schlüsselrichtlinie, die dem Zielkonto die Berechtigung zur Verwendung des Schlüssels gewährt.

So klonen Sie einen Aurora-Cluster, der einem anderen AWS-Konto gehört
  1. Nehmen Sie die Einladung von dem AWS-Konto, dem der DB-Cluster gehört, an, wie oben gezeigt.

  2. Klonen Sie den Cluster, indem Sie den vollständigen ARN des Quell-Clusters im source-db-cluster-identifier-Parameter des RDS-CLI-Befehls restore-db-cluster-to-point-in-time angeben, wie nachfolgend gezeigt.

    Wenn der als source-db-cluster-identifier übergebene ARN nicht freigegeben wurde, wird derselbe Fehler zurückgegeben, wie wenn der angegebene Cluster nicht vorhanden ist.

    Für Linux, macOSoder Unix:

    aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier=arn:aws:rds:arn_details \ --db-cluster-identifier=new_cluster_id \ --restore-type=copy-on-write \ --use-latest-restorable-time

    Windows:

    aws rds restore-db-cluster-to-point-in-time ^ --source-db-cluster-identifier=arn:aws:rds:arn_details ^ --db-cluster-identifier=new_cluster_id ^ --restore-type=copy-on-write ^ --use-latest-restorable-time
  3. Wenn der Cluster, den Sie klonen, verschlüsselt ist, verschlüsseln Sie Ihren geklonten Cluster, indem Sie einen kms-key-id-Parameter einfügen. Dieser kms-key-id-Wert kann derselbe sein, der zur Verschlüsselung des ursprünglichen DB-Clusters verwendet wurde, oder Ihr eigener KMS-Schlüssel. Ihr Konto muss über die Berechtigung zum Verwenden dieses Verschlüsselungsschlüssels verfügen.

    Für Linux, macOSoder Unix:

    aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier=arn:aws:rds:arn_details \ --db-cluster-identifier=new_cluster_id \ --restore-type=copy-on-write \ --use-latest-restorable-time \ --kms-key-id=arn:aws:kms:arn_details

    Windows:

    aws rds restore-db-cluster-to-point-in-time ^ --source-db-cluster-identifier=arn:aws:rds:arn_details ^ --db-cluster-identifier=new_cluster_id ^ --restore-type=copy-on-write ^ --use-latest-restorable-time ^ --kms-key-id=arn:aws:kms:arn_details

    Das Konto, dem der Verschlüsselungsschlüssel gehört, muss dem Zielkonto die Berechtigung zur Verwendung des Schlüssels mithilfe einer Schlüsselrichtlinie erteilen. Dieser Vorgang ist ähnlich dem Verfahren, mit dem verschlüsselte Snapshots freigegeben werden, mithilfe einer Schlüsselrichtlinie, die dem Zielkonto die Berechtigung zur Verwendung des Schlüssels gewährt. Nachfolgend sehen Sie ein Beispiel für eine Schlüsselrichtlinie.

    { "Id": "key-policy-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} } ] }
Anmerkung

Der restore-db-cluster-to-point-in-timeAWSCLI-Befehl stellt nur den DB-Cluster wieder her, nicht die DB-Instances für diesen DB-Cluster. Rufen Sie den create-db-instance Befehl auf, um DB-Instances für den wiederhergestellten DB-Cluster zu erstellen. Geben Sie die ID des wiederhergestellten DB-Clusters in --db-cluster-identifier an.

Sie können DB-Instances erst dann erstellen, wenn der Befehl restore-db-cluster-to-point-in-time abgeschlossen ist und der DB-Cluster verfügbar ist.

So klonen Sie einen Aurora-Cluster, der einem anderen AWS-Konto gehört
  1. Nehmen Sie die Einladung von dem AWS-Konto, dem der DB-Cluster gehört, an, wie oben gezeigt.

  2. Klonen Sie den Cluster, indem Sie den vollständigen ARN des Quell-Clusters im SourceDBClusterIdentifier-Parameter der RDS-API-Operation RestoreDBClusterToPointInTime angeben.

    Wenn der als SourceDBClusterIdentifier übergebene ARN nicht freigegeben wurde, dann wird derselbe Fehler zurückgegeben, wie wenn der angegebene Cluster nicht vorhanden ist.

  3. Wenn der Cluster, den Sie klonen, verschlüsselt ist, fügen Sie einen KmsKeyId-Parameter ein, um Ihren geklonten Cluster zu verschlüsseln. Dieser kms-key-id-Wert kann derselbe sein, der zur Verschlüsselung des ursprünglichen DB-Clusters verwendet wurde, oder Ihr eigener KMS-Schlüssel. Ihr Konto muss über die Berechtigung zum Verwenden dieses Verschlüsselungsschlüssels verfügen.

    Wenn Sie ein Volume klonen, muss das Zielkonto die Berechtigung haben, den Verschlüsselungsschlüssel zu verwenden, der zum Verschlüsseln des Quellclusters verwendet wird. Aurora verschlüsselt den neuen geklonten Cluster mit dem in KmsKeyId angegebenen Verschlüsselungsschlüssel.

    Das Konto, dem der Verschlüsselungsschlüssel gehört, muss dem Zielkonto die Berechtigung zur Verwendung des Schlüssels mithilfe einer Schlüsselrichtlinie erteilen. Dieser Vorgang ist ähnlich dem Verfahren, mit dem verschlüsselte Snapshots freigegeben werden, mithilfe einer Schlüsselrichtlinie, die dem Zielkonto die Berechtigung zur Verwendung des Schlüssels gewährt. Nachfolgend sehen Sie ein Beispiel für eine Schlüsselrichtlinie.

    { "Id": "key-policy-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} } ] }
Anmerkung

Die RestoreDBClusterToPointInTime-RDS-API-Operation stellt nur den DB-Cluster wieder her, nicht die DB-Instances für diesen DB-Cluster. Um DB-Instances für den wiederhergestellten DB-Cluster zu erstellen, rufen Sie die RDS-API-Operation CreateDBInstance auf. Geben Sie die ID des wiederhergestellten DB-Clusters in DBClusterIdentifier an. Sie können DB-Instances erst erstellen, nachdem die Operation RestoreDBClusterToPointInTime abgeschlossen ist und der DB-Cluster verfügbar ist.

Überprüfen, ob ein DB-Cluster ein kontoübergreifender Klon ist

Das DBClusters-Objekt gibt an, ob der jeweilige Cluster ein kontoübergreifender Klon ist. Sie können die Cluster, für die Sie die Berechtigungen zum Klonen haben, anzeigen, indem Sie die include-shared-Option beim Ausführen des RDS-CLI-Befehls describe-db-clusters verwenden. Sie können jedoch die meisten Konfigurationsdetails für solche Cluster nicht anzeigen.

Überprüfen, ob ein DB-Cluster ein kontoübergreifender Klon ist
  • Rufen Sie den RDS-CLI-Befehl auf describe-db-clusters.

    Das folgende Beispiel zeigt, wie tatsächliche oder potenzielle kontoübergreifende Klon-DB-Cluster in der describe-db-clusters-Ausgabe angezeigt werden. Für bestehende Cluster, die IhremAWS-Konto gehören, zeigt das CrossAccountClone-Feld an, ob der Cluster ein Klon eines DB-Clusters ist, der einem anderen AWS-Konto gehört.

    In manchen Fällen kann ein Eintrag eine andere AWS-Kontonummer haben als Ihre im DBClusterArn-Feld. In diesem Fall steht dieser Eintrag für einen Cluster, der einem anderen AWS-Konto gehört und den Sie klonen können. Solche Einträge haben wenige andere Felder als DBClusterArn. Wenn Sie einen geklonten Cluster erstellen, geben Sie dieselben StorageEncrypted-, Engine- und EngineVersion-Werte wie im Original-Cluster an.

    $aws rds describe-db-clusters --include-shared --region us-east-1 { "DBClusters": [ { "EarliestRestorableTime": "2023-02-01T21:17:54.106Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": false, ... }, { "EarliestRestorableTime": "2023-02-09T16:01:07.398Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": true, ... }, { "StorageEncrypted": false, "DBClusterArn": "arn:aws:rds:us-east-1:12345678:cluster:cluster-abcdefgh", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0 ] }
Überprüfen, ob ein DB-Cluster ein kontoübergreifender Klon ist
  • Rufen Sie die RDS-API-Operation DescribeDBClusters auf.

    Für bestehende Cluster im Besitz Ihres AWS-Kontos gibt das CrossAccountClone-Feld an, ob der Cluster ein Klon eines DB-Clusters ist, der einem anderen AWS-Konto gehört. Einträge mit einer anderen AWS-Kontonummer im DBClusterArn-Feld stellen Cluster dar, die Sie klonen können und die anderen AWS-Konten gehören. Diese Einträge haben wenige andere Felder als DBClusterArn. Wenn Sie einen geklonten Cluster erstellen, geben Sie dieselben StorageEncrypted-, Engine- und EngineVersion-Werte wie im Original-Cluster an.

    Das folgende Beispiel zeigt einen Rückgabewert, der sowohl tatsächliche als auch potenzielle geklonte Cluster zeigt.

    { "DBClusters": [ { "EarliestRestorableTime": "2023-02-01T21:17:54.106Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": false, ... }, { "EarliestRestorableTime": "2023-02-09T16:01:07.398Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": true, ... }, { "StorageEncrypted": false, "DBClusterArn": "arn:aws:rds:us-east-1:12345678:cluster:cluster-abcdefgh", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0" } ] }