Knotenpools werden standardmäßig parallel aktualisiert. Das kann zu zwei Problemen führen:
Kontingentproblem
Für jeden Knotenpool wird ein Surge Knoten erstellt. Wenn also N Knotenpools parallel aktualisiert werden, werden N Surge Knoten erstellt. Das kann zu einer Ressourcenausschöpfung führen, wenn nur eine begrenzte zusätzliche Kapazität zum Erstellen dieser Surge-Knoten vorhanden ist.
PDB-Deadlock-Problem
Wenn Sie mehr als einen Knoten gleichzeitig leeren, kann das zu PDB-Deadlocks führen.
Damit N Knotenpools parallel aktualisiert werden können, müssen für die Surge Knoten N zusätzliche IP-Adressen verfügbar sein. Wenn Ihre Worker-Knoten ihre IP-Adressen von einem DHCP-Server beziehen, muss Ihr DHCP-Server N zusätzliche IP-Adressen bereitstellen können. Wenn Ihre Worker-Knoten statische IP-Adressen verwenden, muss Ihre IP-Blockdatei zusätzlich zu den für die Worker-Knoten erforderlichen IP-Adressen N zusätzliche IP-Adressen enthalten.
Wenn nicht genügend zusätzliche IP-Adressen verfügbar sind, um alle N Knoten parallel zu aktualisieren, werden so viele Pools wie möglich parallel aktualisiert. Sobald IP-Adressen verfügbar sind, aktualisieren wir die verbleibenden Knotenpools.
In diesem Dokument wird beschrieben, wie Sie eine Knotenpool-Aktualisierungsrichtlinie angeben, um die maximale Anzahl von Knoten zu konfigurieren, die beim Aktualisieren des Knotenpools gleichzeitig aktualisiert werden sollen. So lassen sich die beiden genannten Probleme vermeiden. „0“ bedeutet, dass das aktuelle parallele Verhalten beibehalten wird. Dies ist der Standardwert. „1“ bedeutet, dass die Knotenpools nacheinander aktualisiert werden.
Beachten Sie, dass durch die sequenzielle Aktualisierung zwar die beiden Probleme vermieden werden können, das Aktualisieren des Knotenpools aber länger dauern kann als bei einem parallelen Update.
Richtlinie für Knotenpool-Updates konfigurieren
In der Seed-Konfigurationsdatei des Nutzerclusters „user-cluster.yaml“ können Sie die Aktualisierung des Knotenpools so konfigurieren, dass sie nacheinander erfolgt:
nodePoolUpdatePolicy: maximumConcurrentNodePoolUpdate: 1
maximumConcurrentNodePoolUpdate
kann auf einen beliebigen Ganzzahlwert festgelegt werden, um die Anzahl der Knotenpools zu konfigurieren, die gleichzeitig aktualisiert werden sollen.
Die Richtlinie für die Aktualisierung von Knotenpools gilt sowohl für die Aktualisierung als auch für das Upgrade von Knotenpools, nicht jedoch für das Erstellen. Wenn bei der Aktualisierung eines Knotenpools Probleme auftreten und das Update nicht fortgesetzt werden kann, wird laut aktueller Einstellung blockiert und es wird nicht mit dem Update des nächsten Knotenpools fortgefahren.