Я не могу удалить свой VPC
Я хочу удалить один из моих VPC, но когда я пытался удалить, эта ошибка появилась.
Мы не смогли удалить следующий VPC (vpc-8737bde2 (10.100.0.0/16) | Khoi-VPC) Vpc 'vpc-8737bde2' имеет зависимости и не может быть удален. (Сервис: AmazonEC2; Код состояния: 400; Код ошибки: DependencyViolation; Идентификатор запроса: e115d5ca-dd34-4cbb-a439-541b0dc225da)
ОК, я проверил группу безопасности и нашел одну группу с описанием, которое имеет имя моего VPC, поэтому я подумал, что это проблема. Но на этот раз ошибка появляется снова.
Мы не смогли удалить следующую группу безопасности (sg-a43c0dc1)
указанная группа: "sg-a43c0dc1" имя: "default" не может быть удалена пользователем (Сервис: AmazonEC2; Код состояния: 400; Код ошибки: CannotDelete; Идентификатор запроса: b21c425c-25c7-46e7-baeb-9610710afeca )
Я не знаю, как удалить свой VPC, есть ли у кого-нибудь идеи?
Ответы
Ответ 1
Большинство приложений AWS, использующих VPC, не показывают его использования в консоли VPC.
(обновление) Хотя консоль AWS заявляет, что она будет отсоединять ресурсы, вам необходимо проверить конкретные ресурсы VPC, используемые другими службами AWS.
Вот некоторые из них:
-
EC2:
Сетевой интерфейс, Группы безопасности и подсеть для любого экземпляра EC2, прикрепленного к подсети VPC. Вы можете выбрать
- ТЕРМИНАТ (удалить) экземпляр EC2 или
- Запустите экземпляр в "фиктивный VPC" или публичную подсеть
-
RDS:
Группы безопасности БД и подсеть
Когда вы создаете RDS и присоединяетесь к VPC, вы должны создать группу подсетей DB для этого VPC. Даже вы удаляете RDS, группа (-ы) подсети DB остается. Поэтому вам нужно перейти на консоль и удалить группу подсети DB (или использовать aws cli для ее удаления).
-
Любые другие службы AWS, которые используют VPC
- Просто откройте все службы, которые используют VPC-id, VPC-Subnet-ID, группы безопасности и т.д.
(Обновлено после тестирования @TheOne указала конечную точку VPC)
4. Конечная точка VPC
Вещи внутри VPC, о которых вам не нужно беспокоиться при удалении VPC
- Виртуальные частные шлюзы (консоль отделяет VPG от VPC)
- Вложения VPN
- Интернет-шлюзы
- Таблицы маршрутов
Ответ 2
Прежде чем вы сможете удалить VPC, вы должны завершить все экземпляры, запущенные в VPC. Если вы удаляете VPC с помощью консоли VPC, он также удаляет ресурсы, связанные с VPC, такие как подсети, группы безопасности, сетевые списки ACL, наборы параметров DHCP, таблицы маршрутов и интернет-шлюзы.
Таким образом, нет запроса вручную удалить группы безопасности.
Чтобы прервать ваш экземпляр, отпустите свой эластичный IP-адрес и удалите VPC
-
Откройте консоль Amazon EC2 в https://console.aws.amazon.com/ec2/.
-
В навигационной панели выберите Экземпляры.
-
Выберите свой экземпляр, выберите "Действия", "Состояние экземпляра" и затем "Завершить".
-
В диалоговом окне разверните раздел "Отключенные вложенные эластичные IP-адреса" и установите флажок рядом с Упругим IP-адресом. Выберите "Да", "Завершить".
-
Откройте консоль VPC Amazon на https://console.aws.amazon.com/vpc/.
-
В навигационной панели выберите свои VPC.
-
Выберите VPC, выберите "Действия", а затем "Удалить VPC".
-
При запросе подтверждения выберите "Да", "Удалить".
:
Очистить VPC
Ответ 3
Из документации AWS:
Вы можете удалить свой VPC в любое время. Однако вы должны завершить все экземпляры в VPC и сначала удалить все пиринговые соединения VPC. Когда вы удаляете VPC с помощью консоли VPC, мы удаляем все его компоненты, такие как подсети, группы безопасности, сетевые списки ACL, таблицы маршрутов, интернет-шлюзы и параметры DHCP.
Однако из документации для команды delete-vpc
:
Вы должны отсоединить или удалить все шлюзы и ресурсы, связанные с VPC, прежде чем сможете его удалить. Например, необходимо завершить работу всех экземпляров, запущенных в VPC, удалить все группы безопасности, связанные с VPC (кроме группы по умолчанию), удалить все таблицы маршрутов, связанные с VPC (кроме таблицы по умолчанию) и т.д.
Таким образом, при удалении VPC с помощью консоли выполняется иначе, чем при использовании интерфейса командной строки AWS.
Если вы удаляете VPC с помощью консоли, вам нужно всего лишь прекратить/удалить следующее:
Если вы удаляете VPC с помощью интерфейса командной строки, вам также необходимо отключить/удалить другие зависимые ресурсы:
Многие из этих ресурсов можно найти в консоли AWS, выполнив поиск в соответствующем разделе для этого типа ресурса с использованием идентификатора VPC, связанных идентификаторов подсети или связанных идентификаторов групп безопасности.