Network Connectivity Center vous permet d'utiliser un dispositif virtuel de réseau tiers pour établir la connectivité entre un site externe et vos ressources réseau de cloud privé virtuel (VPC). Pour établir la connectivité de cette manière, vous utilisez la fonctionnalité d'appareil de Routeur.
L'appareil de routeur est l'un des types de spoke acceptés pour Network Connectivity Center. Pour en savoir plus sur le centre de connectivité réseau, consultez la section Présentation du centre de connectivité réseau. Pour en savoir plus sur l'appareil de routeur, consultez la présentation de l'appliance de routeur.
Exemple de configuration
Dans la topologie suivante, un site externe se connecte à deux réseaux VPC à l'aide d'un spoke d'appareil de routeur.
La VM qui héberge l'instance de dispositif de routeur possède une interface dans chaque réseau VPC. L'instance de dispositif de routeur gère les sessions BGP (Border Gateway Protocol) avec les routeurs cloud dans les deux réseaux.
Chaque routeur cloud possède deux interfaces. L'interface du dispositif du routeur de chaque réseau est appairé aux deux interfaces du routeur cloud approprié, pour un total de quatre sessions d'appairage.
Tâches requises
Pour configurer l'exemple de configuration, assurez-vous de remplir les conditions préalables requises pour cette procédure, puis effectuez les tâches requises :
Créez la machine virtuelle (VM) Compute Engine faisant office d'instance d'appareil de routeur. Vous pouvez créer la VM à l'aide d'une solution partenaire compatible ou de votre propre image personnalisée.
Assurez-vous que l'instance d'appareil de routeur est accessible au trafic BGP via le port TCP 179. Pour les rendre accessibles, vous devrez peut-être créer des règles de pare-feu.
Créez deux spokes, un dans chaque réseau VPC. Chaque spoke utilise la même instance de dispositif de routeur que sa ressource de sauvegarde.
Configurez deux routeurs cloud, un dans chaque réseau VPC. Pour chaque routeur cloud, cette tâche comprend les sous-tâches suivantes :
Créez un routeur cloud dans la même région que l'instance d'appareil de routeur.
Créez deux interfaces, une sur chaque routeur cloud.
Configurez l'appairage BGP sur l'instance d'appareil de routeur.
La procédure à suivre pour compléter ces tâches peut varier considérablement. Par exemple, si vous créez une instance d'appareil de routeur à l'aide d'une solution partenaire, certaines des tâches suivantes peuvent être automatisées.
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.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
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.
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)'
Activer l'API Network Connectivity
Pour pouvoir effectuer des tâches quelconques à l'aide de Network Connectivity Center, vous devez activer l'API Network Connectivity.
Console
Pour activer l'API Network Connectivity, procédez comme suit :
Dans Google Cloud Console, accédez à la page Network Connectivity Center.
Cliquez sur Activer.
Vous pouvez également activer l'API à l'aide de la bibliothèque d'API de la console Google Cloud, comme décrit dans la section Activer des API.
Obtenir l'accès
Pour utiliser Network Connectivity Center, vous devez disposer des autorisations décrites dans la section Rôles et autorisations.
Lorsque vous configurez le centre de connectivité réseau, vous utilisez également des ressources Google Cloud telles que les réseaux VPC, les sous-réseaux et les règles de pare-feu. Pour plus d'informations sur les autorisations dont vous avez besoin pour utiliser ces ressources, consultez la documentation sur le contrôle des accès dans Compute Engine.
Adresses IP et instances d'appliance de routeur
Pour configurer une instance d'appareil de routeur, vous devez appairer l'instance et le routeur cloud. Pour configurer l'appairage, la VM doit utiliser une adresse IP interne RFC 1918. Vous ne pouvez pas appairer ces deux ressources si la VM utilise un autre type d'adresse. En outre, les deux adresses IP doivent se trouver dans la même région.
Pour en savoir plus sur l'affichage des adresses IP d'une VM, consultez les documents suivants :
- Rechercher les adresses IP d'une instance de VM
- Afficher les adresses IP qui ne sont pas associées à une instance de VM
Pour obtenir des définitions et des informations détaillées sur les types d'adresses IP, consultez la section Adresses IP.
Réserver une adresse IP interne statique (recommandé)
Nous vous recommandons d'attribuer une adresse IP interne statique à votre instance d'appareil de routeur afin qu'elle ne change pas lors du redémarrage. Si l'adresse change, l'appairage BGP échoue.
Plusieurs options s'offrent à vous pour attribuer une adresse IP réservée. Vous pouvez réserver l'adresse IP à l'avance ou lors de la création de la VM. Si vous attribuez par erreur une adresse éphémère à la VM, vous pouvez par la suite la convertir en adresse statique. Pour en savoir plus sur les adresses IP statiques, consultez la page Réserver des adresses IP statiques.
Adresses IP pour l'appairage BGP
Une instance d'appareil de routeur utilise son adresse IP interne pour l'appairer avec Cloud Router. L'instance n'utilise pas d'adresse de liaison locale (telle que 169.254.x.x
) pour l'appairage BGP.
Cloud Router utilise également deux adresses IP internes RFC 1918 pour établir un appairage avec l'instance d'appareil de routeur (une adresse pour chaque interface). Ces adresses IP peuvent être attribuées manuellement ou automatiquement à partir du sous-réseau contenant à la fois l'interface de l'instance d'appareil de routeur et celle de Cloud Router.
Créer des ressources VPC
Les sections suivantes expliquent comment créer des réseaux et des sous-réseaux VPC.
Créer deux réseaux VPC
Si vous ne l'avez pas déjà fait, créez deux réseaux VPC. Définissez le mode de routage dynamique de chaque réseau sur global
.
Pour en savoir plus sur la création de réseaux VPC, consultez la section Créer des réseaux.
Console
Pour créer un réseau VPC personnalisé à l'aide de la console Google Cloud, consultez la section Créer un réseau en mode personnalisé.
Assurez-vous de définir le mode de routage dynamique sur Mondial. Si vous souhaitez suivre les conventions de dénomination utilisées dans l'exemple de configuration, appelez vos réseaux network-a
et network-b
.
gcloud
Pour créer un réseau VPC personnalisé, utilisez la commande gcloud compute networks create
.
gcloud compute networks create NAME \ --subnet-mode custom \ --bgp-routing-mode global
Remplacez NAME
par le nom du réseau VPC, par exemple, network-a
ou network-b
.
API
Pour créer un réseau VPC personnalisé à l'aide de l'API Compute Engine, consultez la section Utiliser VPC.
Créer un sous-réseau
Créez un sous-réseau dans la région network-a
et un sous-réseau dans la région network-b
.
Console
Pour ajouter un sous-réseau à l'aide de la console Google Cloud, consultez la section Ajouter des sous-réseaux.
Si vous souhaitez suivre les conventions de nommage utilisées dans l'exemple de configuration, utilisez les valeurs suivantes pour le sous-réseau dans network-a
:
- Nom :
subnet-a
- Région :
us-central1
- Plage :
10.1.3.0/24
Utilisez les valeurs suivantes pour le sous-réseau dans network-b
:
- Nom :
subnet-b
- Région :
us-central1
- Plage :
192.168.10.0/24
gcloud
Pour créer un sous-réseau VPC, utilisez la commande gcloud compute networks subnets create
.
gcloud compute networks subnets create NAME \ --network=NETWORK \ --region=REGION \ --range=RANGE
Remplacez les éléments suivants :
NAME
: nom du sous-réseau contenant la VM du dispositif de routeur, par exemplesubnet-a
ousubnet-b
.NETWORK
: réseau qui contient le sous-réseau, par exemplenetwork-a
ounetwork-b
.REGION
: région contenant le sous-réseau (par exemple,us-central1
)RANGE
: plage d'adresses IP du sous-réseau au format CIDR (par exemple,10.1.3.0/24
ou192.168.10.0/24
)
API
Pour créer un sous-réseau VPC à l'aide de l'API Compute Engine, consultez la section Utiliser VPC.
Créer la VM du dispositif de routeur
Créez la VM Compute Engine qui sert d'instance de dispositif de routeur. La VM est représentée dans l'exemple de topologie sous la forme router-app-a
. Elle comporte deux interfaces, une dans network-a
et une dans network-b
.
Lorsque vous créez la VM, vous devez sélectionner une image de dispositif virtuel de réseau. Il peut s'agir de l'une des images suivantes :
Une solution fournie par un partenaire Network Connectivity Center compatible
Une image personnalisée, comme une image que vous avez créée
Pour plus d'informations sur la spécification des images, consultez les ressources suivantes :
- Présentation des images
- Bonnes pratiques pour les familles d'images
- Créer, supprimer et abandonner des images personnalisées
Pour en savoir plus sur la création d'une VM, consultez la page Créer et démarrer une instance de VM.
Les exemples de cette section partent du principe que vous avez réservé des adresses IP pour l'instance d'appliance de routeur. Pour plus d'informations, consultez la section Adresses IP pour l'appliance de routeur.
Console
Pour créer la VM utilisée dans l'exemple de configuration, consultez la section Créer et démarrer une instance de VM. Lorsque vous créez la VM, effectuez les choix suivants :
Si vous souhaitez suivre les conventions d'attribution de noms utilisées dans l'exemple de configuration, utilisez les valeurs suivantes :
- Nom :
router-app-a
- Région :
us-central1
- Zone :
us-central1-a
- Nom :
Pour sélectionner une image, accédez à la zone Disque de démarrage de la page, cliquez sur Modifier, puis accédez à l'image appropriée pour la VM.
Développez la section Options avancées, puis Mise en réseau. Utilisez les valeurs suivantes :
- Sous Transfert IP, sélectionnez Activer.
- Sous Interfaces réseau, créez deux interfaces : l'une dans
network-a
et l'autre dansnetwork-b
. Pour créer chaque interface, sélectionnez le réseau approprié, puis cliquez sur Ajouter une interface réseau. Renseignez les champs suivants :- Sélectionnez le sous-réseau dans lequel vous souhaitez installer l'instance d'appareil de routeur (par exemple
subnet-a
ousubnet-b
). - Sous Adresse IP interne principale, sélectionnez l'adresse IP interne RFC 1918 réservée que vous souhaitez utiliser (par exemple,
10.1.3.8
ou192.168.10.3
). - Sous Niveau de service réseau, sélectionnez Premium. Ce choix optimise l'utilisation du réseau Google par le trafic.
- Sélectionnez le sous-réseau dans lequel vous souhaitez installer l'instance d'appareil de routeur (par exemple
gcloud
Pour créer les deux VM de dispositif de routeur utilisées dans l'exemple de configuration, utilisez la commande gcloud compute instances create
.
Exécutez la commande deux fois : une fois pour chaque instance de dispositif de routeur. Remplacez INSTANCE_NAME par le nom de la VM qui fait office d'instance de dispositif de routeur.
Dans l'exemple suivant, vous attribuez l'adresse IP interne statique et l'adresse IP externe statique que vous avez réservées précédemment sur la VM. Vous spécifiez également le projet contenant une image fournie par le fournisseur pour la VM, avec le nom de l'image.
gcloud compute instances create INSTANCE_NAME \ --project=PROJECT \ --zone=ZONE \ --machine-type=MACHINE_TYPE \ --network-tier=NETWORK_TIER \ --network-interface=[subnet=SUBNET,private-network-ip=INTERNAL_IP_ADDRESS] \ --can-ip-forward \ --image-project=IMAGE_PROJECT \ --image=IMAGE
Remplacez les éléments suivants :
INSTANCE_NAME
: nom de la VM agissant en tant qu'instance d'appliance de routeur (par exemple,router-app-a
ourouter-app-b
).PROJECT
: nom du projet contenant les VM d'appliance de routeur (par exemple,my-project
)ZONE
: zone Google Cloud dans laquelle se trouve la VM (par exemple,us-west1-a
)MACHINE_TYPE
: ressource de type de machine à utiliser pour la VM (par exemple,n1-standard-2
)NETWORK_TIER
: lors de la création des VM d'appliance de routeur, définissez le niveau de réseau surpremium
. Ce choix maximise la portée du trafic sur le réseau GoogleSUBNET
: sous-réseau attribué à l'interface réseau principale de la VM (par exemple,subnet-a-1
)INTERNAL_IP_ADDRESS
: adresse IP interne RFC 1918 attribuée à l'interface de VM qui se connecte au routeur Cloud Router (par exemple,10.0.1.10
)IMAGE_PROJECT
: nom du projet contenant l'image spécifiée dans le champimage
(par exemple,debian-cloud
IMAGE
: nom de l'image à installer (par exemple,debian-10-buster-v20210217
)
API
Pour créer les deux VM de dispositif de routeur utilisées dans l'exemple de configuration, utilisez la méthode compute.instances.insert
.
Pour découvrir d'autres méthodes, consultez la section Créer et démarrer une instance de VM.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances { "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "name": "INSTANCE_NAME", "canIpForward": "true", "networkInterfaces": [{ "subnetwork": "regions/REGION/subnetworks/SUBNET", "networkIP": "INTERNAL_IP_ADDRESS", "accessConfigs": [{ "networkTier": "NETWORK_TIER, }] }], "disks": [{ "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot": true }] }
Remplacez les éléments suivants :
PROJECT
: nom du projet contenant les VM d'appliance de routeur (par exemple,my-project
)ZONE
: zone Google Cloud dans laquelle se trouve la VM (par exemple,us-west1-a
)MACHINE_TYPE
: ressource de type de machine à utiliser pour la VM (par exemple,zones/us-west1-a/machineTypes/n1-standard-2
)INSTANCE_NAME
: nom de la VM (par exemple,router-app-a
ourouter-app-b
)REGION
: région contenant la VM (par exemple,us-west1
)SUBNET
: sous-réseau attribué à l'interface réseau principale de la VM (par exemple,regions/us-west1/subnetworks/subnet-a-1
)INTERNAL_IP_ADDRESS
: adresse IP interne RFC 1918 attribuée à la VM. Configure l'adresse pour l'interface de VM qui se connecte au routeur cloud (par exemple,10.0.1.10
)NETWORK_TIER
: lors de la création des VM d'appliance de routeur, définissez le niveau de réseau surpremium
. Ce choix maximise la portée du trafic sur le réseau GoogleIMAGE_PROJECT
: nom du projet contenant l'image que vous spécifiez lors de la création de la VM (par exemple,debian-cloud
)IMAGE
: nom de l'image à utiliser lors de la création de la VM (par exemple,debian-10-buster-v20210217
)
Créer une règle de pare-feu pour autoriser BGP
Créez deux règles de pare-feu, une dans network-a
et une network-b
. Chaque règle doit autoriser le trafic BGP sur le port TCP 179
.
Pour plus d'informations sur les commandes de pare-feu, consultez la section Utiliser des règles de pare-feu.
Console
Pour créer une règle de pare-feu VPC à l'aide de la console Google Cloud, consultez la section Créer des règles de pare-feu.
gcloud
Pour créer une règle de pare-feu VPC à l'aide de Google Cloud CLI, consultez Créer des règles de pare-feu.
API
Pour créer une règle de pare-feu VPC à l'aide de l'API Compute Engine, consultez la section Créer des règles de pare-feu.
Créer les ressources du centre de connectivité réseau
Avant de pouvoir utiliser une VM de dispositif de routeur, vous devez créer les ressources requises du centre de connectivité réseau.
Créer un hub
Avant de pouvoir créer des spokes Network Connectivity Center, vous devez créer un hub.
Console
Dans Google Cloud Console, accédez à la page Network Connectivity Center.
Dans le menu "projet", sélectionnez un projet.
Saisissez un nom de hub.
Saisissez une description facultative.
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.
Cliquez sur Continuer.
La console affiche un formulaire vous permettant de créer un spoke. Pour le remplir maintenant, suivez les étapes décrites dans la section Créer un spoke d'appareil de routeur.
Cliquez sur OK.
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 hubDESCRIPTION
: texte facultatif décrivant le hubKEY
: clé de la paire clé/valeur pour le texte de l'étiquette facultativeVALUE
: valeur de la paire clé/valeur pour le texte du libellé facultatif
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 hubHUB_NAME
: nom du nouveau hubDESCRIPTION
: texte facultatif décrivant le hubKEY
: clé de la paire clé/valeur pour le texte du libellé facultatifVALUE
: valeur de la paire clé/valeur pour le texte du libellé facultatif
Créer deux spokes d'appareil de routeur
Créez deux spokes d'appareil de routeur. Les deux spokes utilisent la même ressource de sauvegarde : l'instance de dispositif de routeur que vous venez de créer. Un spoke utilise l'interface dans network-a
et l'autre utilise l'interface dans network-
b
.
Vous devez créer un spoke pour activer l'appairage BGP entre l'instance d'appareil de routeur et le routeur cloud, que vous créez à l'étape suivante.
Pour en savoir plus sur la création d'un spoke, consultez la section Travailler avec des hubs et des spokes.
Console
Saisir les détails de base des spokes
Dans Google Cloud Console, accédez à la page Network Connectivity Center.
Dans le menu "projet", sélectionnez un projet.
Cliquez sur l'onglet Spokes.
Cliquez sur Ajouter des spokes.
Dans le formulaire Nouveau spoke, définissez le type de spoke sur dispositif de Routeur.
Saisissez un Nom de spoke. Par exemple :
spoke-a
ouspoke-b
.(Facultatif) Saisissez une description.
Sélectionnez le champ Région du nouveau spoke.
Sous Transfert de données de site à site, sélectionnez Désactivé.
Dans la liste déroulante Réseau VPC, sélectionnez un réseau.
Saisissez les détails de l'appareil de routeur
- Sous Associer une ou plusieurs instances au spoke, utilisez la liste déroulante pour sélectionner un dispositif de routeur(par exemple,
router-app-a
). - Pour ajouter d'autres instances de dispositif de routeur à ce spoke, cliquez sur Ajouter une instance et répétez l'étape précédente.
- Lorsque vous avez terminé, cliquez sur OK et passez à l'étape Enregistrer votre spoke.
Enregistrer vos spokes
- Pour ajouter les deuxièmes spokes, cliquez sur Ajouter un spoke et recommencez le processus en commençant par la saisie d'un nom de spoke.
- Lorsque vous avez terminé d'ajouter des spokes, cliquez sur Créer. La page Network Connectivity Center est mise à jour et affiche les détails des spokes que vous avez créés.
gcloud
Pour créer les spokes d'appareil de routeur, exécutez la commande gcloud network-connectivity spokes linked-router-appliances create
.
Exécutez la commande deux fois : une fois pour chaque spoke.
gcloud network-connectivity spokes linked-router-appliances create NAME \ --hub="HUB_URI" \ --description="DESCRIPTION" \ --router-appliance=instance="ROUTER_APPLIANCE_URI",ip=IP_ADDRESS \ --region=REGION \ --labels="KEY"="VALUE"
Remplacez les valeurs suivantes :
NAME
: nom du spoke, par exemple,spoke-a
HUB_URI
: URI du hub auquel vous associez le spokeDESCRIPTION
: texte facultatif décrivant le spokeROUTER_APPLIANCE_URI
: URI de l'instance d'appareil de routeur. Par exemple :https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
IP_ADDRESS
: adresse IP interne de l'instance de dispositif de routeur, dans le réseau VPC approprié, par exemple10.1.3.8
ou192.168.10.3
REGION
: région Google Cloud dans laquelle vous souhaitez localiser le spoke, par exempleus-central1
KEY
: clé de la paire clé/valeur pour le texte du libellé facultatifVALUE
: valeur de la paire clé/valeur pour le texte du libellé facultatifPar exemple, la commande suivante crée un spoke d'appareil de routeur qui utilise
router-app-a
comme ressources sous-jacentes : Cette commande référence l'instance de dispositif du routeur à l'aide de son interfacenetwork-a
:gcloud network-connectivity spokes linked-router-appliances create spoke-a \ --hub=my-hub \ --description="Test spoke 1" \ --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=10.1.3.8 \ --region=us-central1 \
Par exemple, la commande suivante crée un spoke d'appareil de routeur qui utilise
router-app-a
comme ressources sous-jacentes : Cette commande référence l'instance de dispositif du routeur à l'aide de son interfacenetwork-b
:gcloud network-connectivity spokes linked-router-appliances create spoke-b \ --hub=my-hub \ --description="Test spoke 1" \ --router-appliance=instance="https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a",ip=192.168.10.3\ --region=us-central1 \
API
Pour créer un spoke d'appareil de routeur, utilisez la méthode networkconnectivity.spokes.create
.
Pour chaque instance d'appareil de routeur que vous souhaitez associer au spoke, ajoutez une instance à l'aide du tableau linkedRouterApplianceInstances.instances
.
POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/spokes/SPOKE_NAME { "hub": "HUB_URI", "labels": {"KEY": "VALUE"}, "linkedRouterApplianceInstances": { "instances": [ { "virtualMachine": "ROUTER_APPLIANCE_URI", "ipAddress": INTERNAL_IP_ADDRESS, }, ], "siteToSiteDataTransfer": BOOLEAN } }
Remplacez les valeurs suivantes :
PROJECT_ID
: ID de votre projetREGION
: région Google Cloud dans laquelle vous souhaitez localiser le spoke, par exempleus-west1
SPOKE_NAME
: nom que vous souhaitez donner au spokeHUB_URI
: URI du hub auquel vous associez le spoke. Par exemple :http://networkconnectivity.googleapis.com/v1/projects/PROJECT_NAME/locations/global/hubs/HUB_NAME
KEY
: clé de la paire clé/valeur pour le texte du libellé facultatifVALUE
: valeur de la paire clé/valeur pour le texte du libellé facultatifROUTER_APPLIANCE_URI
: URI de l'instance d'appareil de routeur. Par exemple :https://www.googleapis.com/compute/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
IP_ADDRESS
: adresse IP interne de l'instance de dispositif de routeur pour le réseau VPC approprié, par exemple10.1.3.8
ou192.168.10.3
BOOLEAN
: valeur qui détermine si le transfert de données de site à site est activé pour ce spoke. Pour ce cas d'utilisation, définissez l'option surfalse
.Par exemple, pour créer un spoke qui utilise
router-app-a
pour l'interface dansnetwork-a
, le corps de votre requête doit être structuré comme suit :{ "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub", "labels": { "environment" : "test" }, "linkedRouterApplianceInstances": { "instances": [ { "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a", "ipAddress": "10.1.3.8", }, ], "siteToSiteDataTransfer": false } }
Pour créer un spoke qui utilise
router-app-a
pour l'interface dansnetwork-b
, le corps de votre requête doit être structuré comme suit :{ "hub": "http://networkconnectivity.googleapis.com/v1/projects/my-project/locations/global/hubs/my-hub", "labels": { "environment" : "test" }, "linkedRouterApplianceInstances": { "instances": [ { "virtualMachine": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/router-app-a", "ipAddress": "192.168.10.3", }, ], "siteToSiteDataTransfer": false } }
Configurer des routeurs cloud
L'appareil de routeur utilise des routeurs Cloud pour échanger des routes avec des réseaux VPC. Pour cette raison, vous devez créer un routeur Cloud Router dans chaque réseau VPC et effectuer quelques autres tâches de configuration.
Créer les routeurs cloud
Si vous utilisez les mêmes valeurs que l'exemple de topologie, créez deux routeurs cloud, un dans network-a
et un dans network-b
. Les deux routeurs cloud doivent se trouver dans us-central1
.
Pour plus d'informations, consultez la page Créer des routeurs Cloud Routers.
Console
Pour créer un routeur Cloud Router dans la console Google Cloud, utilisez l'une des approches suivantes :
Utilisez la page Cloud Router, comme décrit dans la section Créer un routeur cloud.
Utilisez la page Network Connectivity Center. L'avantage de cette approche est qu'elle vous permet de créer le routeur, les interfaces et les sessions BGP en même temps. Pour en savoir plus sur la réalisation de toutes ces étapes, consultez la section Configurer l'appairage BGP sur le routeur Cloud Router.
gcloud
Pour créer un routeur Cloud Router, utilisez la commande gcloud compute routers create
.
gcloud compute routers create NAME \ --region=REGION \ --network=NETWORK \ --asn=ASN \ --project=PROJECT_ID
Remplacez les éléments suivants :
NAME
: nom du routeur Cloud Router, par exemplecloud-router-a
oucloud-router-b
.REGION
: région contenant le routeur cloud (par exemple,us-central1
)NETWORK
: réseau VPC contenant le routeur cloud (par exemple,network-a
ounetwork-b
)ASN
: numéro ASN (Autonomous System Number) du routeur cloud. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996 (par exemple,65000
)PROJECT_ID
: ID de projet pour le routeur cloud (par exemple,my-project
)
API
Pour créer un routeur Cloud Router, utilisez la méthode compute.routers.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers { "name": "NAME", "network": "NETWORK", "bgp": { "asn": ASN } }
Remplacez les éléments suivants :
PROJECT_ID
: ID de projet pour le routeur cloud (par exemple,my-project
)REGION
: région contenant le routeur cloud (par exemple,us-central1
)NAME
: nom du routeur Cloud Router, par exemplecloud-router-a
oucloud-router-b
.NETWORK
: URI du réseau VPC contenant le routeur cloud (par exemple,/global/networks/network-a
ou/global/networks/network-b
)ASN
: numéro ASN (Autonomous System Number) du routeur cloud. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996 (par exemple,65000
)
Créez deux interfaces, une sur chaque routeur Cloud Router
Pour établir une redondance, créez deux interfaces sur chaque routeur Cloud Router. Sur chaque routeur Cloud Router, les deux interfaces doivent être associées au même sous-réseau que l'interface de l'appareil de routeur correspondant. Si vous utilisez les valeurs de l'exemple de topologie, procédez comme suit :
- Pour
cloud-router-a
, créez deux interfaces danssubnet-a
. - Pour
cloud-router-b
, créez deux interfaces danssubnet-b
.
L'interface Cloud Router utilise une adresse IP interne régionale. Si vous spécifiez explicitement l'adresse IP interne de l'interface, l'adresse IP doit appartenir à la plage d'adresses IP principale du sous-réseau. Il ne peut pas déjà être utilisé par une autre ressource, telle qu'une VM ou une autre interface de routeur cloud.
Il n'existe aucune instruction de la console Google Cloud pour cette étape. Si vous utilisez la console Google Cloud, lorsque vous terminez la tâche suivante (Créer un appairage BGP sur chaque routeur cloud), les interfaces sont créées automatiquement.
gcloud
Pour créer des interfaces redondantes sur vos routeurs Cloud Router, utilisez la commande gcloud compute routers add-interface
.
Effectuez deux fois les étapes suivantes, une fois pour cloud-router-a
et à nouveau pour cloud-router-b
:
Pour chaque routeur cloud, créez la première interface :
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=FIRST_INTERFACE_NAME \ --ip-address=FIRST_INTERFACE_IP_ADDRESS \ --subnetwork=SUBNET \ --region=REGION \ --project=PROJECT_ID
Remplacez les éléments suivants :
ROUTER_NAME
: nom du routeur Cloud Router à mettre à jour, par exemple,cloud-router-a
oucloud-router-b
FIRST_INTERFACE_NAME
: nom de l'interface. Par exemple,interface-1
FIRST_INTERFACE_IP_ADDRESS
: adresse IP interne RFC 1918 à utiliser pour la première interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseauSUBNET
: sous-réseau contenant l'interface de routeur Cloud Router et l'interface d'instance d'appareil de routeur correspondanteREGION
: région Google Cloud dans laquelle réside le routeur Cloud Router (par exemple,us-central1
)PROJECT_ID
: ID de projet pour le routeur cloud (par exemple,my-project
)
Pour chaque routeur Cloud Router, créez l'interface redondante :
gcloud compute routers add-interface ROUTER_NAME \ --interface-name=SECOND_INTERFACE_NAME \ --ip-address=SECOND_INTERFACE_IP_ADDRESS \ --subnetwork=SUBNET \ --redundant-interface=FIRST_INTERFACE_NAME \ --region=REGION \ --project=PROJECT_ID
Remplacez les éléments suivants :
ROUTER_NAME
: nom du routeur Cloud Router à mettre à jour, par exemple,cloud-router-a
oucloud-router-b
SECOND_INTERFACE_NAME
: nom de l'interface. Par exemple,interface-2
SECOND_INTERFACE_IP_ADDRESS
: adresse IP interne RFC 1918 à utiliser pour la deuxième interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseauSUBNET
: sous-réseau contenant les deux interfaces de routeur Cloud Router et l'interface d'instance d'appareil de routeur correspondante.FIRST_INTERFACE_NAME
: nom de l'interface que vous avez créée à l'étape 1REGION
: région Google Cloud dans laquelle réside le routeur Cloud Router (par exemple,us-central1
)PROJECT_ID
: ID de projet pour le routeur cloud (par exemple,my-project
)
Exemples de commandes pour
cloud-router-a
La commande suivante crée la première interface sur
cloud-router-a
:gcloud compute routers add-interface cloud-router-a \ --interface-name=interface-1 \ --ip-address=10.1.3.14 \ --subnetwork=subnet-a \ --region=us-central1 \ --project=my-project
La commande suivante crée la deuxième interface sur
cloud-router-a
:gcloud compute routers add-interface cloud-router-a \ --interface-name=interface-2 \ --ip-address=10.1.3.15 \ --subnetwork=subnet-a \ --redundant-interface=interface-1 \ --region=us-central1 \ --project=my-project
Exemples de commandes pour
cloud-router-b
La commande suivante crée la première interface sur
cloud-router-b
:gcloud compute routers add-interface cloud-router-b \ --interface-name=interface-1 \ --ip-address=192.168.10.14 \ --subnetwork=subnet-b \ --region=us-central1 \ --project=my-project
La commande suivante crée la deuxième interface sur
cloud-router-b
:gcloud compute routers add-interface cloud-router-b \ --interface-name=interface-2 \ --ip-address=192.168.10.15 \ --subnetwork=subnet-b \ --redundant-interface=interface-1 \ --region=us-central1 \ --project=my-project
API
Pour créer des interfaces redondantes sur vos routeurs Cloud Router, utilisez la méthode compute.routers.patch
.
Exécutez la requête suivante deux fois : une fois pour cloud-router-a
et une autre fois pour cloud-router-b
:
"PATCH https"://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME { "region":"REGION", "interfaces":[ { "name":"FIRST_INTERFACE_NAME", "privateIpAddress:"FIRST_INTERFACE_IP_ADDRESS", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET" }, { "name":"SECOND_INTERFACE_NAME", "privateIpAddress:"SECOND_INTERFACE_IP_ADDRESS", "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET", "redundantInterface": "FIRST_INTERFACE_NAME" } ] }
Remplacez les éléments suivants :
PROJECT_ID
: ID de projet pour le routeur cloud (par exemple,my-project
)REGION
: région Google Cloud dans laquelle réside le routeur Cloud Router (par exemple,us-central1
)NAME
: nom du routeur Cloud Router à mettre à jour, par exemple,cloud-router-a
oucloud-router-b
NETWORK
: réseau VPC contenant le routeur cloud (par exemple,network-a
)FIRST_INTERFACE_NAME
: nom de la première interface (par exemple,interface-1
)FIRST_INTERFACE_IP_ADDRESS
: adresse IP interne RFC 1918 à utiliser pour la première interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseauSUBNET
: sous-réseau contenant les deux interfaces de routeur Cloud Router et l'interface d'instance d'appareil de routeur correspondante.SECOND_INTERFACE_NAME
: nom de la deuxième interface (par exemple,interface-2
)SECOND_INTERFACE_IP_ADDRESS
: adresse IP interne RFC 1918 à utiliser pour la deuxième interface. Si vous ne spécifiez pas de valeur, Google tente de trouver une adresse libre dans la plage d'adresses IP principale du sous-réseauExemples de commandes pour
cloud-router-a
La commande suivante crée deux interfaces sur
cloud-router-a
:"PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-a { "region":"us-central1", "interfaces":[ { "name":"router-appliance-interface-0", "privateIpAddress:"10.1.3.14", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a" }, { "name":"router-appliance-interface-1", "privateIpAddress:"10.1.3.15", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-west1/subnetworks/subnet-a", "redundantInterface": "router-appliance-interface-0" } ] }
Exemple de commande pour
cloud-router-b
La commande suivante crée deux interfaces sur
cloud-router-b
:"PATCH https"://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/routers/cloud-router-b { "region":"us-central1", "interfaces":[ { "name":"router-appliance-interface-0", "privateIpAddress:"192.168.10.14", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b" }, { "name":"router-appliance-interface-1", "privateIpAddress:"192.168.10.15", "subnetwork": "https://www.googleapis.com/compute/v1/projects/my-project/regions/us-central1/subnetworks/subnet-b", "redundantInterface": "router-appliance-interface-0" } ] }
Configurer l'appairage BGP sur chaque routeur Cloud Router
Pour chaque interface de l'instance de dispositif de routeur, vous devez créer deux sessions d'appairage BGP, une pour chaque interface de routeur cloud. Si vous utilisez les valeurs de l'exemple de topologie, procédez comme suit :
Créez deux sessions d'appairage entre
cloud-router-a
et l'interfacenetwork-a
derouter-app-a
.Créez deux sessions d'appairage entre
cloud-router-b
et l'interfacenetwork-b
derouter-app-a
.
Console
Effectuez deux fois les étapes suivantes, une fois pour spoke-a
et à nouveau pour spoke-b
:
- Accédez à la page Network Connectivity Center. Accéder à Network Connectivity Center
- Dans le menu "projet", sélectionnez un projet.
- Cliquez sur l'onglet Spokes.
- Dans la colonne Nom du spoke, sélectionnez un spoke pour afficher la page Détails du spoke. Par exemple, sélectionnez
spoke-a
ouspoke-b
.
Dans la colonne Nom, localisez
router-app-a
. Cliquez sur l'icône de développement pour afficher les liens Configurer la session BGP. Cliquez sur l'un de ces liens. En réponse, le système affiche le panneau Configurer le routeur Cloud Router et les sessions BGP.
-
Dans la section Cloud Router, effectuez l'une des opérations suivantes :
- Pour sélectionner un routeur Cloud Router existant, cliquez sur Utiliser un routeur existant. Utilisez le champ Cloud Router pour identifier la ressource appropriée, puis cliquez sur Sélectionner et continuer.
- Pour créer un routeur Cloud Router sur la page Network Connectivity Center, cliquez sur Créer, puis suivez les instructions pour créer le routeur Cloud Router. Cliquez ensuite sur Créer et continuer.
- Sous Sessions BGP, configurez les deux sessions BGP. Effectuez les étapes suivantes deux fois, une fois pour chaque session :
- Cliquez sur Modifier la session BGP.
- Remplissez le formulaire en saisissant un nom, le numéro ASN du pair et la priorité des routes annoncées (MED). Cliquez sur Enregistrer et continuer.
- Cliquez sur Créer.
gcloud
Pour créer des pairs BGP sur vos routeurs Cloud Router, utilisez la commande gcloud compute routers add-bgp-peer
.
Effectuez deux fois les étapes suivantes, une fois pour cloud-router-a
et à nouveau pour cloud-router-b
:
Créez le premier pair BGP :
gcloud compute routers add-bgp-peer NAME \ --peer-name=PEER_NAME \ --interface=INTERFACE \ --peer-ip-address=PEER_IP_ADDRESS \ --peer-asn=PEER_ASN \ --instance=ROUTER_APPLIANCE \ --instance-zone=ROUTER_APPLIANCE_ZONE \ --region=REGION
Créez le deuxième pair BGP :
gcloud compute routers add-bgp-peer NAME \ --peer-name=PEER_NAME \ --interface=INTERFACE \ --peer-ip-address=PEER_IP_ADDRESS \ --peer-asn=PEER_ASN \ --instance=ROUTER_APPLIANCE \ --instance-zone=ROUTER_APPLIANCE_ZONE \ --region=REGION
Remplacez les éléments suivants :
NAME
: nom du routeur Cloud Router à mettre à jour, par exemple,cloud-router-a
oucloud-router-b
PEER_NAME
: nom de la session d'appairage BGP à établir avec l'instance d'appliance de routeurINTERFACE
: nom de l'interface pour ce pair BGPPEER_IP_ADDRESS
: adresse IP interne du routeur pair (l'instance de dispositif de routeur), par exemple,10.1.3.8
ou192.168.10.3
.PEER_ASN
: numéro ASN (Autonomous System Number) BPG pour ce pair BGP. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996ROUTER_APPLIANCE
: nom de la VM agissant en tant qu'instance de dispositif de routeur, par exemple,router-app-a
ROUTER_APPLIANCE_ZONE
: zone où se trouve la VM agissant comme instance d'appareil de routeur. Par exemple,us-central1-a
REGION
: région où se trouve la VM agissant comme instance d'appliance de routeur. Par exemple,us-central1
Exemples de commandes pour
cloud-router-a
Utilisez les commandes suivantes pour créer les pairs BGP pour
cloud-router-a
:gcloud compute routers add-bgp-peer cloud-router-a \ --peer-name=router-appliance-bgp-peer-router-app-a-0 \ --interface=router-appliance-interface-0 \ --peer-ip-address=10.1.3.8 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
gcloud compute routers add-bgp-peer cloud-router-a \ --peer-name=router-appliance-bgp-peer-router-app-a-1 \ --interface=router-appliance-interface-1 \ --peer-ip-address=10.1.3.8 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
Exemples de commandes pour
cloud-router-b
Utilisez les commandes suivantes pour créer les pairs BGP pour
cloud-router-b
:gcloud compute routers add-bgp-peer cloud-router-b \ --peer-name=router-appliance-bgp-peer-router-app-a-0 \ --interface=router-appliance-interface-0 \ --peer-ip-address=192.168.10.3 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
gcloud compute routers add-bgp-peer cloud-router-b \ --peer-name=router-appliance-bgp-peer-router-app-a-1 \ --interface=router-appliance-interface-1 \ --peer-ip-address=192.168.10.3 \ --peer-asn=65001 \ --instance=router-app-a \ --instance-zone=us-central1-a \ --region=us-central1
API
Pour créer des pairs BGP sur un routeur Cloud Router, utilisez la méthode compute.routers.patch
.
Utilisez cette méthode deux fois : une fois pour cloud-router-a
et une autre fois pour cloud-router-b
.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/routers/NAME { "bgpPeers": [ { "name": "PEER_NAME", "interfaceName": "INTERFACE_NAME", "ipAddress": "IP_ADDRESS", "peerIpAddress": "PEER_IP_ADDRESS", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE", "peerAsn": PEER_ASN, } { "name": "PEER_NAME", "interfaceName": "INTERFACE_NAME", "ipAddress": "IP_ADDRESS", "peerIpAddress": "PEER_IP_ADDRESS", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zone/ROUTER_APPLIANCE_ZONE/instances/ROUTER_APPLIANCE_INSTANCE", "peerAsn": PEER_ASN } ] }
Remplacez les éléments suivants :
PROJECT_ID
: ID de projet pour le routeur Cloud RouterREGION
: région où se trouve la VM agissant en tant qu'instance d'appliance de routeur.NAME
: nom du routeur cloud à mettre à jourPEER_NAME
: nom de la session d'appairage BGP à établir avec l'instance d'appliance de routeurINTERFACE_NAME
: nom de l'interface Cloud Router à laquelle ajouter le pairIP_ADDRESS
: adresse IP interne RFC 1918 du routeur Cloud Router à utiliser pour la session d'appairagePEER_IP_ADDRESS
: adresse IP interne de la VM agissant comme une instance de dispositif de routeur, par exemple,10.1.3.8
ou192.168.10.3
ROUTER_APPLIANCE_INSTANCE
: nom au format d'URL de la VM agissant en tant qu'instance d'appliance de routeurROUTER_APPLIANCE_ZONE
: zone où se trouve la VM agissant en tant qu'instance d'appliance de routeur.PEER_ASN
: numéro ASN (Autonomous System Number) BPG pour ce pair BGP. Cet ASN doit être un numéro ASN privé de 16 ou 32 bits, tel que défini dans la norme RFC 6996Exemples de commandes pour
cloud-router-a
PATCH https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-a { "bgpPeers": [ { "name": "router-appliance-bgp-peer-router-app-a-0", "interfaceName": "router-appliance-interface-0", "ipAddress": "10.1.3.14", "peerIpAddress": "10.1.3.8", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001, } { "name": "router-appliance-bgp-peer-router-app-a-1", "interfaceName": "router-appliance-interface-1", "ipAddress": "10.1.3.15", "peerIpAddress": "10.1.3.8", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001 } ] }
Exemples de commandes pour
cloud-router-b
PATCH https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west1/routers/cloud-router-b { "bgpPeers": [ { "name": "router-appliance-bgp-peer-router-app-a-0", "interfaceName": "router-appliance-interface-0", "ipAddress": "192.168.10.14", "peerIpAddress": "192.168.10.3", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001, } { "name": "router-appliance-bgp-peer-router-app-a-1", "interfaceName": "router-appliance-interface-1", "ipAddress": "192.168.10.15, "peerIpAddress": "192.168.10.3", "routerApplianceInstance": "https://compute.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/instances/router-app-a", "peerAsn": 65001 } ] }
Configurer BGP sur l'instance d'appareil de routeur
Configurez votre instance de dispositif de routeur pour établir une connectivité BGP aux deux routeurs cloud. Pour ce faire, reportez-vous à la documentation du fournisseur de l'image d'appareil de votre routeur.
Étape suivante
- Pour supprimer une instance d'appliance de routeur, consultez la section Supprimer des instances d'appliance de routeur.
- Pour afficher la liste des partenaires dont les solutions sont intégrées à Network Connectivity Center, consultez la page Partenaires Network Connectivity Center.
- Pour en savoir plus sur les ressources que vous pouvez ajouter aux spokes, consultez la section Spokes.
- Pour afficher les informations de surveillance et de journalisation de l'appliance de routeur, consultez la section Afficher les journaux et les métriques.
- Pour trouver des solutions aux problèmes liés à l'appliance de routeur, consultez la section Dépannage.
- Pour en savoir plus sur l'interaction avec Network Connectivity Center à l'aide de l'API ou de gcloud CLI, consultez la page API et documentation de référence.