Zasady usuwania hooków
Sprzątanie zasobów hooków po ich pomyślnym wykonaniu.
Zasady usuwania hooków to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Hooki pozostają w klastrze
Domyślnie zasób hooka pozostaje w klastrze po jego wykonaniu. Bez czyszczenia stare obiekty Job i pody gromadzą się z każdym kolejnym wydaniem.
Polityka usuwania
Czyszczeniem steruje adnotacja helm.sh/hook-delete-policy. Informuje ona Helm dokładnie, kiedy usunąć utworzony przez niego zasób hooka.
annotations:
"helm.sh/hook-delete-policy": hook-succeededUsuwanie po pomyślnym wykonaniu
Najczęściej wybieraną opcją jest hook-succeeded. Helm usuwa zasób hooka natychmiast po jego pomyślnym zakończeniu, dzięki czemu przestrzeń nazw pozostaje uporządkowana.
"helm.sh/hook-delete-policy": hook-succeededZachowaj błędy do debugowania
W przypadku hook-succeeded nieudany hook jest celowo pozostawiany. Można odczytać jego logi, aby sprawdzić, dlaczego migracja się nie powiodła, a następnie ręcznie go usunąć. 🔍
Usuwanie po błędzie
Przeciwieństwem jest polityka hook-failed. Helm usuwa zasób hooka tylko wtedy, gdy ten zakończy się błędem, co pasuje do hooków, których nie chcą Państwo pozostawiać w stanie awarii.
"helm.sh/hook-delete-policy": hook-failedUsuwanie przed następnym uruchomieniem
Trzecią opcją jest before-hook-creation. Helm usuwa poprzednią instancję tuż przed utworzeniem nowej, unikając kolizji wynikających z niezmiennych nazw.
"helm.sh/hook-delete-policy": before-hook-creationZachowanie domyślne
Jeśli nie zostanie ustawiona żadna polityka, Helm domyślnie używa before-hook-creation. Stary hook jest usuwany tuż przed ponownym utworzeniem go przy następnym uruchomieniu.
Łączenie polityk
Polityki można łączyć w postaci listy rozdzielanej przecinkami. Połączenie before-hook-creation z hook-succeeded usuwa nieaktualne instancje i sprząta po każdym pomyślnym wykonaniu.
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeededRozwiązywanie problemu niezmiennych obiektów Job
Specyfikacji obiektu Job nie można zmienić po jego utworzeniu. before-hook-creation rozwiązuje ten problem, usuwając stary obiekt Job, dzięki czemu każda aktualizacja otrzymuje nowy.
Wybierz według celu
Należy wybrać politykę zgodną z celem: sprzątanie po sukcesie, zachowanie informacji o błędach albo każdorazowe rozpoczęcie od nowa. Każda adnotacja odpowiada po prostu na pytanie, kiedy usunąć zasób.
Helm zarządza czyszczeniem
Te polityki dotyczą wyłącznie zasobów utworzonych przez Helm jako hooki. Helm śledzi je i usuwa je za Państwa, dzięki czemu po każdym wydaniu nie trzeba ręcznie wykonywać kubectl delete.
Szybkie sprawdzenie
Chcą Państwo, aby obiekt Job migracji został automatycznie usunięty po pomyślnym zakończeniu.
Podsumowanie
Adnotacja hook-delete-policy określa, kiedy Helm usuwa hook: po sukcesie, po błędzie albo przed jego ponownym utworzeniem. Wartością domyślną jest before-hook-creation. 🧹
Często zadawane pytania
Czy lekcja „Zasady usuwania hooków” jest bezpłatna?
Tak — pełny tekst „Zasady usuwania hooków” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.
Co nauczysz się w „Zasady usuwania hooków”?
Sprzątanie zasobów hooków po ich pomyślnym wykonaniu. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?
Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Zasady usuwania hooków”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?
Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Czym są hooki i kiedy się uruchamiają
- Job migracji bazy danych pre-upgrade
- Wagi i kolejność hooków
- Zasady usuwania hooków