Tillämpa Flux v1-konfigurationer i stor skala med hjälp av Azure Policy

Du kan använda Azure Policy för att tillämpa Flux v1-konfigurationer (Microsoft.KubernetesConfiguration/sourceControlConfigurations resurstyp) i stor skala på Azure Arc-aktiverade Kubernetes-kluster (Microsoft.Kubernetes/connectedclusters).

Viktigt!

Den här artikeln är avsedd för GitOps med Flux v1. GitOps med Flux v2 är nu tillgängligt för Azure Arc-aktiverade Kubernetes- och Azure Kubernetes Service-kluster (AKS). lär dig mer om att använda Azure Policy med Flux v2. Vi rekommenderar att du migrerar till Flux v2 så snart som möjligt.

Stöd för Flux v1-baserade klusterkonfigurationsresurser som skapats före den 1 januari 2024 upphör den 24 maj 2025. Från och med den 1 januari 2024 kan du inte skapa nya Flux v1-baserade klusterkonfigurationsresurser.

Om du vill använda Azure Policy väljer du en inbyggd GitOps-principdefinition och skapar en principtilldelning. När du skapar principtilldelningen:

  1. Ange tilldelningens omfång.
    • Omfånget är alla resursgrupper i en prenumeration eller hanteringsgrupp eller specifika resursgrupper.
  2. Ange parametrarna för GitOps-konfigurationen som ska skapas.

När tilldelningen har skapats identifierar Azure Policy-motorn alla Azure Arc-aktiverade Kubernetes-kluster som finns inom omfånget och tillämpar GitOps-konfigurationen på varje kluster.

För att möjliggöra separation av problem kan du skapa flera principtilldelningar, var och en med en annan GitOps-konfiguration som pekar på en annan Git-lagringsplats. En lagringsplats kan till exempel användas av klusteradministratörer och andra lagringsplatser kan användas av programteam.

Dricks

Det finns inbyggda principdefinitioner för dessa scenarier:

  • Offentlig lagringsplats eller privat lagringsplats med SSH-nycklar som skapats av Flux: Configure Kubernetes clusters with specified GitOps configuration using no secrets
  • Privat lagringsplats med användardefinierade SSH-nycklar: Configure Kubernetes clusters with specified GitOps configuration using SSH secrets
  • Privat lagringsplats med HTTPS-nycklar som tillhandahålls av användaren: Configure Kubernetes clusters with specified GitOps configuration using HTTPS secrets

Förutsättningar

Kontrollera att du har Microsoft.Authorization/policyAssignments/write behörigheter för omfånget (prenumeration eller resursgrupp) där du ska skapa den här principtilldelningen.

Skapa en principtilldelning

  1. I Azure-portalen går du till Princip.
  2. I avsnittet Redigering i sidofältet väljer du Definitioner.
  3. I kategorin "Kubernetes" väljer du den inbyggda principdefinitionen "Konfigurera Kubernetes-kluster med angiven GitOps-konfiguration utan hemligheter".
  4. Välj Tilldela.
  5. Ange omfånget till den hanteringsgrupp, prenumeration eller resursgrupp som principtilldelningen ska gälla för.
    • Om du vill exkludera resurser från principtilldelningsomfånget anger du Undantag.
  6. Ge principtilldelningen ett lätt identifierbart namn och en beskrivning.
  7. Se till att Principtillämpning är inställt på Aktiverad.
  8. Välj Nästa.
  9. Ange vilka parametervärden som ska användas när du skapar resursen sourceControlConfigurations .
  10. Välj Nästa.
  11. Aktivera Skapa en reparationsaktivitet.
  12. Kontrollera att Skapa en hanterad identitet är markerat och att identiteten har deltagarbehörighet .
    • Mer information finns i snabbstarten Skapa en principtilldelning och artikeln Åtgärda icke-kompatibla resurser med Azure Policy.
  13. Välj Granska + skapa.

När du har skapat principtilldelningen tillämpas konfigurationen på nya Azure Arc-aktiverade Kubernetes-kluster som skapats inom omfånget för principtilldelning.

För befintliga kluster kan du behöva köra en reparationsuppgift manuellt. Den här uppgiften tar vanligtvis 10 till 20 minuter innan principtilldelningen börjar gälla.

Verifiera en principtilldelning

  1. I Azure-portalen går du till ett av dina Azure Arc-aktiverade Kubernetes-kluster.
  2. I avsnittet Inställningar i sidofältet väljer du Principer.
    • I listan bör du se den principtilldelning som du skapade tidigare med efterlevnadstillståndet inställt som Kompatibel.
  3. I avsnittet Inställningar i sidofältet väljer du GitOps.
    • I konfigurationslistan bör du se konfigurationen som skapats av principtilldelningen.
  4. I avsnittet Kubernetes-resurser i sidofältet väljer du Namnområden och arbetsbelastningar.
    • Du bör se namnrymden och artefakterna som skapades av Flux-konfigurationen.
    • Du bör se de objekt som beskrivs av manifesten i Git-lagringsplatsen som distribueras i klustret.

Nästa steg

Konfigurera Azure Monitor for Containers med Azure Arc-aktiverade Kubernetes-kluster.