Condividi tramite


Aggiornare le modalità di Gestione indirizzi IP del servizio Azure Kubernetes servizio Azure Kubernetes (AKS) e la tecnologia Dataplane

Poiché sono sempre disponibili nuove modalità di gestione delle assegnazioni IP e tecnologie di dataplane che supportano servizio Azure Kubernetes (servizio Azure Kubernetes), è inevitabile passare attraverso situazioni in cui i cluster del servizio Azure Kubernetes esistenti devono eseguire l'aggiornamento alle modalità di Gestione indirizzi IP più recenti e alla tecnologia del piano dati per accedere alle funzionalità e al supporto più recenti. Questo articolo fornisce indicazioni sull'aggiornamento di un cluster del servizio Azure Kubernetes esistente per l'uso della sovrimpressione CNI di Azure per la modalità gestione indirizzi IP e azure CNI con tecnologia Cilium come piano dati.

Aggiornare un cluster esistente alla sovrimpressione CNI di Azure

Nota

È possibile aggiornare un cluster Azure CNI esistente in Overlay se il cluster soddisfa i criteri seguenti:

  • Il cluster si trova in Kubernetes versione 1.22+.
  • Non usa la funzionalità di allocazione IP pod dinamica.
  • Non sono abilitati i criteri di rete. Il motore dei criteri di rete può essere disinstallato prima dell'aggiornamento, vedere Disinstallare Gestione criteri di rete di Azure o Calico.
  • Non usa pool di nodi Windows con Docker come runtime del contenitore.

Nota

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

Avviso

Prima della build del sistema operativo Windows 20348.1668, esisteva una limitazione per i pod Overlay di Windows che presentava in modo errato SNAT di pacchetti dai pod di rete host, che avevano un effetto più dannoso per l'aggiornamento dei cluster in Overlay. Per evitare questo problema, usare una build del sistema operativo Windows maggiore o uguale a 20348.1668.

Avviso

Se si usa una configurazione personalizzata di azure-ip-masq-agent per includere intervalli IP aggiuntivi che non devono essere pacchetti SNAT dai pod, l'aggiornamento ad Azure CNI Overlay può interrompere la connettività a questi intervalli. Gli indirizzi IP dei pod dallo spazio di sovrimpressione non saranno raggiungibili da alcun elemento all'esterno dei nodi del cluster. Inoltre, per i cluster sufficientemente vecchi potrebbe esserci un oggetto ConfigMap lasciato da una versione precedente di azure-ip-masq-agent. Se configMap, denominato azure-ip-masq-agent-config, esiste e non è intenzionalmente sul posto, deve essere eliminato prima di eseguire il comando di aggiornamento. Se non si usa una configurazione personalizzata di ip-masq-agent, durante il processo di aggiornamento dovrebbe esistere solo ConfigMap azure-ip-masq-agent-config-reconciled di Azure ip-masq-agent ConfigMap. Questa operazione verrà aggiornata automaticamente durante il processo di aggiornamento.

Il processo di aggiornamento attiva la ricreazione simultanea di ogni pool di nodi. L'aggiornamento di ogni pool di nodi separatamente in 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 per ogni nodo in un pool di nodi viene ricreata l'immagine.

Aggiornamento del cluster Azure CNI

Aggiornare un cluster Azure CNI esistente per usare Overlay usando il comando [az aks update][az-aks-update].

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"

az aks update --name $clusterName \
--resource-group $resourceGroup \
--network-plugin-mode overlay \
--pod-cidr 192.168.0.0/16

Il parametro --pod-cidr è necessario quando si esegue l'aggiornamento da CNI legacy perché i pod devono ottenere indirizzi IP da un nuovo spazio di sovrimpressione, che non si sovrappone alla subnet del nodo esistente. Il CIDR del pod non può sovrapporsi neanche ad alcun 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, --pod-cidr non può sovrapporsi a 10.0.0.0/8 o al CIDR del servizio esistente nel cluster.

Aggiornamento del cluster Kubenet

Aggiornare un cluster Kubenet esistente per usare la sovrimpressione CNI di Azure usando il comando [az aks update][az-aks-update].

clusterName="myOverlayCluster"
resourceGroup="myResourceGroup"
location="westcentralus"

az aks update --name $clusterName \
--resource-group $resourceGroup \
--network-plugin azure \
--network-plugin-mode overlay 

Poiché il cluster usa già un CIDR privato per i pod che non si sovrappone allo spazio IP della rete virtuale, non è necessario specificare il parametro --pod-cidr e il CIDR dei pod rimarrà invariato se il parametro non viene usato.

Nota

Quando si esegue l'aggiornamento da Kubenet a CNI Overlay, la tabella di route non sarà più necessaria per il routing dei pod. Se il cluster usa una tabella di route fornita dal cliente, le route usate per indirizzare il traffico dei pod al nodo corretto verranno eliminate automaticamente durante l'operazione di migrazione. Se il cluster usa una tabella di route gestita (la tabella di route è stata creata dal servizio Azure Kubernetes e risiede nel gruppo di risorse del nodo), tale tabella di route verrà eliminata come parte della migrazione.

Aggiornare un cluster esistente ad Azure CNI con tecnologia Cilium

Nota

È possibile aggiornare un cluster esistente ad Azure CNI con tecnologia Cilium se il cluster soddisfa i criteri seguenti:

Nota

Quando si abilita Cilium in un cluster con un motore di criteri di rete diverso (Azure NPM o Calico), il motore dei criteri di rete verrà disinstallato e sostituito con Cilium. Per altre informazioni, vedere Disinstallare Azure Network Policy Manager o Calico.

Avviso

Il processo di aggiornamento attiva la ricreazione simultanea di ogni pool 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 pere ogni nodo in un pool di nodi viene ricreata l'immagine. Cilium inizierà ad applicare i criteri di rete solo dopo che tutti i nodi sono stati ricreati.

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 eseguire l'installazione o l'aggiornamento, vedere Installare l'interfaccia della riga di comando di Azure.

Usare il comando seguente per aggiornare un cluster esistente ad Azure CNI con tecnologia Cilium. Sostituire i valori per <clusterName> e <resourceGroupName>:

az aks update --name <clusterName> --resource-group <resourceGroupName> \
  --network-dataplane cilium