Déprovisionner la gestion du VPC partagé
Cette page décrit comment désactiver une configuration de VPC partagé existante, en déconnectant tous les projets de service d'un projet hôte de VPC partagé. La désactivation est un processus à sens unique. Assurez-vous d'abord de bien maîtriser le contenu des pages VPC partagé et Provisionner un VPC partagé.
Tâches d'administration du projet de service
Dans chaque projet de service associé au projet hôte de VPC partagé, un administrateur de projet de service doit supprimer toutes les dépendances du projet hôte. Les dépendances peuvent inclure des instances, des groupes d'instances, des modèles d'instance, des services de backend et des règles de transfert.
Déterminer les ressources affectées
Pour identifier les ressources dépendantes du projet hôte de VPC partagé, un administrateur de projet de service peut répertorier ses sous-réseaux partagés. Lorsque le projet de service sera détaché du projet hôte, ces sous-réseaux ne seront plus disponibles. Ainsi, toutes les ressources qui en dépendent seront affectées.
Supprimer des ressources
Une fois qu'un administrateur de projet de service a identifié les ressources affectées par le processus de désactivation, celles-ci doivent être supprimées :
Supprimez les instances qui utilisent des sous-réseaux dans le projet hôte.
Supprimez les groupes d'instances gérés et les groupes d'instances non gérés qui utilisent des sous-réseaux dans le projet hôte.
Supprimez les modèles d'instances dont les définitions dépendent du projet hôte.
Supprimez les règles de transfert internes pour les équilibreurs de charge TCP/UDP internes qui font référence à un sous-réseau dans un réseau VPC partagé du projet hôte.
Supprimez les adresses IP internes statiques utilisées par les interfaces réseau des VM des autres réseaux.
Pour ce faire, vous devez d'abord obtenir la liste des adresses réservées, puis les supprimer.
Tâches d'administration des équilibreurs de charge
Les équilibreurs de charge internes et externes permettent de configurer l'équilibreur de charge de sorte qu'un mappage d'URL dans un projet hôte ou de service puisse référencer des services de backend (et des backends) situés sur plusieurs projets dans des environnements VPC partagés.
Avant de pouvoir supprimer un projet de service, vous devez vous assurer que toutes les références inter-projets aux services de backend de votre projet de service ont été supprimées. Les administrateurs d'équilibrage de charge devront modifier leurs mappages d'URL pour supprimer les références aux services de backend dans votre projet de service.
Tâches d'administration de VPC partagé
Toutes les tâches de cette section doivent être effectuées par un administrateur de VPC partagé.
Détacher des projets de service
Répétez ces étapes pour chacun des projets de service que vous devez détacher du projet hôte de VPC partagé.
Console
Pour afficher la page "VPC partagé" dans Google Cloud Console, vous devez disposer du rôle Administrateur de VPC partagé.
- Accédez à la page VPC partagé de Google Cloud Console.
Accéder à la page VPC partagé - Connectez-vous en tant qu'administrateur de VPC partagé.
- Sélectionnez le projet hôte dont vous souhaitez supprimer les projets de service.
- Cliquez sur l'onglet Projets associés.
- Sélectionnez le projet de service que vous souhaitez dissocier.
- Cliquez sur le bouton Dissocier des projets.
- Vérifiez les informations qui s'affichent dans la boîte de dialogue.
- Cliquez sur Dissocier.
gcloud
Si ce n'est pas déjà fait, authentifiez-vous auprès de
gcloud
en tant qu'administrateur de VPC partagé. Remplacez SHARED_VPC_ADMIN par le nom de l'administrateur de VPC partagé :gcloud auth login SHARED_VPC_ADMIN
Dissociez le projet de service du projet hôte. Remplacez SERVICE_PROJECT_ID par l'ID du projet de service et HOST_PROJECT_ID par l'ID du projet hôte.
gcloud compute shared-vpc associated-projects remove SERVICE_PROJECT_ID --host-project HOST_PROJECT_ID
Confirmez que le projet de service a été détaché en utilisant l'une des commandes suivantes :
gcloud compute shared-vpc get-host-project SERVICE_PROJECT_ID
gcloud compute shared-vpc list-associated-resources HOST_PROJECT_ID
Si vous devez uniquement dissocier des projets de service, déconnectez-vous de
gcloud
pour protéger les identifiants de votre compte administrateur de VPC partagé. Sinon, ignorez cette étape et passez à la désactivation du projet hôte.gcloud auth revoke SHARED_VPC_ADMIN
API
Dissociez le projet de service.
POST https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/disableXpnResource { "xpnResource": { "id": "SERVICE_PROJECT_ID" } }
Remplacez les espaces réservés par des valeurs valides :
- HOST_PROJECT_ID correspond à l'ID du projet hôte.
- SERVICE_PROJECT_ID correspond à l'ID du projet de service à dissocier.
Pour plus d'informations, reportez-vous à la méthode
projects.disableXpnResource
.Confirmez que le projet de service a bien été dissocié.
Vérifiez que le projet de service n'est associé à aucun projet hôte.
GET https://compute.googleapis.com/compute/v1/projects/SERVICE_PROJECT_ID/getXpnHost
Remplacez SERVICE_PROJECT_ID par l'ID du projet de service.
Pour plus d'informations, reportez-vous à la méthode
projects.getXpnHost
.Répertoriez les projets de service associés au projet hôte de VPC partagé pour vérifier que le projet ne figure plus dans la liste.
GET https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/getXpnResources
Remplacez HOST_PROJECT_ID par l'ID du projet hôte.
Pour plus d'informations, reportez-vous à la méthode
projects.getXpnResources
.
Désactiver le projet hôte
Il n'est possible de désactiver le VPC partagé pour le projet hôte qu'une fois que tous les projets de service ont été détachés. Une fois la désactivation effectuée, le privilège empêchant la suppression intempestive est automatiquement supprimé.
Console
Pour afficher la page "VPC partagé" dans Google Cloud Console, vous devez disposer du rôle Administrateur de VPC partagé.
- Accédez à la page VPC partagé de Google Cloud Console.
Accéder à la page VPC partagé - Connectez-vous en tant qu'administrateur de VPC partagé.
- Sélectionnez le projet hôte que vous souhaitez désactiver.
- Cliquez sur le bouton Désactiver le VPC partagé.
- Lisez attentivement la description de la boîte de dialogue.
- Saisissez l'ID du projet hôte dans le champ ID du projet hôte.
- Cliquez sur Désactiver.
gcloud
Si ce n'est pas déjà fait, authentifiez-vous auprès de
gcloud
en tant qu'administrateur de VPC partagé. Remplacez SHARED_VPC_ADMIN par le nom de l'administrateur de VPC partagé :gcloud auth login SHARED_VPC_ADMIN
Désactivez le VPC partagé pour le projet hôte. Remplacez HOST_PROJECT_ID par l'ID du projet hôte.
gcloud compute shared-vpc disable HOST_PROJECT_ID
Confirmez que le projet n'est plus répertorié en tant que projet hôte pour votre organisation. Remplacez ORG_ID par l'ID de votre organisation (déterminé par
gcloud organizations list
).gcloud compute shared-vpc organizations list-host-projects ORG_ID
Si vous devez uniquement désactiver un projet hôte, vous pouvez vous déconnecter de
gcloud
pour protéger vos identifiants de compte d'administrateur de VPC partagé. Sinon, ignorez cette étape et passez à la suppression de projets.gcloud auth revoke SHARED_VPC_ADMIN
API
Désactivez le VPC partagé pour le projet.
POST https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/disableXpnHost
Remplacez HOST_PROJECT_ID par l'ID du projet hôte.
Pour plus d'informations, reportez-vous à la méthode
projects.disableXpnHost
.Répertoriez vos projets hôtes pour vérifier que le projet ne figure pas dans la liste.
POST https://compute.googleapis.com/compute/v1/projects/HOST_PROJECT_ID/listXpnHosts
Remplacez HOST_PROJECT_ID par l'ID du projet hôte.
Pour plus d'informations, reportez-vous à la méthode
projects.listXpnHosts
.
Supprimer des projets
Cette section traite de la suppression de projets qui ne sont plus utilisés. Par exemple, il peut s'agir de projets de service à supprimer après qu'ils ont été détachés d'un projet hôte ou d'un projet hôte dont vous n'avez plus besoin après sa désactivation.
Supprimer le projet hôte
Vous pouvez choisir de le conserver comme projet normal ou de l'arrêter. Arrêter un projet le supprime.
Une entité principale IAM peut supprimer le projet hôte si elle dispose du rôle resourcemanager.projectDeleter
pour votre organisation ou si elle est propriétaire du projet hôte.
Les administrateurs de VPC partagés peuvent supprimer des projets hôtes s'ils disposent du rôle ou de la propriété appropriés.
Supprimer un projet de service
Vous pouvez choisir d'arrêter chaque projet de service si vous n'en avez plus besoin. Avant cela, assurez-vous que le projet de service a été dissocié du projet hôte.
Une entité principale IAM peut supprimer un projet de service si elle dispose du rôle resourcemanager.projectDeleter
pour votre organisation ou si elle est propriétaire du projet de service. Les administrateurs de projet de service peuvent supprimer des projets de service s'ils disposent du rôle ou de la propriété appropriés.
Supprimer de force un projet hôte
Lorsque le VPC partagé est actif pour un projet hôte, un privilège est placé sur le projet pour empêcher qu'il ne soit supprimé accidentellement. Comme ce privilège peut être supprimé par un propriétaire de projet, les instructions relatives au provisionnement d'un VPC partagé indiquent la procédure permettant de définir une stratégie organisationnelle afin de limiter le nombre d'entités principales IAM autorisées à supprimer un privilège de projet.
Normalement, un projet hôte doit être supprimé après que les tâches suivantes ont été effectuées (dans l'ordre) :
- Tous les projets de service ont été détachés du projet hôte.
- Le VPC partagé a été désactivé.
Lorsque le VPC partagé a été désactivé, le privilège protégeant le projet hôte est automatiquement supprimé.
Cette section explique comment forcer l'arrêt d'un projet hôte. Cette option ne doit être envisagée que dans les cas suivants :
- La procédure normale permettant de détacher les projets de service, puis de désactiver le VPC partagé ne peut pas être appliquée.
- Le projet hôte est protégé par des privilèges supplémentaires supérieurs à celui qui est ajouté automatiquement.
Si vous forcez l'arrêt d'un projet hôte et que des ressources sont utilisées dans des projets de service qui utilisent le réseau VPC partagé, les événements suivants se produisent :
- Tous les réseaux VPC partagés, leurs sous-réseaux, routes, règles de pare-feu et toutes les ressources réseau du projet hôte sont supprimés.
- Les ressources, telles que les instances en cours d'exécution dans les projets de service associés au projet hôte, sont arrêtées.
- Les équilibreurs de charge TCP/UDP internes sont désactivés si leurs règles de transfert dépendent du réseau VPC partagé.
gcloud
Authentifiez-vous auprès de
gcloud
en tant qu'entité principale IAM autorisée à supprimer un privilège de projet. Si vous disposez d'une règle d'administration permettant de limiter les membres autorisés à supprimer des privilèges, vous devez vous authentifier en tant qu'entité principale IAM disposant du rôleresourcemanager.lienModifier
pour votre organisation. Si une telle règle n'est pas mise en place, le propriétaire du projet hôte peut supprimer le privilège.Remplacez ACCOUNT par le nom de l'entité principale IAM appropriée :
gcloud auth login ACCOUNT
Listez les privilèges associés au projet hôte. Remplacez HOST_PROJECT_ID par l'ID du projet hôte.
gcloud alpha resource-manager liens list \ --project HOST_PROJECT_ID
Retirez chaque privilège par son nom, un à la fois, jusqu'à ce qu'il n'y ait plus de privilèges. Remplacez LIEN_NAME par le nom du privilège à supprimer.
gcloud alpha resource-manager liens delete LIEN_NAME \ --project HOST_PROJECT_ID
Confirmez que tous les privilèges ont été supprimés.
gcloud alpha resource-manager liens list \ --project HOST_PROJECT_ID
Après avoir supprimé le privilège, vous pouvez vous déconnecter de
gcloud
pour protéger les identifiants de l'entité principale IAM autorisée à supprimer les privilèges.gcloud auth revoke ACCOUNT
Le projet hôte peut maintenant être arrêté.
API
Répertoriez les privilèges associés au projet hôte.
GET https://cloudresourcemanager.googleapis.com/v1/liens?parent=projects:HOST_PROJECT_ID
Remplacez HOST_PROJECT_ID par l'ID du projet hôte.
Pour plus d'informations, reportez-vous à la méthode
liens.list
.Retirez chaque privilège par son nom, jusqu'à ce qu'il n'y ait plus de privilèges.
DELETE https://cloudresourcemanager.googleapis.com/v1/liens/LIEN_NAME
Remplacez LIEN_NAME par le nom du privilège à supprimer.
Pour plus d'informations, reportez-vous à la méthode
liens.delete
.Répertoriez à nouveau les privilèges pour confirmer qu'ils ont été supprimés.
Étapes suivantes
- Pour en savoir plus sur le VPC partagé, consultez la section VPC partagé.
- Pour savoir comment configurer un VPC partagé, consultez la page Provisionner un VPC partagé.
- Pour obtenir des instructions sur la configuration des clusters Google Kubernetes Engine avec un VPC partagé, consultez la page Configurer des clusters avec un VPC partagé.