CloudFormation czeka na usunięcie interfejsów sieciowych powiązanych z funkcją lambda

21

Mam stos CloudFormation z funkcją Lambda wewnątrz VPC.
Podczas próby usunięcia stosu AWS CloudFormation utknie przynajmniej na 25-30,
otrzymuję następujący komunikat w zdarzeniach -

CloudFormation is waiting for NetworkInterfaces associated with the Lambda Function to be cleaned up.

Wydaje się, że wynika to z faktu, że ENI są dołączone do funkcji i grup bezpieczeństwa.

Z konsoli nie pozwoliło mi usunąć ani ENI siłą, ani Grupy bezpieczeństwa, do której ENI jest przyłączony.
Czy muszę po prostu czekać?

Znalazłem pytania i blogi, które mają nawet 2 lata.
Brak rozwiązania AWS?
Automatyzacja ma być szybka, to okazuje się być wielkim blokerem.

Odwołanie -
problem z CloudFormation: nie można usunąć stosu
https://forum.serverless.com/t/very-long-delay-when-doing-sls-remove-of-lambda-in-a-vpc/2535

Ani
źródło
5
Jest na to otwarty problem: github.com/serverless/serverless/issues/5008
Amit Baranes
4
Jest to dobrze znany problem z Lambdas w VPC. Ponieważ wydaje się, że nie zdajesz sobie z tego sprawy, opracowali rozwiązanie tego problemu, musisz tylko poczekać, aż zostanie ono wdrożone w
404
6
Ten problem nadal występuje w przypadku nowych ENI Hyperplane.
mtsr
Jeśli to możliwe, odwołanie się do istniejącej grupy zabezpieczeń dla lambda znacznie skraca ten czas (choć oczywiście nie rozwiązuje to podstawowego problemu)
carliecope
1
Jeszcze kilka miesięcy temu można było przeprowadzić ręczną rozmowę przez konsolę, aby odłączyć, a następnie usunąć (aby uniknąć formacji chmurowej, długo czekać na usunięcie), ale ten hack jest teraz zamknięty dla ENI należącego do stosu.
geoff.weatherall

Odpowiedzi:

0

Jak już wspomnieliście ty i inni, jest to znany problem / „funkcja”. Kiedy ostatnio rozmawiałem o tym z kimś z AWS, nie było planów zmiany tego zachowania. Jeśli naprawdę liczy się czas, możesz obejść ten problem:

  1. Zaktualizuj zasoby Lambda w CloudFormation przy DeletionPolicyustawieniu na Retain.

  2. Ręcznie (lub za pomocą skryptu / interfejsu API) usuń Lambda i powiązane zasoby, takie jak ENI

Nie poleciłbym jednak powyższego obejścia. Łatwo jest zapomnieć o czymś, co pozostawia zaśmiecone środowisko.

Obrabować
źródło