kube-proxy
Wenn Sie das Cluster-Add-on "kube-proxy" aktivieren, können Sie die folgenden Schlüssel/Wert-Paare als Argumente übergeben.
Bei großen Clustern wird empfohlen, die kube-proxy-Konfiguration zu prüfen, bevor Sie das Add-on bereitstellen:
- Prüfen Sie
kube-proxy.ContainerResources. kube-proxy wird auf jedem Worker-Knoten ausgeführt, und die Ressourcenanforderungen können sich erhöhen, wenn die Anzahl der Services, EndpointSlices, Endpunkt-IPs und Aktualisierungsereignisse steigt. Erhöhen Sie CPU- und Speicheranforderungen und -begrenzungen, wenn kube-proxy-Pods einen anhaltenden CPU- oder Speicherdruck aufweisen. - Seien Sie beim Festlegen von nodeSelectors, Affinität oder Toleranzen vorsichtig. kube-proxy muss auf jedem Worker-Knoten ausgeführt werden, der ein Kubernetes-Service-Networking erfordert. Planungs-Constraints, die Knoten ausschließen, können diese Knoten ohne funktionales Service-Networking verlassen.
- Verwenden Sie
rollingUpdate-Einstellungen, mit denen kube-proxy-Aktualisierungen über eine große Anzahl von Knoten hinweg Fortschritte erzielen können. Vermeiden Sie Einstellungen, die zu viele Knoten gleichzeitig aktualisieren oder verhindern, dass Updates durch das Cluster rollen. - Wenn Sie
customizeKubeProxyConfigMapauf "true" setzen, prüfen Sie die kube-proxy-Synchronisierungseinstellungen für die Kubernetes-Version und den Proxymodus des Clusters. Die Kubernetes-Dokumentation weist darauf hin, dass sehr große Cluster im iptables-Modus möglicherweise eine größereminSyncPeriodbenötigen, wenn die Synchronisierungsdauer der kube-proxy-Regel viel größer als eine Sekunde ist (siehe Virtuelle IPs und Serviceproxys in der Kubernetes-Dokumentation). - Wenn die Kubernetes-Version, das Betriebssystem und das Netzwerk-Plug-in des Clusters den nftables-Modus unterstützen, prüfen Sie, ob nftables für Ihre Workload geeignet ist. In der Kubernetes-Dokumentation wird darauf hingewiesen, dass der nftables-Modus eine bessere Performance und Skalierbarkeit als der iptables-Modus bietet. Außerdem wird darauf hingewiesen, dass er möglicherweise nicht mit allen Netzwerk-Plug-ins kompatibel ist (siehe Virtuelle IPs und Service-Proxies in der Kubernetes-Dokumentation).
| 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. Nicht verwendet von:
Mögliche Äquivalente:
|
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. Nicht verwendet von:
Mögliche Äquivalente:
|
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. Nicht verwendet von:
Mögliche Äquivalente:
|
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. Nicht verwendet von:
Mögliche Äquivalente:
|
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. Mögliche Äquivalente:
|
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. Nicht verwendet von:
|
Optional | Null | Null |
| Schlüssel (API und CLI) | Anzeigename des Schlüssels (Konsole) | Beschreibung | Erforderlich/Optional | Standardwert | Beispielwert |
|---|---|---|---|---|---|
customizeKubeProxyConfigMap
|
kube-proxy anpassen configMap |
Wenn Oracle Kube-Proxy automatisch für Sie verwalten soll, setzen Sie Wenn Sie das Kube-Proxy-Verhalten anpassen möchten, setzen Sie |
Erforderlich |
false
|
true
|
kube-proxy.ContainerResources
|
kube-proxy-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. |