Последовательное развертывание приложений с помощью конфигураций Flux версии 2 и Политика Azure
Вы можете использовать Политика Azure для применения конфигураций Flux версии 2 (Microsoft.KubernetesConfiguration/fluxConfigurations
типа ресурсов) в масштабе кластеров Kubernetes с поддержкой Azure Arc илиMicrosoft.Kubernetes/connectedClusters
AKS (Microsoft.ContainerService/managedClusters
). Чтобы использовать Политика Azure, выберите встроенное определение политики и создадите назначение политики.
Перед назначением политики, которая создает конфигурации Flux, необходимо убедиться, что расширение Flux развертывается в кластерах. Это можно сделать, назначив политику, которая развертывает расширение для всех кластеров в выбранной области (все группы ресурсов в подписке или группе управления или определенные группы ресурсов). Затем при создании назначения политики для развертывания конфигураций необходимо задать параметры конфигурации Flux, которые будут применены к кластерам в этой области.
Чтобы включить разделение проблем, можно создать несколько назначений политик, каждая из которых имеет другую конфигурацию Flux версии 2, указывающую на другой источник. Например, один репозиторий Git можно использовать администраторами кластера, а другие репозитории могут использоваться командами приложений.
Встроенные определения политик
Следующие встроенные определения политик обеспечивают поддержку следующих сценариев:
Description | Политика |
---|---|
Установка расширения Flux (требуется для всех сценариев) | Configure installation of Flux extension on Kubernetes cluster |
Конфигурация Flux с помощью общедоступного репозитория Git (обычно это тестовый сценарий) | Configure Kubernetes clusters with Flux v2 configuration using public Git repository |
Конфигурация Flux с помощью частного репозитория Git с проверкой подлинности SSH | Configure Kubernetes clusters with Flux v2 configuration using Git repository and SSH secrets |
Конфигурация Flux с помощью частного репозитория Git с проверкой подлинности HTTPS | Configure Kubernetes clusters with Flux v2 configuration using Git repository and HTTPS secrets |
Конфигурация Flux с помощью частного репозитория Git с проверкой подлинности сертификата ЦС HTTPS | Configure Kubernetes clusters with Flux v2 configuration using Git repository and HTTPS CA Certificate |
Конфигурация Flux с помощью частного репозитория Git с локальным секретом K8s | Configure Kubernetes clusters with Flux v2 configuration using Git repository and local secrets |
Конфигурация Flux с использованием частного источника контейнера и секретов KeyVault | Configure Kubernetes clusters with Flux v2 configuration using Bucket source and secrets in KeyVault |
Конфигурация Flux с использованием частного источника контейнера и локального секрета K8s | Configure Kubernetes clusters with specified Flux v2 Bucket source using local secrets |
Чтобы найти все определения политики Flux версии 2, найдите flux. Дополнительные сведения см . в встроенных определениях политики Azure для Kubernetes с поддержкой Azure Arc.
Необходимые компоненты
- Один или несколько кластеров Kubernetes с поддержкой Arc и (или) AKS.
Microsoft.Authorization/policyAssignments/write
разрешения на область (подписку или группу ресурсов) для создания назначений политик.
Создание назначения политики для установки расширения Flux
Чтобы политика применяла конфигурации Flux версии 2 к кластеру, необходимо сначала установить расширение Flux в кластере. Чтобы убедиться, что расширение установлено в каждом кластере, назначьте установку расширения Flux в определении политики кластерной политики Kubernetes требуемой области.
- На портале Azure перейдите к разделу Политика.
- В разделе Разработка на боковой панели выберите Определения.
- Найдите установку расширения Flux в кластере Kubernetes, встроенное определение политики, и выберите его.
- Выберите " Назначить политику".
- Задайте в качестве области группу управления, подписку или группу ресурсов, к которой будет применяться назначение политики.
- Если требуется исключить какие-либо ресурсы из области назначения политики, задайте исключения.
- Присвойте назначению политики легко идентифицируемое имя назначения и описание.
- Для параметра Применение политик должно быть обязательно задано значение Включено.
- Выберите Проверить и создать, а затем выберите Создать.
Создание назначения политики для применения конфигураций Flux
Затем вернитесь к списку определений (в разделе "Разработка политики"), чтобы применить определение политики конфигурации к той же области.
Найдите и выберите кластеры Kubernetes с конфигурацией Flux версии 2 с помощью встроенного определения политики общедоступного репозитория Git или одного из других определений политик для применения конфигураций Flux.
Выберите " Назначить политику".
Задайте область для той же области, которую вы выбрали при назначении первой политики, включая все исключения.
Присвойте назначению политики легко идентифицируемое имя назначения и описание.
Для параметра Применение политик должно быть обязательно задано значение Включено.
Нажмите кнопку "Рядом ", чтобы открыть вкладку "Параметры ".
Задайте используемые значения параметров, используя имена параметров из определения политики.
- Дополнительные сведения о параметрах см. в поддерживаемых параметрах GitOps (Flux версии 2).
- При создании конфигураций Flux с помощью политики необходимо указать значение для одного (и только одного) этих параметров:
repositoryRefBranch
,repositoryRefTag
,repositoryRefSemver
.repositoryRefCommit
Нажмите кнопку "Рядом " , чтобы открыть задачу исправления .
Включите параметр Создание задачи исправления.
Убедитесь, что установлен флажок "Создать управляемое удостоверение" , и этот участник указан в разделе "Разрешения ". Дополнительные сведения см. в кратком руководстве по созданию назначения политики для выявления несоответствующих ресурсов и исправления несоответствующих ресурсов с помощью Политика Azure.
Выберите Проверить и создать, а затем выберите Создать.
Затем конфигурация применяется к новым кластерам, созданным в области назначения политики.
Для существующих кластеров может потребоваться вручную запустить задачу исправления. Как правило, назначение политики вступает в силу в течение 10–20 минут.
Проверка назначения политики
- В портал Azure перейдите к кластеру Kubernetes с поддержкой Azure Arc или AKS, который находится в пределах назначения политики.
- В меню службы в разделе "Параметры" выберите GitOps. В списке конфигураций вы увидите конфигурацию, созданную назначением политики.
- В меню службы в разделе ресурсов Kubernetes выберите пространства имен. Вы увидите пространство имен, созданное конфигурацией Flux.
Настройка политики
Встроенные политики охватывают основные сценарии использования GitOps с Flux версии 2 в кластерах Kubernetes. Однако из-за ограничения 20 параметров, разрешенных в Политика Azure назначениях, не все параметры включены в встроенные политики. Кроме того, чтобы соответствовать этому ограничению 20 параметров, можно создать только одну kustomization со встроенными политиками.
Если у вас есть сценарий, который отличается от встроенных политик, вы можете преодолеть эти ограничения, создав настраиваемые политики с помощью встроенных политик в качестве шаблонов. Чтобы обойти ограничение 20 параметров, создайте пользовательские политики, содержащие только необходимые параметры и жесткий код.
Следующие шаги
- Настройте Azure Monitor для контейнеров с помощью кластеров Kubernetes с поддержкой Azure Arc.
- Дополнительные сведения о развертывании приложений с помощью GitOps с Flux версии 2.