Aggiornare la modalità IPAM di Azure CNI e la tecnologia del piano dati per i cluster del servizio Azure Kubernetes (AKS)

I cluster di Servizio Azure Kubernetes (AKS) esistenti possono essere aggiornati alle nuove modalità di gestione degli indirizzi IP e alle tecnologie del piano dati per accedere alle funzionalità più recenti e ai miglioramenti della supportabilità. Questo articolo illustra due aggiornamenti indipendenti:

  • Aggiornamento della modalità IPAM ad Azure CNI Overlay. La modalità IPAM determina come vengono assegnati e instradati gli indirizzi IP dei pod (ad esempio, dalla subnet del nodo, da una subnet dedicata ai pod o da una rete overlay).
  • Aggiornamento del data plane ad Azure CNI basato su Cilium. Il piano dati è il componente in cluster che inoltra effettivamente i pacchetti e applica i criteri di rete in ogni nodo.

Questi aggiornamenti sono operazioni separate e non devono essere eseguite insieme. In particolare, il piano dati Cilium è supportato in qualsiasi modalità di Gestione indirizzi IP CNI Azure, quindi non è necessario eseguire prima la migrazione a Azure CNI Overlay per adottare Cilium.

Note

L'aggiornamento del piano dati ad Azure CNI basato su Cilium non modifica la modalità IPAM del cluster. Non è una migrazione tra le modalità di Azure CNI. Si tratta di uno scambio solo del piano dati sottostante. Ad esempio, un cluster che usa Azure CNI (Node Subnet) rimane in Node Subnet dopo l'aggiornamento; l'unica cosa che cambia è che ora è Cilium a gestire il piano dati. Lo stesso vale per Azure CNI con allocazione IP dinamica e cluster CNI Overlay Azure.

Percorsi di migrazione supportati

Migrazione della modalità IPAM

AKS supporta un unico percorso di migrazione IPAM solo in avanti. La modalità IPAM può essere migrata solo ad Azure CNI Overlay e solo dalle modalità seguenti:

  • Eseguire la migrazione di un cluster Azure CNI (Node Subnet) ad Azure CNI Overlay.
  • Eseguire la migrazione di un cluster Kubenet ad Azure CNI Overlay.

L'aggiornamento di un cluster ad Azure CNI Overlay è un'operazione unidirezionale e irreversibile. Dopo aver aggiornato il cluster, non è possibile eseguirne la migrazione a una modalità di rete basata su subnet del nodo.

Migrazione del piano dati a Azure CNI con tecnologia Cilium

La migrazione del piano dati di Cilium è supportata da qualunque modalità IPAM di Azure CNI, tra cui:

  • Eseguire la migrazione di un cluster CNI (Node Subnet) di Azure a Azure CNI con tecnologia Cilium.
  • Eseguire la migrazione di un cluster Azure CNI con allocazione dinamica degli IP (Pod Subnet) ad Azure CNI basato su Cilium.
  • Eseguire la migrazione di un cluster Azure CNI Overlay ad Azure CNI basato su Cilium.

I cluster Kubenet non possono eseguire la migrazione direttamente al piano dati Cilium. Devono prima eseguire la migrazione a Azure overlay CNI, quindi aggiornare il piano dati a Cilium come operazione separata.

Aggiornare la modalità IPAM all'Overlay CNI di Azure

L'aggiornamento di un cluster esistente a Azure CNI Overlay è un processo irreversibile.

È possibile aggiornare un cluster AKS esistente all'Overlay CNI di Azure se il cluster:

  • Si trova in Kubernetes versione 1.27 o successiva.
  • Non usa la funzionalità di allocazione ip dinamica .
  • Non ha abilitato le politiche di rete. Se è necessario disinstallare il motore dei criteri di rete prima di aggiornare il cluster, seguire la procedura descritta in Disinstallare Azure Network Policy Manager o Calico.
  • Non usa pool di nodi Windows con Docker come runtime del contenitore.

Prima della build 20348.1668 del sistema operativo Windows, esisteva una limitazione riguardo ai pod overlay di Windows che instradavano in modo errato i pacchetti dai pod della rete host tramite SNAT (Source Network Address Translation). Questa limitazione ha avuto un effetto negativo per i cluster che si aggiornavano all'Azure CNI Overlay. Per evitare questo problema, usare la build del sistema operativo Windows 20348.1668 o versione successiva.

Avvertimento

  • Se si usa una configurazione personalizzata azure-ip-masq-agent per includere intervalli IP aggiuntivi che non devono inviare pacchetti SNAT dai pod, l'aggiornamento alla sovrimpressione CNI di Azure può interrompere la connettività a questi intervalli. Gli indirizzi IP dei pod dallo spazio di sovrimpressione non sono raggiungibili da alcun elemento all'esterno dei nodi del cluster.

  • Per i cluster precedenti, un oggetto ConfigMap potrebbe essere lasciato da una versione precedente di azure-ip-masq-agent. Se questo ConfigMap (denominato azure-ip-masq-agent-config) esiste e non è intenzionalmente presente, è necessario eliminarlo prima dell'aggiornamento.

  • Se non si usa una configurazione ip-masq-agent personalizzata, è necessario che esista solo azure-ip-masq-agent-config-reconciled ConfigMap rispetto ad Azure ip-masq-agent ConfigMap. Viene aggiornato automaticamente durante il processo di aggiornamento.

Il processo di aggiornamento avvia la reinstallazione simultanea delle immagini nei gruppi di nodi. L'aggiornamento per ogni pool di nodi separatamente a Azure CNI Overlay non è supportato. Eventuali interruzioni della rete del cluster sono simili a un aggiornamento dell'immagine del nodo o all'aggiornamento della versione di Kubernetes in cui viene ricreata l'immagine di ogni nodo in un pool di nodi.

Aggiornare un cluster CNI (Azure Container Networking Interface) esistente per usare la sovrimpressione CNI di Azure usando il az aks update comando .

az aks update \
  --name $CLUSTER_NAME \
  --resource-group $RESOURCE_GROUP \
  --network-plugin azure \
  --network-plugin-mode overlay \
  --pod-cidr 192.168.0.0/16

Il --pod-cidr parametro è obbligatorio quando si esegue l'aggiornamento da plug-in CNI legacy perché i pod devono ottenere indirizzi IP da un nuovo spazio di overlay. Il nuovo spazio overlay non si sovrappone al plug-in Azure CNI Node Subnet esistente.

Classless Inter-Domain Routing (CIDR) per il pod non può sovrapporsi con nessun indirizzo di rete virtuale dei pool di nodi. Ad esempio, se l'indirizzo della rete virtuale è 10.0.0.0/8 e i nodi si trovano nella subnet 10.240.0.0/16, il --pod-cidr parametro non può sovrapporsi a 10.0.0.0/8 o al servizio esistente CIDR nel cluster.

Aggiornare il piano dati ad Azure CNI alimentato da Cilium

Azure CNI Powered by Cilium è la configurazione di rete consigliata e supportata a lungo termine per AKS. Combina il piano di controllo CNI di Azure con il piano dati Cilium per offrire funzionalità di rete e sicurezza avanzate scalabili.

Considerazioni sull'aggiornamento

  • È possibile aggiornare il piano dati ad Azure CNI con tecnologia Cilium da qualsiasi modalità di Gestione indirizzi IP (IPAM) di Azure CNI (subnet del nodo, allocazione dinamica dell'IP o sovrapposizione). Non è prima necessario eseguire la migrazione a Azure overlay CNI.
  • La modalità di Gestione indirizzi IP e il piano dati non possono essere aggiornati in un'unica operazione. Se si prevede di eseguire la migrazione sia della modalità IPAM ad Azure CNI Overlay e del piano di dati ad Azure CNI con tecnologia Cilium, eseguirle come due operazioni separate, in qualsiasi ordine.
  • I cluster Kubenet non possono aggiornare il piano dati direttamente a Cilium. Migrare prima la modalità IPAM ad Azure CNI Overlay, quindi aggiornare il piano dati.
  • Quando si abilita Cilium in un cluster che usa un altro motore di criteri di rete (Azure Network Policy Manager o Calico), il motore esistente viene disinstallato e sostituito da Cilium. Questa modifica può influire sul comportamento dei criteri di rete. Per altre informazioni, vedere Eseguire la migrazione da Gestione criteri di rete (NPM) a Criteri di rete Cilium.
  • L'aggiornamento del piano dati a Azure CNI basato su Cilium non è supportato nei cluster con pool di nodi Windows.
  • I cluster in cui è abilitata la funzionalità di provisioning automatico dei nodi non possono essere aggiornati ad Azure CNI con tecnologia Cilium. Come soluzione alternativa, disattiva NAP prima dell'aggiornamento, quindi riattivalo al termine dell'aggiornamento.

Avvertimento

Il processo di aggiornamento avvia la reinstallazione simultanea delle immagini nei gruppi di nodi. L'aggiornamento di ogni pool di nodi separatamente non è supportato. Eventuali interruzioni della rete del cluster sono simili a un aggiornamento dell'immagine del nodo o all'aggiornamento della versione di Kubernetes in cui viene ricreata l'immagine di ogni nodo in un pool di nodi. Cilium inizia ad applicare i criteri di rete solo dopo la ricreazione dell'immagine di tutti i nodi.

Per eseguire l'aggiornamento, è necessaria l'interfaccia della riga di comando di Azure versione 2.52.0 o successiva. Eseguire az --version per verificare la versione attualmente installata. Se è necessario installare o aggiornare, consulta Installazione dell'interfaccia della riga di comando di Azure.

Aggiornare un cluster esistente in Azure CNI basato su Cilium usando il az aks update comando .

az aks update \
  --name $CLUSTER_NAME \
  --resource-group $RESOURCE_GROUP \
  --network-dataplane cilium