Excluir uma nuvem privada

Uma nuvem privada consiste em um ou mais clusters do vSphere. A exclusão de uma nuvem privada exclui toda a nuvem privada. Todos os componentes da nuvem privada são excluídos, incluindo todos os nós da nuvem privada.

Estes são os componentes de uma nuvem privada:

  • Nós
  • Máquinas virtuais
  • VLANs e sub-redes de gerenciamento
  • Sub-redes de carga de trabalho
  • Todos os dados do usuário armazenados na nuvem privada
  • Todas as regras de acesso externo

A exclusão de uma nuvem privada ocorre em duas etapas: exclusão temporária e permanente. O que acontece em cada etapa:

  1. Exclusão reversível: a nuvem privada entra em um estado de exclusão reversível de sete dias. Durante essa fase, o seguinte acontece:
    • O faturamento é interrompido imediatamente.
    • Toda a conectividade aos segmentos e cargas de trabalho do NSX é interrompida.
    • O acesso à interface do usuário e à API da nuvem privada está desativado.
    • Os endereços IP externos estão desativados.
    • A configuração e os dados da nuvem privada são preservados, e as VMs continuam sendo executadas.
    • É possível restaurar a nuvem privada ao estado anterior.
  2. Exclusão permanente: depois de sete dias, a nuvem privada e os recursos dela são excluídos permanentemente. Se você quiser excluir permanentemente uma nuvem privada que está no estado de exclusão temporária, entre em contato com o suporte.

Antes de começar

Se você quiser manter algum dos dados, faça backup deles em outra nuvem particular, Google Cloud armazenamento ou armazenamento local ou em outro armazenamento.

gcloud e requisitos de API

Para usar a ferramenta de linha de comando gcloud ou a API para gerenciar os recursos do VMware Engine, recomendamos configurar as ferramentas conforme descrito abaixo.

gcloud

  1. Defina o ID do projeto padrão:

    gcloud config set project PROJECT_ID
    
  2. Defina uma região e uma zona padrão.

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

Para mais informações sobre a ferramenta gcloud vmware, consulte os documentos de referência do SDK do Cloud.

API

Os exemplos de API neste conjunto de documentação usam a ferramenta de linha de comando cURL para consultar a API. Um token de acesso válido é necessário como parte da solicitação cURL. Há muitas maneiras de conseguir um token de acesso válido. As etapas a seguir usam a ferramenta gcloud para gerar um token de acesso:

  1. Faça login no Google Cloud:

    gcloud auth login
    
  2. Gerar token de acesso e exportar para TOKEN:

    export TOKEN=`gcloud auth print-access-token`
    
  3. Verifique se o TOKEN está definido corretamente:

    echo $TOKEN
    

Use agora o token de autorização nas solicitações para a API. Exemplo:

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

Os exemplos de código Python nesta documentação usam a biblioteca do VMware Engine para se comunicar com a API. Para usar essa abordagem, a biblioteca precisa estar instalada e o Application Default Credentials precisa estar configurado.

  1. Faça o download e instale a biblioteca Python:

    pip install google-cloud-vmwareengine
    
  2. Execute os comandos no shell para configurar as informações do ADC:

    gcloud auth application-default login
    

    Ou use um arquivo de chave da conta de serviço:

    export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
    

Para mais informações sobre a biblioteca, acesse a página de referência ou veja os exemplos de código no GitHub.

Excluir uma nuvem privada

Se você quiser que os CIDRs de IP da rede de carga de trabalho fiquem disponíveis imediatamente, desligue todas as VMs na nuvem particular antes de iniciar a exclusão dela.

Console

  1. No console do Google Cloud, acesse a página Nuvens privadas.

    Acessar nuvens privadas

  2. Clique em Selecionar um projeto e selecione a organização, a pasta ou o projeto em que você quer excluir a nuvem privada.

  3. Selecione a nuvem privada que você quer excluir.

  4. Na página de resumo, clique em Excluir esta nuvem privada.

  5. Na página de confirmação, você vai precisar verificar todos os resultados da ação de exclusão. Leia-os com cuidado e continue com a exclusão apenas se você estiver pronto para aceitar os resultados. Quando você estiver pronto para aceitar os resultados, marque todas as caixas de seleção.

  6. Insira um número de horas para aguardar antes de executar a exclusão (de 1 a 8 horas). Nesse período, é possível cancelar a exclusão clicando em Cancelar.

  7. Para verificar se você sabe qual nuvem privada está excluindo, insira o nome da nuvem privada a ser excluída.

  8. Clique em Excluir para marcar a nuvem particular para exclusão.

O processo de exclusão começa após o tempo especificado em horas, e é executado até a conclusão.

gcloud

Para excluir uma nuvem privada usando a CLI do Google Cloud, use o comando gcloud vmware private-clouds delete.

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

Substitua:

+   `PRIVATE_CLOUD_ID`: the private cloud ID for
    this request
+   `ZONE`: the zone for this private cloud
+   `HOURS`: the numbers of hours to delay this
    request. By default, this is set to 3 hours, but you can set this
    from 0 to 8 hours. Setting this value to 0 means the deletion
    request will start immediately.

API

Para excluir uma nuvem privada usando a API VMware Engine, faça uma solicitação 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

Substitua:

+   `TOKEN`: the authorization token for this
    request.
+   `PROJECT_ID`: the project for this request
+   `ZONE`: the zone for the private cloud
+   `PRIVATE_CLOUD_ID`: the private cloud ID for
    the private cloud
+   `HOUR`: the number of hours to delay this
    request; the default is 3. You can set an hour between 0 to 8.
    Setting this value to 0 starts the deletion request immediately.

Python

A exclusão de uma nuvem privada com a biblioteca do VMWare Engine é um processo de uma etapa em comparação com o uso do console do Google Cloud. Tenha muito cuidado ao chamar métodos de exclusão da nuvem privada.

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

Cancelar a exclusão de uma nuvem privada

É possível cancelar a exclusão de uma nuvem privada dentro do período de exclusão reversível. siga estas etapas:

Console

  1. No console do Google Cloud, acesse a página Nuvens privadas.

Acessar nuvens privadas

  1. Selecione a nuvem privada que você marcou para exclusão.
  2. Na página de resumo, clique em Cancelar exclusão para cancelar a exclusão da nuvem particular.

gcloud

Para cancelar a exclusão de uma nuvem privada usando a CLI do Google Cloud, use o comando gcloud vmware private-clouds undelete:

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

Substitua:

+   `PRIVATE_CLOUD_ID`: the private cloud ID for
    this request
+   `ZONE`: the zone for this private cloud

API

Para cancelar a exclusão de uma nuvem privada usando a API VMware Engine, faça uma solicitação 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

Substitua:

+   `TOKEN`: the authorization token for this
    request.
+   `PROJECT_ID`: the project ID for this request
            +   `ZONE`: the zone for the private
                cloud
+   `PRIVATE_CLOUD_ID`: the private cloud ID for
    this request

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