Excluindo uma VPC e seus recursos associados
Antes de ser possível excluir um IBM Cloud® Virtual Private Cloud no console do IBM Cloud, deve-se excluir todos os gateways públicos, sub-redes e recursos conectados do VPC.
Excluindo um VPC usando o console do IBM Cloud
Para excluir um VPC usando o console:
-
Localize todas as sub-redes no VPC. Clique em VPCs na área de janela de navegação e selecione sua VPC.
-
Na página Detalhes de VPC, acesse a lista Sub-redes nesta VPC e selecione uma sub-rede para visualizar seus detalhes.
-
Exclua todos os recursos que estiverem anexados à sub-rede. Na área de janela de navegação, clique em Recursos anexados. Selecione cada instância anexada, balanceador de carga e gateway de VPN para acessar sua página de detalhes. No menu Actions (Ações ),
), selecione Delete (Excluir ). Para excluir instâncias conectadas, elas devem ser interrompidas.
Embora o status do recurso seja imediatamente mudado para Excluindo, pode levar até 30 minutos para que a operação de exclusão seja concluída. A sub-rede não pode ser excluída até que todos os recursos conectados não sejam mais exibidos no console.
-
Depois que todos os recursos associados forem excluídos, volte à página de detalhes da sub-rede e clique no ícone de exclusão.
-
Depois de excluir todas as sub-redes, volte à página de detalhes da VPC e clique no ícone de exclusão. A VPC e todos os gateways públicos serão excluídos.
Excluindo um VPC usando a CLI do IBM Cloud
Os exemplos a seguir mostram como excluir recursos da sua IBM Cloud® Virtual Private Cloud, para cada recurso da VPC, na ordem sugerida.
Os seguintes fatos principais são importantes para lembrar sobre a exclusão:
- Uma VPC não pode ser excluído até que esteja vazio.
- Todos os recursos contidos devem ser excluídos com êxito antes que o recurso pai possa ser excluído.
- Se o recurso estiver com uma exclusão pendente, ele mostrará um status
deletingquando visualizado em consultas de lista. - A maioria das solicitações de exclusão é assíncrona, o que significa que o recurso pode mostrar um status excluindo em consultas de lista quando ele ainda não foi excluído completamente.
- Deve-se realizar uma pesquisa para garantir que o recurso-filho não esteja mais na visualização de lista antes de tentar excluir o recurso pai.
Se o status do recurso for mudado de deleting para failed, será possível tentar excluir o recurso novamente. Se não for possível excluir um recurso no status failed, entre em contato com o suporte.
Passo 1: Identifique todas as sub-redes dentro da VPC que você deseja excluir
Antes que uma VPC possa ser excluído, cada uma de suas sub-redes deve ser excluída. Obtenha o ID da VPC que você deseja excluir executando o comando a seguir e verificando o valor de “ ID ”:
ibmcloud is vpcs
Salve o ID do VPC em uma variável para que ele possa ser usado posteriormente, por exemplo:
vpc="0738-3524fef5-da35-4622-bf9a-31614964649d"
Para obter a lista de todas as sub-redes em sua conta, execute o comando a seguir:
ibmcloud is subnets
Observe o valor VPC para determinar as sub-redes que precisam ser excluídas. Salve o ID da sub-rede em uma variável para que ela possa ser usada posteriormente, por exemplo:
subnet="0738-d31ce469-9b0f-44e1-87ce-0fc77d8b0e53"
Se a VPC que você deseja excluir tiver várias sub-redes, repita estas etapas para excluir cada sub-rede.
Etapa 2: excluir cada sub-rede no VPC
Exclua todos os gateways de VPN na sub-rede, se houver
Para listar todos os gateways de VPN em sua conta, execute o comando a seguir:
ibmcloud is vpn-gateways
Para cada gateway VPN na sub-rede que você gostaria de excluir, execute o comando a seguir, em que $vpnid é o ID do gateway VPN.
ibmcloud is vpn-gateway-delete $vpnid
O status do gateway VPN muda para deleting imediatamente, mas ele ainda aparece em um resultado de consulta de lista. A exclusão de um gateway de VPN pode levar até 30 minutos. É possível solicitar que outros recursos de sub-rede
sejam excluídos em paralelo enquanto você espera que o gateway VPN seja excluído. No entanto, a sub-rede não pode ser excluída até que o gateway VPN e todos os outros recursos na sub-rede não apareçam mais nos resultados da consulta de
lista.
Excluir todos os balanceadores de carga na sub-rede, se houver
Para listar todos os balanceadores de carga em sua conta, execute o comando a seguir:
ibmcloud is load-balancers
Para cada balanceador de carga na sub-rede que você deseja excluir, execute o comando a seguir, em que $lbid é o ID do balanceador de carga.
ibmcloud is load-balancer-delete $lbid
O status do Load Balancer muda para deleting imediatamente, mas ele ainda é mostrado em um resultado de consulta de lista. A exclusão de um balanceador de carga pode levar até 30 minutos. É possível solicitar que outros recursos
de sub-rede sejam excluídos em paralelo enquanto você espera que o balanceador de carga seja excluído. No entanto, a sub-rede não pode ser excluída até que o balanceador de carga e todos os outros recursos na sub-rede não apareçam mais
nos resultados da consulta de lista.
Exclua todas as interfaces de rede na sub-rede, se houver
Uma instância pode ter várias interfaces de rede que podem pertencer a várias sub-redes do VPC. Antes que uma sub-rede possa ser excluída, qualquer interface de rede na sub-rede deve ser excluída primeiro.
A única maneira de excluir uma interface de rede em uma sub-rede é excluir a instância.
Para listar todas as interfaces de rede de uma instância, execute o comando a seguir:
ibmcloud is instance-network-interfaces $vsi
Para listar todas as instâncias em sua conta, execute o comando a seguir:
ibmcloud is instances
Se você estiver excluindo todas as instâncias na VPC, será possível executar o comando a seguir para cada instância na VPC, em que $vsi é o ID da instância que você deseja excluir. Quando a instância é excluída, todas as interfaces
de rede em outras sub-redes, se houver, são excluídas automaticamente.
As instâncias devem ser paradas antes da exclusão. Para parar uma instância, execute o comando ibmcloud is instance-stop.
ibmcloud is instance-delete $vsi
O status da instância é mudado para deleting imediatamente, mas ela ainda aparece no resultado de uma consulta de lista. A exclusão de uma instância pode levar até 30 minutos.
É possível solicitar que outros recursos de sub-rede sejam excluídos em paralelo enquanto você aguarda a exclusão da instância. No entanto, a sub-rede não pode ser excluída até que a instância e todos os outros recursos na sub-rede não apareçam mais nos resultados da consulta da lista.
Se existir uma interface de rede secundária na sub-rede que você está tentando excluir, a instância deverá ser excluída. Uma interface de rede não pode ser excluída da instância sem excluir a instância.
Excluir a sub-rede
Depois da exclusão de todos os recursos da sub-rede, o que significa que eles não são retornados em um resultado de uma consulta de lista, execute o comando a seguir para excluir a sub-rede:
ibmcloud is subnet-delete $subnet
O status da sub-rede é mudado para deleting imediatamente, mas é possível que ela demore alguns minutos para ser excluída e não aparecer mais nos resultados da consulta de lista.
Etapa 3: excluir todos os gateways públicos no VPC, se houver
Para listar todos os gateways públicos em sua conta, execute o comando a seguir:
ibmcloud is public-gateways
Para cada gateway público no VPC que você deseja excluir, execute o comando a seguir para excluir o gateway público, em que $gateway é o ID do gateway público.
ibmcloud is public-gateway-delete $gateway
Etapa 4: excluir o VPC
Após a exclusão de todas as sub-redes e gateways públicos na VPC, execute o comando a seguir para excluir a VPC, em que $vpc é o ID da VPC sendo excluído.
ibmcloud is vpc-delete $vpc
O status do VPC é mudado para deleting imediatamente, mas é possível que ele demore alguns minutos para ser excluído e não aparecer mais nos resultados da consulta de lista.
Excluindo um VPC usando as APIs de REST
As etapas a seguir são as principais partes no processo:
- Identifique todas as sub-redes na VPC que você deseja excluir.
- Exclua cada sub-rede na VPC, o que significa:
- Exclua todos os gateways de VPN na sub-rede.
- Exclua todos os Balanceadores de Carga na sub-rede.
- Exclua todas as interfaces de rede das instâncias na sub-rede.
- Exclua a sub-rede.
- Exclua todos os gateways públicos no VPC.
- Exclua a VPC.
As seções a seguir fornecem algumas chamadas da API de exemplos que podem ser executadas para excluir um VPC.
Etapa 1: Identifique todas as sub-redes na VPC que você deseja excluir
Antes que uma VPC possa ser excluído, cada uma de suas sub-redes deve ser excluída. Obtenha o ID da VPC que você deseja excluir executando o comando a seguir e verificando o valor de “ id ”:
curl -X GET "$vpc_api_endpoint/v1/vpcs?version=$version&generation=2" \
-H "Authorization:$iam_token"
Adicione | json_pp ou | jq após o comando curl para obter uma string JSON legível. jq é uma ferramenta de terceiros licenciada sob a licença MIT.
jq pode não vir pré-instalado em todas as imagens de VPC disponíveis quando você cria uma instância. O comando json_pp é um pré-processador JSON que geralmente vem instalado por padrão na maioria
das distribuições do Linux.
Salve o ID da VPC em uma variável para que seja possível usá-lo posteriormente, por exemplo:
vpc="0738-3524fef5-da35-4622-bf9a-31614964649d"
Para obter a lista de todas as sub-redes em sua conta, execute o comando a seguir:
curl -X GET "$vpc_api_endpoint/v1/subnets?version=$version&generation=2" \
-H "Authorization:$iam_token"
Observe o valor vpc para determinar as sub-redes que precisam ser excluídas. Salve o ID da sub-rede em uma variável para uso posterior, por exemplo:
subnet="0738-d31ce469-9b0f-44e1-87ce-0fc77d8b0e53"
Se a VPC que você deseja excluir tiver várias sub-redes, repita as etapas para excluir cada sub-rede.
Etapa 2: excluir cada sub-rede no VPC
Exclua todos os gateways de VPN na sub-rede, se houver
Para listar todos os gateways de VPN em sua conta, execute o comando a seguir:
curl -X GET "$vpc_api_endpoint/v1/vpn_gateways?version=$version&generation=2" \
-H "Authorization:$iam_token"
Execute o comando a seguir para cada gateway de VPN na sub-rede que você deseja excluir, sendo que $vpnid é o ID do gateway de VPN.
curl -X DELETE "$vpc_api_endpoint/v1/vpn_gateways/$vpnid?version=$version&generation=2" \
-H "Authorization:$iam_token"
O status do gateway VPN muda para deleting imediatamente, mas ele ainda é retornado ao executar uma consulta de lista. A exclusão de um gateway de VPN pode levar até 30 minutos. É possível solicitar que outros recursos de sub-rede
sejam excluídos em paralelo enquanto você espera que o gateway VPN seja excluído. No entanto, a sub-rede não pode ser excluída até que o gateway de VPN e todos os outros recursos da sub-rede deixem de aparecer nas consultas da lista.
Excluir todos os balanceadores de carga na sub-rede, se houver
Para listar todos os balanceadores de carga em sua conta, execute o comando a seguir:
curl -X GET "$vpc_api_endpoint/v1/load_balancers?version=$version&generation=2" \
-H "Authorization:$iam_token"
Execute o comando a seguir para cada balanceador de carga na sub-rede que você deseja excluir, sendo que $lbid é o ID do balanceador de carga.
curl -X DELETE "$vpc_api_endpoint/v1/load_balancers/$lbid?version=$version&generation=2" \
-H "Authorization:$iam_token"
O status do balanceador de carga muda para deleting imediatamente, mas ele ainda é retornado ao executar uma consulta de lista. A exclusão de um balanceador de carga pode levar até 30 minutos. É possível solicitar que outros
recursos de sub-rede sejam excluídos em paralelo enquanto você espera que o balanceador de carga seja excluído. No entanto, a sub-rede não pode ser excluída até que o balanceador de carga e todos os outros recursos da sub-rede deixem de
aparecer nas consultas da lista.
Exclua todas as interfaces de rede na sub-rede, se houver
Uma instância pode ter várias interfaces de rede que podem pertencer a várias sub-redes do VPC. Antes que uma sub-rede possa ser excluída, qualquer interface de rede na sub-rede deve ser excluída primeiro. A única maneira de excluir uma interface de rede em uma sub-rede é excluir a instância.
Para listar todas as interfaces de rede de uma instância, execute o comando a seguir:
curl -X GET "$vpc_api_endpoint/v1/instances/$vsi/network_interfaces?version=$version&generation=2" \
-H "Authorization:$iam_token"
Se existir uma interface de rede secundária na sub-rede que você está tentando excluir, será necessário excluir a instância. Uma interface de rede não pode ser excluída da instância sem excluir a instância.
Para listar todas as instâncias em sua conta, execute o comando a seguir:
curl -X GET "$vpc_api_endpoint/v1/instances?version=$version&generation=2" \
-H "Authorization:$iam_token"
Se você estiver excluindo todas as instâncias na VPC, será possível executar o comando a seguir para cada instância na VPC, em que $vsi é o ID da instância que você deseja excluir. Quando a instância é excluída, todas as interfaces
de rede em outras sub-redes, se houver, são excluídas automaticamente.
As instâncias devem ser paradas antes da exclusão. Para obter mais informações, consulte Criar uma ação de instância para usar a solicitação type e a ação stop.
curl -X DELETE "$vpc_api_endpoint/v1/instances/$vsi?version=$version&generation=2" \
-H "Authorization:$iam_token"
O status da instância muda imediatamente para “ deleting ”, mas ela ainda pode aparecer nos resultados de uma consulta de lista. A exclusão de uma instância pode levar até 30 minutos. É possível solicitar que outros recursos
de sub-rede sejam excluídos em paralelo enquanto você aguarda a exclusão da instância. No entanto, a sub-rede não pode ser excluída até que a instância e todos os outros recursos da sub-rede não apareçam mais nas consultas da lista.
Excluir a sub-rede
Depois que todos os recursos na sub-rede forem excluídos e não forem retornados ao executar uma consulta de lista, execute o comando a seguir para excluir a sub-rede:
curl -X DELETE "$vpc_api_endpoint/v1/subnets/$subnet?version=$version&generation=2" \
-H "Authorization:$iam_token"
O status da sub-rede é mudado para deleting imediatamente, mas é possível que ela demore alguns minutos para ser excluída e não mais ser retornada nas consultas de lista.
Etapa 3: excluir todos os gateways públicos no VPC, se houver
Para listar todos os gateways públicos em sua conta, execute o comando a seguir:
curl -X GET "$vpc_api_endpoint/v1/public_gateways?version=$version&generation=2" \
-H "Authorization:$iam_token"
Para cada gateway público no VPC que você deseja excluir, execute o comando a seguir para excluir o gateway público, em que $gateway é o ID do gateway público.
curl -X DELETE "$vpc_api_endpoint/v1/public_gateways/$gateway?version=$version&generation=2" \
-H "Authorization:$iam_token"
Etapa 4: excluir o VPC
Após a exclusão de todas as sub-redes e gateways públicos na VPC, execute o comando a seguir para excluir a VPC, em que $vpc é o ID da VPC sendo excluído.
curl -X DELETE "$vpc_api_endpoint/v1/vpcs/$vpc?version=$version&generation=2" \
-H "Authorization:$iam_token"
O status da VPC é mudado para deleting imediatamente, mas é possível que ele demore alguns minutos para ser excluído e não mais aparecer nas consultas de lista.