Elimina un cloud privato

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

Prima di iniziare

L'eliminazione di un cloud privato elimina l'intero cloud privato. Vengono eliminati tutti i componenti del cloud privato, inclusi tutti i nodi del cloud privato. Se vuoi conservare i dati, eseguine il backup in uno spazio di archiviazione on-premise o in altri servizi di archiviazione.

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 sul cloud privato
  • Tutti i collegamenti delle regole firewall a una subnet

Requisiti per gcloud e API

Per utilizzare lo strumento a riga di comando gcloud o l'API per gestire le risorse 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 maggiori 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 per la richiesta cURL. Esistono molti modi per ottenere un token di accesso valido. I passaggi seguenti 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 esporta 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, è necessario installare la libreria e configurare le Credenziali predefinite dell'applicazione.

  1. Scarica e installa la libreria Python:

    pip install google-cloud-vmwareengine
    
  2. Configura le informazioni ADC eseguendo questi comandi nella shell:

    gcloud auth application-default login
    

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

    export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
    

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

Elimina un cloud privato

Console

  1. Accedere alla console Google Cloud
  2. Nella navigazione principale, fai clic su Private cloud.
  3. Seleziona il cloud privato che vuoi eliminare.
  4. Nella pagina di riepilogo, fai clic su Elimina questo cloud privato.
  5. Nella pagina di conferma, ti verrà chiesto di verificare tutti i risultati dell'azione di eliminazione. Leggili attentamente e continua con l'eliminazione solo se sei pronto ad accettare i risultati. Quando vuoi accettare i risultati, seleziona tutte le caselle di controllo.
  6. Inserisci un numero di ore di attesa prima di eseguire l'eliminazione (1-8 ore). Entro questo periodo, puoi annullare l'eliminazione facendo clic su Annulla.
  7. Per verificare di sapere quale cloud privato stai eliminando, inserisci il nome del cloud privato da eliminare.
  8. 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 per ritardare questa richiesta. Per impostazione predefinita, il valore è di 3 ore, ma puoi scegliere un valore compreso tra 0 e 8 ore. Se questo valore viene impostato su 0, la richiesta di eliminazione verrà avviata 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 per ritardare questa richiesta; il valore predefinito è 3. Puoi impostare un orario compreso tra 0 e 8. Se questo valore viene impostato su 0, la richiesta di eliminazione viene avviata immediatamente.

Python

L'eliminazione di un cloud privato con la libreria VMWare Engine è un processo che richiede un solo passaggio rispetto all'utilizzo della console Google Cloud. Fai molta attenzione quando chiami i 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}"
    )

Annulla eliminazione di un cloud privato

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

Console

  1. Accedere alla console Google Cloud
  2. Nella navigazione principale, fai clic su Private cloud.
  3. Seleziona il cloud privato che hai contrassegnato per l'eliminazione.
  4. 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}"
    )