Configurer une base de données MongoDB autogérée pour la CDC

Vous pouvez diffuser des mises à jour de capture de données modifiées (CDC) à partir d'ensembles d'instances répliquées ou de clusters segmentés MongoDB autogérés vers une destination compatible, telle que BigQuery ou Cloud Storage, à l'aide de Datastream. Pour préparer votre source, vous devez créer un utilisateur Datastream disposant de droits de lecture dans la base de données admin de votre déploiement.

Ensemble d'instances répliquées

Pour en savoir plus sur le déploiement d'un ensemble d'instances répliquées MongoDB, consultez la page Déployer un ensemble d'instances répliquées autogéré dans la documentation MongoDB.

Pour configurer Datastream pour l'utiliser avec un ensemble d'instances répliquées MongoDB autogéré, procédez comme suit :

  1. Installez le shell MongoDB. Pour en savoir plus sur l'installation du shell MongoDB, consultez Installer mongosh.
  2. Ouvrez une fenêtre de terminal et exécutez la commande mongosh pour vous connecter à votre ensemble d'instances répliquées ou à votre nœud principal.
  3. Créez un utilisateur pour Datastream dans la base de données admin :

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

    Remplacez USERNAME et PASSWORD par le nom d'utilisateur et le mot de passe de votre choix.

Cluster segmenté

Pour en savoir plus sur le déploiement d'un cluster segmenté, consultez la page Deploy a sharded cluster (Déployer un cluster segmenté) dans la documentation MongoDB.

Pour configurer Datastream pour l'utiliser avec un cluster segmenté MongoDB autogéré, procédez comme suit :

  1. Installez le shell MongoDB. Pour en savoir plus sur l'installation du shell MongoDB, consultez Installer mongosh.
  2. Ouvrez une fenêtre de terminal et exécutez la commande mongosh pour vous connecter à votre cluster segmenté MongoDB.
  3. Créez un utilisateur Datastream dans chaque nœud de segment principal et dans le routeur de requêtes mongos :

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

    Remplacez USERNAME et PASSWORD par votre nom d'utilisateur et votre mot de passe. Vous pouvez choisir n'importe quel nom d'utilisateur et mot de passe, mais ils doivent être identiques sur tous les nœuds de segment principaux et le routeur de requêtes mongos.

  4. Pour savoir quels segments sont connectés au routeur de requêtes mongos, exécutez la commande suivante :

    db.adminCommand({ listShards: 1 })