Configurer une adresse IP privée

Cette page explique comment configurer une instance Cloud SQL afin qu'elle utilise une adresse IP privée.

Pour en savoir plus sur le fonctionnement de la connectivité IP privée ainsi que sur les exigences en termes d'environnement et de gestion, consultez la section Adresse IP privée.

Avant de commencer

Avant de configurer une instance Cloud SQL pour qu'elle utilise une adresse IP privée, vous devez effectuer les opérations suivantes :

  • Activez l'API Service Networking pour votre projet.

    Si vous utilisez un réseau VPC partagé, vous devez également effectuer les opérations suivantes :

    • Activez l'API Service Networking pour le projet hôte.
    • Ajoutez votre utilisateur au projet hôte.
    • Attribuez à votre utilisateur le rôle IAM Network Administrator dans le projet hôte.
  • Sélectionnez un réseau VPC à utiliser.

  • Cette opération n'est à réaliser qu'une seule fois : configurez l'accès aux services privés dans votre réseau VPC afin d'allouer une plage d'adresses IP et de créer une connexion de service privée. Cela permet aux ressources du réseau VPC de se connecter aux instances Cloud SQL.

    • La mise en œuvre d'un accès aux services privés nécessite le rôle IAM Network Administrator.

      Une fois l'accès aux services privés établi pour votre réseau, vous n'avez plus besoin du rôle Network Administrator pour configurer une instance de sorte qu'elle utilise une adresse IP privée.

    • Si vous utilisez une adresse IP privée pour l'une de vos instances Cloud SQL, vous n'avez besoin de configurer l'accès aux services privés qu'une seule fois pour chaque projet Google Cloud disposant ou devant disposer d'une connexion à une instance Cloud SQL. Pour plus d'informations, consultez la section Accès aux services privés.

Cloud SQL configure l'accès aux services privés lorsque toutes les conditions ci-dessous sont remplies :

  • Vous n'avez pas encore configuré l'accès aux services privés dans le projet Google Cloud.
  • Vous activez pour la première fois une adresse IP privée pour n'importe laquelle des instances Cloud SQL du projet Google Cloud.
  • Lorsque vous activez une adresse IP privée sur la page Connections de l'instance, vous sélectionnez à la fois l'option de réseau associé default et l'option Use an automatically allocated IP range (utiliser une plage d'adresses IP automatiquement allouée).

Configurer une instance pour qu'elle utilise une adresse IP privée

Vous pouvez configurer une instance Cloud SQL pour qu'elle utilise une adresse IP privée lors de sa création, ou ultérieurement pour une instance existante.

Configurer une adresse IP privée pour une nouvelle instance

Pour configurer une instance Cloud SQL au moment de sa création afin qu'elle utilise une adresse IP privée, procédez comme suit :

Console

  1. Accédez à la page "Instances Cloud SQL" dans Google Cloud Console.

    Accéder à la page "Instances Cloud SQL"

  2. Cliquez sur Créer une instance.
  3. Dans l'assistant de création, sous Options de configuration, développez la section Connectivité.
  4. Cochez la case Adresse IP privée.

    Une liste déroulante affiche les réseaux VPC disponibles dans votre projet. Si votre projet est le projet de service d'un VPC partagé, les réseaux VPC du projet hôte y apparaissent également.

  5. Sélectionnez le réseau VPC que vous souhaitez utiliser :
  6. Si vous avez configuré l'accès aux services privés :

    1. Sélectionnez le réseau VPC que vous souhaitez utiliser :
    2. Cliquez sur Connecter.
    3. Une liste déroulante affiche la plage d'adresses IP que vous avez allouée.

    4. Cliquez sur Créer.
    5. Cliquez sur Save.

    Pour permettre à Cloud SQL d'allouer la plage en votre nom et de créer la connexion privée, procédez comme suit :

    1. Sélectionnez le réseau VPC "default".
    2. Cliquez sur Allouer et connecter.
    3. Cliquez sur Enregistrer.

gcloud

Si vous ne l'avez pas déjà fait, suivez les instructions ci-dessous afin de configurer l'accès aux services privés pour Cloud SQL. Créez votre instance Cloud SQL en utilisant le paramètre --network pour spécifier le nom du réseau VPC sélectionné, ainsi que l'option --no-assign-ip pour désactiver l'adresse IP publique.

À moins que le réseau VPC ne soit un réseau VPC partagé, la valeur du paramètre "--network" doit être au format : "https://www.googleapis.com/compute/alpha/projects/[PROJECT_ID]/global/networks/[VPC_NETWORK_NAME]".

Si le réseau VPC est un réseau VPC partagé, la valeur du paramètre "--network" doit être au format projects/HOST_PROJECT_ID/global/networks/VPC_NETWORK_NAME, où HOST_PROJECT_ID correspond au nom du projet hôte de VPC partagé et VPC_NETWORK_NAME au nom du réseau VPC partagé.

gcloud --project=[PROJECT_ID] beta sql instances create [INSTANCE_ID]
       --network=[VPC_NETWORK_NAME]
       --no-assign-ip

Configurer une adresse IP privée pour une instance existante

Lorsque vous configurez une instance Cloud SQL existante pour qu'elle utilise une adresse IP privée, celle-ci redémarre, ce qui entraîne un temps d'arrêt.

Pour configurer une instance existante afin qu'elle utilise une adresse IP privée, procédez comme suit :

Console

  1. Accédez à la page "Instances Cloud SQL" dans Google Cloud Console.
    Accéder à la page "Instances Cloud SQL"
  2. Cliquez sur le nom de l'instance pour ouvrir la page Présentation.
  3. Sélectionnez l'onglet Connexions.
  4. Cochez la case Adresse IP privée.

    Une liste déroulante affiche les réseaux disponibles dans votre projet. Si votre projet est le projet de service d'un VPC partagé, les réseaux VPC du projet hôte y apparaissent également.

  5. Si vous avez configuré l'accès aux services privés :
    1. Sélectionnez le réseau VPC que vous souhaitez utiliser :
    2. Une liste déroulante affiche la plage d'adresses IP que vous avez allouée.

    3. Cliquez sur Connecter.
    4. Cliquez sur Enregistrer.
  6. Pour permettre à Cloud SQL d'allouer une adresse IP en votre nom :
    1. Sélectionnez le réseau VPC "default".
    2. Cliquez sur Allouer et connecter.
    3. Cliquez sur Enregistrer.

gcloud

Si vous ne l'avez pas déjà fait, suivez les instructions ci-dessous afin de configurer l'accès aux services privés pour Cloud SQL. Mettez à jour votre instance Cloud SQL en utilisant le paramètre --network pour spécifier le nom du réseau VPC choisi.

VPC_NETWORK_NAME correspond au nom du réseau VPC choisi ; par exemple my-vpc-network. La valeur du paramètre "--network" doit être au format suivant : https://www.googleapis.com/compute/alpha/projects/[PROJECT_ID]/global/networks/[VPC_NETWORK_NAME].

gcloud --project=[PROJECT_ID] beta sql instances patch [INSTANCE_ID]
       --network=[VPC_NETWORK_NAME]
       --no-assign-ip

Se connecter à une instance à l'aide de son adresse IP privée

L'accès aux services privés vous permet de vous connecter à des instances Cloud SQL à partir d'instances Compute Engine ou Google Kubernetes Engine dans le même réseau VPC (définies ici comme des sources internes) ou externes à ce réseau (sources externes).

Se connecter depuis une source interne

Pour vous connecter à partir d'une source appartenant au même projet Google Cloud que votre instance Cloud SQL, par exemple le proxy Cloud SQL exécuté sur une ressource Compute Engine, cette ressource doit se trouver dans le même réseau VPC que l'instance Cloud SQL.

Se connecter depuis une source externe

Vous pouvez vous connecter à partir d'un client sur un réseau sur site si ce réseau est connecté au réseau VPC auquel votre instance Cloud SQL est connectée. Pour autoriser les connexions à partir d'un réseau sur site, procédez comme suit :

  1. Vérifiez que votre réseau VPC est connecté à votre réseau sur site via un tunnel Cloud VPN ou un rattachement d'interconnexion (VLAN) pour une interconnexion dédiée ou une interconnexion partenaire.
  2. Identifiez l'appairage généré par la connexion aux services privés. Notez qu'un appairage est créé pour chaque type de moteur de base de données que vous utilisez (MySQL, PostgreSQL et SQL Server).
  3. Mettez à jour la connexion d'appairage pour échanger des routes personnalisées.
  4. Identifiez la plage allouée utilisée par la connexion aux services privés.
  5. Créez une annonce de routage personnalisée Cloud Router pour la plage allouée sur les routeurs cloud qui gèrent les sessions BGP pour vos tunnels Cloud VPN ou vos rattachements Cloud Interconnect (VLAN).

Se connecter à partir d'adresses non-RFC 1918

Les connexions à une instance Cloud SQL à l'aide d'une adresse IP privée sont automatiquement autorisées pour les plages d'adresses RFC 1918. De cette façon, tous les clients privés peuvent accéder à la base de données sans passer par le proxy. Les plages d'adresses non-RFC 1918 doivent être configurées en tant que réseaux autorisés.

Pour vous connecter à partir d'une adresse non-RFC 1918, vous devez définir une autorisation IP par instance, afin d'autoriser le trafic provenant de plages d'adresses non-RFC 1918.

Par exemple, exécutez une commande gcloud comme suit :

gcloud sql instances patch [INSTANCE_NAME] --authorized-networks 172.16.12.0/28,172.16.1.0/24,172.16.10.0/24,172.16.2.0/24,172.16.11.0/24,192.88.99.0/24,11.0.0.0/24

Par défaut, Cloud SQL n'apprend pas les routes de sous-réseau non-RFC 1918 à partir de votre VPC. Vous devez mettre à jour l'appairage de réseaux vers Cloud SQL pour exporter les routes non-RFC 1918. Exemple :

gcloud compute networks peerings update cloudsql-[mysql/postgres]-googleapis-com --network=NETWORK --export-subnet-routes-with-public-ip --project=PROJECT

Étapes suivantes