Connecter deux sites à l'aide de spokes VPN

Ce tutoriel explique comment utiliser un hub Network Connectivity Center et des spokes Cloud VPN pour configurer le transfert de données entre deux filiales.

Pour plus d'informations sur la création de hubs et de spokes, consultez la section Utiliser des hubs et des spokes.

Avant de commencer

Avant de commencer, consultez les sections suivantes.

Créer ou sélectionner un projet

Pour faciliter la configuration de Network Connectivity Center, commencez par identifier un projet valide.

  1. Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Install the Google Cloud CLI.
  5. To initialize the gcloud CLI, run the following command:

    gcloud init
  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Install the Google Cloud CLI.
  9. To initialize the gcloud CLI, run the following command:

    gcloud init
  1. Si vous utilisez Google Cloud CLI, définissez votre ID de projet à l'aide de la commande gcloud config set.

    gcloud config set project PROJECT_ID

    Remplacez PROJECT_ID par votre ID de projet unique.

    Dans les instructions gcloud CLI présentées sur cette page, nous partons du principe que vous avez défini l'ID de votre projet.

  1. Pour vérifier que vous avez correctement défini l'ID du projet, utilisez la commande gcloud config list.

    gcloud config list --format='text(core.project)'

Conventions d'identification des ressources

Lorsque vous référencez des ressources à l'aide de gcloud CLI ou de l'API, utilisez les conventions décrites dans le tableau suivant.

Convention Compatible Remarques Exemple
URI complet Toutes les ressources Utilisez l'une de ces méthodes pour référencer des instances de dispositif de routeur.
"https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME"

      
Nom de ressource relatif Toutes les ressources
"projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME"

    
Nom Ressources régionales et mondiales Utilisez cette méthode pour les hubs, les spokes, les tunnels VPN et les rattachements de VLAN.
 "HUB_NAME"

    

Exemple de topologie

Le schéma suivant décrit les exemples de ressources utilisées dans ce tutoriel.

Topologie utilisée dans le tutoriel sur Network Connectivity Center
Topologie utilisée dans le tutoriel sur Network Connectivity Center (cliquez pour agrandir)


Configurer la connectivité du transfert de données

Pour configurer la connectivité du transfert de données, procédez comme suit :

  1. Créez des ressources Google Cloud telles qu'un réseau cloud privé virtuel (VPC), des passerelles et des tunnels VPN haute disponibilité, ainsi que des routeurs Cloud Router.
  2. Créez un hub.
  3. Définissez un spoke pour la première et la deuxième filiale. Chaque spoke doit utiliser un tunnel VPN comme ressource sous-jacente.
  4. Vérifiez la configuration.

Créer des ressources Google Cloud

Dans ce tutoriel, nous partons du principe que vous avez déjà créé les ressources Google Cloud suivantes :

  • Un réseau VPC pour lequel le mode de routage dynamique est défini sur global
  • Dans la région la plus proche de Office1, un sous-réseau, une passerelle VPN haute disponibilité, un routeur Cloud Router et un tunnel reliant l'interface passerelle à Office1
  • Dans la région la plus proche de Office2, un sous-réseau, une passerelle VPN haute disponibilité, un routeur Cloud Router et un tunnel reliant l'interface passerelle à Office2

Si vous devez créer ces ressources, consultez les documents suivants :

Après avoir identifié les ressources Google Cloud existantes ou en avoir créé de nouvelles, passez à la section suivante.

Créer le hub

Commencez par créer un hub. Vous associerez ensuite des spokes à ce hub.

Console

  1. Dans Google Cloud Console, accédez à la page Network Connectivity Center.

    Accéder à Network Connectivity Center

  2. Dans le menu déroulant du projet, sélectionnez un projet. Dans l'exemple de diagramme, le projet est my-project.

  3. Saisissez un nom de hub (dans le cas présent, my-hub).

  4. Saisissez une description facultative.

  5. Vérifiez l'ID du projet. Si l'ID du projet est incorrect, sélectionnez un autre projet à l'aide du menu déroulant situé en haut de l'écran.

  6. Cliquez sur Continuer.

  7. Pour ajouter le spoke Office1 au hub, passez à la section Créer un spoke pour le bureau 1.

gcloud

Pour créer un hub, utilisez la commande gcloud network-connectivity hubs create.

  gcloud network-connectivity hubs create HUB_NAME \
     --description="DESCRIPTION" \
     --labels="KEY"="VALUE"

Remplacez les valeurs suivantes :

  • HUB_NAME : nom du nouveau hub (my-hub dans le cas présent)
  • DESCRIPTION : texte facultatif décrivant le hub
  • KEY : clé de la paire clé/valeur pour le texte de l'étiquette facultative
  • VALUE : valeur de la paire clé/valeur pour le texte de l'étiquette facultative

Pour ajouter le spoke Office1 au hub, passez à la section Créer un spoke pour le bureau 1.

API

Pour créer un hub, utilisez la méthode networkconnectivity.hubs.create.

  POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/hubs
  {
    "name":"HUB_NAME",
    "description":"DESCRIPTION",
    "labels": {
      "KEY": "VALUE"
    }
  }

Remplacez les valeurs suivantes :

  • PROJECT_ID : ID du projet contenant le nouveau hub (par exemple, my-project)
  • HUB_NAME : nom du nouveau hub (par exemple, my-hub)
  • DESCRIPTION : texte facultatif décrivant le hub
  • KEY : clé de la paire clé/valeur pour le texte de l'étiquette facultative
  • VALUE : valeur de la paire clé/valeur pour le texte de l'étiquette facultative

Pour ajouter le spoke Office1 au hub, passez à la section Créer un spoke pour le bureau 1.

Créer le spoke pour le bureau 1

Créez un spoke pour Office1. Utilisez deux tunnels VPN haute disponibilité comme ressources sous-jacentes du spoke. Chaque tunnel doit provenir d'une passerelle VPN haute disponibilité située dans la région la plus proche du bureau. Dans le schéma d'exemple, ces tunnels sont représentés par vpn-tunnel1-office1 et vpn-tunnel2-office1.

Console

La procédure suivante est la suite de la page Créer le hub. Elle explique comment créer un spoke immédiatement après avoir spécifié le nom et la description du hub.

  1. Dans le formulaire Nouveau spoke, définissez le champ Type de spoke sur Tunnel VPN.
  2. Saisissez un nom de spoke. Dans le cas présent, il s'agit de office-1-spoke.
  3. Saisissez éventuellement une description du spoke.
  4. Sélectionnez la région du spoke. Dans l'exemple de diagramme, le spoke est situé dans us-west1.
  5. Sous Transfert de données de site à site, sélectionnez Activé.
  6. Sélectionnez le réseau VPC approprié. Dans l'exemple de schéma, le spoke est situé dans network-a.
  7. Sélectionnez un tunnel VPN Le cas échéant, cliquez sur Ajouter un tunnel pour ajouter un autre champ Tunnel VPN. Dans l'exemple de schéma, deux tunnels sont utilisés : vpn-tunnel1-office1 et vpn-tunnel2-office1. Lorsque vous avez terminé d'ajouter des tunnels, cliquez sur OK.
  8. Cliquez sur Create (Créer).

La page Network Connectivity Center est mise à jour et affiche les détails des spokes que vous avez créés. Pour ajouter le spoke Office2 au hub, passez à la section Créer un spoke pour le bureau 2.

gcloud

Pour créer le spoke, utilisez la commande gcloud network-connectivity spokes linked-vpn-tunnels create.

  gcloud network-connectivity spokes linked-vpn-tunnels create SPOKE_NAME \
    --hub=HUB_NAME \
    --description="DESCRIPTION" \
    --vpn-tunnels=TUNNEL_NAME,TUNNEL_NAME_2 \
    --region=REGION \
    --labels="KEY"="VALUE" \
    --site-to-site-data-transfer

Remplacez les valeurs suivantes :

  • SPOKE_NAME : nom du spoke (office-1-spoke dans le cas présent)
  • HUB_NAME : nom du hub auquel vous associez le spoke (ici, my-hub)
  • DESCRIPTION : texte facultatif décrivant le spoke
  • TUNNEL_NAME : nom du premier tunnel VPN haute disponibilité. Dans ce cas, il s'agit de vpn-tunnel1-office1.
  • TUNNEL_NAME_2 : nom du tunnel redondant. Dans ce cas, il s'agit de vpn-tunnel2-office1. Lorsque vous incluez un deuxième tunnel, n'utilisez pas d'espace entre la virgule et le nom du deuxième tunnel.
  • REGION : région Google Cloud dans laquelle se trouve le spoke (us-west1 dans le cas présent)
  • KEY : clé de la paire clé/valeur pour le texte de l'étiquette facultative
  • VALUE : valeur de la paire clé/valeur pour le texte de l'étiquette facultative

Pour ajouter le spoke Office2 au hub, passez à la section Créer un spoke pour le bureau 2.

API

Pour créer le spoke, utilisez la méthode networkconnectivity.spokes.create.

  POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME
  {
    "hub": "HUB_NAME",
    "labels": {"KEY": "VALUE"},
    "linkedVpnTunnels": {
      "uris: [
        "TUNNEL_NAME",
        "TUNNEL_NAME_2"
      ],
      "siteToSiteDataTransfer": true
    }
  }

Remplacez les valeurs suivantes :

  • PROJECT_ID : ID de votre projet
  • REGION : région Google Cloud dans laquelle vous souhaitez localiser le spoke (us-west1 dans le cas présent)
  • SPOKE_NAME : nom du spoke
  • HUB_NAME : nom du hub auquel vous associez le spoke
  • KEY : clé de la paire clé/valeur pour le texte de l'étiquette facultative
  • VALUE : valeur de la paire clé/valeur pour le texte de l'étiquette facultative
  • TUNNEL_NAME : nom du premier tunnel VPN haute disponibilité. Dans ce cas, il s'agit de vpn-tunnel1-office1.
  • TUNNEL_NAME_2 : nom du tunnel redondant. Dans ce cas, il s'agit de vpn-tunnel2-office1. Lorsque vous incluez un deuxième tunnel, n'utilisez pas d'espace entre la virgule et le nom du deuxième tunnel.

Créer le spoke pour le bureau 2

Créez un spoke pour Office2. Utilisez deux tunnels VPN haute disponibilité comme ressources sous-jacentes du spoke. Chaque tunnel doit provenir d'une passerelle VPN haute disponibilité située dans la région la plus proche du bureau. Dans le schéma d'exemple, ces tunnels sont représentés par vpn-tunnel1-office2 et vpn-tunnel2-office2.

Console

Pour créer le deuxième spoke, procédez comme suit :

  1. Accédez à la page Network Connectivity Center.

    Accéder à Network Connectivity Center

  2. Dans le menu déroulant du projet, sélectionnez un projet. Dans l'exemple de diagramme, le projet est my-project.

  3. Cliquez sur l'onglet Spokes.

  4. Cliquez sur Ajouter des spokes pour ouvrir la page Ajouter des spokes.

  5. Dans le formulaire Nouveau spoke, définissez le champ Type de spoke sur Tunnel VPN.

  6. Saisissez un nom de spoke. Dans le cas présent, il s'agit de office-2-spoke.

  7. Saisissez éventuellement une description du spoke.

  8. Sélectionnez la région du spoke. Dans l'exemple de diagramme, le spoke est situé dans us-east1.

  9. Sous Transfert de données de site à site, sélectionnez Activé.

  10. Vérifiez que le champ VPC network (Réseau VPC) est défini sur le même réseau que le dernier spoke que vous avez créé. dans l'exemple de schéma, il s'agit de network-a.

  11. Sélectionnez un tunnel VPN. Le cas échéant, cliquez sur Ajouter un tunnel pour ajouter un autre champ Tunnel VPN. Dans l'exemple de schéma, deux tunnels sont utilisés : vpn-tunnel1-office2 et vpn-tunnel2-office2. Lorsque vous avez terminé d'ajouter des tunnels, cliquez sur OK.

  12. Cliquez sur Create (Créer).

gcloud

Pour créer le spoke, utilisez la commande gcloud network-connectivity spokes linked-vpn-tunnels create.

  gcloud network-connectivity spokes linked-vpn-tunnels create SPOKE_NAME \
    --hub=HUB_NAME \
    --description="DESCRIPTION" \
    --vpn-tunnels=TUNNEL_NAME,TUNNEL_NAME_2 \
    --region=REGION \
    --labels="KEY"="VALUE" \
    --site-to-site-data-transfer

Remplacez les valeurs suivantes :

  • SPOKE_NAME : nom du spoke (office-2-spoke dans le cas présent)
  • HUB_NAME : nom du hub auquel vous associez le spoke (ici, my-hub)
  • DESCRIPTION : texte facultatif décrivant le spoke
  • TUNNEL_NAME : nom du premier tunnel VPN haute disponibilité. Dans ce cas, il s'agit de vpn-tunnel1-office2.
  • TUNNEL_NAME_2 : nom du tunnel redondant. Dans ce cas, il s'agit de vpn-tunnel2-office2. Lorsque vous incluez un deuxième tunnel, n'utilisez pas d'espace entre la virgule et le nom du deuxième tunnel.
  • REGION : région Google Cloud dans laquelle se trouve le spoke (us-east1 dans le cas présent)
  • KEY : clé de la paire clé/valeur pour le texte de l'étiquette facultative
  • VALUE : valeur de la paire clé/valeur pour le texte de l'étiquette facultative

    Pour ajouter le spoke Office2 au hub, passez à la section Créer un spoke pour le bureau 2.

API

Pour créer le spoke, utilisez la méthode networkconnectivity.spokes.create.

  POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME
  {
    "hub": "HUB_NAME",
    "labels": {"KEY": "VALUE"},
    "linkedVpnTunnels": {
      "uris": [
        "TUNNEL_NAME",
        "TUNNEL_NAME_2"
      ],
      "siteToSiteDataTransfer": true
    }
  }

Remplacez les valeurs suivantes :

  • PROJECT_ID : ID de votre projet
  • REGION : région Google Cloud dans laquelle vous souhaitez localiser le spoke (us-east1 dans le cas présent)
  • SPOKE_NAME : nom du spoke
  • HUB_NAME : nom du hub auquel vous associez le spoke
  • KEY : clé de la paire clé/valeur pour le texte de l'étiquette facultative
  • VALUE : valeur de la paire clé/valeur pour le texte de l'étiquette facultative
  • TUNNEL_NAME : nom du premier tunnel VPN haute disponibilité. Dans ce cas, il s'agit de vpn-tunnel1-office2.
  • TUNNEL_NAME_2 : nom du tunnel redondant. Dans ce cas, il s'agit de vpn-tunnel2-office2. Lorsque vous incluez un deuxième tunnel, n'utilisez pas d'espace entre la virgule et le nom du deuxième tunnel.

Vérifier la configuration

Une fois le hub et ses spokes configurés, vous devriez pouvoir acheminer le trafic provenant de l'instance de machine virtuelle (VM) d'un bureau vers l'instance de VM de l'autre bureau. Pour cela, il est nécessaire que chaque VM ait accès au tunnel VPN de sa région.

Nettoyer la configuration

Suivez les étapes des sections suivantes pour nettoyer votre exemple de configuration. Pour éviter de continuer à payer des frais, supprimez les ressources que vous avez créées.

Supprimer le projet

Si vous souhaitez supprimer le projet que vous avez créé, procédez comme suit : Vous pouvez également conserver le projet et supprimer des ressources individuelles, comme décrit dans les sections suivantes.

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

Supprimer les deux spokes

Vous devez supprimer tous les spokes pour pouvoir supprimer un hub.

Console

  1. Accédez à la page Network Connectivity Center.

    Accéder à Network Connectivity Center

  2. Dans le menu déroulant du projet, sélectionnez un projet. Dans l'exemple de diagramme, le projet est my-project.

  3. Cliquez sur l'onglet Spokes.

  4. Affichez la liste des noms de spoke du projet.

  5. Cochez les cases correspondant aux spokes que vous souhaitez supprimer (dans ce cas, office-1-spoke et office-2-spoke).

  6. Cliquez sur Supprimer les spokes.

  7. Dans la boîte de dialogue de confirmation, cliquez sur Supprimer.

gcloud

Pour supprimer des spokes, utilisez la commande gcloud network-connectivity spokes delete. Exécutez la commande deux fois. Une première fois pour supprimer office-1-spoke, puis à nouveau pour supprimer office-2-spoke.

  gcloud network-connectivity spokes delete SPOKE_NAME \
    --region=REGION

Remplacez les valeurs suivantes :

  • SPOKE_NAME : nom du spoke à supprimer ; dans ce cas, office-1-spoke et office-2-spoke.
  • REGION : région Google Cloud dans laquelle se trouve le spoke

API

Pour supprimer des spokes, utilisez la méthode networkconnectivity.spokes.delete. Exécutez la méthode deux fois. Une première fois pour supprimer office-1-spoke, puis à nouveau pour supprimer office-2-spoke.

  DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME

Remplacez les valeurs suivantes :

  • PROJECT_ID : ID du projet contenant le spoke. Dans l'exemple de diagramme, le projet est my-project.
  • REGION : région Google Cloud dans laquelle se trouve le spoke
  • SPOKE_NAME : nom du spoke à supprimer ; dans ce cas, office-1-spoke et office-2-spoke.

Supprimer le hub

Après avoir supprimé les spokes, vous pouvez supprimer le hub.

Console

  1. Dans Google Cloud Console, accédez à la page Network Connectivity Center.

    Accéder à Network Connectivity Center

  2. Dans le menu déroulant du projet, sélectionnez un projet. Dans l'exemple de diagramme, le projet est my-project.

  3. Cliquez sur  Supprimer le hub.

  4. Dans la boîte de dialogue de confirmation, cliquez sur Supprimer pour supprimer le hub.

gcloud

Pour supprimer le hub, utilisez la commande gcloud network-connectivity hubs delete.

  gcloud network-connectivity hubs delete HUB_NAME /
    --project=PROJECT_ID

Remplacez les valeurs suivantes :

  • HUB_NAME : nom du hub à supprimer (dans ce cas, my-hub)
  • PROJECT_ID : ID du projet contenant le hub. Dans l'exemple de diagramme, le projet est my-project.

API

Pour supprimer le hub, utilisez la méthode networkconnectivity.hubs.delete.

  DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/global/hubs/HUB_NAME

Remplacez les valeurs suivantes :

  • PROJECT_ID : ID du projet contenant le hub. Dans l'exemple de diagramme, le projet est my-project.
  • HUB_NAME : nom du hub à supprimer

Supprimer le réseau et le sous-réseau VPC

Supprimez le réseau et le sous-réseau VPC que vous avez configurés pour ce tutoriel.

Étape suivante