Применение конфигураций Flux версии 1 в большом масштабе с помощью Политика Azure

Вы можете использовать Политика Azure для применения конфигураций Flux версии 1 (Microsoft.KubernetesConfiguration/sourceControlConfigurationsтип ресурса) в большом масштабе в кластерах Kubernetes с поддержкой Azure Arc (Microsoft.Kubernetes/connectedclusters).

Примечание

Эта статья предназначена для GitOps с Flux версии 1. GitOps с Flux версии 2 теперь доступен для кластеров Kubernetes с поддержкой Azure Arc и Служба Azure Kubernetes (AKS); Перейдите в статью об использовании политики с Flux версии 2. В конечном итоге Azure прекратит поддержку GitOps с Flux версии 1, поэтому как можно скорее начать использовать Flux версии 2.

Чтобы использовать Политику Azure, нужно выбрать встроенную политику GitOps и создать назначение политики. При создании назначения политики:

  1. Задайте область для назначения.
    • В качестве области будут выступать все группы ресурсов в подписке, группа управления или конкретные группы ресурсов.
  2. Задайте параметры для конфигурации GitOps, которая будет создана.

После создания назначения подсистема Политика Azure определяет все кластеры Kubernetes с поддержкой Azure Arc, расположенные в области, и применяет конфигурацию GitOps к каждому кластеру.

Чтобы разрешить разделение областей ответственности, можно создать несколько назначений политик с разными конфигурациями GitOps, указывающие на разные репозиторий Git. Например, один репозиторий может использоваться администраторами кластера, а другие — группами приложений.

Совет

Существуют встроенные определения политик для этих сценариев:

  • Общедоступный или частный репозиторий с ключами SSH, созданными Flux: Configure Kubernetes clusters with specified GitOps configuration using no secrets
  • Частный репозиторий с ключами SSH, предоставленными пользователями: Configure Kubernetes clusters with specified GitOps configuration using SSH secrets
  • Частный репозиторий с ключами HTTPS, предоставленными пользователями: Configure Kubernetes clusters with specified GitOps configuration using HTTPS secrets

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

Проверьте, что у вас есть разрешения Microsoft.Authorization/policyAssignments/write для области (подписки или группы ресурсов), в которой вы хотите создать назначение политики.

Создание назначения политики

  1. На портале Azure перейдите к разделу Политика.
  2. В разделе Разработка на боковой панели выберите Определения.
  3. В категории "Kubernetes" выберите встроенное определение политики "Настроить кластеры Kubernetes с использованием указанной конфигурацией GitOps без секретов".
  4. Выберите Назначить.
  5. Задайте в качестве области группу управления, подписку или группу ресурсов, к которой будет применяться назначение политики.
    • Если требуется исключить какие-либо ресурсы из области назначения политики, задайте исключения.
  6. Присвойте назначению политики легко узнаваемое имя и описание.
  7. Для параметра Применение политик должно быть обязательно задано значение Включено.
  8. Выберите Далее.
  9. Задайте значения параметров, которые будут использоваться при создании sourceControlConfigurations ресурса.
  10. Выберите Далее.
  11. Включите параметр Создание задачи исправления.
  12. Проверьте, что установлен флажок Создать управляемое удостоверение и что удостоверение будет иметь разрешения участника.
  13. Выберите Review + create (Просмотреть и создать).

После создания назначения политики конфигурация применяется к новым кластерам Kubernetes с поддержкой Azure Arc, созданным в области назначения политики.

Для существующих кластеров необходимо вручную запустить задачу исправления. Как правило, назначение политики вступает в силу в течение 10–20 минут.

Проверка назначения политики

  1. В портал Azure перейдите к одному из кластеров Kubernetes с поддержкой Azure Arc.
  2. В разделе Параметры на боковой панели выберите Политики.
    • В списке должно отобразиться созданное ранее назначение политики, где для состояния соответствия установлено значение Совместимое.
  3. В разделе Параметры на боковой панели выберите GitOps.
    • В списке конфигураций находится конфигурация, созданную назначением политики.
  4. В разделе ресурсов Kubernetes боковой панели выберите пространства имен и рабочие нагрузки.
    • Вы увидите пространство имен и артефакты, созданные конфигурацией Flux.
    • Вы должны увидеть объекты, описанные манифестами в репозитории Git, развернутом в кластере.

Дальнейшие действия

Настройте Azure Monitor для контейнеров с кластерами Kubernetes с поддержкой Azure Arc.