`eksctl delete cluster` не может удалить потерянные ресурсы ELB Security Groups` имеет зависимый объект

eksctl delete cluster --region=us-west-2 --name=myeks-2

[ℹ]  using region us-west-2
[ℹ]  deleting EKS cluster "myeks-2"
[ℹ]  cleaning up LoadBalancer services
[✖]  cannot delete orphan ELB Security Groups: cannot delete security group k8s-elb-aaa: DependencyViolation: resource sg-yyy has a dependent object

Я создал кластер EKS, я установил несколько вещей, теперь я хочу избавиться от него, воссоздать и попробовать еще раз. Кажется, есть сиротский ENI + SG, который нельзя удалить, и я не могу понять, почему.

aws ec2 delete-security-group --group-id "sg-yyy"

Произошла ошибка (DependencyViolation) при вызове операции DeleteSecurityGroup: ресурс sg-yyy имеет зависимый объект

Я могу найти один сетевой интерфейс, ссылающийся на эту группу безопасности:

aws ec2 describe-network-interfaces --filters Name=group-id,Values=sg-yyy | jq '.NetworkInterfaces[].NetworkInterfaceId'

Если я попытаюсь удалить это, я получу

aws ec2 delete-network-interface --network-interface-id eni-xxx

Произошла ошибка (InvalidParameterValue) при вызове операции DeleteNetworkInterface: в настоящее время используется сетевой интерфейс eni-xxx.

If I do:

aws ec2 describe-instances > instances.json
aws ec2 describe-nat-gateways > nat-gateways.json
aws ec2 describe-network-acls > network-acls.json
aws ec2 describe-network-interfaces > network-interfaces.json
aws ec2 describe-security-groups > security-groups.json

а затем grep eni-xxx *.json и grep sg-yyy *.json, я получаю три результата: два результата сущности и одну ссылку с eni-xxx на sg-yyy. Экземпляры EC2 тоже не ссылаются ... Я не знаю, как это исправить.

К вашему сведению, я не делал никаких специальных операций с AWS с этим кластером EKS. Никаких пользовательских сетей или команд AWS. Я просто надеялся создать и удалить / воссоздать тестовые кластеры и пытаюсь устранить эту ошибку блокировки.


person clay    schedule 08.10.2019    source источник


Ответы (1)


решение заключалось в том, чтобы вручную удалить ELB с помощью группы безопасности:

aws elb describe-load-balancers | jq '.LoadBalancerDescriptions[] | select (.SecurityGroups[] | contains("sg-yyy")) | .LoadBalancerName'

aws elb delete-load-balancer --load-balancer-name <load-balancer-name>
person clay    schedule 09.10.2019