Amazon DocumentDB -Aufgaben - Amazon DocumentDB

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.

Amazon DocumentDB -Aufgaben

Dieser Abschnitt behandelt die operativen Aufgaben für Amazon DocumentDB -Cluster (mit MongoDB-Kompatibilität) und wie diese Aufgaben unter Verwendung der erledigt werden könnenAWS CLIaus.

Hinzufügen eines Replikats zu einem Amazon DocumentDB DocumentDB-Cluster

Nachdem Sie die primäre Instance für Ihr Amazon DocumentDB DocumentDB-Cluster erstellt haben, können Sie eine oder mehrere hinzufügenNachbildungenaus. Ein Replikat ist eine schreibgeschützte Instance, die zwei Zwecken dient:

  • Skalierbarkeit— Wenn Sie über eine große Anzahl von Clients verfügen, die gleichzeitig auf zugreifen müssen, können Sie weitere Replicas für die Leseskalierung hinzufügen.

  • Hohe Verfügbarkeit— Wenn die primäre Instance ausfällt, schaltet Amazon DocumentDB automatisch auf eine Replikat-Instance um und bestimmt sie als neue Primär-Instance. Wenn ein Replikat ausfällt, können andere Instances im Cluster nach wie vor für die Bearbeitung von Anfragen verwendet werden, bis der ausgefallene Knoten wiederhergestellt werden kann.

Jeder Amazon DocumentDB DocumentDB-Cluster kann bis zu 15 Replikate unterstützen.

Anmerkung

Für maximale Fehlertoleranz sollten Sie Replikate in separaten Availability Zones bereitstellen. So kann sichergestellt werden, dass Ihr Amazon DocumentDB DocumentDB-Cluster weiterhin ausgeführt werden kann, auch wenn die gesamte Availability Zone nicht mehr verfügbar sein sollte.

Im folgenden AWS CLI-Beispiel wird gezeigt, wie Sie ein neues Replikat hinzufügen. Der --availability-zone-Parameter platziert das Replikat in der angegebenen Availability Zone.

aws docdb create-db-instance \ --db-instance-identifier sample-instance \ --db-cluster-identifier sample-cluster \ --engine docdb \ --db-instance-class db.r5.large \ --availability-zone us-east-1a

Beschreiben von Clustern und Instances

FolgendesAWS CLIBeispiel: listet alle Amazon DocumentDB DocumentDB-Cluster in einer Region auf. Für bestimmte Verwaltungsfunktionen, z. B. Cluster- und Instance-Lifecycle-Management, nutzt Amazon DocumentDB die betriebliche Technologie, die mit Amazon RDS gemeinsam genutzt wird. DiefilterName=engine,Values=docdbDer Filterparameter gibt nur Amazon DocumentDB DocumentDB-Cluster zurück.

Weitere Informationen zum Beschreiben und Ändern von Clustern finden Sie im Amazon DocumentDB-Cluster-Lebenszyklus.

aws docdb describe-db-clusters --filter Name=engine,Values=docdb

Die Ausgabe dieser Operation sieht in etwa folgendermaßen aus.

{ "DBClusters": [ { "AvailabilityZones": [ "us-east-1c", "us-east-1b", "us-east-1a" ], "BackupRetentionPeriod": 1, "DBClusterIdentifier": "sample-cluster-1", "DBClusterParameterGroup": "sample-parameter-group", "DBSubnetGroup": "default", "Status": "available", ... }, { "AvailabilityZones": [ "us-east-1c", "us-east-1b", "us-east-1a" ], "BackupRetentionPeriod": 1, "DBClusterIdentifier": "sample-cluster-2", "DBClusterParameterGroup": "sample-parameter-group", "DBSubnetGroup": "default", "Status": "available", ... }, { "AvailabilityZones": [ "us-east-1c", "us-east-1b", "us-east-1a" ], "BackupRetentionPeriod": 1, "DBClusterIdentifier": "sample-cluster-3", "DBClusterParameterGroup": "sample-parameter-group", "DBSubnetGroup": "default", "Status": "available", ... } ] }

FolgendesAWS CLIIn beispiel werden die Instances in einem Amazon DocumentDB DocumentDB-Cluster aufgelistet. Weitere Informationen zum Beschreiben und Ändern von Clustern finden Sie im Amazon DocumentDB-Instance-Lebenszyklus.

aws docdb describe-db-clusters \ --db-cluster-identifier sample-cluster \ --query 'DBClusters[*].[DBClusterMembers]'

Die Ausgabe sieht wie unten aus. Diese Ausgabe enthält zwei Instances. Die Primär-Instance ist sample-instance-1 ("IsClusterWriter": true). Es gibt auch eine Replikat-Instance, nämlich sample-instance2 ("IsClusterWriter: false").

[ [ [ { "DBInstanceIdentifier": "sample-instance-1", "IsClusterWriter": true, "DBClusterParameterGroupStatus": "in-sync", "PromotionTier": 1 }, { "DBInstanceIdentifier": "sample-cluster-2", "IsClusterWriter": false, "DBClusterParameterGroupStatus": "in-sync", "PromotionTier": 1 } ] ] ]

Erstellen eines Cluster-Snapshots

EIN-Cluster-Snapshotist eine vollständige Sicherung der Daten in Ihrem Amazon DocumentDB DocumentDB-Cluster. Wenn der Snapshot erstellt wird, liest Amazon DocumentDB Ihre Daten direkt aus dem Cluster-Volume. Aus diesem Grund können Sie einen Snapshot erstellen, auch wenn zum jeweiligen Zeitpunkt keine Instances in Ihrem Cluster ausgeführt werden. Die zum Erstellen eines Snapshots erforderliche Zeit hängt von der Größe Ihres Cluster-Volumes ab.

Amazon DocumentDB unterstützt automatische Backups, die täglich während des bevorzugten Backup-Fensters auftreten — ein Zeitraum von 30 Minuten während des Tages. Im folgenden AWS CLI-Beispiel wird veranschaulicht, wie Sie das Sicherungszeitfenster für Ihr Cluster anzeigen:

aws docdb describe-db-clusters \ --db-cluster-identifier sample-cluster \ --query 'DBClusters[*].PreferredBackupWindow'

Die Ausgabe zeigt das Sicherungszeitfenster (in UTC):

[ "00:18-00:48" ]

Sie können das Sicherungszeitfenster bei der Erstellung Ihres Amazon DocumentDB DocumentDB-Clusters definieren. Sie können das Sicherungszeitfenster auch ändern, wie im folgenden Beispiel gezeigt wird. Wenn Sie kein Sicherungszeitfenster festlegen, weist Amazon DocumentDB Ihrem Cluster automatisch ein Fenster zu.

aws docdb modify-db-cluster \ --db-cluster-identifier sample-cluster \ --preferred-backup-window "02:00-02:30"

Zusätzlich zu automatischen Sicherungen können Sie jederzeit manuell einen Cluster-Snapshot erstellen. Wenn Sie dies tun, müssen Sie das zu sichernde Cluster festlegen und dem Snapshot einen eindeutigen Namen geben, damit er später für Wiederherstellungszwecke verwendet werden kann.

Im folgenden AWS CLI-Beispiel wird gezeigt, wie Sie einen Snapshot Ihrer Daten erstellen.

aws docdb create-db-cluster-snapshot \ --db-cluster-identifier sample-cluster \ --db-cluster-snapshot-identifier sample-cluster-snapshot

Wiederherstellung aus einem Snapshot

Sie können einen Cluster-Snapshot in einem neuen Amazon DocumentDB DocumentDB-Cluster wiederherstellen. Dazu geben Sie den Namen des Snapshots und den Namen eines neuen Clusters an. Sie können keine Wiederherstellung von einem Snapshot auf einem bestehenden -Cluster durchführen. Stattdessen erstellt Amazon DocumentDB bei der Wiederherstellung einen neuen -Cluster und füllt ihn dann mit Ihren Snapshot-Daten.

Das folgende Beispiel zeigt alle Snapshots für den Cluster sample-cluster.

aws docdb describe-db-cluster-snapshots \ --db-cluster-identifier sample-cluster \ --query 'DBClusterSnapshots[*].[DBClusterSnapshotIdentifier,SnapshotType,Status]'

Die Ausgabe sieht ungefähr wie folgt aus. Ein manueller Snapshot ist ein Snapshot, den Sie manuell erstellt haben. Ein automatisierter Snapshot hingegen ist ein Snapshot.

[ "sample-cluster-snapshot", "manual", "available" ], [ "rds:sample-cluster", "automated", "available" ] ]

Im folgenden Beispiel wird gezeigt, wie Sie einen Amazon DocumentDB DocumentDB-Cluster aus einem Snapshot wiederherstellen.

aws docdb restore-db-cluster-from-snapshot \ --engine docdb \ --db-cluster-identifier new-sample-cluster \ --snapshot-identifier sample-cluster-snapshot

Dem neuen Cluster sind keine Instances zugeordnet. Wenn Sie mit dem Cluster interagieren möchten, müssen Sie ihm also eine Instance hinzufügen.

aws docdb create-db-instance \ --db-instance-identifier new-sample-instance \ --db-instance-class db.r5.large \ --engine docdb \ --db-cluster-identifier new-sample-cluster

Sie können die folgenden AWS CLI-Operationen verwenden, um den Fortschritt der Cluster- und Instance-Erstellung zu überwachen. Wenn die Cluster- und Instance-Status verfügbar sind, können Sie eine Verbindung zum neuen Endpunkt des Clusters herstellen und auf Ihre Daten zugreifen.

aws docdb describe-db-clusters \ --db-cluster-identifier new-sample-cluster \ --query 'DBClusters[*].[Status,Endpoint]'
aws docdb describe-db-instances \ --db-instance-identifier new-sample-instance \ --query 'DBInstances[*].[DBInstanceStatus]'

Entfernen einer Instance aus einem Cluster

Amazon DocumentDB speichert alle Daten im Cluster-Volume. Die Daten bleiben in diesem Cluster-Volume erhalten. Dies gilt auch dann, wenn Sie alle Instances von Ihrem Cluster entfernen. Wenn Sie erneut auf die Daten zugreifen müssen, können Sie jederzeit dem Cluster eine Instance hinzufügen und da weitermachen, wo Sie aufgehört haben.

Im folgenden Beispiel wird gezeigt, wie Sie eine Instance aus Ihrem Amazon DocumentDB DocumentDB-Cluster entfernen.

aws docdb delete-db-instance \ --db-instance-identifier sample-instance

Löschen eines Clusters

Bevor Sie einen Amazon DocumentDB DocumentDB-Cluster löschen können, müssen Sie zunächst alle seine Instances entfernen. Im folgenden AWS CLI-Beispiel werden Informationen über die Instances in einem Cluster zurückgegeben. Wenn diese Operation Instance-Kennungen zurückgibt, müssen Sie die einzelnen Instances löschen. Weitere Informationen finden Sie unter Entfernen einer Instance aus einem Cluster.

aws docdb describe-db-clusters \ --db-cluster-identifier sample-cluster \ --query 'DBClusters[*].DBClusterMembers[*].DBInstanceIdentifier'

Wenn keine Instances mehr vorhanden sind, können Sie das Cluster löschen. Sie müssen dann eine der folgenden Optionen wählen:

  • Erstellen Sie einen endgültigen Snapshot— Erfassen Sie alle Clusterdaten in einem Snapshot, damit Sie später eine neue Instanz mit diesen Daten neu erstellen können. Das Verfahren wird im folgenden Beispiel beschrieben:

    aws docdb delete-db-cluster \ --db-cluster-identifier sample-cluster \ --final-db-snapshot-identifier sample-cluster-snapshot
  • Überspringen Sie den letzten Snapshot- Verwerfen Sie alle Clusterdaten dauerhaft. Diese Aktion ist unwiderruflich. Das Verfahren wird im folgenden Beispiel beschrieben:

    aws docdb delete-db-cluster \ --db-cluster-identifier sample-cluster \ --skip-final-snapshot