• Русский
  • Обновление оператора Alauda DevOps Pipelines

    В этом документе приведены инструкции по обновлению оператора Alauda DevOps Pipelines до новой версии с использованием интерфейса Marketplace/OperatorHub в вашем кластере. Процесс обновления разработан таким образом, чтобы быть простым и при этом минимально влиять на существующие ресурсы Tekton.

    Обзор обновления

    Обновление оператора Alauda DevOps Pipelines позволяет получить доступ к новым функциям, исправлениям ошибок и улучшениям в экосистеме Tekton. Оператор Alauda DevOps Pipelines управляет обновлением всех компонентов Tekton (Pipelines, Triggers, Hub и др.) в соответствии с вашей конфигурацией.

    Перед началом

    Перед обновлением оператора Alauda DevOps Pipelines убедитесь, что:

    • У вас есть административный доступ к вашему кластеру
    • Вы ознакомились с примечаниями к выпуску новой версии, чтобы понять возможные несовместимости
    • Проверили, что текущие конфигурации компонентов Tekton совместимы с новой версией
    • Все компоненты Tekton находятся в состоянии готовности
    • Загрузили новую версию оператора, обратитесь к руководству по установке для инструкций по загрузке оператора.

    Сначала подтвердите целевой канал

    Перед подтверждением обновления убедитесь, какой канал использует ваша Subscription:

    • stable (по умолчанию): Отслеживает только LTS-релизы, рекомендуется для продакшена.
    • latest: Отслеживает все релизы, включая не-LTS.
    • pipelines-4.10: Отслеживает только патч-обновления в линии LTS v4.10.
    WARNING

    Если вы сейчас используете не-LTS версию из канала latest, переключение на stable не приведёт к даунгрейду. Вы можете остаться на текущей версии без запроса на обновление, пока не выйдет новая LTS-версия.

    Процесс обновления

    Использование Marketplace/OperatorHub

    1. Доступ к Marketplace/OperatorHub

      • Войдите в консоль управления вашим кластером
      • Перейдите в раздел Marketplace или OperatorHub
    2. Найдите оператор Alauda DevOps Pipelines

      • Введите Alauda DevOps Pipelines в строку поиска
      • Нажмите на карточку оператора Alauda DevOps Pipelines
    3. Просмотр доступных версий

      • На странице с деталями оператора вы увидите информацию о текущей установленной версии
      • Интерфейс покажет, если доступна более новая версия
      • Вы можете переключаться между разными Channels, чтобы просмотреть все доступные версии
    4. Запуск обновления

      • Если целевая версия находится в другом Channel, сначала переключитесь на соответствующий канал в Subscription
      • Если в текущем Channel доступна новая версия, появится запрос:
        • Обнаружена новая версия
          • Чтобы обновить только текущий оператор, нажмите Confirm для начала обновления.
    5. Настройка параметров обновления (если применимо)

      • Некоторые обновления могут предложить параметры конфигурации
      • В большинстве случаев настройки по умолчанию сохранят вашу текущую конфигурацию
    6. Подтверждение и запуск обновления

      • Нажмите Confirm для начала процесса
      • Ознакомьтесь с деталями обновления и подтвердите выбор
      • Система обновит оператор Alauda DevOps Pipelines, сохраняя ваши кастомные ресурсы
    7. Мониторинг обновления

      • Прогресс обновления будет отображаться в интерфейсе OperatorHub
      • Также можно проверить статус в пространстве имён tekton-operator:
        $ kubectl get pods -n tekton-operator
        Когда все поды будут в состоянии Running, обновление оператора завершено. После этого оператор автоматически обновит компоненты, такие как Pipelines, Triggers, Hub, Chains и др.
      • Проверьте статус обновления компонентов:
        $ kubectl get tektoninstallerset -A
        $ kubectl get pods -n tekton-pipelines
        Когда все компоненты и поды будут в состоянии Ready, обновление компонентов завершено.
    8. Проверка обновления

      • Убедитесь, что версия оператора Alauda DevOps Pipelines обновилась:
        $ kubectl get csv -n tekton-operator
        
        NAME                        DISPLAY                   VERSION   REPLACES   PHASE
        tektoncd-operator.v4.x.x    Alauda DevOps Pipelines   4.x.x     x          Succeeded
        Когда VERSION совпадает с новой версией, обновление завершено.
      • Проверьте корректную работу компонентов Tekton
        • Убедитесь, что ваши pipelines успешно выполняются

    Использование CLI kubectl

    Вы также можете обновить оператор Alauda DevOps Pipelines через командную строку. Этот способ удобен для автоматизации или если вы предпочитаете работу через CLI.

    1. Проверьте текущую подписку

      • Сначала определите текущую подписку и её канал:
        $ kubectl get subscriptions.operators.coreos.com -A | grep tektoncd-operator
        
        NAMESPACE               NAME                    PACKAGE                 SOURCE     CHANNEL
        tekton-operator         tektoncd-operator       tektoncd-operator       platform   stable
    2. Переключитесь на целевой канал

      • Если нужно обновиться до версии из другого канала, примените патч к подписке:
        $ kubectl patch subscriptions.operators.coreos.com tektoncd-operator --type merge -p '{"spec":{"channel": "<target-channel>"}}' -n tekton-operator
        Замените <target-channel> на нужный канал (например, stable, latest, pipelines-4.10).
    3. Ожидайте состояние UpgradePending

      • Следите за статусом подписки, пока не появится UpgradePending:
        $ kubectl get subscriptions.operators.coreos.com tektoncd-operator -n tekton-operator -o yaml
        
        status:
          installplan:
            apiVersion: operators.coreos.com/v1alpha1
            kind: InstallPlan
            name: install-abc123
          state: UpgradePending
        В выводе ищите state: UpgradePending.
    4. Подтвердите InstallPlan

      • Когда подписка в состоянии UpgradePending, найдите соответствующий InstallPlan:

        $ kubectl get installplan -n tekton-operator
        
        NAME            CSV                        APPROVAL   APPROVED
        install-abc123  tektoncd-operator.v4.x.x  Manual     false
      • Подтвердите InstallPlan, установив поле approved в true:

        $ kubectl patch installplans.operators.coreos.com <installplan-name> --type merge -p '{"spec":{"approved":true}}' -n tekton-operator

        Замените <installplan-name> на имя InstallPlan из предыдущего шага.

    5. Мониторинг прогресса обновления

      • Следите за статусом подписки, пока она не станет готовой:

        $ kubectl get subscriptions.operators.coreos.com tektoncd-operator -n tekton-operator -o yaml -w
      • Проверьте статус подов оператора:

        $ kubectl get pods -n tekton-operator

        Дождитесь, пока все поды будут в состоянии Running.

    6. Проверка обновления

      • Подтвердите обновление версии оператора:
        $ kubectl get csv -n tekton-operator
        
        NAME                        DISPLAY                   VERSION   REPLACES   PHASE
        tektoncd-operator.v4.x.x    Alauda DevOps Pipelines   4.x.x     x          Succeeded
    7. Мониторинг обновления компонентов

      • Оператор автоматически обновит компоненты Tekton. Следите за их прогрессом:
        $ kubectl get tektoninstallerset -A
        $ kubectl get pods -n tekton-pipelines
        Убедитесь, что все компоненты и поды достигли состояния Ready.
    NOTE

    Процесс обновления через CLI использует тот же механизм, что и через GUI. Главное отличие — вы вручную управляете переключением каналов и подтверждением InstallPlan.

    Действия после обновления

    После успешного завершения обновления:

    1. Проверьте статус компонентов

      • Убедитесь, что все компоненты Tekton обновлены:
        kubectl get tektonconfig,tektonpipeline,tektontrigger -A
        kubectl get tektoninstallerset -A
    2. Проверьте функциональность

      • Запустите простой pipeline, чтобы убедиться, что система работает корректно
      • Убедитесь, что все существующие интеграции продолжают функционировать
    3. Обновите кастомные ресурсы при необходимости

      • Если новая версия вносит изменения в CRD, возможно, потребуется обновить ваши кастомные ресурсы
      • Обратитесь к примечаниям к выпуску для конкретных шагов миграции

    Процедура отката

    Если возникли проблемы с новой версией, вы можете откатиться к предыдущей версии:

    1. Вернитесь в интерфейс Marketplace/OperatorHub
    2. Выберите оператор Alauda DevOps Pipelines
    3. Выполните Uninstall текущей версии
    4. Выберите предыдущую версию из списка версий
    5. Следуйте процессу установки для выбранной версии
    NOTE

    Даунгрейд может потребовать дополнительных действий для обеспечения совместимости ваших ресурсов со старой версией.

    Это зависит от различий между версией, с которой вы обновлялись, и версией, на которую откатываетесь. При значительных различиях может потребоваться ручная миграция ресурсов.

    Устранение неполадок

    Если возникли проблемы во время или после обновления:

    • Проверьте логи подов оператора Alauda DevOps Pipelines:

      $ kubectl logs -l name=tekton-operator -n tekton-operator
    • Проверьте статус ваших ресурсов Tekton:

      $ kubectl get tektonconfig config -o yaml
    • Убедитесь, что все компоненты имеют ожидаемый статус:

      $ kubectl get tektoninstallerset

    Следующие шаги

    После успешного обновления оператора Alauda DevOps Pipelines:

    • Ознакомьтесь с новыми функциями, представленными в последней версии
    • Обновите ваши CI/CD pipelines для использования новых возможностей
    • Рассмотрите возможность включения дополнительных компонентов, доступных в новой версии