Accès au VPC sans serveur

L'accès au VPC sans serveur vous permet de vous connecter directement à votre réseau cloud privé virtuel (VPC) à partir d'environnements sans serveur tels que Cloud Run, App Engine ou Cloud Functions. La configuration de l'accès au VPC sans serveur permet à votre environnement sans serveur d'envoyer des requêtes à votre réseau VPC à l'aide de DNS internes et d'adresses IP internes (telles que définies par les normes RFC 1918 et RFC 6598). Les réponses à ces requêtes utilisent également votre réseau interne.

L'utilisation de l'accès au VPC sans serveur présente deux avantages principaux :

  • Les requêtes envoyées à votre réseau VPC ne sont jamais exposées à Internet.
  • La communication via l'accès au VPC sans serveur peut avoir moins de latence qu'Internet.

L'accès au VPC sans serveur envoie le trafic interne de votre réseau VPC vers votre environnement sans serveur uniquement lorsque ce trafic est une réponse à une requête envoyée depuis votre environnement sans serveur via le connecteur d'accès au VPC sans serveur. Pour en savoir plus sur l'envoi d'autres trafics internes vers votre environnement sans serveur, consultez la page Accès privé à Google.

Pour accéder aux ressources de plusieurs réseaux VPC et projets Google Cloud, vous devez également configurer le VPC partagé ou l'appairage de réseaux VPC.

Fonctionnement

L'accès au VPC sans serveur repose sur une ressource appelée connecteur. Un connecteur gère le trafic entre votre environnement sans serveur et votre réseau VPC. Lorsque vous créez un connecteur dans votre projet Google Cloud, vous l'associez à un réseau VPC et à une région spécifiques. Vous pouvez ensuite configurer vos services sans serveur de sorte qu'ils utilisent le connecteur pour le trafic réseau sortant.

Plages d'adresses IP

Deux options permettent de définir la plage d'adresses IP d'un connecteur :

  • Sous-réseau/28 : Vous pouvez spécifier un sous-réseau existant s'il n'y a pas de ressources utilisant déjà le sous-réseau.
  • Plage CIDR : vous pouvez spécifier une plage CIDR /28 inutilisée. Lorsque vous spécifiez cette plage, assurez-vous qu'elle ne chevauche aucune plage CIDR en cours d'utilisation.

Le trafic envoyé via le connecteur à votre réseau VPC provient du sous-réseau ou de la plage CIDR que vous spécifiez.

Règles de pare-feu

Si le sous-réseau n'est pas un sous-réseau partagé, une règle de pare-feu implicite de priorité 1000 est créée sur votre réseau VPC afin d'autoriser l'entrée depuis le sous-réseau ou la plage d'adresses IP personnalisée du connecteur vers toutes les destinations du réseau. La règle de pare-feu implicite n'est pas visible dans la console Google Cloud et n'existe que tant que le connecteur associé existe.

Débit et scaling

Un connecteur d'accès au VPC sans serveur est constitué d'instances de connecteur. Les instances de connecteur peuvent utiliser l'un des types de machines disponibles. Les types de machines plus volumineux fournissent un débit plus élevé. Vous pouvez afficher le débit et les coûts estimés pour chaque type de machine dans la console Google Cloud et dans le tableau suivant.

Machine type Plage de débit estimé en Mbit/s Prix
(instance de connecteur plus coûts de transfert de données sortant du réseau)
f1-micro 100-500 Tarifs f1-micro
e2-micro 200-1000 Tarifs e2-micro
e2-standard-4 3200-16000 Tarifs standard e2

Vous pouvez définir le nombre minimal et maximal d'instances de connecteur autorisées pour votre connecteur. La valeur minimale doit être égale à 2. La valeur maximale ne peut pas dépasser 10 et doit être supérieure à la valeur minimale. Si vous ne spécifiez pas de valeurs minimale et maximale pour le nombre d'instances de votre connecteur, la valeur minimale de 2 et la valeur maximale de 10 sont appliquées par défaut. Un connecteur peut temporairement dépasser la valeur définie pour le nombre maximal d'instances lorsque Google effectue une maintenance (mises à jour de sécurité, par exemple). Lors de la maintenance, des instances supplémentaires peuvent être ajoutées pour garantir que le service n'est pas interrompu. Après la maintenance, les connecteurs reviennent au même nombre d'instances qu'avant la période de maintenance. Les opérations de maintenance durent généralement quelques minutes.

L'accès au VPC sans serveur effectue un scaling automatique du nombre d'instances dans votre connecteur à mesure que le trafic augmente. Les instances ajoutées sont du type spécifié pour votre connecteur. Les connecteurs ne peuvent pas combiner plusieurs types de machines. Les connecteurs ne peuvent pas effectuer de scaling vertical. Pour empêcher un scaling horizontal trop fréquent des connecteurs, définissez le nombre maximal d'instances sur un nombre faible. Si un scaling horizontal a été appliqué à votre connecteur et que vous préférez avoir moins d'instances, recréez le connecteur avec le nombre d'instances souhaité.

Exemple

Si vous choisissez f1-micro comme type de machine et que vous utilisez les valeurs par défaut pour le nombre minimal et maximal d'instances (2 et 10 respectivement), le débit estimé pour votre connecteur sera de 100 Mbit/s au nombre minimal d'instances par défaut, et de 500 Mbit/s au nombre maximal d'instances par défaut.

Graphique du débit

Vous pouvez surveiller le débit actuel à partir de la page d'informations du connecteur dans la console Google Cloud. Le graphique de débit de cette page affiche une vue détaillée des métriques de débit du connecteur.

Tags réseau

Les tags réseau d'accès au VPC sans serveur vous permettent de faire référence aux connecteurs VPC dans les règles de pare-feu et les routes.

Chaque connecteur d'accès au VPC sans serveur reçoit automatiquement les deux tags réseau suivants (parfois appelés tags d'instance) :

  • Tag réseau universel (vpc-connector) : s'applique à tous les connecteurs existants et à tous les connecteurs ultérieurs.

  • Tag réseau unique (vpc-connector-REGION-CONNECTOR_NAME) : s'applique au connecteur CONNECTOR_NAME dans la région REGION.

Ces tags réseau ne peuvent pas être supprimés. Il n'est pas possible d'ajouter des tags réseau.

Cas d'utilisation

Vous pouvez utiliser l'accès au VPC sans serveur pour accéder aux instances de VM Compute Engine, aux instances Memorystore et à toute autre ressource disposant d'un DNS interne ou d'une adresse IP interne. En voici quelques exemples :

  • Vous exploitez Memorystore pour stocker les données associées à un service sans serveur.
  • Vos charges de travail sans serveur utilisent un logiciel tiers que vous exécutez sur une VM Compute Engine.
  • Vous exécutez un service de backend sur un groupe d'instances géré dans Compute Engine et avez besoin que votre environnement sans serveur communique avec ce backend sans exposition au réseau Internet.
  • Votre environnement sans serveur doit accéder aux données de votre base de données sur site via Cloud VPN.

Exemple

Dans cet exemple, un projet Google Cloud exécute plusieurs services dans les environnements sans serveur suivants : App Engine, Cloud Functions et Cloud Run.

Un connecteur d'Accès au VPC sans serveur a été créé et attribué à la plage d'adresses IP 10.8.0.0/28. Par conséquent, l'adresse IP source de toute requête envoyée depuis le connecteur se situe dans cette plage.

Le réseau VPC contient deux ressources. L'une des ressources possède l'adresse IP interne 10.0.0.4. L'autre ressource possède l'adresse IP interne 10.1.0.2 et se trouve dans une région différente de celle du connecteur d'accès au VPC sans serveur.

Le connecteur gère l'envoi et la réception des requêtes et des réponses directement à partir de ces adresses IP internes. Lorsque le connecteur envoie des requêtes à la ressource avec l'adresse IP interne 10.1.0.2, des coûts de transfert de données sortant s'appliquent, car cette ressource se trouve dans une région différente.

Toutes les requêtes et réponses entre les environnements sans serveur et les ressources du réseau VPC circulent en interne.

Les requêtes envoyées à des adresses IP externes passent toujours par Internet et n'utilisent pas le connecteur d'accès au VPC sans serveur.

Le schéma suivant présente cette configuration.

Exemple d'accès au VPC sans serveur (cliquez pour agrandir)
Exemple d'accès au VPC sans serveur (cliquez pour agrandir)

Tarifs

Pour en savoir plus sur la tarification de l'Accès au VPC sans serveur, consultez la section Accès au VPC sans serveur de la page "Tarifs de VPC".

Services compatibles

Le tableau suivant indique les types de réseaux que vous pouvez atteindre à l'aide de l'accès au VPC sans serveur :

Service de connectivité Prise en charge de l'accès au VPC sans serveur
VPC
VPC partagé
Anciens réseaux
Réseaux connectés à Cloud Interconnect
Réseaux connectés à Cloud VPN
Réseaux connectés à l'appairage de réseaux VPC

Le tableau suivant indique les environnements sans serveur compatibles avec l'accès au VPC sans serveur :

Environnement sans serveur Prise en charge de l'accès au VPC sans serveur
Cloud Run
Cloud Run for Anthos*
Cloud Functions
Environnement standard App Engine Tous les environnements d'exécution, sauf PHP 5
Environnement flexible App Engine*

*Si vous souhaitez utiliser des adresses IP internes lors de la connexion à partir de Cloud Run pour Anthos ou de l'environnement flexible App Engine, vous n'avez pas besoin de configurer l'accès au VPC sans serveur. Assurez-vous simplement que votre service est déployé dans un réseau VPC disposant d'une connectivité aux ressources que vous souhaitez atteindre.

Protocoles réseau compatibles

Le tableau suivant décrit les protocoles réseau compatibles avec les connecteurs d'accès au VPC sans serveur.

Protocole Acheminer uniquement les requêtes envoyées à des adresses IP privées via le connecteur VPC Acheminer tout le trafic via le connecteur VPC
TCP
UDP
ICMP Compatible seulement avec les adresses IP externes

Régions où le service est disponible

Les connecteurs d'accès au VPC sans serveur sont compatibles avec toutes les régions qui prennent en charge Cloud Run, Cloud Functions ou l'environnement standard App Engine.

Pour afficher les régions disponibles, procédez comme suit :

gcloud compute networks vpc-access locations list

Étapes suivantes