Wielowarstwowa aplikacja przechowuje tymczasowe dane w obiektach S3, które są ważne przez 45 minut i muszą zostać usunięte po 24 godzinach. Każda wersja aplikacji jest wdrażana za pośrednictwem stosu CloudFormation, a gdy starszy stos zostanie usunięty, CloudFormation nie usuwa zasobnika S3, co powoduje niepowodzenie usunięcia stosu. Jak można to rozwiązać bez większych zmian architektonicznych?
Wybierz odpowiedź
Dotknij opcji, aby sprawdzić swoją odpowiedź.
Poprawna odpowiedź: Zaimplementuj funkcję Lambda, która usuwa wszystkie obiekty w określonym zasobniku S3. Zintegruj tę funkcję Lambda jako zasób niestandardowy w szablonie CloudFormation i dodaj DependsOn, który odwołuje się do zasobu zasobnika S3..
Dlaczego to jest odpowiedź
Poprawna odpowiedź rozwiązuje problem nieusuwania zasobnika S3 przez CloudFormation, gdy zawiera on obiekty. Implementacja funkcji Lambda, która opróżnia zasobnik, a następnie zintegrowanie jej jako zasobu niestandardowego w CloudFormation z zależnością DependsOn od zasobnika S3, zapewnia, że Lambda zostanie uruchomiona przed próbą usunięcia zasobnika. Dzięki temu zasobnik jest pusty i CloudFormation może go pomyślnie usunąć. Inne opcje są mniej odpowiednie: Modyfikacja na Amazon EFS to znacząca zmiana architektoniczna, niezgodna z wymogiem "bez większych zmian architektonicznych". Dodanie reguły cyklu życia S3 do wygaszania obiektów po 45 minutach nie gwarantuje, że zasobnik będzie pusty w momencie usuwania stosu, ponieważ obiekty mogą nadal istnieć przez 24 godziny. Dodanie atrybutu DeletionPolicy z wartością Delete spowodowałoby usunięcie zasobnika tylko wtedy, gdy jest pusty. Jeśli zawiera obiekty, usunięcie stosu nadal zakończy się niepowodzeniem.
Zdaj egzamin — bez niekończącego się szukania odpowiedzi
Uzyskaj wszystkie zweryfikowane pytania i wyjaśnienia do tego egzaminu w jednym miejscu i zaoszczędź godziny przygotowań. Ponad 1000 certyfikacji · Ponad 20 języków · Zacznij za darmo.
Zdaj egzamin szybciej → Karta nie jest wymagana