Cluster Autoscaler
Wenn Sie das Cluster Autoscaler-Add-on aktivieren, können Sie die folgenden Schlüssel/Wert-Paare als Argumente übergeben.
| Schlüssel (API und CLI) | Anzeigename des Schlüssels (Konsole) | Beschreibung | Erforderlich/Optional | Standardwert | Beispielwert |
|---|---|---|---|---|---|
affinity |
Affinität |
Eine Gruppe von Affinitätsplanungsregeln. JSON-Format im Klartext oder Base64-codiert. |
Optional | Null | Null |
nodeSelectors |
Knotenselektoren |
Mit Knotenselektoren und Knotenlabels können Sie die Worker-Knoten steuern, auf denen Add-on-Pods ausgeführt werden. Damit ein Pod auf einem Knoten ausgeführt werden kann, muss der Knotenselektor des Pods denselben Schlüssel/Wert wie das Label des Knotens aufweisen. Setzen Sie JSON-Format im Klartext oder Base64-codiert. |
Optional | Null | {"foo":"bar", "foo2": "bar2"}Der Pod wird nur auf Knoten ausgeführt, die das Label |
numOfReplicas |
numOfReplicas | Die Anzahl der Replikate der Add-on-Bereitstellung. (Verwenden Sie für CoreDNS stattdessen |
Erforderlich | 1Erstellt ein Replikat des Add-on-Deployments pro Cluster. |
2Erstellt zwei Replikate des Add-on-Deployments pro Cluster. |
rollingUpdate |
rollingUpdate |
Steuert das gewünschte Verhalten der rollierenden Aktualisierung durch maxSurge und maxUnavailable. JSON-Format im Klartext oder Base64-codiert. |
Optional | Null | Null |
tolerations |
Toleranzen |
Mit Taints und Toleranzen können Sie die Worker-Knoten steuern, auf denen Add-on-Pods ausgeführt werden. Damit ein Pod auf einem Knoten mit einem Taint ausgeführt werden kann, muss der Pod eine entsprechende Toleranz aufweisen. Setzen Sie JSON-Format im Klartext oder Base64-codiert. |
Optional | Null | [{"key":"tolerationKeyFoo", "value":"tolerationValBar", "effect":"noSchedule", "operator":"exists"}]Nur Pods mit dieser Toleranz können auf Worker-Knoten ausgeführt werden, die den Taint |
topologySpreadConstraints |
topologySpreadConstraints |
So verteilen Sie passende Pods auf die angegebene Topologie. JSON-Format im Klartext oder Base64-codiert. |
Optional | Null | Null |
| Schlüssel (API und CLI) | Anzeigename des Schlüssels (Konsole) | Beschreibung | Erforderlich/Optional | Standardwert | Beispielwert |
|---|---|---|---|---|---|
| annotations | Anmerkungen |
Anmerkungen, die an das Cluster Autoscaler-Deployment übergeben werden. Beispiel: JSON-Format im Klartext oder Base64-codiert. |
Optional | "" | |
| authType | authType | Der Authentifizierungstyp, den Cluster Autoscaler beim Erstellen von Anforderungen verwendet, wie folgt:
|
Erforderlich |
instance
|
|
| balanceSimilarNodeGroups | balanceSimilarNodeGroups | Erkennen Sie ähnliche Knotengruppen, und gleichen Sie die Anzahl der Knoten zwischen ihnen aus. | Optional |
false
|
|
| balancingIgnoreLabel | balancingIgnoreLabel | Definieren Sie ein Knotenlabel, das bei der Betrachtung der Knotengruppenähnlichkeit ignoriert werden soll. Ein Label pro Kennzeichenereignis. Das Format lautet label1, label2. |
Optional | "" | |
| balancingLabel | balancingLabel | Definieren Sie ein Knotenlabel, das beim Vergleich der Knotengruppenähnlichkeit verwendet werden soll. Wenn diese Option aktiviert ist, ist die gesamte andere Vergleichslogik deaktiviert, und beim Vergleich von Gruppen werden nur Labels berücksichtigt. Ein Label pro Kennzeichenereignis. Das Format lautet label1, label2. |
Optional | "" | |
| cluster-autoscaler.ContainerResources | cluster-autoscaler-Containerressourcen |
Sie können die Ressourcenmengen angeben, die von den Add-on-Containern angefordert werden, und Grenzwerte für die Ressourcennutzung festlegen, die von den Add-on-Containern nicht überschritten werden dürfen. JSON-Format im Klartext oder Base64-codiert. |
Optional | Null |
{"limits": {"cpu": "500m", "memory": "200Mi" }, "requests": {"cpu": "100m", "memory": "100Mi"}}
Erstellen Sie Add-on-Container, die 100 Millicores CPU und 100 Mebibyte Speicher anfordern. Begrenzen Sie Add-on-Container auf 500 Millicores CPU und 200 Mebibyte Arbeitsspeicher. |
| cordonNodeBeforeTerminating | (Nicht in Konsole angezeigt) | Muss CA-Cordonknoten vor dem Beenden während des Downscale-Prozesses sein. | Optional |
false
|
|
| coresTotal | (Nicht in Konsole angezeigt) | Mindest- und Höchstanzahl von Cores im Cluster im Format <min>:<max>. Cluster-Autoscaler skaliert das Cluster nicht über diese Zahlen hinaus. |
Optional |
0:320000
|
|
| daemonsetEvictionForEmptyNodes | (Nicht in Konsole angezeigt) | Gibt an, ob DaemonSet-Pods von leeren Knoten ordnungsgemäß beendet werden. | Optional |
false
|
|
| daemonsetEvictionForOccupiedNodes | (Nicht in Konsole angezeigt) | Gibt an, ob DaemonSet-Pods von nicht leeren Knoten ordnungsgemäß beendet werden. | Optional |
true
|
|
| debuggingSnapshotEnabled | (Nicht in Konsole angezeigt) | Gibt an, ob der Debugging-Snapshot der Cluster-Autoscaler-Funktion aktiviert ist. | Optional |
false
|
|
| emitPerNodegroupMetrics | (Nicht in Konsole angezeigt) | Bei 'Wahr' werden pro Knotengruppenmetriken ausgegeben. | Optional |
false
|
|
| enforceNodeGroupMinSize | (Nicht in Konsole angezeigt) | Sollte CA die Knotengruppe bei Bedarf auf die konfigurierte Mindestgröße skalieren. | Optional |
false
|
|
| estimator | (Nicht in Konsole angezeigt) | Typ des Ressourcenschätzers für die vertikale Skalierung. | Optional |
binpacking
|
|
| expander | Expander | Typ des Knotengruppenerweiterers für die vertikale Skalierung. Beachten Sie, dass |
Optional |
random
|
|
| expendablePodsPriorityCutoff | (Nicht in Konsole angezeigt) | Pods mit Priorität unter dem Cutoff-Wert sind aufwendbar. Sie können ohne Rücksicht während der Skalierung getötet werden und verursachen keine Skalierung. Pods mit Nullpriorität (PodPriority deaktiviert) sind nicht aussetzbar. | Optional |
-10
|
|
| ignoreDaemonsetsUtilization | (Nicht in Konsole angezeigt) | Gibt an, ob DaemonSet-Pods beim Berechnen der Ressourcenauslastung für das horizontale Skalieren ignoriert werden. | Optional |
false
|
|
| ignoreMirrorPodsUtilization | (Nicht in Konsole angezeigt) | Gibt an, ob Mirror-Pods bei der Berechnung der Ressourcenauslastung für die horizontale Skalierung ignoriert werden. | Optional |
false
|
|
| leaderElect | (Nicht in Konsole angezeigt) | Starten Sie einen Leader Wahl Client und gewinnen Sie Führung, bevor Sie die Hauptschleife ausführen. Aktivieren Sie diese Option, wenn replizierte Komponenten für High Availability ausgeführt werden. | Optional |
true
|
|
| leaderElectLeaseDuration | (Nicht in Konsole angezeigt) | Die Dauer, die Nicht-Leader-Kandidaten warten, nachdem sie eine Leadership-Erneuerung beobachtet haben, bis sie versuchen, die Führung eines geführten, aber nicht erneuerten Leader-Slots zu übernehmen. Dies ist die maximale Dauer, die ein Leader gestoppt werden kann, bevor er durch einen anderen Kandidaten ersetzt wird. Dies gilt nur, wenn die Wahl des Vorsitzenden aktiviert ist. | Optional |
15s
|
|
| leaderElectRenewDeadline | (Nicht in Konsole angezeigt) | Das Intervall zwischen Versuchen des aktiven Cluster-Autoscalers, einen Leadership-Slot zu erneuern, bevor er die Führung stoppt. Dieser Wert muss kleiner/gleich der Leasing-Dauer sein. Dies gilt nur, wenn die Wahl des Vorsitzenden aktiviert ist. | Optional |
10s
|
|
| leaderElectResourceLock | (Nicht in Konsole angezeigt) | Der Typ des Ressourcenobjekts, der bei der Vorgesetztenwahl zum Sperren verwendet wird. Unterstützte Optionen sind leases (Standard), endpoints, endpointsleases, configmaps und configmapsleases. |
Optional |
leases
|
|
| leaderElectRetryPeriod | (Nicht in Konsole angezeigt) | Die Dauer, die Kunden zwischen dem Erwerb und der Erneuerung einer Führung warten sollten. Dies gilt nur, wenn die Wahl des Vorsitzenden aktiviert ist. | Optional |
2s
|
|
| maxAutoprovisionedNodeGroupCount | (Nicht in Konsole angezeigt) | Die maximale Anzahl von automatisch bereitgestellten Gruppen im Cluster. | Optional |
15
|
|
| maxEmptyBulkDelete | maxEmptyBulkDelete | Maximale Anzahl leerer Knoten, die gleichzeitig gelöscht werden können. | Optional |
10
|
|
| maxFailingTime | (Nicht in Konsole angezeigt) | Maximale Zeit seit der letzten erfolgreichen Autoscaler-Ausführung vor dem automatischen Neustart. | Optional |
15m
|
|
| maxGracefulTerminationSec | (Nicht in Konsole angezeigt) | Maximale Anzahl von Sekunden, die CA auf Podbeendigung wartet, wenn versucht wird, einen Knoten horizontal zu skalieren. | Optional |
600
|
|
| maxInactivity | (Nicht in Konsole angezeigt) | Maximale Zeit seit der letzten aufgezeichneten Autoscaler-Aktivität vor dem automatischen Neustart. | Optional |
10m
|
|
| maxNodeProvisionTime | maxNodeProvisionTime | Maximale Zeit, die CA wartet, bis der Knoten bereitgestellt wird. | Optional |
15m
|
|
| maxNodesTotal | (Nicht in Konsole angezeigt) | Maximale Anzahl Knoten in allen Knotenpools. Cluster-Autoscaler vergrößert das Cluster nicht über diese Anzahl hinaus. | Optional |
0
|
|
| maxTotalUnreadyPercentage | (Nicht in Konsole angezeigt) | Maximaler Prozentsatz der nicht verfügbaren Knoten im Cluster. Nach der Überschreitung stoppt CA die Vorgänge. | Optional |
45
|
|
| memoryTotal | (Nicht in Konsole angezeigt) | Mindest- und Höchstanzahl von Gigabyte Arbeitsspeicher im Cluster im Format <min>:<max>. Cluster-Autoscaler skaliert das Cluster nicht über diese Zahlen hinaus. |
Optional |
0:6400000
|
|
| minReplicaCount | (Nicht in Konsole angezeigt) | Mindestanzahl oder Replikate, die ein Replikatset oder Replikationscontroller zum Löschen ihrer Pods in horizontaler Skalierung zulassen muss. | Optional |
0
|
|
| nodes | Knoten |
Eine Liste mit der Mindestanzahl an Knoten, der maximalen Anzahl an Knoten und der OCID des vom Cluster-Autoscaler zu verwaltenden Knotenpools. Das Format lautet Verwenden Sie entweder JSON-Format im Klartext oder Base64-codiert. |
Erforderlich, wenn nodeGroupAutoDiscovery nicht festgelegt ist |
"" | |
| nodeGroupAutoDiscovery | (Nicht in Konsole angezeigt) |
Eine Liste der Tagschlüssel/Wert-Paare, die Mindestanzahl der Knoten, die maximale Anzahl der Knoten und die OCID des Compartments, in dem der vom Cluster-Autoscaler zu verwaltende Knotenpool gespeichert ist. Das Format lautet Verwenden Sie entweder Unterstützt mit Cluster Autoscaler Version 1.30.3, Version 1.31.1 und Version 1.32.0 und höher. JSON-Format im Klartext oder Base64-codiert. |
Erforderlich, wenn nodes nicht festgelegt ist |
||
| okTotalUnreadyCount | (Nicht in Konsole angezeigt) | Anzahl der zulässigen nicht bereitgestellten Knoten, unabhängig von maxTotalUnreadyPercentage. |
Optional |
3
|
|
| recordDuplicatedEvents | (Nicht in Konsole angezeigt) | Aktivieren Sie den Autoscaler, um doppelte Ereignisse innerhalb eines 5-Minuten-Fensters zu drucken. | Optional |
false
|
|
| scaleDownCandidatesPoolMinCount | (Nicht in Konsole angezeigt) |
Mindestanzahl von Knoten, die als zusätzliche nicht leere Kandidaten für die horizontale Skalierung betrachtet werden, wenn einige Kandidaten aus der vorherigen Iteration nicht mehr gültig sind. Bei der Berechnung der Poolgröße für zusätzliche Kandidaten nehmen wir an.
|
Erforderlich |
50
|
|
| scaleDownCandidatesPoolRatio | (Nicht in Konsole angezeigt) | Ein Verhältnis von Knoten, die als zusätzliche nicht leere Kandidaten für die horizontale Skalierung betrachtet werden, wenn einige Kandidaten aus der vorherigen Iteration nicht mehr gültig sind. Ein geringerer Wert bedeutet eine bessere CA-Reaktionsfähigkeit, aber eine möglicherweise langsamere Skalierungslatenz. Ein höherer Wert kann die CA-Performance bei großen Clustern (Hunderte von Knoten) beeinträchtigen. Bei 1.0 wird diese Heuristik deaktiviert. CA nimmt alle Knoten als zusätzliche Kandidaten auf. | Erforderlich |
0.1
|
|
| scaleDownDelayAfterAdd | scaleDownDelayAfterAdd | Wie lange nach der vertikalen Skalierung wird die Bewertung fortgesetzt. | Erforderlich |
10m
|
|
| scaleDownDelayAfterDelete | (Nicht in Konsole angezeigt) | Wie lange nach dem Löschen des Knotens, bei dem die vertikale Auswertung fortgesetzt wird, wird standardmäßig das Scan-Intervall verwendet. | Erforderlich |
10s
|
|
| scaleDownDelayAfterFailure | (Nicht in Konsole angezeigt) | Wie lange nach einem Ausfall der horizontalen Skalierung die Auswertung fortgesetzt wird. | Erforderlich |
3m
|
|
| scaleDownEnabled | scaleDownEnabled | Sollte CA das Cluster vertikal skalieren. | Optional |
true
|
|
| scaleDownNonEmptyCandidatesCount | (Nicht in Konsole angezeigt) | Maximale Anzahl nicht leerer Knoten, die in einer Iteration als Kandidaten für eine horizontale Skalierung mit Drain betrachtet werden. Ein geringerer Wert bedeutet eine bessere CA-Reaktionsfähigkeit, aber eine möglicherweise langsamere Skalierungslatenz. Ein höherer Wert kann die CA-Performance bei großen Clustern (Hunderte von Knoten) beeinträchtigen. Setzen Sie diesen Wert auf einen nicht positiven Wert, um diesen heuristischen Wert zu deaktivieren. CA begrenzt nicht die Anzahl der Knoten, die er berücksichtigt. | Erforderlich |
30
|
|
| scaleDownUnneededTime | scaleDownUnneededTime | Gibt an, wie lange ein Knoten nicht benötigt werden soll, bevor er für eine horizontale Skalierung geeignet ist. | Erforderlich |
10m
|
|
| scaleDownUnreadyTime | (Nicht in Konsole angezeigt) | Gibt an, wie lange ein nicht bereitstehender Knoten nicht mehr benötigt werden soll, bevor er für eine horizontale Skalierung geeignet ist. | Erforderlich |
20m
|
|
| scaleDownUtilizationThreshold | (Nicht in Konsole angezeigt) | Knotenauslastungsebene, definiert als Summe der angeforderten Ressourcen geteilt durch Kapazität, unter der ein Knoten für die horizontale Skalierung berücksichtigt werden kann. | Erforderlich |
0.5
|
|
| scanInterval | scanInterval | Wie oft ein Cluster für die vertikale oder horizontale Skalierung neu bewertet wird. | Optional |
10s
|
|
| skipNodesWithCustomControllerPods | (Nicht in Konsole angezeigt) | Wenn true verwendet wird, löscht der Cluster-Autoscaler nie Knoten mit Pods, deren Eigentümer benutzerdefinierte Controller sind. |
Optional |
true
|
|
| skipNodesWithLocalStorage | (Nicht in Konsole angezeigt) | Bei true löscht der Cluster-Autoscaler niemals Knoten mit Pods mit lokalem Speicher, z.B. EmptyDir oder HostPath. |
Optional |
true
|
|
| skipNodesWithSystemPods | (Nicht in Konsole angezeigt) | Wenn true verwendet wird, löscht der Cluster-Autoscaler keine Knoten mit Pods aus dem Kube-System (mit Ausnahme von DaemonSet- oder Mirror-Pods).
|
Optional |
true
|
|
| statusConfigMapName | (Nicht in Konsole angezeigt) | Der Name des Status ConfigMap, den die CA schreibt. | Optional |
cluster-autoscaler-status
|
|
| stderrthreshold | (Nicht in Konsole angezeigt) | Der Schwellenwert für den Logschweregrad, über den Logs an stderr gesendet werden. Beispiel: Wenn Sie diesen Wert auf error setzen, werden alle Logs mit einem höheren Schweregrad als error an stderr gesendet. |
Optional |
info
|
|
| unremovableNodeRecheckTimeout | unremovableNodeRecheckTimeout | Der Timeout, bevor ein Knoten erneut geprüft wird, der zuvor nicht entfernt werden konnte. | Erforderlich |
5m
|
|
| v | (Nicht in Konsole angezeigt) | Die Zahl für den Ausführlichkeitsgrad der Protokollierung. | Optional |
0
|
|
| writeStatusConfigmap | (Nicht in Konsole angezeigt) | Muss CA Statusinformationen in eine configmap schreiben. | Optional |
true
|