• Русский
  • Создание GitOps Application

    Обзор

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

    Предварительные условия

    Создание Argo CD Application через веб-консоль

    Упростите распределение приложений с помощью визуальных интерфейсов управления.

    Процедура

    1. В Container Platform перейдите в GitOps Applications.

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

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

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

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

      • ApplicationSet: многокластерное развертывание с Differentiated Configuration.

      Примечание: Differentiated Configuration не изменяет базовые файлы в Source Directory.

    2. Sync Policy (интервал reconciliation — 3 минуты).

      ПараметрОписание
      Manually SyncТребует подтверждения пользователя при обнаружении drift.
      Automatic SyncАвтоматическая reconciliation без участия человека.
      Sync Ignore ConfigurationНастройка с использованием встроенных/пользовательских шаблонов ignore; можно просмотреть поля конфигурации игнорирования синхронизации в YAML-файле.
      Примечание: для пользовательских шаблонов требуется настройка администратором.
    3. Нажмите Create.

    INFO

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

    Просмотр полей конфигурации игнорирования синхронизации в YAML-файле

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

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

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

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

    4. Проверьте YAML-файл.

      ignoreDifferences: # The configuration actually ignored by the selected custom synchronization ignore configuration template
        - group: apps
          kind: Deployment
          jsonPointers:
            - /spec/replicas

    Создание Argo CD Application через YAML

    Процедура

    1. В Container Platform перейдите в GitOps Applications.

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

    3. Перейдите на вкладку YAML.

    4. В разделе YAML используйте следующий YAML-файл и укажите соответствующую информацию. Замените namespace и project на свои значения namespace и project.

      apiVersion: argoproj.io/v1alpha1
      kind: Application
      metadata:
        name: guestbook
        namespace: argocd # Replace with your own namespace
      spec:
        project: default # Replace with your own project
        source:
          repoURL: https://github.com/argoproj/argocd-example-apps.git
          targetRevision: master
          path: helm-guestbook
        destination:
          server: https://kubernetes.default.svc
          namespace: guestbook
        syncPolicy:
          automated:
            prune: true
            selfHeal: true
          syncOptions:
            - CreateNamespace=true
    5. Нажмите Create.

    Создание Argo CD Application через CLI

    Предварительные условия

    Плагин web-cli установлен, и переключатель web-cli включен.

    kubectl apply -f application.yaml