Identificare le opzioni dei plug-in
Un plug-in di rete è richiesto da un cluster AKS al fine di facilitare la comunicazione tra pod e pod, la comunicazione tra pod e nodo e, in alcuni casi, la comunicazione tra nodo e pod. Sono disponibili due modelli di rete in AKS: kubenet e Azure CNI. Sono disponibili altre evoluzioni di Azure CNI, tra cui Overlay CNI di Azure, Azure CNI per l'allocazione ip dinamica e Azure CNI con tecnologia Cilium. Ognuno di questi modelli ha un proprio set di funzionalità e limitazioni.
kubenet
Per impostazione predefinita, i cluster del servizio Azure Kubernetes usano kubenet. Con kubenet, una rete virtuale, una subnet e una tabella di route di Azure vengono create automaticamente quando il cluster viene distribuito, ma è possibile fornire risorse di rete esistenti. Con kubenet:
- I nodi ricevono un indirizzo IP dalla subnet della rete virtuale di Azure.
- I pod ricevono un indirizzo IP da uno spazio indirizzi logicamente diverso rispetto alla subnet del pool di nodi.
- Nat (Network Address Translation) viene quindi configurato in modo che i pod possano raggiungere le risorse nella rete virtuale di Azure.
- L'indirizzo IP di origine del traffico viene convertito nell'indirizzo IP primario del nodo.
I pod non possono comunicare direttamente tra loro tra i nodi. Viene invece usato il routing definito dall'utente e l'inoltro IP per la connettività tra pod tra nodi. Per impostazione predefinita, le route definite dall'utente e la configurazione dell'inoltro IP vengono create e gestite dal servizio Azure Kubernetes, ma è possibile usare una tabella di route personalizzata per la gestione personalizzata delle route.
Se la subnet personalizzata non contiene una tabella di route, il servizio Azure Kubernetes ne crea uno automaticamente e aggiunge le regole per tutto il ciclo di vita del cluster. Se la subnet personalizzata contiene una tabella di route quando si crea il cluster, il servizio Azure Kubernetes riconosce la tabella di route esistente durante le operazioni del cluster e aggiunge/aggiorna le regole di conseguenza per le operazioni del provider cloud.
Azure CNI
Il plug-in Azure CNI è un'opzione di rete più complessa con configurabilità più elevata e funzionalità più supportate. Con Azure CNI, sono necessarie una subnet preesistente e una rete virtuale per utilizzare i cluster con il networking di Azure CNI, il che richiede una pianificazione aggiuntiva. Le dimensioni della rete virtuale e della relativa subnet devono contenere il numero di pod che si prevede di eseguire e il numero di nodi per il cluster. Con Azure CNI:
- I nodi ricevono uno spazio indirizzi IP dalla subnet della rete virtuale di Azure.
- Ogni pod riceve un indirizzo IP nella subnet del pool di nodi e può comunicare direttamente con altri pod e servizi.
- I cluster possono avere le stesse dimensioni dell'intervallo di indirizzi IP specificato. Tuttavia, l'intervallo di indirizzi IP deve essere pianificato in anticipo e tutti gli indirizzi IP vengono utilizzati dai nodi del servizio Azure Kubernetes in base al numero massimo di pod che possono supportare.
Con Azure CNI, è necessaria una subnet preesistente e una rete virtuale per usare il plug-in di rete Azure CNI. Questa subnet e la rete virtuale possono essere create durante la creazione del cluster AKS.
Sovrimpressione di Azure CNI
La sovrimpressione CNI di Azure rappresenta un'evoluzione di Azure CNI, risolvendo i problemi di scalabilità e pianificazione derivanti dall'assegnazione di indirizzi IP di rete virtuale ai pod. Azure CNI Overlay assegna indirizzi IP privati CIDR ai pod. Gli indirizzi IP privati sono separati dalla rete virtuale e possono essere riutilizzati in più cluster. La sovrimpressione CNI di Azure può superare il limite di 400 nodi applicato nei cluster Kubenet. Azure CNI Overlay è l'opzione consigliata per la maggior parte dei cluster.
Azure CNI con tecnologia Cilium
Azure CNI Powered by Cilium usa Cilium per fornire funzionalità di rete, osservabilità e applicazione dei criteri di rete ad alte prestazioni. Si integra nativamente con Azure CNI Overlay per la gestione scalabile degli indirizzi IP (IPAM).
Cilium applica inoltre i criteri di rete per impostazione predefinita, senza richiedere un motore di criteri di rete separato. Azure CNI Powered by Cilium può essere ridimensionato oltre i limiti di Azure Network Policy Manager di 250 nodi/pod da 20 K usando programmi ePBF e una struttura a oggetti API più efficiente.
Azure CNI Powered by Cilium è l'opzione consigliata per i cluster che richiedono l'imposizione dei criteri di rete.
Usare un plug-in personalizzato
Per i clienti che prevedono di usare una configurazione di rete personalizzata, non sono previsti requisiti per i plug-in di rete. È possibile scegliere tra provider CNI come Cilium o Flannel. Tuttavia, è consigliabile rivolgersi alla propria documentazione perché non è coperta da Microsoft.