Udostępnij za pośrednictwem


Uaktualnianie trybów ipAM usługi Azure Kubernetes Service (AKS) i technologii Dataplane Technology

Ponieważ zawsze istnieją nowe tryby zarządzania przypisaniami adresów IP (IPAM) i technologia płaszczyzny danych obsługująca usługę Azure Kubernetes Service (AKS), nieuniknione jest przejście przez sytuacje, w których istniejące klastry usługi AKS muszą przejść do nowszych trybów IPAM i technologii płaszczyzny danych, aby uzyskać dostęp do najnowszych funkcji i możliwości obsługi. Ten artykuł zawiera wskazówki dotyczące uaktualniania istniejącego klastra usługi AKS do korzystania z nakładki CNI platformy Azure dla trybu IPAM i interfejsu CNI platformy Azure obsługiwanego przez aplikację Cilium jako płaszczyzny danych.

Uaktualnianie istniejącego klastra do nakładki usługi Azure CNI

Uwaga

Istniejący klaster usługi Azure CNI można zaktualizować do nakładki, jeśli klaster spełnia następujące kryteria:

  • Klaster znajduje się na platformie Kubernetes w wersji 1.22 lub nowszej.
  • Nie używa funkcji dynamicznej alokacji adresów IP zasobnika.
  • Nie ma włączonych zasad sieciowych. Aparat zasad sieciowych można odinstalować przed uaktualnieniem, zobacz Odinstalowywanie menedżera zasad sieciowych platformy Azure lub Calico.
  • Nie używa żadnych pul węzłów systemu Windows z platformą Docker jako środowiska uruchomieniowego kontenera.

Uwaga

Uaktualnianie istniejącego klastra do nakładki CNI jest procesem niewzględnialnym.

Ostrzeżenie

Przed kompilacją systemu operacyjnego Windows 20348.1668 wystąpiło ograniczenie dotyczące zasobników nakładki systemu Windows nieprawidłowo SNATing pakietów z zasobników sieci hosta, co miało bardziej szkodliwy wpływ na klastry uaktualniania do nakładki. Aby uniknąć tego problemu, użyj kompilacji systemu operacyjnego Windows większej lub równej 20348.1668.

Ostrzeżenie

Jeśli używasz niestandardowej konfiguracji azure-ip-masq-agent w celu uwzględnienia dodatkowych zakresów adresów IP, które nie powinny zawierać pakietów SNAT z zasobników, uaktualnienie do nakładki azure CNI może przerwać łączność z tymi zakresami. Adresy IP zasobników z miejsca nakładki nie będą osiągalne przez wszystkie elementy spoza węzłów klastra. Ponadto w przypadku wystarczająco starych klastrów może istnieć obiekt ConfigMap pozostawiony z poprzedniej wersji agenta azure-ip-masq-agent. Jeśli ten obiekt ConfigMap o nazwie azure-ip-masq-agent-config, istnieje i nie został celowo usunięty przed uruchomieniem polecenia aktualizacji. Jeśli nie korzystasz z niestandardowej konfiguracji ip-masq-agent, w procesie uaktualniania powinien istnieć tylko azure-ip-masq-agent-config-reconciled obiekt ConfigMaps ConfigMaps usługi Azure ip-masq-agent.

Proces uaktualniania wyzwala ponowne obrazy każdej puli węzłów jednocześnie. Uaktualnienie każdej puli węzłów oddzielnie do nakładki nie jest obsługiwane. Wszelkie zakłócenia w sieci klastra są podobne do uaktualnienia obrazu węzła lub uaktualnienia wersji platformy Kubernetes, w których każdy węzeł w puli węzłów jest ponownie obrazowany.

Uaktualnianie klastra usługi Azure CNI

Zaktualizuj istniejący klaster usługi Azure CNI, aby używał nakładki przy użyciu polecenia [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

Parametr jest wymagany podczas uaktualniania --pod-cidr ze starszej wersji sieci CNI, ponieważ zasobniki muszą pobierać adresy IP z nowego miejsca nakładki, co nie nakłada się na istniejącą podsieć węzła. CiDR zasobnika nie może również nakładać się na żaden adres sieci wirtualnej pul węzłów. Jeśli na przykład adres sieci wirtualnej to 10.0.0.0/8, a węzły znajdują się w podsieci 10.240.0.0/16, --pod-cidr nie można nakładać się na 10.0.0.0/8 lub istniejącą trasę CIDR usługi w klastrze.

Uaktualnianie klastra Kubenet

Zaktualizuj istniejący klaster Kubenet, aby używał nakładki usługi Azure CNI przy użyciu polecenia [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 

Ponieważ klaster używa już prywatnej trasy CIDR dla zasobników, które nie nakładają się na obszar IP sieci wirtualnej, nie musisz określać parametru --pod-cidr , a pod CIDR pozostanie taki sam, jeśli parametr nie jest używany.

Uwaga

Podczas uaktualniania z platformy Kubenet do nakładki CNI tabela tras nie będzie już wymagana do routingu zasobników. Jeśli klaster korzysta z tabeli tras dostarczonej przez klienta, trasy, które były używane do kierowania ruchu zasobników do odpowiedniego węzła, zostaną automatycznie usunięte podczas operacji migracji. Jeśli klaster korzysta z zarządzanej tabeli tras (tabela tras została utworzona przez usługę AKS i znajduje się w grupie zasobów węzła), ta tabela tras zostanie usunięta w ramach migracji.

Uaktualnianie istniejącego klastra do usługi Azure CNI obsługiwanej przez cilium

Uwaga

Istniejący klaster można zaktualizować do usługi Azure CNI obsługiwanej przez cilium, jeśli klaster spełnia następujące kryteria:

Uwaga

Podczas włączania cilium w klastrze z innym aparatem zasad sieciowych (Azure NPM lub Calico) aparat zasad sieciowych zostanie odinstalowany i zastąpiony cilium. Aby uzyskać więcej informacji, zobacz Odinstalowywanie programu Azure Network Policy Manager lub Calico .

Ostrzeżenie

Proces uaktualniania wyzwala ponowne obrazy każdej puli węzłów jednocześnie. Uaktualnienie każdej puli węzłów oddzielnie nie jest obsługiwane. Wszelkie zakłócenia w sieci klastra są podobne do uaktualnienia obrazu węzła lub uaktualnienia wersji platformy Kubernetes, w których każdy węzeł w puli węzłów jest ponownie obrazowany. Cilium rozpocznie wymuszanie zasad sieci tylko po ponownym obrazowaniu wszystkich węzłów.

Aby przeprowadzić uaktualnienie, musisz mieć interfejs wiersza polecenia platformy Azure w wersji 2.52.0 lub nowszej. Uruchom polecenie az --version , aby wyświetlić aktualnie zainstalowaną wersję. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

Użyj następującego polecenia, aby uaktualnić istniejący klaster do usługi Azure CNI obsługiwanej przez cilium. Zastąp wartości dla <clusterName> i :<resourceGroupName>

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