Private Service Connect 64

1. Introduction

Private Service Connect révolutionne la façon dont les organisations consomment des services dans l'écosystème Google Cloud, en prenant en charge pleinement l'adressage IPv6 en plus de l'adressage IPv4. Il combine une sécurité renforcée, une connectivité simplifiée, des performances améliorées et une gestion centralisée, ce qui en fait une solution idéale pour les entreprises qui recherchent un modèle de consommation de services robuste, fiable et efficace, prêt pour l'avenir de la mise en réseau. Que vous créiez un cloud hybride, que vous partagiez des services au sein de votre organisation ou que vous accédiez à des services tiers, le PSC vous permet de tirer pleinement parti du potentiel de Google Cloud tout en profitant des avantages d'IPv6.

Points abordés

  • Principaux avantages du PSC 64
  • Traduction prise en charge par Private Service Connect 64
  • Présentation de l'ULA Dual Stack
  • Configuration réseau requise
  • Créer un service producteur Private Service Connect
  • Créer un point de terminaison Private Service Connect
  • Établir une connectivité avec le point de terminaison Private Service Connect à partir d'une VM IPv4
  • Établir une connectivité avec le point de terminaison Private Service Connect à partir d'une VM à double pile

Prérequis

  • Projet Google Cloud avec autorisations de propriétaire

2. Ce que vous allez faire

Vous allez établir un réseau de producteur pour déployer un serveur Web Apache en tant que service publié via Private Service Connect (PSC). Une fois la publication effectuée, vous devrez effectuer les actions suivantes pour valider l'accès au service Producer:

  • Depuis le VPC du client, instance GCE IPv4, ciblez le point de terminaison PSC IPv4 pour accéder au service du producteur.
  • Dans le VPC client, instance GCE à double pile, ciblez le point de terminaison PSC IPv6 pour accéder au service producteur.

Principaux avantages de la PSC 64

  • Intégration fluide:la PSC s'intègre parfaitement aux réseaux VPC configurés pour IPv6, ce qui vous permet de profiter des avantages de l'adressage IPv6 pour vos connexions de service.
  • Compatibilité avec la double pile:la PSC est compatible avec les configurations à double pile, ce qui permet d'utiliser simultanément IPv4 et IPv6 dans le même VPC. Vous bénéficiez ainsi d'une flexibilité et d'une évolutivité optimales pour votre réseau.
  • Transition simplifiée:la PSC simplifie la transition vers IPv6 en vous permettant d'adopter progressivement IPv6 en plus de votre infrastructure IPv4 existante.
  • Compatibilité avec le producteur:le producteur n'est pas tenu d'adopter la double pile. Le consommateur peut déployer un point de terminaison PSC IPv4 ou IPv6.

3. Traduction compatible avec Private Service Connect 64 et 66

Considérations concernant les consommateurs

La version IP du point de terminaison peut être de type IPv4 ou IPv6, mais pas les deux. Les utilisateurs peuvent utiliser une adresse IPv4 si le sous-réseau de l'adresse est à pile unique. Les clients peuvent utiliser une adresse IPv4 ou IPv6 si le sous-réseau de l'adresse est à double pile. Les clients peuvent connecter des points de terminaison IPv4 et IPv6 au même rattachement de service, ce qui peut être utile pour migrer des services vers IPv6.

Considérations pour les producteurs

La version IP de la règle de transfert du producteur détermine la version IP du rattachement de service et le trafic sortant du rattachement de service. La version IP du rattachement de service peut être de type IPv4 ou IPv6, mais pas les deux. Les producteurs peuvent utiliser une adresse IPv4 si le sous-réseau de l'adresse est à pile unique. Les producteurs peuvent utiliser une adresse IPv4 ou IPv6 si le sous-réseau de l'adresse est à double pile.

La version IP de l'adresse IP de la règle de transfert du producteur doit être compatible avec le type de pile du sous-réseau NAT du rattachement de service.

  • Si la règle de transfert du producteur est de type IPv4, le sous-réseau NAT peut être à pile unique ou à double pile.
  • Si la règle de transfert du producteur est IPv6, le sous-réseau NAT doit être à double pile.

Les combinaisons suivantes sont possibles pour les configurations compatibles:

  • Point de terminaison IPv4 vers rattachement de service IPv4
  • Point de terminaison IPv6 vers rattachement de service IPv6
  • Point de terminaison IPv6 vers rattachement de service IPv4 Dans cette configuration, Private Service Connect traduit automatiquement les deux versions d'adresse IP.

Les éléments suivants ne sont pas acceptés :

Private Service Connect n'est pas compatible avec la connexion d'un point de terminaison IPv4 à un rattachement de service IPv6. Dans ce cas, la création du point de terminaison échoue avec le message d'erreur suivant:

Une règle de transfert Private Service Connect avec une adresse IPv4 ne peut pas cibler un rattachement de service IPv6.

4. Présentation de l'ULA Dual Stack

Google Cloud permet de créer des sous-réseaux et des VM IPv6 privés ULA. La RFC 4193 définit un schéma d'adressage IPv6 pour la communication locale, idéal pour la communication intra-VPC. Les adresses ULA ne sont pas routables à l'échelle mondiale. Vos VM sont donc complètement isolées d'Internet, ce qui offre un comportement semblable à celui de la RFC 1918 avec IPv6. Google Cloud permet de créer des préfixes ULA de réseau VPC /48 afin que tous vos sous-réseaux ULA IPv6 /64 soient attribués à partir de cette plage de réseau VPC.

Comme pour les adresses IPv6 externes uniques au monde compatibles avec Google Cloud, chaque sous-réseau ULA compatible avec l'IPv6 recevra un sous-réseau /64 à partir de la plage ULA du réseau VPC /48, et chaque VM se verra attribuer une adresse /96 à partir de ce sous-réseau.

La RFC 4193 définit l'espace d'adressage IPv6 dans la plage fc00::/7. Les adresses ULA peuvent être allouées et utilisées librement dans les réseaux/sites privés. Google Cloud attribue toutes les adresses ULA de la plage fd20::/20. Ces adresses ne peuvent être routées que dans le cadre des VPC et non sur l'Internet IPv6 mondial.

Les adresses ULA attribuées par Google Cloud sont garanties comme étant uniques sur tous les réseaux VPC. Google Cloud garantit qu'aucun réseau VPC ne se voit attribuer le même préfixe ULA. Cela élimine le problème de chevauchement de plages dans les réseaux VPC.

Vous pouvez laisser Google Cloud attribuer automatiquement un /48 à votre réseau ou choisir un préfixe IPv6 /48 spécifique. Si le préfixe IPv6 que vous avez spécifié est déjà attribué à un autre VPC ou à votre réseau sur site, vous pouvez choisir une autre plage.

5. Configuration réseau requise

Vous trouverez ci-dessous le détail des exigences réseau pour le réseau du client et celui du producteur:

Réseau client (tous les composants déployés dans us-central1)

Composants

Description

VPC

La mise en réseau à double pile nécessite un VPC en mode personnalisé avec l'ULA activée

Point de terminaison PSC

  • Point de terminaison PSC IPv4 utilisé pour accéder au service de production
  • Point de terminaison PSC IPv6 utilisé pour accéder au service de production

Sous-réseau(x)

IPv4 et double pile

GCE

IPv4 et double pile

Réseau du producteur(tous les composants déployés dans us-central1)

Composants

Description

VPC

VPC en mode personnalisé, l'ULA n'est pas activé

Sous-réseau NAT du PSC

IPv4. Les paquets du réseau VPC du client sont traduits à l'aide de la traduction NAT source (SNAT) afin que leurs adresses IP sources d'origine soient converties en adresses IP sources du sous-réseau NAT du réseau VPC du producteur.

Règle de transfert PSC

IPv4 Équilibreur de charge réseau passthrough interne

Vérification de l'état

Règle d'entrée, applicable aux instances faisant l'objet d'un équilibrage de charge, qui autorise le trafic provenant des systèmes de vérification d'état Google Cloud (130.211.0.0/22 et 35.191.0.0/16).

Service de backend

Un service de backend sert de pont entre votre équilibreur de charge et vos ressources de backend. Dans le tutoriel, le service de backend est associé au groupe d'instances non géré.

Groupe d'instances non géré

Compatible avec les VM nécessitant une configuration ou un réglage individuels. L'autoscaling n'est pas disponible.

6. Topologie de l'atelier de programmation

b52931afd997d61.png

7. Préparation

Configuration de l'environnement au rythme de chacun

  1. Connectez-vous à la console Google Cloud, puis créez un projet ou réutilisez un projet existant. Si vous n'avez pas encore de compte Gmail ou Google Workspace, vous devez en créer un.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Le nom du projet est le nom à afficher pour les participants au projet. Il s'agit d'une chaîne de caractères non utilisée par les API Google. Vous pourrez toujours le modifier.
  • L'ID du projet est unique parmi tous les projets Google Cloud et non modifiable une fois défini. La console Cloud génère automatiquement une chaîne unique (en général, vous n'y accordez d'importance particulière). Dans la plupart des ateliers de programmation, vous devrez indiquer l'ID de votre projet (généralement identifié par PROJECT_ID). Si l'ID généré ne vous convient pas, vous pouvez en générer un autre de manière aléatoire. Vous pouvez également en spécifier un et voir s'il est disponible. Après cette étape, l'ID n'est plus modifiable et restera donc le même pour toute la durée du projet.
  • Pour information, il existe une troisième valeur (le numéro de projet) que certaines API utilisent. Pour en savoir plus sur ces trois valeurs, consultez la documentation.
  1. Vous devez ensuite activer la facturation dans la console Cloud pour utiliser les ressources/API Cloud. L'exécution de cet atelier de programmation est très peu coûteuse, voire sans frais. Pour désactiver les ressources et éviter ainsi que des frais ne vous soient facturés après ce tutoriel, vous pouvez supprimer le projet ou les ressources que vous avez créées. Les nouveaux utilisateurs de Google Cloud peuvent participer au programme d'essai sans frais pour bénéficier d'un crédit de 300 $.

Démarrer Cloud Shell

Bien que Google Cloud puisse être utilisé à distance depuis votre ordinateur portable, nous allons nous servir de Google Cloud Shell pour cet atelier de programmation, un environnement de ligne de commande exécuté dans le cloud.

Dans la console Google Cloud, cliquez sur l'icône Cloud Shell dans la barre d'outils supérieure :

55efc1aaa7a4d3ad.png

Le provisionnement et la connexion à l'environnement prennent quelques instants seulement. Une fois l'opération terminée, le résultat devrait ressembler à ceci :

7ffe5cbb04455448.png

Cette machine virtuelle contient tous les outils de développement nécessaires. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud, ce qui améliore nettement les performances du réseau et l'authentification. Vous pouvez effectuer toutes les tâches de cet atelier de programmation dans un navigateur. Vous n'avez rien à installer.

8. Avant de commencer

Activer les API

Dans Cloud Shell, assurez-vous que l'ID de votre projet est configuré:

gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=us-central1
echo $project
echo $region

Activez tous les services nécessaires :

gcloud services enable compute.googleapis.com

9. Créer un réseau VPC de producteur

Réseau VPC

Dans Cloud Shell, procédez comme suit:

gcloud compute networks create producer-vpc --subnet-mode custom

Créer des sous-réseaux

Le sous-réseau PSC sera associé au rattachement de service PSC à des fins de traduction d'adresse réseau. Pour les cas d'utilisation de production, ce sous-réseau doit être dimensionné de manière appropriée pour prendre en charge la quantité de trafic entrant de tous les points de terminaison PSC associés. Pour en savoir plus, consultez la documentation sur le dimensionnement des sous-réseaux NAT PSC.

Dans Cloud Shell, créez le sous-réseau NAT du PSC:

gcloud compute networks subnets create producer-psc-nat-subnet --network producer-vpc --range 172.16.10.0/28 --region $region --purpose=PRIVATE_SERVICE_CONNECT

Dans Cloud Shell, créez le sous-réseau de la règle de transfert du producteur:

gcloud compute networks subnets create producer-psc-fr-subnet --network producer-vpc --range 172.16.20.0/28 --region $region --enable-private-ip-google-access

Dans Cloud Shell, créez le sous-réseau de la VM du producteur:

gcloud compute networks subnets create producer-psc-vm-subnet --network producer-vpc --range 172.16.30.0/28 --region $region --enable-private-ip-google-access

Créer la passerelle NAT publique

La VM productrice a besoin d'un accès à Internet pour télécharger Apache. Toutefois, l'instance GCE ne dispose pas d'adresse IP externe. Par conséquent, Cloud NAT fournira une sortie Internet pour le téléchargement du package.

Dans Cloud Shell, créez le routeur Cloud Router:

gcloud compute routers create producer-cloud-router --network producer-vpc --region us-central1

Dans Cloud Shell, créez la passerelle Cloud NAT permettant la sortie Internet:

gcloud compute routers nats create producer-nat-gw --router=producer-cloud-router --auto-allocate-nat-external-ips --nat-all-subnet-ip-ranges --region us-central1

Créer une stratégie de pare-feu réseau et des règles de pare-feu

Dans Cloud Shell, procédez comme suit:

gcloud compute network-firewall-policies create producer-vpc-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy producer-vpc-policy --network producer-vpc --name producer-vpc --global-firewall-policy

Pour autoriser IAP à se connecter à vos instances de VM, créez une règle de pare-feu qui:

  • S'applique à toutes les instances de VM que vous souhaitez rendre accessibles à l'aide d'IAP.
  • Autorise le trafic entrant provenant de la plage d'adresses IP 35.235.240.0/20. Cette plage contient toutes les adresses IP qu'IAP utilise pour le transfert TCP.

Dans Cloud Shell, procédez comme suit:

gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy producer-vpc-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22  --global-firewall-policy

La règle de pare-feu suivante autorise le trafic provenant de la plage de vérification de l'état à toutes les instances du réseau. Dans un environnement de production, cette règle de pare-feu ne doit être limitée qu'aux instances associées au service de production spécifique.

Dans Cloud Shell, procédez comme suit:

gcloud compute network-firewall-policies rules create 2000 --action ALLOW --firewall-policy producer-vpc-policy --description "allow traffic from health check probe range" --direction INGRESS --src-ip-ranges 130.211.0.0/22,35.191.0.0/16 --layer4-configs tcp:80 --global-firewall-policy

La règle de pare-feu suivante autorise le trafic provenant de la plage de sous-réseaux NAT du PSC vers toutes les instances du réseau. Dans un environnement de production, cette règle de pare-feu ne doit être limitée qu'aux instances associées au service de production spécifique.

Dans Cloud Shell, procédez comme suit:

gcloud compute network-firewall-policies rules create 2001 --action ALLOW --firewall-policy producer-vpc-policy --description "allow traffic from PSC NAT subnet" --direction INGRESS --src-ip-ranges 172.16.10.0/28 --global-firewall-policy --layer4-configs=tcp

Créer la VM du producteur

Dans Cloud Shell, créez le serveur Web Apache producer-vm:

gcloud compute instances create producer-vm \
    --project=$project \
    --machine-type=e2-micro \
    --image-family debian-12 \
    --no-address \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=producer-psc-vm-subnet \
    --metadata startup-script="#! /bin/bash
      sudo apt-get update
      sudo apt-get install apache2 -y
      sudo service apache2 restart
      echo 'Welcome to Producer-VM !!' | tee /var/www/html/index.html
      EOF"

Dans Cloud Shell, créez le groupe d'instances non géré composé de l'instance producer-vm et de la vérification de l'état:

gcloud compute instance-groups unmanaged create producer-instance-group --zone=us-central1-a

gcloud compute instance-groups unmanaged add-instances producer-instance-group  --zone=us-central1-a --instances=producer-vm

gcloud compute health-checks create http hc-http-80 --port=80

10. Créer un service producteur

Créer des composants d'équilibreur de charge

Dans Cloud Shell, procédez comme suit:

gcloud compute backend-services create producer-backend-svc --load-balancing-scheme=internal --protocol=tcp --region=us-central1 --health-checks=hc-http-80

gcloud compute backend-services add-backend producer-backend-svc --region=us-central1 --instance-group=producer-instance-group --instance-group-zone=us-central1-a

Dans la syntaxe suivante, créez une règle de transfert (équilibreur de charge réseau interne) avec une adresse IP prédéfinie (172.16.2.3) associée au service de backend, producer-backend-svc.

Dans Cloud Shell, procédez comme suit:

gcloud compute forwarding-rules create producer-fr --region=us-central1 --load-balancing-scheme=internal --network=producer-vpc --subnet=producer-psc-fr-subnet --address=172.16.20.3 --ip-protocol=TCP --ports=all --backend-service=producer-backend-svc --backend-service-region=us-central1

Créer un Rattachement de service

Dans Cloud Shell, créez le rattachement de service:

gcloud compute service-attachments create ipv4-producer-svc-attachment --region=$region --producer-forwarding-rule=producer-fr --connection-preference=ACCEPT_AUTOMATIC --nat-subnets=producer-psc-nat-subnet

Ensuite, obtenez et notez le rattachement de service listé dans l'URI selfLink en commençant par les projets pour configurer le point de terminaison PSC dans l'environnement client.

selfLink: projects/<your-project-id>/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment

Dans Cloud Shell, procédez comme suit:

gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region

Exemple de résultat attendu

user@cloudshell:~ (projectid)$ gcloud compute service-attachments describe ipv4-producer-svc-attachment --region=$region
connectionPreference: ACCEPT_AUTOMATIC
creationTimestamp: '2024-08-26T07:08:01.625-07:00'
description: ''
enableProxyProtocol: false
fingerprint: USOMy1eQKyM=
id: '1401660514263708334'
kind: compute#serviceAttachment
name: ipv4-producer-svc-attachment
natSubnets:
- https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/subnetworks/producer-psc-nat-subnet
pscServiceAttachmentId:
  high: '85245007652455400'
  low: '1401660514263708334'
reconcileConnections: false
region: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1
selfLink: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/serviceAttachments/ipv4-producer-svc-attachment
targetService: https://www.googleapis.com/compute/v1/projects/projectid/regions/us-central1/forwardingRules/producer-fr

Dans Cloud Console, accédez à:

Services réseau → Private Service Connect → Services publiés

9166d64204ec31c3.png

1b5feeca51b6533e.png

11. Créer un réseau VPC de consommateur

Réseau VPC

Dans Cloud Shell, créez le VPC client avec l'ULA IPv6 activée:

gcloud compute networks create consumer-vpc \
    --subnet-mode=custom \
    --enable-ula-internal-ipv6

Google alloue un sous-réseau /48 unique au niveau mondial au VPC consommateur. Pour afficher l'allocation, procédez comme suit:

Dans Cloud Console, accédez à:

Réseaux VPC

c847bd7c20e3677d.png

Créer un sous-réseau

Dans Cloud Shell, créez le sous-réseau IPv4 GCE:

gcloud compute networks subnets create consumer-v4-subnet --network consumer-vpc --range=192.168.10.0/28 --region $region --enable-private-ip-google-access

Dans Cloud Shell, créez le sous-réseau du point de terminaison PSC IPv4:

gcloud compute networks subnets create psc-ipv4-endpoint-subnet --network consumer-vpc --range=192.168.11.0/28 --region $region --enable-private-ip-google-access

Dans Cloud Shell, créez le sous-réseau GCE à double pile:

gcloud compute networks subnets create consumer-dual-stack-subnet --network consumer-vpc --range=192.168.20.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

Dans Cloud Shell, créez le sous-réseau du point de terminaison PSC à double pile:

gcloud compute networks subnets create psc-dual-stack-endpoint-subnet --network consumer-vpc --range=192.168.21.0/28 --stack-type=IPV4_IPV6 --ipv6-access-type=INTERNAL --region $region --enable-private-ip-google-access

Créer une stratégie de pare-feu réseau et des règles de pare-feu

Dans Cloud Shell, procédez comme suit:

gcloud compute network-firewall-policies create consumer-vpc-policy --global

gcloud compute network-firewall-policies associations create --firewall-policy consumer-vpc-policy --network consumer-vpc --name consumer-vpc --global-firewall-policy

gcloud compute network-firewall-policies rules create 1000 --action ALLOW --firewall-policy consumer-vpc-policy --description "SSH with IAP" --direction INGRESS --src-ip-ranges 35.235.240.0/20 --layer4-configs tcp:22  --global-firewall-policy

Seul l'accès SSH via l'IAP est nécessaire pour le réseau client.

12. Créer une VM, un point de terminaison PSC et tester la connectivité IPv4

Créer une VM de test

Dans Cloud Shell, créez l'instance GCE IPv4 dans le sous-réseau IPv4:

gcloud compute instances create consumer-vm-ipv4 --zone=us-central1-a --subnet=consumer-v4-subnet --no-address

Créer une adresse IP statique de point de terminaison PSC

Dans Cloud Shell, créez une adresse IP statique pour le point de terminaison PSC.

gcloud compute addresses create psc-ipv4-endpoint-ip --region=$region --subnet=psc-ipv4-endpoint-subnet --addresses 192.168.11.13

Créez le point de terminaison PSC IPv4.

Dans Cloud Shell, créez le point de terminaison PSC en remplaçant l'URI SERVICE ATTACHMENT par l'URI que vous avez capturé lors de la création du rattachement de service.

gcloud compute forwarding-rules create psc-ipv4-endpoint --region=$region --network=consumer-vpc --address=psc-ipv4-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]

Valider le point de terminaison PSC

Vérifions que le producteur a accepté le point de terminaison PSC. Dans Cloud Console, accédez à:

Services réseau → Private Service Connect → Points de terminaison connectés

ac858b2db226e58a.png

Tester la connectivité

Dans Cloud Shell, connectez-vous en SSH à l'instance GCE consumer-vm-ipv4.

gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4" --tunnel-through-iap --project $project

Maintenant que vous êtes connecté à l'instance GCE, effectuez une requête curl vers le point de terminaison PSC, psc-ipv4-endpoint 192.168.11.13.

Dans l'instance GCE consumer-vm-ipv4, exécutez une requête curl:

curl 192.168.11.13

Résultat attendu :

user@consumer-vm-ipv4:~$ curl 192.168.11.13
Welcome to Producer-VM !!

Dans l'instance GCE consumer-vm-ipv4, déconnectez-vous de l'instance en effectuant une sortie, ce qui vous ramène à Cloud Shell.

exit

Résultat attendu :

user@consumer-vm-ipv4:~$ exit
logout
Connection to compute.6833450446005281720 closed.

13. Créer une VM, un point de terminaison PSC et tester la connectivité à double pile

Créer une VM à double pile de test

Dans Cloud Shell, créez l'instance GCE à double pile dans le sous-réseau à double pile:

gcloud compute instances create consumer-vm-ipv4-ipv6 --zone=us-central1-a --subnet=consumer-dual-stack-subnet --no-address --stack-type=IPV4_IPV6

Créer une adresse IPv6 statique du point de terminaison PSC

Dans Cloud Shell, créez une adresse IPv6 statique pour le point de terminaison PSC:

gcloud compute addresses create psc-ipv6-endpoint-ip --region=$region --subnet=psc-dual-stack-endpoint-subnet --ip-version=IPV6

Obtenir l'adresse IPv6 statique du point de terminaison PSC

Dans Cloud Shell, obtenez l'adresse IPv6 du PSC que vous utiliserez pour accéder au service de production:

gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:

Exemple de résultat :

user@cloudshell$ gcloud compute addresses describe psc-ipv6-endpoint-ip --region=us-central1 | grep -i address:
address: 'fd20:2eb:7252:2::'

Créez le point de terminaison PSC IPv6.

Dans Cloud Shell, créez le point de terminaison PSC en remplaçant l'URI SERVICE ATTACHMENT par l'URI que vous avez capturé lors de la création du rattachement de service.

gcloud compute forwarding-rules create psc-ipv6-endpoint --region=$region --network=consumer-vpc --address=psc-ipv6-endpoint-ip --target-service-attachment=[SERVICE ATTACHMENT URI]

Valider le point de terminaison PSC

Vérifions que le producteur a accepté le point de terminaison PSC. Dans Cloud Console, accédez à:

Services réseau → Private Service Connect → Points de terminaison connectés

957b74e89f3ad837.png

Tester la connectivité

Dans Cloud Shell, connectez-vous par SSH à l'instance GCE à double pile, consumer-vm-ipv4-ipv6, puis effectuez une requête curl vers le point de terminaison client IPv6 du PSC, psc-ipv6-endpoint, pour valider l'accès au service Producteur.

gcloud compute ssh --zone us-central1-a "consumer-vm-ipv4-ipv6" --tunnel-through-iap --project $project

Maintenant que vous êtes connecté à l'instance GCE à double pile, effectuez une requête curl vers le point de terminaison psc, psc-dual-stack-endpoint, à l'aide des adresses IPv6 identifiées à l'étape précédente.

Dans l'instance GCE consumer-vm-ipv4-ipv6, effectuez une requête curl vers le point de terminaison PSC IPv6 identifié à l'étape Obtenir l'adresse IPv6 statique du point de terminaison PSC.

curl -6 http://[insert-your-ipv6-psc-endpoint]

Résultat attendu :

user@consumer-vm-ipv4-ipv6$ curl -6 http://[fd20:2eb:7252:2::]
Welcome to Producer-VM !!

Dans l'instance GCE consumer-vm-ipv4-ipv6, déconnectez-vous de l'instance en effectuant une sortie, ce qui vous ramène à Cloud Shell.

exit

Résultat attendu :

user@consumer-vm-ipv4-ipv6:~$ exit
logout
Connection to compute.6162185519072639197 closed.

14. Étapes de nettoyage

Supprimer des composants de l'atelier à partir d'un seul terminal Cloud Shell

gcloud compute service-attachments delete ipv4-producer-svc-attachment --region=us-central1 -q

gcloud compute forwarding-rules delete psc-ipv6-endpoint psc-ipv4-endpoint --region=us-central1 -q

gcloud compute instances delete consumer-vm-ipv4 consumer-vm-ipv4-ipv6 --zone=us-central1-a -q

gcloud compute network-firewall-policies rules delete 1000 --firewall-policy=consumer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=consumer-vpc-policy  --name=consumer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete consumer-vpc-policy --global -q

gcloud compute addresses delete psc-ipv4-endpoint-ip psc-ipv6-endpoint-ip --region=us-central1 -q

gcloud compute networks subnets delete consumer-v4-subnet psc-ipv4-endpoint-subnet consumer-dual-stack-subnet psc-dual-stack-endpoint-subnet --region=us-central1 -q

gcloud compute networks delete consumer-vpc -q

gcloud compute forwarding-rules delete producer-fr --region=us-central1 -q

gcloud compute backend-services delete producer-backend-svc --region=us-central1 -q

gcloud compute health-checks delete hc-http-80 -q

gcloud compute network-firewall-policies rules delete 2001 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 2000 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies rules delete 1000 --firewall-policy producer-vpc-policy --global-firewall-policy -q

gcloud compute network-firewall-policies associations delete --firewall-policy=producer-vpc-policy  --name=producer-vpc --global-firewall-policy -q

gcloud compute network-firewall-policies delete producer-vpc-policy --global -q

gcloud compute instance-groups unmanaged delete producer-instance-group --zone=us-central1-a -q

gcloud compute instances delete producer-vm --zone=us-central1-a -q

gcloud compute routers nats delete producer-nat-gw --router=producer-cloud-router --router-region=us-central1 -q

gcloud compute routers delete producer-cloud-router --region=us-central1 -q

gcloud compute networks subnets delete producer-psc-fr-subnet  producer-psc-vm-subnet producer-psc-nat-subnet --region=us-central1 -q

gcloud compute networks delete producer-vpc -q

15. Félicitations

Félicitations, vous avez bien configuré et validé Private Service Connect 64.

Vous avez créé l'infrastructure du producteur et appris à créer un point de terminaison consommateur IPv4 et IPv6 dans le réseau VPC consommateur qui permet de se connecter au service producteur.

Cosmopup pense que les ateliers de programmation sont géniaux.

c911c127bffdee57.jpeg

Et ensuite ?

Découvrez quelques-uns des ateliers de programmation...

Autres ressources et vidéos

Documents de référence