Firma używa AWS CodePipeline z AWS CodeDeploy do wdrażania aplikacji w Amazon ECS, wykorzystując wdrożenia blue/green. Zespół musi uruchomić skrypty testowe w środowisku zielonym (testy kończą się w ciągu 5 minut) przed przekierowaniem ruchu. Jeśli testy zakończą się niepowodzeniem, wdrożenie musi zostać wycofane. Które podejście spełnia ten wymóg?
Wybierz odpowiedź
Dotknij opcji, aby sprawdzić swoją odpowiedź.
Poprawna odpowiedź: Dodaj hooki do pliku AppSpec CodeDeploy i użyj zdarzenia cyklu życia AfterAllowTestTraffic, aby wywołać funkcję AWS Lambda, która uruchamia skrypty testowe; jeśli Lambda zakończy działanie z błędem, CodeDeploy wycofa wdrożenie..
Dlaczego to jest odpowiedź
Prawidłowa odpowiedź to dodanie hooków do pliku AppSpec CodeDeploy i użycie zdarzenia cyklu życia AfterAllowTestTraffic. To zdarzenie jest specjalnie zaprojektowane dla wdrożeń blue/green i pozwala na uruchomienie testów na zielonym środowisku po przekierowaniu do niego ruchu testowego, ale przed przekierowaniem ruchu produkcyjnego. Jeśli funkcja AWS Lambda wywołana przez ten hook zwróci błąd, CodeDeploy automatycznie wycofa wdrożenie. Pozostałe opcje są nieprawidłowe, ponieważ: Dodanie etapu CodeBuild lub Lambda między etapami źródłowym a wdrożeniowym nie jest odpowiednie dla testowania środowiska zielonego po jego uruchomieniu, ale przed przekierowaniem ruchu. Te etapy działają na artefaktach, a nie na uruchomionym środowisku. Użycie zdarzenia AfterAllowTraffic jest zbyt późne, ponieważ ruch produkcyjny zostałby już przekierowany, co naruszyłoby wymaganie wycofania wdrożenia przed wpłynięciem na użytkowników. Ręczne wywołanie aws deploy stop-deployment nie jest tak niezawodne jak automatyczne wycofanie przez CodeDeploy.
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