Erste Schritte mit Amazon DocumentDB Elastic Clusters - 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.

Erste Schritte mit Amazon DocumentDB Elastic Clusters

In diesem Abschnitt „Erste Schritte“ erfahren Sie, wie Sie Ihren ersten Elastic Cluster erstellen und abfragen können. Es gibt viele Möglichkeiten, eine Verbindung herzustellen und mit Elastic Clustern loszulegen. In diesem Handbuch wird ein webbasiertes Terminal verwendet AWS Cloud9, um Ihren Elastic Cluster mithilfe der Mongo-Shell direkt von der AWS Management Console aus zu verbinden und abzufragen.

Einrichten

Wenn Sie lieber von Ihrem lokalen Computer aus eine Verbindung zu Ihrer Amazon DocumentDB herstellen möchten, indem Sie eine SSH-Verbindung zu einer Amazon EC2-Instance herstellen, finden Sie weitere Informationen unter Verbindung mit Amazon EC2 herstellen.

Voraussetzungen

Bevor Sie Ihren ersten Amazon DocumentDB-Cluster erstellen, müssen Sie Folgendes tun:

Erstellen Sie ein Amazon Web Services (AWS) -Konto

Bevor Sie Amazon DocumentDB verwenden können, benötigen Sie ein Amazon Web Services (AWS) -Konto. Das AWS Konto ist kostenlos. Sie zahlen nur für die Services und Ressourcen, die Sie wirklich nutzen.

Wenn Sie noch keinen haben AWS-Konto, führen Sie die folgenden Schritte aus, um einen zu erstellen.

Um sich für eine anzumelden AWS-Konto
  1. Öffnen Sie https://portal.aws.amazon.com/billing/signup.

  2. Folgen Sie den Online-Anweisungen.

    Bei der Anmeldung müssen Sie auch einen Telefonanruf entgegennehmen und einen Verifizierungscode über die Telefontasten eingeben.

    Wenn Sie sich für eine anmelden AWS-Konto, Root-Benutzer des AWS-Kontoswird eine erstellt. Der Root-Benutzer hat Zugriff auf alle AWS -Services und Ressourcen des Kontos. Aus Sicherheitsgründen sollten Sie einem Benutzer Administratorzugriff zuweisen und nur den Root-Benutzer verwenden, um Aufgaben auszuführen, für die Root-Benutzerzugriff erforderlich ist.

Richten Sie die erforderlichen AWS Identity and Access Management (IAM-) Berechtigungen ein.

Für den Zugriff auf die Verwaltung von Amazon DocumentDB DocumentDB-Ressourcen wie Clustern, Instances und Cluster-Parametergruppen sind Anmeldeinformationen erforderlich, mit denen Sie Ihre Anfragen authentifizieren AWS können. Weitere Informationen finden Sie unter Identity and Access Management für Amazon DocumentDB.

  1. Geben Sie in der Suchleiste von IAM ein und wählen Sie im Drop-down-Menü IAM aus. AWS Management Console

  2. Sobald Sie sich in der IAM-Konsole befinden, wählen Sie im Navigationsbereich Benutzer aus.

  3. Wählen Sie Ihren Nutzernamen aus.

  4. Klicken Sie auf den Button Berechtigungen hinzufügen.

  5. Wählen Sie die Option Attach existing policies directly (Vorhandene Richtlinien direkt anfügen) aus.

  6. Geben Sie AmazonDocDBFullAccess in die Suchleiste ein und wählen Sie sie aus, sobald sie in den Suchergebnissen erscheint.

  7. Klicken Sie unten auf die blaue Schaltfläche mit der Aufschrift Weiter: Überprüfen.

  8. Klicken Sie unten auf die blaue Schaltfläche mit der Aufschrift Berechtigungen hinzufügen.

Erstellen Sie eine Amazon Virtual Private Cloud (Amazon VPC)

Dieser Schritt ist nur erforderlich, wenn Sie noch keine Standard-Amazon-VPC haben. Wenn nicht, führen Sie Schritt 1 der Anleitung Erste Schritte mit Amazon VPC im Amazon VPC-Benutzerhandbuch durch. Dies dauert weniger als fünf Minuten.

Schritt 1: Erstellen Sie einen elastischen Cluster

In diesem Abschnitt erklären wir, wie Sie einen brandneuen elastischen Cluster erstellen, indem Sie entweder das AWS Management Console oder AWS CLI verwenden und die folgenden Anweisungen verwenden.

Using the AWS Management Console

Um eine elastische Cluster-Konfiguration zu erstellen, verwenden Sie AWS Management Console:

  1. Melden Sie sich bei der Amazon DocumentDB DocumentDB-Konsole an AWS Management Consoleund öffnen Sie sie.

  2. Wählen Sie in der Amazon DocumentDB Management Console unter Clusters die Option Create aus.

    Diagramm: Elastic Cluster Create
  3. Wählen Sie auf der Seite Amazon DocumentDB-Cluster erstellen im Abschnitt Clustertyp die Option Elastic Cluster aus.

    Diagramm: Elastischer Clustertyp
  4. Geben Sie auf der Seite Amazon DocumentDB-Cluster erstellen im Abschnitt Konfiguration eine eindeutige Cluster-ID ein (gemäß den Benennungsanforderungen unter dem Feld).

    Diagramm: Elastic Cluster Identifier
  5. Für die Shard-Konfigurationsfelder:

    1. Geben Sie im Feld Anzahl der Shards die Anzahl der Shards ein, die Sie in Ihrem Cluster haben möchten. Die maximale Anzahl von Shards pro Cluster ist 32.

      Anmerkung

      Für jeden Shard werden zwei Knoten bereitgestellt. Beide Knoten werden dieselbe Shard-Kapazität haben.

    2. Wählen Sie im Feld Anzahl der Shard-Instanzen die Anzahl der Replikatinstanzen aus, die Sie jedem Shard zuordnen möchten. Die maximale Anzahl von Shard-Instanzen beträgt 16, in Schritten von 1. Alle Replikatinstanzen haben dieselbe Shard-Kapazität, wie im folgenden Feld definiert.

      Anmerkung

      Die Anzahl der Replikatinstanzen gilt für alle Shards im Elastic Cluster. Ein Wert für die Anzahl der Shard-Instances von 1 bedeutet, dass es eine Writer-Instance gibt und alle weiteren Instances Replikate sind, die für Lesevorgänge und zur Verbesserung der Verfügbarkeit verwendet werden können.

    3. Wählen Sie im Feld Shard-Kapazität die Anzahl der virtuellen CPUs (vCPUs) aus, die jeder Shard-Instanz zugeordnet werden sollen. Die maximale Anzahl von vCPUs pro Shard-Instanz beträgt 64. Zulässige Werte sind 2, 4, 8, 16, 32, 64.

    Diagramm: Anzahl und Kapazität der Elastic Cluster-Shards
  6. Wählen Sie im Feld Virtual Private Cloud (VPC) eine VPC aus der Drop-down-Liste aus.

    Für Subnetze und VPC-Sicherheitsgruppen können Sie die Standardeinstellungen verwenden oder drei Subnetze Ihrer Wahl und bis zu drei VPC-Sicherheitsgruppen (mindestens eine) auswählen.

    Diagramm: Elastic Cluster VPC und Subnetze
  7. Geben Sie im Abschnitt Authentifizierung im Feld Benutzername eine Zeichenfolge ein, die den Anmeldenamen des Hauptbenutzers identifiziert.

    Geben Sie im Feld Passwort ein eindeutiges Passwort ein, das den Anweisungen entspricht.

    Diagramm: Elastic Cluster-Benutzername und Passwort
  8. Behalten Sie im Abschnitt Verschlüsselung die Standardeinstellungen bei.

    Optional können Sie einen von Ihnen erstellten AWS KMS key ARN eingeben. Weitere Informationen finden Sie unter Datenverschlüsselung im Ruhezustand im Ruhezustand und Deaktivieren Datenverschlüsselung Amazon DocumentDB DB-Cluster.

    Wichtig

    Die Verschlüsselung muss für elastische Cluster aktiviert sein.

  9. Bearbeiten Sie im Abschnitt Backup die Felder entsprechend Ihren Backup-Anforderungen.

    Screenshot mit dem Bereich "Backup (Sicherung)" und den Schritten zur Konfiguration des Cluster-Sicherungsfensters
    1. Aufbewahrungszeitraum für Backup — Wählen Sie in der Liste die Anzahl der Tage aus, für die automatische Backups dieses Clusters aufbewahrt werden sollen, bevor sie gelöscht werden.

    2. Backup-Fenster — Legen Sie die tägliche Uhrzeit und Dauer fest, während der Amazon DocumentDB Backups dieses Clusters erstellen soll.

      1. Wählen Sie Fenster auswählen, wenn Sie die Uhrzeit und Dauer der Erstellung von Backups konfigurieren möchten.

        Startzeit — Wählen Sie in der ersten Liste die Startzeit (UTC) für den Start Ihrer automatischen Backups aus. Wählen Sie in der zweiten Liste die Minute für den Beginn der automatischen Backups aus.

        Dauer — Wählen Sie in der Liste die Anzahl der Stunden aus, die für die Erstellung automatischer Backups reserviert werden sollen.

      2. Wählen Sie Keine Präferenz, wenn Amazon DocumentDB den Zeitpunkt und die Dauer der Erstellung von Backups wählen soll.

  10. Wählen Sie im Abschnitt Wartung den Tag, die Uhrzeit und die Dauer aus, an dem Änderungen oder Patches auf Ihren Cluster angewendet werden.

    Diagramm: Benutzername und Passwort für Elastic Cluster
  11. Wählen Sie Cluster erstellen.

Der elastische Cluster wird jetzt bereitgestellt. Es kann einige Minuten dauern, bis dieser Vorgang abgeschlossen ist. Sie können eine Verbindung zu Ihrem Cluster herstellen, wenn der Elastic Cluster-Status wie active in der Cluster-Liste angezeigt wird.

Using the AWS CLI

Um einen elastischen Cluster mit dem zu erstellen AWS CLI, verwenden Sie den create-cluster Vorgang mit den folgenden Parametern:

  • --cluster-name—Erforderlich. Der aktuelle Name des Elastic Scale Clusters, wie er bei der Erstellung eingegeben oder zuletzt geändert wurde.

  • --shard-capacity—Erforderlich. Die Anzahl der vCPUs, die jedem Shard zugewiesen sind. Das Maximum ist 64. Zulässige Werte sind 2, 4, 8, 16, 32, 64.

  • --shard-count—Erforderlich. Die Anzahl der dem Cluster zugewiesenen Shards. Das Maximum ist 32.

  • --shard-instance-count— Fakultativ. Die Anzahl der Replikatinstanzen, die für alle Shards in diesem Cluster gelten. Das Maximum ist 16.

  • --admin-user-name—Erforderlich. Der dem Admin-Benutzer zugeordnete Benutzername.

  • --admin-user-password—Erforderlich. Das dem Admin-Benutzer zugeordnete Passwort.

  • --auth-type—Erforderlich. Der Authentifizierungstyp, der verwendet wird, um zu bestimmen, wo das für den Zugriff auf den Elastic Cluster verwendete Passwort abgerufen werden soll. Gültige Typen sind PLAIN_TEXT oderSECRET_ARN.

  • --vpc-security-group-ids— Fakultativ. Konfigurieren Sie eine Liste von EC2-VPC-Sicherheitsgruppen, die diesem Cluster zugeordnet werden sollen.

  • --preferred-maintenance-window— Optional. Konfigurieren Sie den wöchentlichen Zeitraum, in dem die Systemwartung erfolgen kann, in UTC (Universal Coordinated Time).

    Das Format ist:ddd:hh24:mi-ddd:hh24:mi. Gültige Tage (ddd): Mo, Di, Mi, Do, Fr, Sa, So

    Die Standardeinstellung ist ein 30-minütiges Fenster, das nach dem Zufallsprinzip aus einem 8-Stunden-Zeitblock für jede Amazon Web Services Services-Region ausgewählt wird und an einem zufälligen Wochentag stattfindet.

    Zeitfenster von mindestens 30 Minuten.

  • --kms-key-id— Fakultativ. Konfigurieren Sie die KMS-Schlüssel-ID für einen verschlüsselten Cluster.

    Die KMS-Schlüssel-ID ist der Amazon-Ressourcenname (ARN) für den AWS KMS Verschlüsselungsschlüssel. Wenn Sie einen Cluster mit demselben Amazon Web Services Services-Konto erstellen, dem der KMS-Verschlüsselungsschlüssel gehört, der zur Verschlüsselung des neuen Clusters verwendet wird, können Sie den KMS-Schlüsselalias anstelle des ARN für den KMS-Verschlüsselungsschlüssel verwenden.

    Wenn in kein Verschlüsselungsschlüssel angegeben ist KmsKeyId und der StorageEncrypted Parameter wahr ist, verwendet Amazon DocumentDB Ihren Standard-Verschlüsselungsschlüssel.

  • --preferred-backup-window— Optional. Der bevorzugte tägliche Zeitraum, in dem automatische Backups erstellt werden. Die Standardeinstellung ist ein 30-minütiges Fenster, das nach dem Zufallsprinzip aus einem Zeitblock von jeweils AWS-Region 8 Stunden ausgewählt wird.

  • --backup-retention-period— Fakultativ. Die Anzahl von Tagen, über die hinweg automatische Sicherungen aufbewahrt werden. Der Standardwert lautet 1.

  • --storage-encrypted—Fakultativ. Konfiguriert, ob der Cluster verschlüsselt oder nicht verschlüsselt ist.

    --no-storage-encryptedgibt an, dass der Cluster nicht verschlüsselt ist.

  • --subnet-ids— Optional. Konfigurieren Sie Netzwerk-Subnetz-IDs.

Ersetzen Sie im folgenden Beispiel jeden Platzhalter für Benutzereingaben durch Ihre eigenen Informationen.

Anmerkung

Die folgenden Beispiele beinhalten die Erstellung eines bestimmten KMS-Schlüssels. Um den Standard-KMS-Schlüssel zu verwenden, schließen Sie den --kms-key-id Parameter nicht ein.

Für Linux, macOS oder Unix:

aws docdb-elastic create-cluster \ --cluster-name sample-cluster-123 \ --shard-capacity 8 \ --shard-count 4 \ --shard-instance-count 3 \ --auth-type PLAIN_TEXT \ --admin-user-name testadmin \ --admin-user-password testPassword \ --vpc-security-group-ids ec-65f40350 \ --kms-key-id arn:aws:docdb-elastic:us-east-1:477568257630:cluster/b9f1d489-6c3e-4764-bb42-da62ceb7bda2 \ --subnet-ids subnet-9253c6a3, subnet-9f1b5af9 \ --preferred-backup-window 18:00-18:30 \ --backup-retention-period 7

Für Windows:

aws docdb-elastic create-cluster ^ --cluster-name sample-cluster-123 ^ --shard-capacity 8 ^ --shard-count 4 ^ --shard-instance-count 3 ^ --auth-type PLAIN_TEXT ^ --admin-user-name testadmin ^ --admin-user-password testPassword ^ --vpc-security-group-ids ec-65f40350 ^ --kms-key-id arn:aws:docdb-elastic:us-east-1:477568257630:cluster/b9f1d489-6c3e-4764-bb42-da62ceb7bda2 ^ --subnet-ids subnet-9253c6a3, subnet-9f1b5af9 \ --preferred-backup-window 18:00-18:30 \ --backup-retention-period 7

Schritt 2: Erstellen Sie eine AWS Cloud9 Umgebung

AWS Cloud9 bietet ein webbasiertes Terminal, mit dem Sie mithilfe der Mongo-Shell eine Verbindung zu Ihren elastischen Amazon DocumentDB-Clustern herstellen und diese abfragen können.

Anmerkung

Hinweis: Ihre AWS Cloud9 Umgebung muss sich in derselben Sicherheitsgruppe wie Ihre Instance befinden. Sie können die Sicherheitsgruppe in der Amazon EC2 EC2-Konsole ändern.

  1. Verwenden Sie Ihr AWS Konto und greifen Sie auf die AWS Management Consolezu.

  2. Navigieren Sie zur AWS Cloud9 Konsole. Sie können „Cloud9" in das Suchfeld eingeben, um es zu finden.

  3. Wählen Sie auf der Startseite der AWS Cloud9Umgebung die Option Umgebung erstellen aus.

  4. Geben Sie auf der Seite Namensumgebung im Feld Name einen Namen Ihrer Wahl ein.

    Klicken Sie auf Nächster Schritt.

    Diagramm: Cloud9-Name
  5. Wählen Sie in den Umgebungseinstellungen im Abschnitt Umgebungstyp die Option Neue EC2-Instanz für die Umgebung erstellen (Direktzugriff) aus.

    Wählen Sie im Abschnitt Instanztyp einen geeigneten Instanztyp für Ihr Netzwerk aus.

    Wählen Sie im Bereich Plattform Amazon Linux 2 (empfohlen) aus.

    Diagramm: Cloud9-Umgebungseinstellungen
  6. Erweitern Sie Network settings (advanced) (Netzwerkeinstellungen (erweitert)).

    Wählen Sie die VPC und eines der Subnetze aus, die Sie bei der Erstellung Ihres Elastic Clusters verwendet haben.

    Klicken Sie auf Nächster Schritt.

    Diagramm: Cloud9-Netzwerkeinstellungen
  7. Überprüfen Sie Ihre AWS Cloud9 Konfiguration.

    Wenn Ihre Konfiguration korrekt ist, wählen Sie Umgebung erstellen.

Schritt 3: Installieren Sie die Mongo-Shell

Sobald Ihre AWS Cloud9 Umgebung bereit ist, können Sie eine Verbindung zu Ihrem Cluster herstellen. Installieren Sie als Nächstes die Mongo-Shell in Ihrer AWS Cloud9 Umgebung, die Sie in Schritt 3 erstellt haben. Die Mongo-Shell ist ein Befehlszeilenprogramm, mit dem Sie eine Verbindung zu Ihrem Elastic Cluster herstellen und ihn abfragen können.

Wenn Ihre AWS Cloud9 Umgebung ab Schritt 3 noch geöffnet ist, kehren Sie zu dieser Umgebung zurück und fahren Sie mit Anweisung 3 fort. Wenn Sie Ihre AWS Cloud9 Umgebung verlassen haben, suchen Sie in der AWS Cloud9 Konsole unter Ihre Umgebungen nach der Umgebung, die mit dem Namen beschriftet ist, den Sie im vorherigen Schritt festgelegt haben. Wählen Sie IDE öffnen.

  1. Erstellen Sie in der Befehlszeile die Repository-Datei mit dem folgenden Befehl:

    echo -e "[mongodb-org-4.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/4.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo
  2. Wenn der Vorgang abgeschlossen ist, installieren Sie die Mongo-Shell mit dem folgenden Befehl:

    sudo yum install -y mongodb-org-shell

Schritt 4: Connect zu Ihrem neuen Elastic Cluster her

Stellen Sie mithilfe der Mongo-Shell, die Sie in Schritt 4 installiert haben, eine Connect zu Ihrem Cluster her.

  1. Suchen Sie in der Amazon DocumentDB Management Console unter Clusters Ihren Cluster. Sortieren Sie nach Rolle, um alle Cluster mit der Rolle Elastic Cluster anzuzeigen.

    Diagramm: Bildschirm mit der Liste elastischer Cluster
  2. Wählen Sie den Cluster aus, den Sie erstellt haben, indem Sie die Cluster-ID auswählen. Kopieren Sie Ihren Endpunkt aus Konnektivität und Sicherheit und fügen Sie ihn in Ihre AWS Cloud9 Umgebung ein.

    Diagramm: Elastic Cluster Connect-Bildschirm
  3. Sobald die Verbindung hergestellt ist, sollten Sie die folgende Ausgabe sehen:

    Diagramm: Endgültiger Bildschirm zum Verbinden elastischer Cluster

Schritt 5: Teilen Sie Ihre Sammlung; fügen Sie Daten ein und fragen Sie sie ab

Elastische Cluster bieten Unterstützung für Sharding in Amazon DocumentDB. Jetzt, da Sie mit Ihrem Cluster verbunden sind, können Sie den Cluster teilen, Daten einfügen und einige Abfragen ausführen.

  1. Um eine Sammlung zu teilen, geben Sie Folgendes ein:

    sh.shardCollection("db.Employee1" , { "Employeeid" : "hashed" })

  2. Um ein einzelnes Dokument einzufügen, geben Sie Folgendes ein:

    db.Employee1.insert({"Employeeid":1, "Name":"Joe", "LastName": "Bruin", "level": 1 })

    Die folgende Ausgabe wird angezeigt:

    WriteResult({ "nInserted" : 1 })

  3. Um das Dokument zu lesen, das Sie geschrieben haben, geben Sie den findOne() Befehl ein (es wird ein einzelnes Dokument zurückgegeben):

    db.Employee1.findOne()

    Die folgende Ausgabe wird angezeigt:

    { "_id" : ObjectId("61f344e0594fe1a1685a8151"), "EmployeeID" : 1, "Name" : "Joe", "LastName" : "Bruin", "level" : 1 }
  4. Um ein paar weitere Abfragen durchzuführen, sollten Sie einen Anwendungsfall für ein Spieleprofil in Betracht ziehen. Fügen Sie zunächst einige Einträge in eine Sammlung mit dem Titel „Mitarbeiter“ ein. Geben Sie Folgendes ein:

    db.Employee1.insertMany([ { "Employeeid" : 1, "name" : "Matt", "lastname": "Winkle", "level": 12}, { "Employeeid" : 2, "name" : "Frank", "lastname": "Chen", "level": 2}, { "Employeeid" : 3, "name" : "Karen", "lastname": "William", "level": 7}, { "Employeeid" : 4, "name" : "Katie", "lastname": "Schaper", "level": 3} ])

    Die folgende Ausgabe wird angezeigt:

    { "acknowledged" : true, "insertedIds" : [ 1, 2, 3, 4 ] }

  5. Um alle Dokumente in der Profilsammlung zurückzugeben, geben Sie den Befehl find () ein:

    db.Employee1.find()

    Die Daten, die Sie in Schritt 4 eingegeben haben, werden angezeigt.

  6. Um ein einzelnes Dokument abzufragen, fügen Sie einen Filter hinzu (z. B.: „Katie“). Geben Sie Folgendes ein:

    db.Employee1.find({name: "Katie"})

    Die folgende Ausgabe wird angezeigt:

    { "_id" : 4, "name" : "Katie", "lastname": "Schaper", "level": 3}

  7. Um ein Profil zu finden und es zu ändern, geben Sie den findAndModify Befehl ein. In diesem Beispiel erhält der Mitarbeiter „Matt“ eine höhere Stufe von „14":

    db.Employee1.findAndModify({ query: { "Employeeid" : 1, "name" : "Matt"}, update: { "Employeeid" : 1, "name" : "Matt", "lastname" : "Winkle", "level" : 14 } })

    Die folgende Ausgabe wird angezeigt (beachten Sie, dass sich der Pegel noch nicht geändert hat):

    { "_id" : 1, "name" : "Matt", "lastname" : "Winkle", "level" : 12, }
  8. Geben Sie die folgende Abfrage ein, um den Levelanstieg zu überprüfen:

    db.Employee1.find({name: "Matt"})

    Die folgende Ausgabe wird angezeigt:

    { "_id" : 1, "name" : "Matt", "lastname" : "winkle", "level" : 14 }