Creare un cluster del servizio Azure Kubernetes
- 10 minuti
L'azienda prevede di distribuire un servizio di rendering video basato sul cloud usando il servizio Azure Kubernetes come piattaforma di sviluppo nativa del cloud. Prima di poter distribuire un'applicazione, è necessario creare il cluster AKS.
Ora rivediamo alcuni concetti così possiamo distribuire un nuovo cluster AKS.
Cluster Kubernetes
Kubernetes si basa sui cluster. Anziché una singola macchina virtuale, Kubernetes usa diverse macchine virtuali che funzionano come una, denominate nodi. Kubernetes è un agente di orchestrazione basato su cluster che offre all'applicazione diversi vantaggi, ad esempio disponibilità, monitoraggio, scalabilità e aggiornamenti in sequenza.
Nodi del cluster
Un cluster è basato su nodi e sono disponibili due tipi di nodi in un cluster Kubernetes che forniscono funzionalità specifiche.
- Nodi del piano di controllo: Questi nodi ospitano gli aspetti del piano di controllo del cluster e sono riservati ai servizi che controllano il cluster. Sono responsabili di fornire l'API usata dall'utente e da tutti gli altri nodi per le comunicazioni. Nessun carico di lavoro viene distribuito o pianificato in questi nodi.
- Nodi: questi nodi sono responsabili dell'esecuzione di carichi di lavoro e applicazioni personalizzati, ad esempio i componenti del servizio di rendering video basato sul cloud.
Architetture di cluster
È possibile usare un'architettura del cluster per concettualizzare il numero di piani di controllo e di nodi che verranno distribuiti nel cluster Kubernetes.
Il numero di nodi in un cluster, ad esempio, deve essere sempre maggiore di due. Quando un nodo non è più disponibile, l'utilità di pianificazione Kubernetes tenta di riprogrammare i carichi di lavoro del nodo nei nodi rimanenti del cluster.
Sono disponibili due architetture di cluster comuni per le distribuzioni basate su Kubernetes.
Singolo piano di controllo e più nodi
Il piano di controllo singolo su più nodi per architettura cluster è il modello di architettura più comune ed è il più semplice da distribuire, ma non offre disponibilità elevata ai servizi di gestione principali del cluster.
Se il nodo del piano di controllo diventa non disponibile per qualsiasi motivo, non è possibile alcuna interazione con il cluster, Questo problema si verifica anche se tu sei l'operatore o per qualsiasi carico di lavoro che utilizza le API Kubernetes per comunicare, fino a quando il server API non torna almeno online.
Sebbene offra minore disponibilità rispetto ad altre, questa architettura dovrebbe essere sufficiente per la maggior parte delle situazioni. È meno probabile che i servizi di gestione principali diventino non disponibili rispetto al passaggio offline di un nodo. I nodi del piano di controllo sono soggetti a meno modifiche rispetto ai nodi e sono più resilienti.
Per uno scenario di produzione, questa architettura potrebbe non essere la soluzione migliore.
Singolo piano di controllo e singolo nodo
L'architettura con singolo piano di controllo per un singolo nodo è una variante della precedente e viene usata negli ambienti di sviluppo. Questa architettura prevede un solo nodo, che ospita sia il piano di controllo che un nodo di lavoro. È utile per testare o sperimentare concetti di Kubernetes diversi. L'architettura con singolo piano di controllo e singolo nodo limita il ridimensionamento del cluster e non è adatta per l'uso in produzione e per attività di staging.
Configurare un cluster AKS
Una differenza fondamentale tra Kubernetes nativo e servizio Azure Kubernetes è che con un cluster del servizio Azure Kubernetes il piano di controllo è gestito da Microsoft per la disponibilità. Non è necessario configurare il piano di controllo quando si crea un cluster. È sufficiente configurare i nodi per eseguire i carichi di lavoro.
Quando si crea un nuovo cluster AKS, ci sono diversi elementi da configurare. Ogni elemento influisce sulla configurazione finale del cluster per l'allocazione delle risorse di calcolo.
Questi elementi includono:
- Pool di nodi.
- Numero di nodi.
- Dimensioni della macchina virtuale del nodo.
Pool di nodi
È possibile creare pool di nodi per raggruppare i nodi nel cluster AKS. Quando si crea un pool di nodi, si specificano le dimensioni della macchina virtuale e il tipo di sistema operativo (Linux o Windows) per ogni nodo del pool in base ai requisiti dell'applicazione. Un pool di nodi con modalità di sistema è riservato ai servizi di sistema critici e in genere non viene usato per eseguire carichi di lavoro dell'applicazione. Per ospitare pod dell'applicazione utente, la Modalità del pool di nodi deve essere User.
Per impostazione predefinita, un cluster AKS include un pool di nodi Linux (modalità Sistema), sia che venga creato tramite CLI o il portale di Azure. È possibile configurarlo per aggiungere pool di nodi Windows insieme ai pool di nodi Linux predefiniti quando il cluster viene creato nel portale, nei parametri dell'interfaccia della riga di comando o nei modelli di Azure Resource Manager (modelli di Resource Manager).
I pool di nodi usano i set di scalabilità di macchine virtuali come infrastruttura sottostante per consentire al cluster di ridimensionare il numero di nodi in un pool di nodi. I nuovi nodi creati nel pool di nodi sono sempre delle stesse dimensioni specificate durante la creazione del pool di nodi.
Numero di nodi
Il conteggio dei nodi è il numero di nodi che il tuo cluster ha in un pool di nodi. I nodi sono macchine virtuali di Azure ed è possibile modificarne le dimensioni e il numero in modo che corrispondano al modello di utilizzo.
È possibile modificare il numero di nodi in un secondo momento nel pannello di configurazione del cluster. È anche una procedura consigliata mantenere questo numero il più basso possibile, per evitare costi non necessari e potenza di calcolo inutilizzata.
Dimensioni della macchina virtuale del nodo
Selezionare una vasta gamma di specifiche di macchina virtuale. Ai fini dello sviluppo, è possibile scegliere la serie B per risparmiare sui costi. Negli esercizi si usa la serie B2, la dimensione standard. Per altre indicazioni su come selezionare una macchina virtuale in base alle proprie esigenze, chiedere a Microsoft Copilot in Azure di trovare la macchina virtuale migliore