Condividi tramite


Distribuire le applicazioni in modo coerente su larga scala usando configurazioni di Flux v2 e Criteri di Azure

È possibile usare Criteri di Azure per applicare configurazioni di Flux v2 (Microsoft.KubernetesConfiguration/fluxConfigurationstipo di risorsa) su larga scala nei cluster Kubernetes abilitati per Azure Arc (Microsoft.Kubernetes/connectedClusters) o servizio Azure Kubernetes (Microsoft.ContainerService/managedClusters). Per usare Criteri di Azure, selezionare una definizione di criteri predefinita e creare un'assegnazione di criteri.

Prima di assegnare i criteri che creano configurazioni Flux, è necessario assicurarsi che l'estensione Flux venga distribuita nei cluster. A tale scopo, è possibile assegnare un criterio che distribuisce l'estensione a tutti i cluster nell'ambito selezionato (tutti i gruppi di risorse in una sottoscrizione o un gruppo di gestione o a gruppi di risorse specifici). Quindi, quando si crea l'assegnazione di criteri per distribuire le configurazioni, si impostano i parametri per la configurazione di Flux da applicare ai cluster in tale ambito.

Per abilitare la separazione delle problematiche, è possibile creare più assegnazioni di criteri, ognuna con una configurazione Flux v2 diversa che punta a un'origine diversa. Ad esempio, un repository Git può essere usato dagli amministratori del cluster, mentre altri repository possono essere usati dai team dell'applicazione.

Definizioni di criteri predefiniti

Le definizioni di criteri predefinite seguenti forniscono supporto per questi scenari:

Descrizione Criteri
Installazione dell'estensione Flux (necessaria per tutti gli scenari) Configure installation of Flux extension on Kubernetes cluster
Configurazione di Flux con repository Git pubblico (in genere uno scenario di test) Configure Kubernetes clusters with Flux v2 configuration using public Git repository
Configurazione di Flux con repository Git privato con autenticazione SSH Configure Kubernetes clusters with Flux v2 configuration using Git repository and SSH secrets
Configurazione di Flux tramite repository Git privato con l'autenticazione HTTPS Configure Kubernetes clusters with Flux v2 configuration using Git repository and HTTPS secrets
Configurazione di Flux con repository Git privato con l'autenticazione del certificato CA HTTPS Configure Kubernetes clusters with Flux v2 configuration using Git repository and HTTPS CA Certificate
Configurazione di Flux con repository Git privato con segreto K8s locale Configure Kubernetes clusters with Flux v2 configuration using Git repository and local secrets
Configurazione di Flux con l'origine bucket privata e i segreti di KeyVault Configure Kubernetes clusters with Flux v2 configuration using Bucket source and secrets in KeyVault
Configurazione di Flux usando l'origine bucket privata e il segreto K8s locale Configure Kubernetes clusters with specified Flux v2 Bucket source using local secrets

Per trovare tutte le definizioni dei criteri Flux v2, cercare flusso. Per altre informazioni, vedere Definizioni predefinite di Criteri di Azure per Kubernetes con abilitazione di Azure Arc.

Prerequisiti

  • Uno o più cluster Kubernetes abilitati per Arc e/o cluster del servizio Azure Kubernetes.
  • Microsoft.Authorization/policyAssignments/write autorizzazioni per l'ambito (sottoscrizione o gruppo di risorse) per creare le assegnazioni di criteri.

Creare un'assegnazione di criteri per installare l'estensione Flux

Affinché un criterio applichi le configurazioni di Flux v2 a un cluster, l'estensione Flux deve prima essere installata nel cluster. Per assicurarsi che l'estensione sia installata in ognuno dei cluster, assegnare la definizione dei criteri di configurazione dell'estensione Flux nel cluster Kubernetes all'ambito desiderato.

  1. Nel portale di Azure passare a Criteri.
  2. Nella sezione Creazione della barra laterale selezionare Definizioni.
  3. Trovare la definizione dei criteri predefinita Configura installazione dell'estensione Flux nel cluster Kubernetes e selezionarla.
  4. Seleziona Assegna criterio.
  5. Impostare l'Ambito sul gruppo di gestione, sulla sottoscrizione o sul gruppo di risorse in cui si applicherà l'assegnazione dei criteri.
    • Se si desidera escludere qualsiasi risorsa dall'ambito di assegnazione dei criteri, impostare Esclusioni.
  6. Dare all'assegnazione dei criteri un nome di assegnazione e una Descrizione facilmente identificabili.
  7. Verificare che l'Applicazione dei criteri sia impostata su Abilitata.
  8. Selezionare Rivedi e crea e quindi Crea.

Creare un'assegnazione di criteri per applicare configurazioni Flux

Tornare quindi all'elenco Definizioni (nella sezione Creazione di Policy) per applicare la definizione dei criteri di configurazione allo stesso ambito.

  1. Trovare e selezionare la definizione di criteri predefinita Configura cluster Kubernetes con Flux v2 usando la definizione di criteri predefinita del repository Git pubblico o una delle altre definizioni di criteri per applicare configurazioni Flux.

  2. Seleziona Assegna criterio.

  3. Impostare l'Ambito sullo stesso ambito selezionato durante l'assegnazione del primo criterio, incluse eventuali esclusioni.

  4. Dare all'assegnazione dei criteri un nome di assegnazione e una Descrizione facilmente identificabili.

  5. Verificare che l'Applicazione dei criteri sia impostata su Abilitata.

  6. Selezionare Avanti per aprire la scheda Parametri .

  7. Impostare i valori dei parametri da usare, usando i nomi dei parametri della definizione dei criteri.

    • Per altre informazioni sui parametri, vedere Parametri supportati da GitOps (Flux v2).
    • Quando si creano configurazioni Flux tramite criteri, è necessario specificare un valore per uno (e solo uno) di questi parametri: repositoryRefBranch, repositoryRefTag, repositoryRefSemver, . repositoryRefCommit
  8. Selezionare Avanti per aprire l'attività Correzione.

  9. Abilitare Crea un'attività di correzione.

  10. Verificare che l'opzione Crea un'identità gestita sia selezionata e che collaboratore sia elencato nella sezione Autorizzazioni . Per altre informazioni, vedere Avvio rapido: Creare un'assegnazione di criteri per identificare le risorse non conformi e Correggere le risorse non conformi con Criteri di Azure.

  11. Selezionare Rivedi e crea e quindi Crea.

La configurazione viene quindi applicata ai nuovi cluster creati nell'ambito dell'assegnazione dei criteri.

Per i cluster esistenti, potrebbe essere necessario eseguire manualmente un'attività di correzione. Questa attività richiede in genere da 10 a 20 minuti per rendere effettiva l'assegnazione dei criteri.

Verificare l'assegnazione dei criteri

  1. Nella portale di Azure passare a un cluster Kubernetes o servizio Azure Kubernetes abilitato per Azure Arc che rientra nell'ambito dell'assegnazione dei criteri.
  2. Nel menu del servizio, in Impostazioni, selezionare GitOps. Nell'elenco Configurazioni dovrebbe essere visualizzata la configurazione creata dall'assegnazione dei criteri.
  3. Nel menu del servizio, in Risorse Kubernetes, selezionare Spazi dei nomi. Verrà visualizzato lo spazio dei nomi creato dalla configurazione di Flux.

Personalizzare un criterio

I criteri predefiniti riguardano gli scenari principali per l'uso di GitOps con Flux v2 nei cluster Kubernetes. Tuttavia, a causa del limite di 20 parametri consentiti nelle assegnazioni Criteri di Azure, non tutti i parametri sono inclusi nei criteri predefiniti. Inoltre, per rientrare in questo limite di 20 parametri, è possibile creare solo una singola kustomization con i criteri predefiniti.

Se si ha uno scenario diverso dai criteri predefiniti, è possibile superare queste limitazioni creando criteri personalizzati usando i criteri predefiniti come modelli. Per aggirare il limite di 20 parametri, creare criteri personalizzati che contengano solo i parametri necessari e impostare come hardcoded il resto.

Passaggi successivi