Configurer la connectivité réseau aux sources Oracle auto-hébergées

Cette page explique comment configurer la connectivité réseau vers des sources Oracle auto-hébergées pour les migrations hétérogènes d'Oracle vers AlloyDB pour PostgreSQL avec Database Migration Service.

Vous pouvez configurer la connectivité réseau nécessaire pour les migrations à partir de sources Oracle auto-hébergées de trois manières différentes :

Configurer la connectivité de la liste d'autorisation d'adresses IP

Pour utiliser la méthode de connectivité par liste d'autorisation d'adresses IP publiques, procédez comme suit :

  1. Assurez-vous que votre base de données source dispose d'une adresse IP accessible depuis l'Internet public. Vous n'avez pas besoin d'utiliser l'adresse IP pour vous connecter. Si un enregistrement DNS est associé à l'adresse IP, vous pouvez l'utiliser à la place.
  2. Créez une règle de pare-feu entrante sur votre serveur de base de données source pour accepter les connexions provenant de Database Migration Service. Utilisez la configuration suivante :
    1. Pour le type de règle, utilisez port.
    2. Pour la plage d'adresses IP autorisées, ajoutez toutes les adresses IP publiques de Database Migration Service pour la région dans laquelle vous créez le job de migration.
    3. Définissez le protocole sur TCP.
    4. Définissez le numéro de port associé à la règle sur le port sur lequel votre base de données source écoute les connexions entrantes. Il s'agit du même numéro de port que celui que vous devez saisir dans le profil de connexion source.

      Le serveur Oracle utilise par défaut le port 1521.

    La procédure de configuration des règles de pare-feu varie en fonction du logiciel serveur que vous utilisez. Pour en savoir plus, consultez la documentation de votre produit de pare-feu.

  3. Plus tard, lorsque vous créerez le profil de connexion source, sélectionnez Liste d'autorisation d'adresses IP dans la section Définir une méthode de connectivité.

Configurer la connectivité via un tunnel SSH de transfert

Pour vous connecter à votre base de données source à l'aide d'un tunnel SSH (Secure Shell), procédez comme suit :

  1. Créez une machine virtuelle (VM) capable d'ouvrir le tunnel entre Database Migration Service et votre base de données source. Le serveur de tunnel peut être n'importe quel hôte Unix/Linux qui :
    • Accessible depuis l'Internet public via SSH.
    • Peut accéder à l'adresse IP privée de votre base de données source.
  2. Sur le serveur SSH, créez un compte utilisateur que Database Migration Service pourra utiliser pour se connecter au tunnel SSH.

    Par exemple, sur un système Ubuntu, vous pouvez utiliser les commandes suivantes :

    1. Créez un compte utilisateur :
      adduser TUNNEL_ACCOUNT_USERNAME
    2. Limitez l'accès au shell pour le compte utilisateur afin d'améliorer la sécurité :
      usermod -s /usr/sbin/nologin TUNNEL_ACCOUNT_USERNAME
  3. Choisissez la méthode d'authentification que Database Migration Service doit utiliser pour se connecter au tunnel.

    Vous pouvez utiliser un mot de passe ou générer des clés SSH au format PEM que vous pourrez ensuite importer dans Database Migration Service lorsque vous créerez le profil de connexion source.

    • Si vous souhaitez utiliser un mot de passe, vous n'avez pas besoin de configurer d'autres éléments. Mémorisez le mot de passe que vous avez créé pour le compte TUNNEL_ACCOUNT_USERNAME.
    • Si vous souhaitez utiliser l'authentification basée sur une clé, vous devez générer une paire de clés privée/publique. Par exemple, vous pouvez utiliser l'utilitaire ssh-keygen :
      1. Générez la paire de clés :
        ssh-keygen -m PEM -f YOUR_KEY_NAME
      2. Copiez la clé publique (YOUR_KEY_NAME.pub) dans le répertoire ~/.ssh/ de votre serveur de tunnel.
      3. Enregistrez la clé privée. Vous devrez l'importer ultérieurement dans Database Migration Service lorsque vous créerez le profil de connexion source.
  4. Modifiez le fichier /etc/ssh/sshd_config pour configurer le tunnel SSH de transfert en fonction des exigences de votre organisation. Nous vous recommandons d'utiliser les paramètres suivants :
    # Only allow the Database Migration Service user to connect.
    AllowUsers TUNNEL_ACCOUNT_USERNAME
    
    # Send keep-alive packets every 60 seconds to ensure that
    # the tunnel doesn't close during the migration
    ServerAliveInterval=60
    
    # Optional: Force key-based authentication
    PasswordAuthentication no
    
    # Enables Database Migration Service to connect from a different host
    PermitTunnel yes
    GatewayPorts yes
  5. Exécutez la commande ssh pour démarrer le tunnel.

    Avant d'utiliser les données de commande ci-dessous, effectuez les remplacements suivants :

    • TUNNEL_SERVER_SSH_PORT par le numéro de port sur lequel votre serveur écoute les connexions SSH.
    • SOURCE_DATABASE_PRIVATE_IP par l'adresse IP privée de votre base de données source. Le serveur SSH doit pouvoir accéder à cette adresse IP.
    • SOURCE_DATABASE_PORT par le numéro de port sur lequel votre base de données source écoute les connexions. Le numéro de port par défaut pour les connexions TCP sur Oracle est 1433.
    • USERNAME par le nom du compte utilisateur qui exécutera le tunnel. Il s'agit d'un compte distinct de TUNNEL_ACCOUNT_USERNAME.
    • TUNNEL_SERVER_PUBLIC_IP par l'adresse IP publique de votre serveur de tunnel SSH.
    ssh -N -L \
    TUNNEL_SERVER_SSH_PORT:SOURCE_DATABASE_PRIVATE_IP:SOURCE_DATABASE_PORT \
    USERNAME@TUNNEL_SERVER_PUBLIC_IP
  6. Créez une règle de pare-feu entrante sur votre tunnel SSH pour accepter les connexions provenant des adresses IP publiques de Database Migration Service pour la région dans laquelle vous créez le job de migration.
  7. Plus tard, lorsque vous créerez le profil de connexion source, procédez comme suit :
    1. Dans la section Définir les détails de connexion, saisissez l'adresse IP privée de votre instance Oracle source.
    2. Dans la section Définir la méthode de connectivité, sélectionnez Tunnel SSH de transfert.
    3. Indiquez l'adresse IP publique ou le nom d'hôte de votre serveur SSH.
    4. Indiquez le port que vous avez désigné pour les connexions SSH sur le serveur du tunnel.
    5. Saisissez le nom d'utilisateur que vous avez créé pour que Database Migration Service se connecte (c'est-à-dire la valeur de TUNNEL_ACCOUNT_USERNAME).
    6. Dans le menu déroulant Méthode d'authentification, sélectionnez la méthode d'authentification que vous souhaitez utiliser avec l'utilisateur TUNNEL_ACCOUNT_USERNAME :
      • Si vous souhaitez utiliser le mot de passe utilisateur, sélectionnez Mot de passe et saisissez le mot de passe TUNNEL_ACCOUNT_USERNAME dans le formulaire.
      • Si vous avez configuré votre serveur SSH pour qu'il utilise l'authentification basée sur une clé, sélectionnez Paire de clés privée/publique et importez la clé privée que vous avez générée avec la commande ssh-keygen.

Configurer la connectivité privée : interfaces Private Service Connect

Cette méthode de connectivité vous permet de vous connecter à l'adresse IP privée de votre base de données source sans consommer de quota d'appairage de VPC. Les interfaces Private Service Connect sont la méthode recommandée pour la connectivité IP privée.

Rôles requis

Pour obtenir les autorisations nécessaires pour configurer des interfaces Private Service Connect, demandez à votre administrateur d'accorder les rôles IAM requis sur votre projet pour les comptes impliqués dans le processus de migration suivants :

  • Compte utilisateur qui effectue la migration :
  • Si vous devez créer un rattachement de réseau ou son sous-réseau sous-jacent dans un projet différent de Database Migration Service (par exemple, si vous utilisez un projet hôte de VPC partagé), vous devez attribuer le rôle suivant au compte de service Database Migration Service (service-PROJECT_NUMBER@gcp-sa-datamigration.iam.gserviceaccount.com) : Lecteur de réseau Compute (roles/compute.networkViewer)

Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Ces rôles prédéfinis contiennent les autorisations requises pour effectuer des migrations SQL Server homogènes avec Database Migration Service. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Vous devez disposer des autorisations suivantes pour effectuer des migrations SQL Server homogènes avec Database Migration Service :

  • Compte utilisateur qui effectue la migration :
    • datamigration.*
    • compute.networkAttachments.create
    • compute.networkAttachments.get
    • compute.networkAttachments.list
    • compute.networkAttachments.update
    • compute.networkAttachments.delete
  • Compte de service Database Migration Service :
    • compute.networkAttachments.get
    • compute.networkAttachments.update
    • compute.subnetworks.get
    • compute.subnetworks.list

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Pour les sources auto-hébergées dans Google Cloud

Pour utiliser la connectivité privée avec des interfaces Private Service Connect pour une base de données Oracle source hébergée sur une VM Compute Engine, procédez comme suit :

  1. Créez un rattachement de réseau dans le VPC où se trouve votre source auto-hébergée. Suivez ces étapes :
    1. Dans la console Google Cloud , accédez à la page Rattachements de réseau.

      Accéder à la page "Rattachements de réseau"

    2. Cliquez sur Créer un rattachement de réseau.
    3. Saisissez un nom pour la pièce jointe.
    4. Dans le menu Réseau, sélectionnez le VPC où se trouve votre source auto-hébergée.
    5. Pour la région, utilisez la même région que celle où vous prévoyez de créer la base de données de destination.

      Database Migration Service est un produit entièrement régional, ce qui signifie que toutes les entités liées à votre migration (profils de connexion source et de destination, jobs de migration, bases de données de destination, espaces de travail de conversion) doivent être enregistrées dans une seule région.

    6. Dans Préférences de connexion, sélectionnez Accepter les connexions pour les projets sélectionnés.

      Database Migration Service ajoute automatiquement le projet producteur à la liste Projets acceptés lorsque vous créez la configuration de connectivité privée.

    7. N'ajoutez pas de projets acceptés ni de projets refusés.
    8. Cliquez sur Créer un rattachement de réseau.
  2. Dans Database Migration Service, créez une configuration de connectivité privée pour les interfaces Private Service Connect.
  3. Plus tard, lorsque vous créerez le profil de connexion source, procédez comme suit :
    1. Dans la section Définir les détails de connexion, saisissez l'adresse IP de la VM Compute Engine sur laquelle vous hébergez la base de données Oracle.

      Vous pouvez afficher l'adresse IP de la VM dans la console Google Cloud .

    2. Dans la section Définir la méthode de connectivité, sélectionnez Connectivité privée.
    3. Dans le menu déroulant, sélectionnez la configuration de connectivité privée que vous avez créée à l'étape précédente.

Pour les sources auto-hébergées en dehors de Google Cloud

Pour utiliser la connectivité privée avec des interfaces Private Service Connect pour une base de données source Oracle auto-hébergée qui réside dans un réseau en dehors deGoogle Cloud, procédez comme suit :

  1. Configurez une connectivité directe avec Cloud VPN vers votre source Oracle.

    Selon l'architecture de votre réseau, vous devrez peut-être configurer des passerelles VPN supplémentaires dans votre système. Pour en savoir plus, consultez la section Créer une passerelle VPN haute disponibilité vers une passerelle VPN de pairs dans la documentation Cloud VPN.

  2. Facultatif : Si vous ne pouvez pas créer la configuration de connectivité privée dans le même réseau VPC que celui où vous disposez de Cloud VPN, créez une machine virtuelle (VM) de proxy inverse sur Compute Engine pour transférer les connexions entre les VPC.
  3. Créez un rattachement de réseau dans le VPC où se trouve votre Cloud VPN. Suivez ces étapes :
    1. Dans la console Google Cloud , accédez à la page Rattachements de réseau.

      Accéder à la page "Rattachements de réseau"

    2. Cliquez sur Créer un rattachement de réseau.
    3. Saisissez un nom pour la pièce jointe.
    4. Dans le menu Réseau, sélectionnez le VPC où se trouve votre source auto-hébergée.
    5. Pour la région, utilisez la même région que celle où vous prévoyez de créer la base de données de destination.

      Database Migration Service est un produit entièrement régional, ce qui signifie que toutes les entités liées à votre migration (profils de connexion source et de destination, jobs de migration, bases de données de destination, espaces de travail de conversion) doivent être enregistrées dans une seule région.

    6. Dans le menu Sous-réseau, sélectionnez un sous-réseau dans lequel vous disposez d'au moins six adresses IP utilisables pour Database Migration Service (c'est-à-dire une plage /29).
    7. Dans Préférences de connexion, sélectionnez Accepter les connexions pour les projets sélectionnés.

      Database Migration Service ajoute automatiquement le projet producteur à la liste Projets acceptés lorsque vous créez la configuration de connectivité privée.

    8. N'ajoutez pas de projets acceptés ni de projets refusés.
    9. Cliquez sur Créer un rattachement de réseau.
  4. Dans Database Migration Service, créez une configuration de connectivité privée pour les interfaces Private Service Connect.
  5. Plus tard, lorsque vous créerez le profil de connexion source, procédez comme suit :
    1. Dans la section Définir les détails de connexion, saisissez l'adresse IP privée de votre source Oracle.
    2. Dans la section Définir la méthode de connectivité, sélectionnez Connectivité privée.
    3. Dans le menu déroulant, sélectionnez la configuration de connectivité privée que vous avez créée à l'étape précédente.

Configurer la connectivité privée avec l'appairage de VPC

Cette méthode de connectivité nécessite que l'adresse IP ou le nom d'hôte de votre base de données source soient accessibles depuis votre VPC Google Cloud . Les sources auto-hébergées qui résident dans des réseaux en dehors de Google Cloudpeuvent nécessiter l'utilisation de composants réseau supplémentaires tels que Cloud VPN ou Cloud Interconnect.

Pour les sources auto-hébergées dans Google Cloud

Pour utiliser la connectivité privée avec l'appairage de cloud privé virtuel pour une base de données Oracle source hébergée sur une VM Compute Engine, procédez comme suit :

  1. Assurez-vous que le réseau cloud privé virtuel sur lequel une adresse IP est attribuée à votre VM est configuré pour l'accès aux services privés. Pour en savoir plus, consultez Configurer l'accès aux services privés.
  2. Dans Database Migration Service, créez une configuration de connectivité privée à appairer au réseau VPC sur lequel votre base de données Oracle est hébergée sur une VM Compute Engine.
  3. Plus tard, lorsque vous créerez le profil de connexion source, procédez comme suit :
    1. Dans la section Définir les détails de connexion, saisissez l'adresse IP de la VM Compute Engine sur laquelle vous hébergez la base de données Oracle.

      Vous pouvez afficher l'adresse IP de la VM dans la console Google Cloud .

    2. Dans la section Définir la méthode de connectivité, sélectionnez Connectivité privée (appairage de VPC).
    3. Dans le menu déroulant, sélectionnez la configuration de connectivité privée que vous avez créée à l'étape précédente.

Pour les sources auto-hébergées en dehors de Google Cloud

Pour utiliser la connectivité privée avec l'appairage de réseaux cloud privés virtuels pour une base de données source Oracle auto-hébergée qui réside dans un réseau en dehors deGoogle Cloud, procédez comme suit :

  1. Configurez une connectivité directe avec Cloud VPN vers votre source Oracle.

    Selon l'architecture de votre réseau, vous devrez peut-être configurer des passerelles VPN supplémentaires dans votre système. Pour en savoir plus, consultez la section Créer une passerelle VPN haute disponibilité vers une passerelle VPN de pairs dans la documentation Cloud VPN.

  2. Facultatif : Si vous ne pouvez pas créer la configuration de connectivité privée dans le même réseau VPC que celui où vous disposez de Cloud VPN, créez une machine virtuelle (VM) de proxy inverse sur Compute Engine pour transférer les connexions entre les VPC.
  3. Dans Database Migration Service, créez une configuration de connectivité privée à appairer au réseau VPC où se trouve votre Cloud VPN.
  4. Plus tard, lorsque vous créerez le profil de connexion source, procédez comme suit :
    1. Dans la section Définir les détails de connexion, saisissez l'adresse IP privée de votre source Oracle.
    2. Dans la section Définir la méthode de connectivité, sélectionnez Connectivité privée (appairage de VPC).
    3. Dans le menu déroulant, sélectionnez la configuration de connectivité privée que vous avez créée à l'étape précédente.

Étapes suivantes