#kubernetes #hook #kubernetes-helm
#kubernetes #перехват #kubernetes-helm
Вопрос:
Контекст: Kubenete 1.0.3, Helm 2.8.2
Перехват управления: вес предварительной установки: 0 политика удаления: до создания перехвата
Команда Helm: пространство имен helm upgrade —install -n
Описание проблемы: Блок перехвата хорошо отображается при запуске в режиме —dry-run. Но после установки (без предварительного запуска) задание перехвата не запускается.
Проверьте задание с помощью команды kubectl get jobs -n пространство имен.
Комментарии:
1. Вы действительно устанавливали или обновляли свое развертывание? При обновлении — перехват не будет создан.
2. Спасибо за ответ, он направляет меня на правильный путь. Хук должен быть предварительно обновлен!
3. @X.J Не могли бы вы, пожалуйста, добавить это в качестве ответа, чтобы другим, у кого может возникнуть такая же проблема, было проще?
Ответ №1:
Перехват — это механизм, внедренный в HELM для вмешательства в определенные моменты жизненного цикла релиза. Перехваты могут быть определены несколькими способами с помощью специальных аннотаций в разделе метаданных, т.Е. «предварительная установка», «после установки», «предварительное обновление» и т.д. Пример перехвата:
apiVersion: ...
kind: ....
metadata:
annotations:
"helm.sh/hook": "pre-install"
Полный список хуков можно найти здесь. Кроме того, может использоваться более одного перехвата.
В этом случае опция «предварительное обновление» решила проблему, которая заключалась в том, что
«Выполняется при запросе на обновление после отрисовки шаблонов, но до загрузки каких-либо ресурсов в Kubernetes (например, перед операцией применения Kubernetes).«