• Русский
  • Creating GitOps ApplicationSet

    Overview

    Используйте возможности управления приложениями Alauda Container Platform GitOps для визуального создания Argo CD ApplicationSet, обеспечивающего комплексное управление жизненным циклом контейнеризованных приложений через GitOps Applications.

    Prerequisites

    • Установка Alauda Container Platform GitOps:

    • Интеграция Git-репозитория (выберите один из способов):

    Key Benefits

    • Визуальное распределение GitOps приложений: сочетает управление мультикластером, дифференцированные конфигурации и визуальные операции, согласованные с платформой, для упрощения развертываний в мультиоблаках/мультиокружениях.

    Creating GitOps Application

    Оптимизируйте распределение приложений через визуальные интерфейсы управления.

    Procedure

    1. Перейдите в Container Platform, затем в раздел GitOps Applications.

    2. Нажмите Create GitOps Application.

    3. Настройте параметры в разделах Basic Info и Code Repository:

    ParameterDescription
    TypeApplication: объект Argo CD Application для развертывания в одном namespace
    ApplicationSet: Argo CD ApplicationSet для развертываний по нескольким кластерам/namespace с дифференцированными конфигурациями
    SourcePlatform integrated: преднастроенные репозитории GitLab/GitHub/Bitbucket
    ArgoCD integrated: репозитории GitLab/GitHub/Bitbucket/Gitee/Gitea, интегрированные через Argo CD. См. Integrating Code Repositories via Argo CD dashboard
    Integration Project NameПроект Toolchain, назначенный администратором
    Version IdentifiersОснова развертывания: Branch/Tag/Commit
    Примечание:
    • Branch использует последний коммит
    • Tag/Commit по умолчанию последний, но настраивается
    Source File TypeKustomize: использует kustomization.yaml для overlay-конфигураций; подробности в Kustomize Official Documentation
    Helm: использует values.yaml для шаблонов; подробности в Helm Official Documentation
    Directory: сырые манифесты
    Source DirectoryПуть в репозитории с базовыми манифестами. Поддерживается выбор корневой директории. Все ресурсы в этом пути будут развернуты в целевых кластерах
    Custom ValuesЕсли Source File TypeHelm, можно выбрать пользовательский файл Helm Values
    1. Настройте параметры в разделе Destination:

      • Application: дифференцированные конфигурации не изменяют базовые файлы в исходной директории.

      • ApplicationSet: мультикластерное развертывание с Дифференцированной Конфигурацией.

      Примечание: Дифференцированная Конфигурация не изменяет базовые файлы в Source Directory.

    2. Sync Policy (интервал согласования 3 минуты).

      ParameterDescription
      Manually SyncТребуется подтверждение пользователя при обнаружении расхождений
      Automatic SyncАвтоматическое согласование без вмешательства человека
      Sync Ignore ConfigurationНастройка с использованием встроенных/пользовательских шаблонов игнорирования, можно View Sync Ignore Configuration Fields in YAML File
      Примечание: пользовательские шаблоны требуют настройки администратором
    3. Нажмите Create.

    INFO

    Примечание по ручной синхронизации: выберите Synchronize Immediately для немедленного развертывания или Synchronize Later для запуска вручную через страницу деталей.

    View Sync Ignore Configuration Fields in YAML File

    После настройки правил игнорирования синхронизации проверьте следующим образом:

    1. Перейдите в GitOps Application.

    2. Выберите целевое приложение.

    3. Нажмите Action > Update.

    4. Просмотрите YAML-файл.

      ignoreDifferences: # Конфигурация, фактически игнорируемая выбранным шаблоном пользовательской синхронизации игнорирования
        - group: apps
          kind: Deployment
          jsonPointers:
            - /spec/replicas

    Managing GitOps Applications

    ActionDescription
    UpdateЗапуск обновлений через:
    • Иконку редактирования (✎) в списке GitOps Application
    • Action > Update в подробном просмотре.
    • ВНИМАНИЕ: эта операция перезапишет все созданные экземпляры приложения
    Manually SyncПри Sync Policy = Manually Sync :
    • Запуск синхронизации через Action > Sync в подробном просмотре при обнаружении расхождений конфигурации
    • Распространяет последние коммиты на все управляемые экземпляры
    DeleteУдаление через:
    • Иконку удаления (🗑) на странице списка
    • Action > Delete в подробном просмотре
    • ОПАСНО: удаляет приложение и ВСЕ дочерние ресурсы
    Automatic SyncВключение автоматического согласования для поддержания желаемого состояния. Все экземпляры автоматически синхронизируются с изменениями в репозитории каждые 3 минуты
    SourceДля приложений типа ApplicationSet:
    • Нажмите ссылку Source для перехода на страницу деталей родительского Application.
    Application DistributionРасширение:
    1. Обновите существующую конфигурацию ApplicationSet
    2. В деталях ApplicationSet: Applications > Add Distribution