Architettura del servizio Azure Kubernetes in locale di Azure versione 23H2
Si applica a: Locale di Azure, versione 23H2
servizio Azure Kubernetes (AKS) in Locale di Azure è una piattaforma di contenitori Kubernetes di livello aziendale. Include Kubernetes di base supportati da Microsoft, un host contenitore Windows appositamente compilato e un host contenitore Linux supportato da Microsoft, con l'obiettivo di avere un'esperienza semplice di distribuzione e gestione del ciclo di vita.
Questo articolo presenta i componenti principali dell'infrastruttura Kubernetes, ad esempio il piano di controllo, i nodi e i pool di nodi. Sono presentate anche risorse del carico di lavoro come pod, distribuzioni e set, nonché la procedura per raggruppare risorse in spazi dei nomi.
Architettura del servizio Azure Kubernetes in Locale di Azure
I cluster del servizio Azure Kubernetes in Azure Locale usano Arc Resource Bridge (noto anche come appliance Arc) per fornire il meccanismo di orchestrazione principale e l'interfaccia per la distribuzione e la gestione di uno o più cluster del servizio Azure Kubernetes. Le applicazioni in contenitori vengono distribuite nei cluster del servizio Azure Kubernetes.
Azure Kubernetes Arc usa una configurazione predefinita per distribuire cluster Kubernetes in modo efficace e con scalabilità. Un'operazione di distribuzione crea più macchine virtuali Linux o Windows e le unisce per creare uno o più cluster Kubernetes.
Nota
Per migliorare l'affidabilità del sistema, se si eseguono più volumi condivisi cluster nel cluster, per impostazione predefinita i dati delle macchine virtuali vengono distribuiti automaticamente in tutti i volumi condivisi cluster disponibili nel cluster. In questo modo le applicazioni sopravvivono in caso di interruzioni csv.
Arc Resource Bridge
Arc Resource Bridge connette un cloud privato (ad esempio, Locale di Azure, VMWare/vSphere o SCVMM) ad Azure e abilita la gestione delle risorse locale da Azure. Azure Arc Resource Bridge offre la linea di vista per i cloud privati necessari per gestire risorse come i cluster Kubernetes in locale tramite Azure. Arc Resource Bridge include i componenti principali del servizio Azure Kubernetes Arc seguenti:
- Estensioni del cluster Azure Kubernetes Arc: un'estensione del cluster è l'equivalente locale di un provider di risorse di Azure Resource Manager. Proprio come il provider di risorse Microsoft.ContainerService gestisce i cluster del servizio Azure Kubernetes in Azure, l'estensione del cluster Arc del servizio Azure Kubernetes, una volta aggiunta al bridge di risorse Arc, consente di gestire i cluster Kubernetes tramite Azure.
- Percorso personalizzato: una posizione personalizzata è l'equivalente locale di un'area di Azure ed è un'estensione del costrutto di posizione di Azure. Le posizioni personalizzate consentono agli amministratori tenant di usare il data center con le estensioni appropriate installate, come percorsi di destinazione per la distribuzione delle istanze del servizio di Azure.
Cluster del servizio Azure Kubernetes
I cluster del servizio Azure Kubernetes sono una distribuzione a disponibilità elevata di Kubernetes usando macchine virtuali Linux per l'esecuzione di componenti del piano di controllo Kubernetes e pool di nodi Linux. È possibile distribuire pool di nodi aggiuntivi basati su Windows Server Core per l'esecuzione di contenitori Windows. Possono essere presenti uno o più cluster del servizio Azure Kubernetes gestiti da Arc Resource Bridge.
Un cluster del servizio Azure Kubernetes include 2 componenti principali, come descritto nelle sezioni seguenti.
Nodi del piano di controllo
Kubernetes usa i nodi del piano di controllo per garantire che ogni componente nel cluster Kubernetes venga mantenuto nello stato desiderato. Il piano di controllo gestisce e gestisce anche i pool di nodi di lavoro che contengono le applicazioni in contenitori. Il servizio Azure Kubernetes abilitato da Arc distribuisce il servizio di bilanciamento del carico KubeVIP per garantire che l'indirizzo IP del server API del piano di controllo Kubernetes sia sempre disponibile. Microsoft non addebita alcun addebito per i nodi del piano di controllo, perché i nodi del piano di controllo non ospitano le applicazioni dei clienti.
I nodi del piano di controllo eseguono i componenti principali seguenti (non un elenco completo):
- Server API: abilita l'interazione con l'API Kubernetes. Questo componente fornisce l'interazione per gli strumenti di gestione, ad esempio l'interfaccia della riga di comando di Azure, il portale di Azure o kubectl.
- Etcd: archivio chiave-valore distribuito che archivia i dati necessari per la gestione del ciclo di vita del cluster. Archivia lo stato del piano di controllo.
Pool di nodi Linux/Windows
In Kubernetes un pool di nodi è un gruppo di nodi all'interno di un cluster che condividono la stessa configurazione. I pool di nodi consentono di creare e gestire set di nodi con ruoli, funzionalità o configurazioni hardware specifici, consentendo un controllo più granulare sull'infrastruttura del cluster del servizio Azure Kubernetes. È possibile distribuire pool di nodi Linux o Windows nel cluster del servizio Azure Kubernetes. Tuttavia, è necessario avere almeno 1 pool di nodi Linux per ospitare gli agenti Arc per mantenere la connettività con Azure.
Distribuzioni di sistemi operativi misti
Se un determinato cluster del carico di lavoro è costituito da nodi di lavoro Linux e Windows, deve essere pianificato in un sistema operativo in grado di supportare il provisioning del carico di lavoro. Kubernetes offre due meccanismi per garantire che i carichi di lavoro vengano terreni nei nodi con un sistema operativo di destinazione:
- Il selettore di nodo è un campo semplice nella specifica del pod che vincola i pod solo ai nodi integri corrispondenti al sistema operativo.
- I contenitori e le tolleranze interagiscono per garantire che i pod non siano pianificati in modo involontario nei nodi. Un nodo può essere "tainted" in modo da non accettare pod che non tollerano in modo esplicito il suo taint tramite una "tollerazione" nella specifica del pod.
Per altre informazioni, vedere Selettori di nodo e taints e tolerations.
Gestione ciclo di vita
Azure Arc viene abilitato automaticamente in tutti i cluster Kubernetes creati con Il servizio Azure Kubernetes Arc. È possibile usare l'ID Microsoft Entra per la connessione ai cluster da qualsiasi posizione. Azure Arc consente di usare strumenti familiari come i modelli di portale di Azure, interfaccia della riga di comando di Azure e Azure Resource Manager per creare e gestire i cluster Kubernetes.
Aggiornamenti basati sul cloud per i componenti dell'infrastruttura
Azure Locale, versione 23H2 consolida tutti gli aggiornamenti pertinenti per il sistema operativo, gli agenti software, l'infrastruttura di Azure Arc e i driver OEM e il firmware in un pacchetto di aggiornamento mensile unificato. Questo pacchetto di aggiornamento completo viene identificato e applicato dal cloud tramite lo strumento Azure Update Manager.
Il servizio Azure Kubernetes fa ora parte di Azure Local a partire dalla versione 23H2. La gestione del ciclo di vita del servizio Azure Kubernetes abilitata dall'infrastruttura di Azure Arc segue lo stesso approccio di qualsiasi altro componente in Azure Locale, versione 23H2. Questo approccio offre una base flessibile per integrare e gestire vari aspetti della soluzione locale di Azure in un'unica posizione, tra cui la gestione del sistema operativo, gli agenti e i servizi principali e l'estensione della soluzione. Il servizio Azure Kubernetes abilitato dai componenti dell'infrastruttura Arc, come parte delle estensioni della soluzione, viene aggiornato dal pacchetto di aggiornamento di Azure Locale versione 23H2.
Per altre informazioni, vedere Panoramica dell'aggiornamento per Azure Local, versione 23H2.