Ir para o conteúdo

Como resolvo um erro de dependência que recebo quando tento excluir minha VPC?

5 minuto de leitura
0

Quando tento excluir minha VPC, recebo um erro de dependência.

Breve descrição

Quando você exclui uma VPC, todos os componentes também devem ser excluídos. Esses componentes incluem sub-redes, grupos de segurança, listas de controle de acesso à rede (ACLs de rede), tabelas de rotas, gateways da Internet e opções de DHCP.

Resolução

Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Antes de excluir sua VPC, você deve remover todos os recursos associados e dependentes. É possível excluir uma VPC por meio do console da Amazon Virtual Private Cloud (Amazon VPC) ou da AWS CLI. Quando você exclui uma VPC por meio do console da Amazon VPC, certas dependências, como sub-redes, gateways de internet e outras, também serão removidas automaticamente. No entanto, ao usar a AWS CLI, você deve primeiro excluir manualmente todos os recursos dependentes antes de excluir a própria VPC.

AWS CLI

“Ocorreu um erro (DependencyViolation) ao chamar a operação DeleteVpc: A vpc 'vpc-id' tem dependências e não pode ser excluída”.

Você recebe esse erro quando há dependências que você precisa remover antes de excluir a VPC. Para resolver esse erro, realize as etapas a seguir:

  1. Execute o script a seguir para encontrar as dependências restantes:
    #!/bin/bashvpc="vpc-#############"region="yy-yyyy-y"
    aws ec2 describe-internet-gateways --region AWS_REGION --filters 'Name=attachment.vpc-id,Values='VPC_ID | grep InternetGatewayId
    aws ec2 describe-subnets --region AWS_REGION --filters 'Name=vpc-id,Values='VPC_ID | grep SubnetId
    aws ec2 describe-route-tables --region AWS_REGION --filters 'Name=vpc-id,Values='VPC_ID | grep RouteTableId
    aws ec2 describe-network-acls --region AWS_REGION --filters 'Name=vpc-id,Values='VPC_ID | grep NetworkAclId
    aws ec2 describe-vpc-peering-connections --region AWS_REGION --filters 'Name=requester-vpc-info.vpc-id,Values='VPC_ID | grep VpcPeeringConnectionId
    aws ec2 describe-vpc-endpoints --region AWS_REGION --filters 'Name=vpc-id,Values='VPC_ID | grep VpcEndpointId
    aws ec2 describe-nat-gateways --region AWS_REGION --filter 'Name=vpc-id,Values='VPC_ID | grep NatGatewayId
    aws ec2 describe-security-groups --region AWS_REGION --filters 'Name=vpc-id,Values='VPC_ID | grep GroupId
    aws ec2 describe-instances --region AWS_REGION --filters 'Name=vpc-id,Values='VPC_ID | grep InstanceId
    aws ec2 describe-vpn-gateways --region AWS_REGION --filters 'Name=attachment.vpc-id,Values='VPC_ID | grep VpnGatewayId
    aws ec2 describe-network-interfaces --region AWS_REGION --filters 'Name=vpc-id,Values='VPC_ID | grep NetworkInterfaceId
    aws ec2 describe-carrier-gateways --region AWS_REGION --filters 'Name=vpc-id,Values=VPC_ID' | grep CarrierGatewayId
    aws ec2 describe-local-gateway-route-table-vpc-associations --region AWS_REGION --filters Name=vpc-id,Values=VPC_ID | grep LocalGatewayRouteTableVpcAssociationId
    aws ec2 describe-vpc-peering-connections --region AWS_REGION --filters 'Name=accepter-vpc-info.vpc-id,Values='VPC_ID | grep VpcPeeringConnectionId
    Observação: no script a seguir, substitua VPC_ID pelo valor do ID da VPC. Além disso, substitua AWS_REGION pela sua região da AWS. Use as credenciais com as permissões apropriadas para executar as chamadas da API Describe.
  2. Exclua todas as dependências que você identificou na etapa 1.
  3. Exclua sua VPC.

Console do Amazon VPC

Confira a seguir alguns erros comuns de dependência que é possível receber ao excluir uma VPC por meio do console:

“A VPC contém uma ou mais instâncias e não pode ser excluída até que essas instâncias sejam encerradas”.

Você recebe esse erro quando a VPC tem instâncias do Amazon Elastic Compute Cloud (Amazon EC2) executadas nela.

Para resolver esse erro, encerre suas instâncias do Amazon EC2.

“A VPC contém uma ou mais interfaces de rede em uso e não pode ser excluída até que essas interfaces de rede sejam excluídas”.

Você recebe esse erro quando sua VPC tem interfaces de rede que estão em uso ou disponíveis.

“Ocorreu um erro (InvalidParameterValue) ao chamar a operação DeleteNetworkInterface: A interface de rede 'eni-aabbccdd' está em uso”.

Você recebe esse erro quando há interfaces de rede gerenciadas pelo solicitante que não é possível excluir. Para excluir as interfaces de rede gerenciadas pelo solicitante, você deve excluir o serviço da AWS que as criou.

Para remover os serviços dependentes, realize as seguintes etapas:

  1. Abra o console do Amazon EC2.
  2. Selecione a região em que a VPC está.
  3. No painel de navegação, em Interfaces de rede, pesquise o ID de VPC da VPC que você quer excluir.
  4. Selecione a interface de rede e escolha a guia Detalhes.
  5. Examine a Descrição para ver a quais recursos a interface de rede está conectada.
  6. Exclua os recursos associados.
    Observação: se a interface de rede for primária, ao excluir a instância, os recurso também serão excluídos.

“A VPC tem um ou mais gateways NAT ou gateways virtuais privados conectados e não pode ser excluída até que estes sejam desanexados ou excluídos”.

Você recebe esse erro quando a VPC tem um gateway dependente. Para resolver esse erro, realize as etapas em Excluir um gateway NAT e Excluir uma conexão e um gateway AWS Site-to-Site VPN.

“A VPC está emparelhada como solicitante com pelo menos outra VPC por meio de conexões de emparelhamento”.

Você recebe esse erro quando há conexões de peering de VPC ativas. Para resolver esse erro, siga as etapas em Excluir uma conexão de peering de VPC.

Outros erros de dependência

Se você ainda tiver dependências que impedem a exclusão da VPC, primeiro exclua o gateway da operadora. Para desassociar a VPC de qualquer tabela de rotas de gateway local.

Para excluir o gateway da operadora, conclua as seguintes etapas:

  1. Abra o console da Amazon VPC.
  2. No painel de navegação, escolha Gateways de operadora.
  3. Selecione o gateway da operadora, escolha Ações e, em seguida, Excluir gateway da operadora.
  4. Na caixa de diálogo Excluir gateway da operadora, insira Excluir e escolha Excluir.

Para desassociar a VPC de qualquer tabela de rotas de gateway local, siga as seguintes etapas:

  1. Abra o console do AWS Outposts.
  2. No painel de navegação, escolha Tabelas de rotas de gateway local.
  3. Selecione a tabela de rotas.
  4. Escolha Ações e depois Visualizar detalhes.
  5. Em Associações da VPC, selecione a VPC a ser desassociada e escolha Desassociar.

Informações relacionadas

Por que não consigo desanexar ou excluir uma interface de rede elástica criada pelo Lambda?

Como posso excluir minha VPC que está compartilhada com outra conta da AWS?

Por que não consigo excluir meu endpoint da VPC gerenciado por solicitante?

Exclua sua VPC

AWS OFICIALAtualizada há um ano