Supprimer un cloud privé

Un cloud privé est constitué d'un ou de plusieurs clusters vSphere. La suppression d'un cloud privé supprime l'ensemble du cloud privé. Tous les composants du cloud privé sont supprimés, y compris tous les nœuds qu'il comporte.

Les composants d'un cloud privé sont les suivants :

  • Nœuds
  • Machines virtuelles
  • VLAN et sous-réseaux de gestion
  • Sous-réseaux de charge de travail
  • Toutes les données utilisateur stockées dans le cloud privé
  • Toutes les règles d'accès externe

La suppression d'un cloud privé se déroule en deux étapes : la suppression réversible et la suppression définitive. Voici ce qui se passe à chaque étape :

  1. Suppression réversible : le cloud privé passe à l'état de suppression réversible pendant sept jours. Pendant cette étape :
    • La facturation s'arrête immédiatement.
    • Toute connectivité aux segments et aux charges de travail NSX est interrompue.
    • L'accès à l'interface utilisateur et à l'API du cloud privé est désactivé.
    • Les adresses IP externes sont désactivées.
    • La configuration et les données du cloud privé sont conservées, et vos VM continuent de s'exécuter.
    • Vous pouvez restaurer le cloud privé dans son état précédent.
  2. Suppression définitive : au bout de sept jours, le cloud privé et ses ressources sont définitivement supprimés. Si vous souhaitez supprimer définitivement un cloud privé à l'état de suppression réversible avant la fin de la période de sept jours, vous pouvez utiliser Privileged Access Manager ou contacter l'assistance.

Avant de commencer

Si vous souhaitez conserver des données, sauvegardez-les dans un autre cloud privé, Google Cloud un espace de stockage, un espace de stockage sur site ou un autre type de stockage.

Exigences concernant gcloud et l'API

Pour gérer vos ressources VMware Engine à l'aide de l'outil de ligne de commande gcloud ou de l'API, nous vous recommandons de configurer les outils comme décrit ci-dessous.

gcloud

  1. Définissez votre ID de projet par défaut :

    gcloud config set project PROJECT_ID
    
  2. Définissez une région et une zone par défaut :

    gcloud config set compute/region REGION
    
    gcloud config set compute/zone ZONE
    

Pour en savoir plus sur l'outil gcloud vmware, consultez la documentation de référence de Cloud SDK Cloud.

API

Les exemples d'API de cet ensemble de documentation utilisent l'outil de ligne de commande cURL pour interroger l'API. Un jeton d'accès valide est requis dans la requête cURL. Il existe de nombreuses façons d'obtenir un jeton d'accès valide. Les étapes suivantes utilisent l'outil gcloud pour générer un jeton d'accès :

  1. Connectez-vous à Google Cloud:

    gcloud auth login
    
  2. Générez un jeton d'accès et exportez-le vers TOKEN :

    export TOKEN=`gcloud auth print-access-token`
    
  3. Vérifiez que TOKEN est correctement défini :

    echo $TOKEN
    

Utilisez maintenant le jeton d'autorisation dans vos requêtes à l'API. Exemple :

curl -X GET -H "Authorization: Bearer \"$TOKEN\"" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations

Python

Les exemples de code Python de cette documentation utilisent la bibliothèque VMware Engine pour communiquer avec l'API. Pour pouvoir utiliser cette approche, la bibliothèque doit être installée et les identifiants par défaut de l'application doivent être configurés.

  1. Téléchargez et installez la bibliothèque Python :

    pip install google-cloud-vmwareengine
    
  2. Configurez les informations ADC en exécutant ces commandes dans votre shell :

    gcloud auth application-default login
    

    Vous pouvez également utiliser un fichier de clé de compte de service :

    export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
    

Pour en savoir plus sur la bibliothèque, consultez la page de référence ou les exemples de code sur GitHub.

Supprimer un cloud privé

Si vous souhaitez que les CIDR IP de votre réseau de charge de travail soient disponibles immédiatement, arrêtez toutes vos VM dans votre cloud privé avant de commencer la suppression du cloud privé.

Console

  1. Dans la Google Cloud console, accédez à la page Clouds privés.

    Accéder à Clouds privés

  2. Cliquez sur Sélectionner un projet, puis sélectionnez l'organisation, le dossier ou le projet dans lequel vous souhaitez supprimer le cloud privé.

  3. Sélectionnez le cloud privé que vous souhaitez supprimer.

  4. Sur la page récapitulative, cliquez sur Supprimer ce cloud privé.

  5. Sur la page de confirmation, vous êtes invité à vérifier tous les résultats de l'action de suppression. Lisez-les attentivement et ne poursuivez la suppression que si vous êtes prêt à accepter les résultats. Lorsque vous êtes prêt à accepter les résultats, sélectionnez toutes les cases.

  6. Saisissez un nombre d'heures à attendre avant d'exécuter la suppression (entre 1 et 8 heures). Pendant cette période, vous pouvez annuler la suppression en cliquant sur Annuler.

  7. Pour vérifier si vous savez quel cloud privé supprimer, saisissez-en le nom.

  8. Cliquez sur Supprimer pour marquer le cloud privé comme étant à supprimer.

Le processus de suppression commence après le délai spécifié en heures, puis s'exécute intégralement.

gcloud

Pour supprimer un cloud privé à l'aide de Google Cloud CLI, utilisez la gcloud vmware private-clouds deletecommande.

  gcloud vmware private-clouds delete PRIVATE_CLOUD_ID \
     --location=ZONE [--delay-hours=HOURS]

Remplacez les éléments suivants :

  • PRIVATE_CLOUD_ID : ID du cloud privé pour cette requête
  • ZONE : zone de ce cloud privé
  • HOURS : nombre d'heures de délai pour cette requête. Par défaut, cette valeur est définie sur 3 heures, mais vous pouvez la définir entre 0 et 8 heures. Si vous définissez cette valeur sur 0, la requête de suppression démarre immédiatement.

API

Pour supprimer un cloud privé à l'aide de l'API VMware Engine, envoyez une requête DELETE :

curl -X DELETE -H "Authorization: Bearer TOKEN"  -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds?privateCloudId=PRIVATE_CLOUD_ID&mps;delayHours=HOUR

Remplacez les éléments suivants :

  • TOKEN : jeton d'autorisation pour cette requête.
  • PROJECT_ID : projet pour cette requête
  • ZONE : zone du cloud privé
  • PRIVATE_CLOUD_ID : ID du cloud privé pour le cloud privé
  • HOUR : nombre d'heures de délai pour cette requête. La valeur par défaut est 3. Vous pouvez définir une heure entre 0 et 8. Si vous définissez cette valeur sur 0, la requête de suppression démarre immédiatement.

Python

La suppression d'un cloud privé avec la bibliothèque Google Cloud VMware Engine est un processus en une seule étape par rapport à l'utilisation de la Google Cloud console. Soyez très prudent lorsque vous appelez des méthodes de suppression de cloud privé.

from google.api_core import operation
from google.cloud import vmwareengine_v1


def delete_private_cloud_by_full_name(cloud_name: str) -> operation.Operation:
    """
    Deletes VMware Private Cloud.

    Args:
        cloud_name: identifier of the Private Cloud you want to delete.
            Expected format:
            projects/{project_name}/locations/{zone}/privateClouds/{cloud}

    Returns:
        An Operation object related to started private cloud deletion operation.
    """
    client = vmwareengine_v1.VmwareEngineClient()
    request = vmwareengine_v1.DeletePrivateCloudRequest()
    request.force = True
    request.delay_hours = 3
    request.name = cloud_name
    return client.delete_private_cloud(request)


def delete_private_cloud(
    project_id: str, zone: str, cloud_name: str
) -> operation.Operation:
    """
    Deletes VMWare Private Cloud.

    Args:
        project_id: name of the project hosting the private cloud.
        zone: zone in which the private cloud is located in.
        cloud_name: name of the private cloud to be deleted.

    Returns:
        An Operation object related to started private cloud deletion operation.
    """
    return delete_private_cloud_by_full_name(
        f"projects/{project_id}/locations/{zone}/privateClouds/{cloud_name}"
    )

Accélérer la suppression d'un cloud privé à l'aide de Privileged Access Manager

Vous pouvez utiliser Privileged Access Manager pour obtenir un accès privilégié de courte durée afin de supprimer définitivement un cloud privé à l'état de suppression réversible, au lieu d'attendre la fin de la période de suppression réversible de sept jours. Pour en savoir plus sur Privileged Access Manager, consultez la présentation de Privileged Access Manager.

Pour utiliser Privileged Access Manager afin d'accélérer la suppression d'un cloud privé, vous avez besoin d'un droit, qui définit les rôles que vous pouvez demander, les utilisateurs qui peuvent les demander et ceux qui peuvent approuver les requêtes. Pour en savoir plus, consultez la section Créer des droits dans Privileged Access Manager.

Le droit doit accorder un rôle qui inclut des autorisations permettant de supprimer immédiatement un cloud privé Google Cloud VMware Engine, tel que vmwareengine.privateClouds.deleteNow. Par exemple, le rôle roles/vmwareengine.vmwareenginePrivilegedUser inclut cette autorisation.

Pour demander, approuver et révoquer des autorisations qui fournissent un accès temporaire, consultez Demander et gérer des autorisations. Lorsque vous demandez une autorisation, vous devez fournir une justification, et l'autorisation doit être approuvée par un approbateur désigné. Les autorisations sont valides pendant une durée spécifiée.

Une fois que vous disposez d'une autorisation active avec les autorisations requises, vous pouvez supprimer définitivement un cloud privé à l'état de suppression réversible. Cette action supprime définitivement le cloud privé et ses ressources.

Console

  1. Dans la Google Cloud console, accédez à la page Clouds privés.
  2. Sélectionnez le cloud privé à supprimer définitivement. Le cloud privé doit être à l'état Temporarily deleted.
  3. Sur la page récapitulative, cliquez sur Supprimer définitivement.
  4. Pour confirmer le cloud privé que vous supprimez, saisissez son nom.
  5. Cliquez sur Supprimer pour supprimer définitivement le cloud privé.

gcloud

Pour supprimer définitivement un cloud privé à l'état soft-deleted à l'aide de Google Cloud CLI, utilisez la gcloud vmware private-clouds delete-now commande.

  gcloud vmware private-clouds delete-now PRIVATE_CLOUD_ID \
     --location=ZONE

Remplacez les éléments suivants :

  • PRIVATE_CLOUD_ID : ID du cloud privé pour cette requête
  • ZONE : zone de ce cloud privé

API

Pour supprimer définitivement un cloud privé à l'état soft-deleted à l'aide de l'API VMware Engine, envoyez une requête POST :

curl -X POST -H "Authorization: Bearer TOKEN"  -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID:privateCloudDeletionNow

Remplacez les éléments suivants :

  • TOKEN : jeton d'autorisation pour cette requête.
  • PROJECT_ID : projet pour cette requête
  • ZONE : zone du cloud privé
  • PRIVATE_CLOUD_ID : ID du cloud privé pour le cloud privé

Annuler la suppression d'un cloud privé

Vous pouvez annuler la suppression d'un cloud privé pendant la période de suppression réversible. Procédez comme suit :

Console

  1. Dans la Google Cloud console, accédez à la page Clouds privés.

Accéder à Clouds privés

  1. Sélectionnez le cloud privé que vous avez marqué pour suppression.
  2. Sur la page récapitulative, cliquez sur Annuler la suppression pour annuler la suppression du cloud privé.

gcloud

Pour annuler la suppression d'un cloud privé à l'aide de Google Cloud CLI, utilisez la gcloud vmware private-clouds undelete commande :

  gcloud vmware private-clouds undelete PRIVATE_CLOUD_ID \
     --location=ZONE

Remplacez les éléments suivants :

  • PRIVATE_CLOUD_ID : ID du cloud privé pour cette requête
  • ZONE : zone de ce cloud privé

API

Pour annuler la suppression d'un cloud privé à l'aide de l'API VMware Engine, envoyez une requête POST :

curl -X POST -H "Authorization: Bearer TOKEN"  -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds?privateCloudId=PRIVATE_CLOUD_ID:undelete

Remplacez les éléments suivants :

  • TOKEN : jeton d'autorisation pour cette requête.
  • PROJECT_ID : ID du projet pour cette requête
  • ZONE : zone du cloud privé
  • PRIVATE_CLOUD_ID : ID du cloud privé pour cette requête

Python

from google.api_core import operation
from google.cloud import vmwareengine_v1


def cancel_private_cloud_deletion_by_full_name(cloud_name: str) -> operation.Operation:
    """
    Cancels in progress deletion of VMware Private Cloud.

    Args:
        cloud_name: identifier of the Private Cloud you want to cancel deletion for.
            Expected format:
            projects/{project_name}/locations/{zone}/privateClouds/{cloud}

    Returns:
        An Operation object related to canceling private cloud deletion operation.
    """
    client = vmwareengine_v1.VmwareEngineClient()
    request = vmwareengine_v1.UndeletePrivateCloudRequest()
    request.name = cloud_name
    return client.undelete_private_cloud(request)


def cancel_private_cloud_deletion(
    project_id: str, zone: str, cloud_name: str
) -> operation.Operation:
    """
    Cancels in progress deletion of VMWare Private Cloud.

    Args:
        project_id: name of the project hosting the private cloud.
        zone: zone in which the private cloud is located in.
        cloud_name: name of the private cloud to cancel deletion for.

    Returns:
        An Operation object related to canceling private cloud deletion operation.
    """
    return cancel_private_cloud_deletion_by_full_name(
        f"projects/{project_id}/locations/{zone}/privateClouds/{cloud_name}"
    )