Creazione di profili di connessione

Questa pagina descrive la parte di preparazione della procedura di migrazione in cui crei i profili di connessione Datastream che verranno utilizzati in un secondo momento per importare i dati dal database di origine compatibile con MongoDB al bucket Cloud Storage.

In questa fase, esegui le seguenti operazioni:

  1. Crea un profilo di connessione Cloud Storage per il bucket Cloud Storage che hai creato in precedenza.
  2. Crea un profilo di connessione per il database di origine compatibile con MongoDB.

Accedi a gcloud CLI

La procedura di migrazione descritta nelle sezioni successive utilizza gcloud CLI per configurare e attuare i passaggi di migrazione. Inizia accedendo Google Cloud al progetto che ospiterà la pipeline di migrazione e selezionandolo.

gcloud auth login
gcloud config set project "$PROJECT_ID"

Crea un profilo di connessione per il database di origine

MongoDB su Compute Engine

Esegui il seguente comando per creare un profilo di connessione Datastream al database MongoDB ospitato su Compute Engine.

  • Ometti il flag --mongodb-replica-set dal seguente comando quando ti connetti a un cluster con sharding.
  • Ometti il flag --mongodb-additional-options=readPreference=secondary solo quando ti connetti a un'istanza autonoma senza secondari del set di repliche.
gcloud datastream connection-profiles create "$SRC_CONNECTION_PROFILE_NAME" \
--display-name="$SRC_CONNECTION_PROFILE_NAME" \
--location="$LOCATION" \
--mongodb-username="$MONGODB_USERNAME" \
--mongodb-password="$MONGODB_PASSWORD" \
--mongodb-host-addresses="$MONGODB_IP_ADDRESS" \
--mongodb-replica-set="$REPLICA_SET" \
--private-connection="$PRIVATE_CONNECTION_NAME" \
--mongodb-standard-connection-format \
--type=mongodb \
--mongodb-direct-connection \
--mongodb-additional-options=readPreference=secondary

MongoDB su SSH

Questo esempio presuppone che tu abbia già configurato la connettività SSH alla tua rete privata, direttamente alla macchina che ospita il server compatibile con MongoDB o tramite un host bastion.

Esegui il seguente comando per creare un profilo di connessione Datastream al database MongoDB ospitato su Compute Engine.

  • Ometti il flag --mongodb-replica-set dal seguente comando quando ti connetti a un cluster con sharding.
  • Ometti il flag --mongodb-additional-options=readPreference=secondary solo quando ti connetti a un'istanza autonoma senza secondari del set di repliche.

Se vuoi connetterti con una password SSH, passa il flag --forward-ssh-password anziché il flag --forward-ssh-private-key.

gcloud datastream connection-profiles create "$SRC_CONNECTION_PROFILE_NAME" \
--display-name="$SRC_CONNECTION_PROFILE_NAME" \
--location="$LOCATION" \
--mongodb-username="$MONGODB_USERNAME" \
--mongodb-password="$MONGODB_PASSWORD" \
--mongodb-host-addresses="$MONGODB_IP_ADDRESS" \
--mongodb-replica-set="$REPLICA_SET" \
--forward-ssh-hostname="$BASTION_IP_ADDRESS" \
--forward-ssh-port="$BASTION_SSH_PORT" \
--forward-ssh-username="$BASTION_SSH_USERNAME" \
--forward-ssh-private-key="$BASTION_SSH_PRIVATE_KEY" \
--mongodb-standard-connection-format \
--type=mongodb \
--mongodb-direct-connection \
--mongodb-additional-options=readPreference=secondary

Amazon DocumentDB

Questo esempio presuppone che tu abbia ottenuto i parametri e i certificati richiesti per la connettività di Amazon DocumentDB.

Prima di creare un profilo di connessione, abilita esplicitamente gli modifiche in tempo reale nel database Amazon DocumentDB. Per istruzioni su come abilitare questa funzionalità, consulta la guida agli stream di modifiche di Amazon DocumentDB.

Esegui il seguente comando per creare un profilo di connessione Datastream al database DocumentDB:

gcloud datastream connection-profiles create "$SRC_CONNECTION_PROFILE_NAME" \
--display-name="$SRC_CONNECTION_PROFILE_NAME" \
--location="$LOCATION" \
--mongodb-username="$MONGODB_USERNAME" \
--mongodb-password="$MONGODB_PASSWORD" \
--mongodb-host-addresses="$MONGODB_HOST_ADDRESS" \
--mongodb-replica-set="$REPLICA_SET" \
--forward-ssh-hostname="$BASTION_IP_ADDRESS" \
--forward-ssh-port="$BASTION_SSH_PORT" \
--forward-ssh-username="$BASTION_SSH_USERNAME" \
--forward-ssh-private-key="$BASTION_SSH_PRIVATE_KEY" \
--mongodb-ca-certificate="$DOCUMENT_DB_CA_CERTIFICATE" \
--mongodb-tls \
--mongodb-standard-connection-format \
--type=mongodb \
--mongodb-direct-connection

Azure Cosmos DB

Abilita esplicitamente le modifiche in tempo reale per MongoDB nell'API di Azure Cosmos DB per consentire l'avvio degli stream Datastream.

Questo passaggio richiede l'installazione dell'interfaccia a riga di comando di Azure.

az resource patch --ids "/subscriptions/subscription_id/resourceGroups/resource_group_name/providers/Microsoft.DocumentDB/mongoClusters/vCore_cluster_name" \
--api-version 2024-10-01-preview \
--properties "{\"previewFeatures\": [ \"ChangeStreams\"]}"

Sostituisci subscription_id, resource_group_name e vCore_cluster_name con i valori corrispondenti alla tua implementazione di Azure Cosmos DB.

Esegui il seguente comando per creare un profilo di connessione Datastream all'origine Azure Cosmos DB.

Questo esempio presuppone che l'origine sia accessibile tramite un DNS pubblico o un indirizzo IP che può essere espresso nel formato di connessione SRV MongoDB. Le istruzioni presuppongono anche che il server Azure Cosmos DB utilizzi una combinazione di nome utente e password per l'autenticazione.

gcloud datastream connection-profiles create "$SRC_CONNECTION_PROFILE_NAME" \
--display-name="$SRC_CONNECTION_PROFILE_NAME" \
--location="$LOCATION" \
--mongodb-username="$MONGODB_USERNAME" \
--mongodb-password="$MONGODB_PASSWORD" \
--mongodb-host-addresses="$MONGODB_HOST_ADDRESS" \
--mongodb-srv-connection-format \
--type=mongodb \
--static-ip-connectivity \
--labels=skip_all_validations=true

MongoDB Atlas

Esegui il seguente comando per creare un profilo di connessione Datastream al database di origine MongoDB Atlas.

Questo esempio presuppone che l'origine sia accessibile tramite un DNS pubblico o un indirizzo IP che può essere espresso nel formato di connessione SRV MongoDB. Le istruzioni presuppongono anche che il server MongoDB Atlas utilizzi una combinazione di nome utente e password per l'autenticazione.

gcloud datastream connection-profiles create "$SRC_CONNECTION_PROFILE_NAME" \
--display-name="$SRC_CONNECTION_PROFILE_NAME" \
--location="$LOCATION" \
--mongodb-username="$MONGODB_USERNAME" \
--mongodb-password="$MONGODB_PASSWORD" \
--mongodb-host-addresses="$MONGODB_HOST_ADDRESS" \
--mongodb-srv-connection-format \
--type=mongodb \
--static-ip-connectivity \
--mongodb-additional-options=readPreference=secondary

Per ulteriori informazioni sul monitoraggio della creazione del profilo di connessione, consulta Risoluzione dei problemi.

Crea un profilo di connessione Cloud Storage

Configura il profilo di connessione Datastream per la destinazione Cloud Storage, ovvero il bucket che hai creato in precedenza.

gcloud datastream connection-profiles create "$DST_CONNECTION_PROFILE_NAME" \
--display-name="$DST_CONNECTION_PROFILE_NAME" \
--location="$LOCATION" \
--type=google-cloud-storage \
--bucket="$GCS_BUCKET_NAME" \
--root-path="/$GCS_BUCKET_ROOT_PATH"

Per ulteriori informazioni sul monitoraggio della creazione del profilo di connessione, consulta Risoluzione dei problemi.

Passaggi successivi

Procedi con l' importazione dal database di origine.