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

    Обзор

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

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

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

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

    Создание 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. См. 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 минуты).

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

    INFO

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

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

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

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

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

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

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

      ignoreDifferences: # Конфигурация, фактически игнорируемая выбранным шаблоном пользовательской конфигурации игнорирования синхронизации
        - 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 и проект.

      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