Политики удаления хуков
Удаляйте ресурсы хуков после успешного выполнения
«Политики удаления хуков» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.
Хуки остаются в кластере
По умолчанию ресурс хука остаётся в кластере после выполнения. Без очистки старые задания миграции и поды накапливаются от одного релиза к другому.
Политика удаления
Очистка управляется аннотацией helm.sh/hook-delete-policy. Она сообщает Helm, когда именно удалить созданный им ресурс хука.
annotations:
"helm.sh/hook-delete-policy": hook-succeededУдаление при успехе
Наиболее распространённый вариант — hook-succeeded. Helm удаляет ресурс хука сразу после его успешного завершения, поддерживая пространство имён в порядке.
"helm.sh/hook-delete-policy": hook-succeededСохраняйте ошибки для отладки
При использовании hook-succeeded неудачно завершившийся хук намеренно сохраняется. Вы можете прочитать его журналы, чтобы понять, почему миграция завершилась с ошибкой, а затем удалить ресурс вручную. 🔍
Удаление при ошибке
Противоположная политика — hook-failed. Helm удаляет ресурс хука только при его сбое; это подходит для хуков, которые не следует оставлять в нерабочем состоянии.
"helm.sh/hook-delete-policy": hook-failedУдаление перед следующим запуском
Третий вариант — before-hook-creation. Helm удаляет предыдущий экземпляр непосредственно перед созданием нового, предотвращая конфликты неизменяемых имён.
"helm.sh/hook-delete-policy": before-hook-creationПоведение по умолчанию
Если не задать никакую политику, Helm по умолчанию использует before-hook-creation. Старый хук удаляется непосредственно перед тем, как следующий запуск создаст его заново.
Комбинируйте политики
Политики можно объединять в списке, разделённом запятыми. Сочетание before-hook-creation с hook-succeeded удаляет устаревшие экземпляры и выполняет очистку после каждого успешного запуска.
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeededРешение проблемы неизменяемых заданий
Спецификацию задания нельзя изменить после его создания. before-hook-creation решает эту проблему, сначала удаляя старое задание, поэтому при каждом обновлении создаётся новое.
Выбирайте по цели
Выбирайте политику в соответствии с целью: очищать ресурсы после успеха, сохранять свидетельства ошибок или всегда начинать с чистого состояния. Каждая аннотация отвечает только на вопрос, когда выполнять удаление.
Helm отвечает за очистку
Эти политики применяются только к ресурсам, созданным Helm в качестве хуков. Helm отслеживает их и удаляет за вас, поэтому после каждого релиза не нужно вручную выполнять kubectl delete.
Быстрая проверка
Вы хотите автоматически удалить задание миграции сразу после его успешного завершения.
Повторение
Аннотация hook-delete-policy определяет, когда Helm удаляет хук: после успеха, после ошибки или перед следующим созданием. По умолчанию используется before-hook-creation. 🧹
Часто задаваемые вопросы
Урок «Политики удаления хуков» бесплатный?
Да — полный текст урока «Политики удаления хуков» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.
Чему я научусь в уроке «Политики удаления хуков»?
Удаляйте ресурсы хуков после успешного выполнения Ты практикуешь DevOps Bootcamp с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать DevOps Bootcamp?
Предыдущий опыт не требуется. DevOps Bootcamp на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Политики удаления хуков»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке DevOps Bootcamp?
Да. Каждый урок DevOps Bootcamp включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Что такое хуки и когда они запускаются
- Задание миграции DB перед обновлением
- Вес и порядок хуков
- Политики удаления хуков