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 exclusão permanente. Em cada etapa, acontece o seguinte:

  1. Exclusão reversível: a nuvem privada entra em um estado de exclusão reversível de sete dias. Durante essa etapa, acontece o seguinte:
    • O faturamento é interrompido imediatamente.
    • Toda a conectividade com segmentos e cargas de trabalho do NSX é interrompida.
    • O acesso à interface do usuário e à API da nuvem privada é 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: após sete dias, a nuvem privada e os recursos dela são excluídos permanentemente. Se você quiser excluir permanentemente uma nuvem privada em estado de exclusão temporária antes do período de sete dias, use o Privileged Access Manager ou entre em contato com o suporte.

Antes de começar

Se você quiser manter algum dos dados, faça backup deles em outra nuvem privada, armazenamentoGoogle Cloud , armazenamento local ou 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 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. Fazer login em 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 estejam disponíveis imediatamente, desligue todas as VMs na nuvem privada antes de iniciar a exclusão dela.

Console

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

    Acessar "Nuvens privadas"

  2. Clique em Selecionar um projeto e escolha 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ê será solicitado a 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 Google Cloud CLI, 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: o ID da nuvem privada da solicitação
  • ZONE: a zona desta nuvem privada
  • HOURS: o número de horas de atraso dessa solicitação. Por padrão, esse valor é definido como três horas, mas é possível ser definido de 0 a 8 horas. Definir esse valor como 0 significa que a solicitação de exclusão vai começar imediatamente.

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: o token de autorização da solicitação.
  • PROJECT_ID: o projeto para esta solicitação
  • ZONE: a zona da nuvem privada
  • PRIVATE_CLOUD_ID: o ID da nuvem privada
  • HOUR: o número de horas para atrasar essa solicitação; o padrão é 3. Você pode definir uma hora entre 0 e 8. Definir esse valor como 0 inicia a solicitação de exclusão imediatamente.

Python

A exclusão de uma nuvem privada com a biblioteca do Google Cloud VMware Engine é um processo de uma etapa em comparação com o uso do console 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}"
    )

Acelerar a exclusão da nuvem privada usando o Privileged Access Manager

É possível usar o Privileged Access Manager para ter acesso privilegiado de curta duração e excluir permanentemente uma nuvem privada que está em estado de exclusão temporária, em vez de esperar que o período de exclusão temporária de sete dias termine. Para saber mais sobre o Privileged Access Manager, consulte Visão geral do Privileged Access Manager.

Para usar o Privileged Access Manager e acelerar a exclusão da nuvem privada, você precisa de um direito, que define as funções que podem ser solicitadas, os usuários que podem fazer isso e os usuários que podem aprovar as solicitações. Para mais informações, consulte Criar direitos de acesso no Privileged Access Manager.

O direito precisa conceder uma função que inclua permissões para excluir uma nuvem privada do Google Cloud VMware Engine, como vmwareengine.privateClouds.delete. Por exemplo, o papel roles/vmwareengine.vmwareengineAdmin inclui essa permissão.

Para solicitar, aprovar e revogar concessões que fornecem acesso temporário, consulte Solicitar e gerenciar concessões. Ao solicitar uma concessão, você precisa fornecer uma justificativa, e ela precisa ser aprovada por um aprovador designado. As concessões são válidas por um período especificado.

Depois de ter uma concessão ativa com as permissões necessárias, é possível excluir permanentemente a nuvem privada excluída temporariamente usando o console, a Google Cloud CLI ou as etapas da API descritas em Excluir uma nuvem privada. A exclusão de uma nuvem privada que já está em um estado de exclusão temporária exclui permanentemente a nuvem privada e os recursos dela.

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 particulares.

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 privada.

gcloud

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

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

Substitua:

  • PRIVATE_CLOUD_ID: o ID da nuvem privada da solicitação
  • ZONE: a zona desta nuvem privada

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: o token de autorização da solicitação.
  • PROJECT_ID: o ID do projeto desta solicitação;
  • ZONE: a zona da nuvem privada
  • PRIVATE_CLOUD_ID: o ID da nuvem privada da solicitação

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