Elimina un cloud privato

Un cloud privato è costituito da uno o più cluster vSphere. Quando elimini un cloud privato, vengono eliminati tutti i cluster e i relativi nodi.

Prima di iniziare

L'eliminazione di un cloud privato comporta l'eliminazione dell'intero cloud privato. Tutti i componenti del cloud privato vengono eliminati, inclusi tutti i nodi del cloud privato. Se vuoi conservare alcuni dati, eseguine il backup in un'unità di archiviazione on-premise o in un'altra unità.

I componenti di un cloud privato includono:

  • Nodi
  • Macchine virtuali
  • VLAN e subnet di gestione
  • Subnet dei carichi di lavoro
  • Tutti i dati utente archiviati nel cloud privato
  • Tutte le regole di accesso esterno

Requisiti di gcloud e API

Per utilizzare lo strumento a riga di comando gcloud o l'API per gestire le risorse di VMware Engine, ti consigliamo di configurare gli strumenti come descritto di seguito.

gcloud

  1. Imposta l'ID progetto predefinito:

    gcloud config set project PROJECT_ID
    
  2. Imposta una regione e una zona predefinite:

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

Per ulteriori informazioni sullo strumento gcloud vmware, consulta la documentazione di riferimento di Cloud SDK.

API

Gli esempi di API in questo set di documentazione utilizzano lo strumento a riga di comando cURL per eseguire query sull'API. È necessario un token di accesso valido nell'ambito della richiesta cURL. Esistono molti modi per ottenere un token di accesso valido. I seguenti passaggi utilizzano lo strumento gcloud per generare un token di accesso:

  1. Accedi a Google Cloud:

    gcloud auth login
    
  2. Genera il token di accesso ed esportalo in TOKEN:

    export TOKEN=`gcloud auth print-access-token`
    
  3. Verifica che TOKEN sia impostato correttamente:

    echo $TOKEN
    

Ora utilizza il token di autorizzazione nelle richieste all'API. Ad esempio:

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

Gli esempi di codice Python in questa documentazione utilizzano la libreria VMware Engine per comunicare con l'API. Per poter utilizzare questo approccio, la libreria deve essere installata e le Credenziali predefinite dell'applicazione devono essere configurate.

  1. Scarica e installa la libreria Python:

    pip install google-cloud-vmwareengine
    
  2. Configura le informazioni dell'ADC eseguendo i seguenti comandi nella shell:

    gcloud auth application-default login
    

    In alternativa, utilizza un file della chiave dell'account di servizio:

    export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
    

Per ulteriori informazioni sulla libreria, visita la pagina di riferimento o visualizza gli esempi di codice su GitHub.

Elimina un cloud privato

Se vuoi che i CIDR IP della rete del carico di lavoro siano disponibili immediatamente, arresta tutte le VM nel cloud privato prima di avviare l'eliminazione del cloud privato.

Quando elimini un cloud privato, la fatturazione viene interrotta immediatamente, ma il cloud privato potrebbe non essere eliminato per 24 ore. Durante questo periodo, il tuo cloud privato rimane nella console Google Cloud e le VM continuano a funzionare.

Console

  1. Nella console Google Cloud, vai alla pagina Nuvole private.

    Vai a Private Cloud

  2. Seleziona il cloud privato che vuoi eliminare.

  3. Nella pagina di riepilogo, fai clic su Elimina questo Private Cloud.

  4. Nella pagina di conferma, ti viene chiesto di verificare tutti i risultati dell'azione di eliminazione. Leggili attentamente e procedi con l'eliminazione solo se sei pronto ad accettare i risultati. Quando è tutto pronto per accettare i risultati, seleziona tutte le caselle di controllo.

  5. Inserisci il numero di ore da attendere prima di eseguire l'eliminazione (da 1 a 8 ore). Entro questo periodo, puoi annullare l'eliminazione facendo clic su Annulla.

  6. Per verificare di sapere quale cloud privato stai eliminando, inserisci il nome del cloud privato da eliminare.

  7. Fai clic su Elimina per contrassegnare il cloud privato per l'eliminazione.

Il processo di eliminazione inizia dopo il ritardo specificato in ore e viene eseguito fino al completamento.

gcloud

Per eliminare un cloud privato utilizzando Google Cloud CLI, utilizza il comando gcloud vmware private-clouds delete.

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

Sostituisci quanto segue:

  • PRIVATE_CLOUD_ID: l'ID del cloud privato per questa richiesta
  • ZONE: la zona per questo cloud privato
  • HOURS: il numero di ore di ritardo della richiesta. Per impostazione predefinita, è impostato su 3 ore, ma puoi impostarlo da 0 a 8 ore. Se imposti questo valore su 0, la richiesta di eliminazione inizierà immediatamente.

API

Per eliminare un cloud privato utilizzando l'API VMware Engine, effettua una richiesta 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

Sostituisci quanto segue:

  • TOKEN: il token di autorizzazione per questa richiesta.
  • PROJECT_ID: il progetto per questa richiesta
  • ZONE: la zona per il cloud privato
  • PRIVATE_CLOUD_ID: l'ID del cloud privato per il cloud privato
  • HOUR: il numero di ore di cui ritardare questa richiesta. Il valore predefinito è 3. Puoi impostare un'ora compresa tra 0 e 8. Se imposti questo valore su 0, la richiesta di eliminazione viene avviata immediatamente.

Python

L'eliminazione di un cloud privato con la libreria VMware Engine è un processo in un solo passaggio rispetto all'utilizzo della console Google Cloud. Fai molta attenzione quando chiami metodi di eliminazione del cloud privato.

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}"
    )

Annullare l'eliminazione di un cloud privato

Puoi annullare l'eliminazione di un cloud privato entro il periodo di attesa. Segui i passaggi che seguono.

Console

  1. Nella console Google Cloud, vai alla pagina Nuvole private.

    Vai a Private Cloud

  2. Seleziona il cloud privato che hai contrassegnato per l'eliminazione.

  3. Nella pagina di riepilogo, fai clic su Annulla eliminazione per annullare l'eliminazione del cloud privato.

gcloud

Per annullare l'eliminazione di un cloud privato utilizzando Google Cloud CLI, utilizza il comando gcloud vmware private-clouds undelete:

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

Sostituisci quanto segue:

  • PRIVATE_CLOUD_ID: l'ID del cloud privato per questa richiesta
  • ZONE: la zona per questo cloud privato

API

Per annullare l'eliminazione di un cloud privato utilizzando l'API VMware Engine, effettua una richiesta 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

Sostituisci quanto segue:

  • TOKEN: il token di autorizzazione per questa richiesta.
  • PROJECT_ID: l'ID progetto per questa richiesta
  • ZONE: la zona per il cloud privato
  • PRIVATE_CLOUD_ID: l'ID del cloud privato per questa richiesta

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}"
    )