Как применить обновление сразу, зафиксировать версию Deckhouse Platform и обновиться через несколько минорных

Viewed 46

Три вопроса про обновления. Модуль ждёт окна обновлений, а мне нужно сейчас. Хочу поставить конкретную версию и чтобы кластер сам не обновлялся. Кластер отстал на несколько минорных версий, как обновляться безопасно?

1 Answers
  1. Применить прямо сейчас, мимо окна:

    # релизы модулей и Deckhouse
    d8 k get modulereleases
    d8 k get deckhousereleases
    
    # модуль
    d8 k annotate modulerelease <релиз> modules.deckhouse.io/apply-now="true"
    # или: d8 system module apply-now <модуль> <версия>
    
    # Deckhouse
    d8 k annotate deckhouserelease <версия> release.deckhouse.io/apply-now="true"
    

    Для DeckhouseRelease аннотация игнорирует окна, canary и ручной режим. Для ModuleRelease только окно, требования релиза всё равно проверяются.

  2. Режим обновлений. Он задаётся в ModuleConfig deckhouse: settings.update.mode (AutoPatch по умолчанию, Auto, Manual) и settings.update.windows (from, to в UTC, days). Модули без своей ModuleUpdatePolicy наследуют эти настройки.

    • Остаться на конкретной версии. Установите её установщиком install:vX.Y.Z и задайте update.mode: Manual. Тогда и патчи ставятся только после подтверждения.
    • Получать патчи, но не минорные версии. Оставьте AutoPatch.
    • Полностью остановить обновления. Удалите releaseChannel из ModuleConfig deckhouse; учтите, что перестанут приходить и патчи безопасности.
  3. Отставание на несколько минорных. Deckhouse Platform нельзя обновлять, пропуская минорные версии: он идёт последовательно, на последний патч каждой. На критичных NodeGroup поставьте disruptions.approvalMode: Manual, чтобы узлы с drain и перезагрузкой обновлялись под вашим контролем. Версию Kubernetes (kubernetesVersion в ClusterConfiguration, d8 system edit cluster-configuration) поднимайте отдельным шагом, она тоже обновляется поэтапно.

Подробнее в документации: режимы обновления, окна обновлений, закрепление релиза.

Если релиз не применяется вообще, смотрите вопрос «Обновление Deckhouse не применяется».