Selbstverwaltete MongoDB-Datenbank für CDC konfigurieren

Mit Datastream können Sie Change Data Capture-Updates (CDC) aus selbstverwalteten MongoDB-Replikatgruppen oder fragmentierten Clustern in ein unterstütztes Ziel wie BigQuery oder Cloud Storage streamen. Zum Vorbereiten der Quelle erstellen Sie einen Datastream-Nutzer mit Leseberechtigungen in der admin-Datenbank für Ihre Bereitstellung.

Replikatset

Informationen zum Bereitstellen eines selbstverwalteten MongoDB-Replikatsets finden Sie in der MongoDB-Dokumentation.

Führen Sie folgende Schritte aus, um Datastream zur Verwendung mit einem selbstverwalteten MongoDB-Replikatset zu konfigurieren:

  1. Installieren Sie die MongoDB-Shell. Informationen zum Installieren der MongoDB-Shell finden Sie unter mongosh installieren.
  2. Öffnen Sie ein Terminalfenster und führen Sie den Befehl mongosh aus, um eine Verbindung zu Ihrem Replikatset oder primären Knoten herzustellen.
  3. Erstellen Sie in der Datenbank admin einen Nutzer für Datastream:

    use admin
    db.createUser({
      user: "USERNAME",
      pwd: "PASSWORD",
      roles: [ "readAnyDatabase", {role: "read", db: "admin"} ]
    })
    

    Ersetzen Sie USERNAME und PASSWORD durch Ihren bevorzugten Nutzernamen und Ihr bevorzugtes Passwort.

Fragmentierter Cluster

Informationen zum Bereitstellen eines fragmentierten Clusters finden Sie in der MongoDB-Dokumentation.

Führen Sie folgende Schritte aus, um Datastream zur Verwendung mit einem selbstverwalteten fragmentierten MongoDB-Cluster zu konfigurieren:

  1. Installieren Sie die MongoDB-Shell. Informationen zum Installieren der MongoDB-Shell finden Sie unter mongosh installieren.
  2. Öffnen Sie ein Terminalfenster und führen Sie den Befehl mongosh aus, um eine Verbindung zu Ihrem fragmentierten MongoDB-Cluster herzustellen.
  3. Erstellen Sie einen Datastream-Nutzer in jedem primären Shard-Knoten und im mongos-Abfragerouter:

    use admin
    db.createUser({
       user: "USERNAME",
       pwd: "PASSWORD",
       roles: [ "readAnyDatabase" ]
    })
    

    Ersetzen Sie USERNAME und PASSWORD durch Ihren Nutzernamen und Ihr Passwort. Sie können einen beliebigen Nutzernamen und ein beliebiges Passwort auswählen. Diese müssen jedoch für alle primären Shard-Knoten und den mongos-Abfragerouter identisch sein.

  4. Führen Sie den folgenden Befehl aus, um herauszufinden, welche Shards mit dem mongos-Abfragerouter verbunden sind:

    db.adminCommand({ listShards: 1 })