Estensioni dei cluster

I grafici Helm consentono di gestire le applicazioni Kubernetes fornendo i blocchi predefiniti necessari per definire, installare e aggiornare anche le applicazioni Kubernetes più complesse. La funzionalità di estensione del cluster si basa sui componenti di creazione di pacchetti di Helm offrendo un'esperienza guidata da Azure Resource Manager per l'installazione e la gestione del ciclo di vita di diverse funzionalità di Azure oltre al cluster Kubernetes.

Un operatore cluster o un amministratore può usare la funzionalità delle estensioni del cluster per:

  • Installare e gestire le offerte di gestione chiavi, dati e applicazioni nel cluster Kubernetes.
  • Usare Criteri di Azure per automatizzare la distribuzione su larga scala delle estensioni del cluster in tutti i cluster nell'ambiente.
  • Sottoscrivere training di rilascio (ad esempio, anteprima o stabile) per ogni estensione.
  • Configurare l'aggiornamento automatico per le estensioni o bloccare una versione specifica e aggiornare manualmente le versioni.
  • Aggiornare le proprietà o eliminare le istanze dell'estensione.

Per un elenco di tutte le estensioni attualmente supportate, vedere Estensioni disponibili per i cluster Kubernetes abilitati per Azure Arc.

Architettura

Cluster extensions architecture

L'istanza dell'estensione del cluster viene creata come risorsa azure Resource Manager di estensione (Microsoft.KubernetesConfiguration/extensions) sopra la risorsa Kubernetes abilitata per Azure Arc (rappresentata da Microsoft.Kubernetes/connectedClusters) in Azure Resource Manager. Questa rappresentazione in Azure Resource Manager consente di creare criteri che controllano tutte le risorse Kubernetes abilitate per Azure Arc con o senza un'estensione del cluster specifica. Dopo aver determinato quali cluster mancano le estensioni del cluster con i valori delle proprietà desiderate, è possibile correggere queste risorse non conformi usando Criteri di Azure.

L'esecuzione config-agent nel cluster tiene traccia delle risorse di estensione nuove e aggiornate nella risorsa Kubernetes abilitata per Azure Arc. L'agente extensions-manager in esecuzione nel cluster legge il tipo di estensione che deve essere installato ed esegue il pull del grafico Helm associato da Registro Azure Container o registro Contenitori Microsoft e lo installa nel cluster.

config-agent I componenti e extensions-manager in esecuzione nel cluster gestiscono gli aggiornamenti dell'istanza dell'estensione, gli aggiornamenti della versione e l'eliminazione dell'istanza di estensione. Questi agenti usano l'identità gestita assegnata dal sistema del cluster per comunicare in modo sicuro con i servizi di Azure.

Nota

config-agent verifica la presenza di istanze di estensione nuove o aggiornate nel cluster Kubernetes abilitato per Azure Arc. Gli agenti richiedono che la connettività per lo stato desiderato dell'estensione venga trascinata verso il basso nel cluster. Se gli agenti non riescono a connettersi ad Azure, la propagazione dello stato desiderato nel cluster viene ritardata.

Le impostazioni di configurazione protette per un'istanza di estensione vengono archiviate per un massimo di 48 ore nei servizi Kubernetes abilitati per Azure Arc. Di conseguenza, se il cluster rimane disconnesso durante le 48 ore dopo la creazione della risorsa di estensione in Azure, l'estensione passa da Pending uno stato a Failed uno stato. Per evitare questo problema, è consigliabile portare regolarmente online i cluster.

Importante

Attualmente, le estensioni del cluster Kubernetes abilitate per Azure Arc non sono supportate nei cluster basati su ARM64, ad eccezione di Flux (GitOps). Per installare e usare altre estensioni del cluster, il cluster deve avere almeno un nodo del sistema operativo e del tipo di linux/amd64architettura .

Ambito dell'estensione

Ogni tipo di estensione definisce l'ambito in cui operano nel cluster. Le installazioni di estensioni nei cluster Kubernetes abilitati per Arc sono con ambito cluster o con ambito spazio dei nomi.

Un'estensione con ambito cluster verrà installata nell'oggetto specificato durante la creazione dell'estensione release-namespace . In genere, solo un'istanza dell'estensione con ambito cluster e i relativi componenti, ad esempio pod, operatori e definizioni di risorse personalizzate ,vengono installate nello spazio dei nomi delle versioni nel cluster.

Un'estensione con ambito spazio dei nomi può essere installata in uno spazio dei nomi specificato usando la –namespace proprietà . Poiché l'estensione può essere distribuita in un ambito dello spazio dei nomi, più istanze dell'estensione con ambito spazio dei nomi e i relativi componenti possono essere eseguiti nel cluster. Ogni istanza dell'estensione dispone delle autorizzazioni per lo spazio dei nomi in cui viene distribuito. Tutte le estensioni precedenti sono con ambito cluster, ad eccezione di Griglia di eventi in Kubernetes.

Tutte le estensioni attualmente disponibili sono con ambito cluster, ad eccezione di Azure Gestione API in Azure Arc.

Passaggi successivi