Cette page explique comment configurer la connectivité réseau vers les sources Amazon RDS pour Oracle pour les migrations hétérogènes d'Oracle vers Cloud SQL pour PostgreSQL avec Database Migration Service.
Vous pouvez utiliser trois méthodes différentes pour configurer la connectivité réseau nécessaire aux migrations à partir de sources Amazon RDS pour Oracle :
- Liste d'autorisation d'adresses IP publiques
- Tunnel SSH de transfert
- Connectivité IP privée. Ces méthodes nécessitent Cloud VPN ou Cloud Interconnect :
Pour en savoir plus sur la connectivité réseau de la base de données source, consultez Présentation des méthodes de mise en réseau source.
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 :
- Dans la console de gestion AWS, procédez comme suit :
- Assurez-vous que votre base de données Amazon RDS source est configurée pour les connexions IP publiques.
- Identifiez le nom et le numéro de port du point de terminaison. Vous devez saisir ces valeurs lorsque vous créez le profil de connexion.
Pour en savoir plus sur la préparation de votre instance Amazon RDS pour Oracle, consultez Se connecter à votre instance de base de données Oracle dans la documentation Amazon RDS.
Créez un groupe de sécurité qui autorise le trafic de Database Migration Service vers votre VPC Amazon RDS. Consultez Fournir l'accès à votre instance de base de données dans votre VPC en créant un groupe de sécurité.
Assurez-vous d'autoriser toutes les adresses IP publiques de Database Migration Service pour la région dans laquelle vous créez le job de migration.
- Plus tard, lorsque vous
créerez le profil de connexion source, procédez comme suit :
- Dans la section Définir les détails de la connexion, utilisez le nom du point de terminaison de votre instance pour l'adresse IP de la base de données source.
- Dans la section Définir une méthode de connectivité, sélectionnez Liste d'adresses IP autorisées.
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 :
-
Lancez une instance Amazon EC2 pour servir de tunnel SSH de transfert dédié. Assurez-vous de le configurer dans le même Amazon VPC que celui où se trouve votre instance Amazon RDS pour Oracle source.
Pour en savoir plus, consultez Premiers pas avec Amazon EC2 dans la documentation Amazon.
-
Connectez-vous à votre instance EC2 et configurez le tunnel SSH.
Suivez ces étapes :
- Créez un compte utilisateur distinct et dédié pour que Database Migration Service puisse se connecter :
adduser TUNNEL_ACCOUNT_USERNAME - Limitez l'accès au shell pour le compte Database Migration Service afin de renforcer la sécurité :
usermod -s /usr/sbin/nologin TUNNEL_ACCOUNT_USERNAME
Choisissez la méthode d'authentification que Database Migration Service doit utiliser pour se connecter au tunnel.
Vous pouvez utiliser un mot de passe simple ou générer des clés SSH au format
PEMque 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 rien d'autre à configurer. 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:- Générez la paire de clés :
ssh-keygen -m PEM -f YOUR_KEY_NAME
- Copiez la clé publique (
YOUR_KEY_NAME.pub) dans le répertoire~/.ssh/de votre serveur de tunnel. - Enregistrez la clé privée. Vous devrez l'importer ultérieurement dans Database Migration Service lorsque vous créerez le profil de connexion source.
- Générez la paire de clés :
- Modifiez le fichier
/etc/ssh/sshd_configpour 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
- Exécutez la commande
sshpour 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
- Créez un compte utilisateur distinct et dédié pour que Database Migration Service puisse se connecter :
- Plus tard, lorsque vous
créerez le profil de connexion source, procédez comme suit :
- Dans la section Définir les détails de la connexion, utilisez le nom du point de terminaison de votre instance pour l'adresse IP de la base de données source.
- Dans la section Définir la méthode de connectivité, sélectionnez Tunnel SSH de transfert.
- Indiquez l'adresse IP publique ou le nom d'hôte de votre serveur SSH.
- Indiquez le port que vous avez désigné pour les connexions SSH sur le serveur du tunnel.
- 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).
- Dans le menu déroulant Méthode d'authentification, sélectionnez la méthode d'authentification que vous souhaitez utiliser avec 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 avec des 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.
Pour utiliser cette méthode, vous devez disposer d'un Cloud VPN ou d'un Cloud Interconnect configuré dans le même réseau VPC que celui dans lequel vous souhaitez créer le rattachement de réseau. Si vous ne pouvez pas créer le rattachement de réseau dans le réseau VPC où se trouve votre Cloud VPN ou Cloud Interconnect, vous aurez également besoin d'une machine virtuelle (VM) de proxy inverse sur Compute Engine pour établir la connexion.
Si vous ne pouvez pas utiliser Cloud VPN ni Cloud Interconnect, nous vous recommandons d'utiliser plutôt les méthodes de connectivité par tunnel SSH de transfert ou par liste d'autorisation d'adresses IP.
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 :
- Pour créer et gérer des rattachements de réseau :
Administrateur de réseaux Compute (
roles/compute.networkAdmin) - Pour créer et gérer des configurations de connectivité privée :
Administrateur Database Migration (
roles/datamigration.admin)
- Pour créer et gérer des rattachements de réseau :
Administrateur de réseaux Compute (
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.createcompute.networkAttachments.getcompute.networkAttachments.listcompute.networkAttachments.updatecompute.networkAttachments.delete
- Compte de service Database Migration Service :
compute.networkAttachments.getcompute.networkAttachments.updatecompute.subnetworks.getcompute.subnetworks.list
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour utiliser la connectivité de l'interface Private Service Connect, procédez comme suit :
-
Configurez une connectivité directe avec Cloud VPN vers votre instance Amazon RDS pour PostgreSQL.
Pour en savoir plus, consultez Créer des connexions VPN haute disponibilité entre Google Cloud et AWS dans la documentation Cloud VPN.
- Facultatif : Si vous ne pouvez pas créer le rattachement de réseau dans le même réseau VPC que celui où vous avez Cloud VPN, créez une machine virtuelle (VM) de proxy inverse sur Compute Engine pour transférer les connexions entre les VPC.
- Créez un rattachement de réseau dans le VPC où se trouve votre Cloud VPN. Suivez ces étapes :
- Dans la console Google Cloud , accédez à la page Rattachements de réseau.
- Cliquez sur Créer un rattachement de réseau.
- Saisissez un nom pour la pièce jointe.
- Dans le menu Réseau, sélectionnez le VPC où se trouve votre source.
-
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.
- 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). -
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.
- N'ajoutez pas de projets acceptés ni de projets refusés.
- Cliquez sur Créer un rattachement de réseau.
- Dans Database Migration Service, créez une configuration de connectivité privée pour les interfaces Private Service Connect.
- Plus tard, lorsque vous
créerez le profil de connexion source, procédez comme suit :
- Dans la section Définir les détails de connexion, saisissez l'adresse IP privée de votre instance Amazon RDS source.
- Dans la section Définir la méthode de connectivité, sélectionnez Connectivité privée.
- 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
Pour utiliser la connectivité privée avec des sources Amazon RDS pour Oracle, vous devez configurer Cloud VPN ou Cloud Interconnect dans le même réseau VPC que celui où vous prévoyez de créer la configuration de connectivité privée pour Database Migration Service. Si vous ne pouvez pas créer la configuration de connectivité privée dans le réseau VPC où se trouve votre Cloud VPN ou Cloud Interconnect, vous aurez également besoin d'une machine virtuelle (VM) de proxy inverse sur Compute Engine pour établir la connexion.
Si vous ne pouvez pas utiliser Cloud VPN ni Cloud Interconnect, nous vous recommandons d'utiliser plutôt les méthodes de connectivité par tunnel SSH de transfert ou par liste d'autorisation d'adresses IP.
Pour utiliser la connectivité privée avec l'appairage de VPC et Cloud VPN, procédez comme suit :
-
Configurez une connectivité directe avec Cloud VPN vers votre instance Amazon RDS pour PostgreSQL.
Pour en savoir plus, consultez Créer des connexions VPN haute disponibilité entre Google Cloud et AWS dans la documentation Cloud VPN.
- 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.
- Dans Database Migration Service, créez une configuration de connectivité privée à appairer au réseau VPC où se trouve votre Cloud VPN.
- Plus tard, lorsque vous
créerez le profil de connexion source, procédez comme suit :
- Dans la section Définir les détails de connexion, saisissez l'adresse IP privée de votre instance Amazon RDS source.
- Dans la section Définir la méthode de connectivité, sélectionnez Connectivité privée.
- Dans le menu déroulant, sélectionnez la configuration de connectivité privée que vous avez créée à l'étape précédente.