Använda GitOps för att konfigurera Azure Arc-aktiverade Kubernetes-kluster

Slutförd

En viktig fördel med Azure Arc är att underlätta implementeringen av DevOps-principer, som tillämpar etablerade utvecklingsmetoder för åtgärder. DevOps ökar flexibiliteten utan att äventyra stabiliteten i IT-miljön.

Azure Arc-aktiverade Kubernetes stöder GitOps, en DevOps-metod som effektiviserar programversioner genom att minska den manuella distributionen.

I den här lektionen lär du dig mer om GitOps och hur du konfigurerar det för Azure Arc-aktiverade Kubernetes-kluster.

GitOps för Arc-aktiverade Kubernetes

GitOps gör det enklare att standardisera Kubernetes-konfigurationer i hela organisationen, inklusive Arc-aktiverade Kubernetes. En lagringsplats eller annan filkälla är värd för konfigurationsfiler som representerar det förväntade tillståndet för en resurs. En baslinjekonfiguration kan till exempel innehålla delegeringsmodellen, övervaknings- och loggningsinställningar och egenskaper för klusteromfattande tjänster.

En agent som körs i Kubernetes-klustret övervakar lagringsplatsens tillstånd. När det sker en konfigurationsändring hämtar agenten de uppdaterade filerna till klustret och tillämpar den nya konfigurationen, vilket säkerställer att klustret förblir i önskat tillstånd.

Azure Arc-aktiverade Kubernetes-kluster förlitar sig på Flux, en populär GitOps-distributionsoperator med öppen källkod som automatiserar konfigurationsdistributioner till klustret. Flux har stöd för vanliga filkällor som Git-lagringsplatser, Helm-lagringsplatser och Buckets, och stöder konfigurationsmallstyperna YAML, Helm och Kustomize.

Följande diagram visar ett GitOps-flöde som använder Flux för att distribuera klusterkonfigurationer och programuppdateringar.

Diagram of the GitOps flow showing an application update.

Konfigurera GitOps

GitOps associerar ditt Arc-aktiverade Kubernetes-kluster med en eller flera filkällor, till exempel en Git-lagringsplats. Varje lagringsplats kan innehålla konfigurationer av alla giltiga Kubernetes-resurser, till exempel namnområden eller distributioner i form av manifestfiler.

Följande diagram visar processen med att tillämpa GitOps-baserade konfigurationer på flera Azure Arc-aktiverade kluster.

Diagram showing the process of applying GitOps-based configuration to multiple Azure Arc-enabled clusters.

GitOps är aktiverat i ett Kubernetes-kluster som en Microsoft.KubernetesConfiguration/extensions/microsoft.flux klustertilläggsresurs. Om du vill skapa fluxConfigurationsmicrosoft.flux måste tillägget installeras i klustret. Tillägget installeras automatiskt när du skapar den första Microsoft.KubernetesConfiguration/fluxConfigurations instansen i ett kluster. Du kan också installera tillägget manuellt innan du skapar dina konfigurationer.

Varje association mellan en Azure Arc-aktiverad Kubernetes-klusterkonfiguration och dess motsvarande GitOps-lagringsplats finns i Azure som en del av Azure Arc-aktiverade Kubernetes-klustrets Azure-resurs. Du kan konfigurera associationen med hjälp av Azure-hanteringsgränssnitt som Azure-portalen eller Azure CLI.

Använd följande övergripande steg för att implementera GitOps med ett Azure Arc-aktiverat Kubernetes-kluster.

  1. k8s-configuration Använd Azure CLI-tillägget för att tillämpa en Flux-konfiguration och aktivera GitOps i ditt Arc-aktiverade Kubernetes-kluster.
  2. Verifiera konfigurationen för att bekräfta att den har skapats. Konfigurationsresursen uppdateras med efterlevnadsstatus, meddelanden och felsökningsinformation.

När du har tillämpat konfigurationen kan du använda Azure-portalen för att visa efterlevnadsinformation. Du kan också använda Azure-portalen för att skapa, uppdatera och ta bort GitOps-konfigurationer.

Använda Azure Policy för att automatisera konfigurationen

Du kan använda Azure Policy för att automatisera konfigurationsprocessen, så att du kan tillämpa den konsekvent i stor skala. Innan du tilldelar en princip för att konfigurera klustren måste du se till att Flux-tillägget skapas i klustren. Du kan göra detta genom att först tilldela definitionen Konfigurera installation av Flux-tillägget på Kubernetes-klusterprincipen , vilket säkerställer att tillägget är installerat.

Att skapa Azure Policy-tilldelningen i Azure-portalen består av följande övergripande steg:

  1. I Azure-portalen visar du alla principdefinitioner genom att söka efter och välja Princip och sedan välja Definitioner på den vänstra menyn på sidan Princip .
  2. Sök efter Konfigurera Kubernetes-kluster med angiven GitOps-konfiguration och välj en av de inbyggda principdefinitionerna.
  3. Välj Tilldela och skapa en principtilldelning genom att ange inställningarna för omfång, parametrar och reparation.
  4. Välj Granska + skapa och välj sedan Skapa.

Principtilldelningen aktiverar automatiskt GitOps för varje Azure Arc-aktiverat Kubernetes-kluster som skapas i tilldelningens omfång. Du måste köra reparationsåtgärden manuellt för befintliga kluster.

Du får lära dig mer om Azure Policy i nästa lektion.