Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Kubernetes usa plug-in CNI (Container Networking Interface) per gestire la rete nei cluster Kubernetes. Le CNI sono responsabili dell'assegnazione di indirizzi IP ai pod, del routing di rete tra pod, del routing del servizio Kubernetes e di altro ancora.
Il servizio Azure Kubernetes (AKS) usa due modelli di rete principali: rete sovrapposta e rete flat.
Reti sovrapposte:
- Conservano lo spazio degli indirizzi IP della rete virtuale usando intervalli CIDR separati logicamente per i pod.
- Supporto massimo per la scalabilità dei cluster.
- Gestione semplice degli indirizzi IP.
Reti flat:
- I pod ottengono una connettività di rete virtuale completa e possono essere raggiunti direttamente tramite l'indirizzo IP privato a partire dalle reti connesse.
- Richiedono uno spazio degli indirizzi IP della rete virtuale di grandi dimensioni e non deframmentato.
Quando si sceglie un modello di rete, considerare i casi d'uso per ogni plug-in CNI e il tipo di modello di rete usato:
| Plug-in CNI | Modello di rete | Evidenziazioni dei casi d'uso |
|---|---|---|
| Overlay CNI di Azure | Sovrapposizione | - Ideale per la conservazione ip della rete virtuale - Numero massimo di nodi supportato dal server API + 250 pod per nodo - Configurazione più semplice - Nessun accesso IP diretto al pod esterno |
| Azure CNI Pod Subnet | Appartamento | - Accesso diretto ai pod esterni - Modalità per un utilizzo efficiente degli indirizzi IP della rete virtuale o per il supporto della scalabilità dei cluster di grandi dimensioni |
| Subnet del nodo CNI di Azure | Appartamento | - Accesso diretto ai pod esterni - Configurazione più semplice - Scalabilità limitata - Uso inefficiente degli indirizzi IP di rete virtuale |
Quando si effettua il provisioning del Gateway Applicativo per Contenitori in un cluster con il CNI Overlay abilitato o CNI, il Gateway Applicativo per Contenitori rileva automaticamente la configurazione di rete prevista. Non sono necessarie modifiche nella configurazione dell'API Gateway o In ingresso per specificare la CNI sovrapposta o la CNI.
CNI sovrapposta e gateway applicazione per contenitori
Nello stack di rete di Azure viene creato un dominio di routing separato per lo spazio CIDR privato del pod, che crea una rete di sovrimpressione per la comunicazione diretta tra i pod. Quando viene effettuato il provisioning del gateway applicazione per contenitori, il dominio di routing sovrapposto viene ulteriormente esteso alla subnet del gateway applicazione per contenitori, consentendo il proxy di richieste dal gateway applicazione per contenitori direttamente ai pod.
Il gateway applicazione per contenitori supporta i criteri di rete di Azure, Calico e Cilium Kubernetes in esecuzione all'interno del cluster.
Limitazioni
- Controller ALB: è necessario eseguire la versione 1.7.9 o successiva per sfruttare i vantaggi della CNI sovrapposta.
- Dimensioni della subnet: la subnet del gateway applicazione per contenitori deve avere un prefisso /24; è supportata una sola distribuzione per subnet. Non è supportato un prefisso più grande e neanche uno più piccolo.
- Peering reti virtuali a livello di area: il gateway applicazione per contenitori distribuito in una rete virtuale nell'area A e i nodi del cluster AKS in una rete virtuale nell'area A non sono supportati.
- Peering reti virtuali globale: il gateway applicazione per contenitori distribuito in una rete virtuale nell'area A e i nodi del cluster AKS in una rete virtuale nell'area B non sono supportati.
CNI e gateway applicazione per contenitori
Il gateway applicazione per contenitori supporta varie distribuzioni di Azure CNI in esecuzione all'interno del cluster Kubernetes.
- Azure CNI per l'allocazione di indirizzi IP dinamica
- Azure CNI per l'allocazione di blocchi statici
In entrambi i casi, il gateway applicazione per contenitori supporta i criteri di rete di Azure, Calico e Cilium Kubernetes in esecuzione all'interno del cluster.
Kubenet e gateway applicazione per contenitori
Kubenet non è supportato dal gateway applicazione per i contenitori. Se si usa Kubenet, è consigliabile eseguire l'aggiornamento alla CNI sovrapposta.
Domande frequenti
D: È possibile aggiornare un cluster esistente con il gateway applicazione per contenitori da CNI a CNI sovrapposta?
R: Sì, aggiornare il cluster AKS da CNI a CNI sovrapposta e gateway applicazione per contenitori rileva automaticamente la modifica. È consigliabile pianificare l'aggiornamento durante una finestra di manutenzione perché può verificarsi un'interruzione del traffico. Il controller potrebbe richiedere alcuni minuti dopo l'aggiornamento del cluster per rilevare e configurare il supporto per l'overlay CNI.
Avvertimento
Assicurarsi che la subnet del gateway applicazione per contenitori abbia il prefisso /24 prima dell'aggiornamento. L'aggiornamento da CNI a CNI sovrapposta con una subnet più grande (/23 o superiore) comporterà un'interruzione e richiederà che la subnet del gateway applicazione per contenitori venga ricreata con dimensioni di subnet /24.
D: È possibile aggiornare un cluster esistente con Kubenet a CNI sovrapposta?
R: Sì, ma l'installazione del gateway applicazione per contenitori in un cluster con Kubenet non è supportata. Installare il gateway applicazione per contenitori dopo l'aggiornamento a CNI sovrapposta.
D: Se si utilizza Application Gateway for Containers con CNI Overlay, è possibile inoltrare le richieste al firewall di Azure o a un'appliance di rete virtuale?
R: No. Con la sovrapposizione CNI, le appliance virtuali di rete non hanno accesso al traffico proxy alla rete sovrapposta.
Se sono necessari servizi di Azure o appliance virtuali di rete per accedere alla rete overlay, usare Azure CNI (rete piatta) anziché CNI Overlay.
Q: Posso distribuire l'Application Gateway per contenitori in una rete virtuale distinta dal mio cluster AKS?
R: No. Le reti virtuali separate per Application Gateway for Containers e AKS non sono attualmente supportate. Il gateway applicativo per contenitori deve essere distribuito nella stessa rete virtuale del tuo cluster AKS.