kube-proxy
Al activar el complemento de cluster kube-proxy, puede transferir los siguientes pares clave/valor como argumentos.
Tenga en cuenta que para clusters grandes, le recomendamos que revise la configuración de kube-proxy antes de desplegar el complemento:
- Revise
kube-proxy.ContainerResources. kube-proxy se ejecuta en cada nodo de trabajador y los requisitos de recursos pueden aumentar a medida que aumenta el número de servicios, segmentos de punto final, IP de punto final y eventos de actualización. Aumente las solicitudes y los límites de CPU y memoria si los pods de proxy de kube muestran una presión sostenida de CPU o memoria. - Tenga cuidado al definir nodeSelectors, affinity o tolerations. kube-proxy debe ejecutarse en todos los nodos de trabajador que requieran redes de servicio de Kubernetes. La programación de restricciones que excluyen nodos puede dejar esos nodos sin una red de servicio funcional.
- Utilice la configuración
rollingUpdateque permite que las actualizaciones de proxy de kube progresen en un gran número de nodos. Evite los valores que actualizan demasiados nodos a la vez o evite que las actualizaciones avancen por el cluster. - Si define
customizeKubeProxyConfigMapen true, revise la configuración de sincronización de kube-proxy para la versión de Kubernetes del cluster y el modo de proxy. La documentación de Kubernetes señala que en el modo iptables, es posible que los clusters muy grandes necesiten unminSyncPeriodmás grande si la duración de la sincronización de reglas de proxy de kube es mucho mayor que un segundo (consulte IP virtuales y proxies de servicio en la documentación de Kubernetes). - Si la versión del cluster de Kubernetes, el sistema operativo y el plugin de red soportan el modo nftables, evalúe si nftables es adecuado para la carga de trabajo. La documentación de Kubernetes señala que el modo nftables está diseñado para proporcionar un mejor rendimiento y escalabilidad que el modo iptables, pero también señala que es posible que no sea compatible con todos los plugins de red (consulte IP virtuales y proxies de servicio en la documentación de Kubernetes).
| Clave (API y CLI) | Nombre mostrado de clave (consola) | Descripción | Necesario/Opcional | Valor por defecto | Valor de ejemplo |
|---|---|---|---|---|---|
affinity |
afinidad |
Grupo de reglas de programación de afinidad. Formato JSON en texto sin formato o codificado con Base64. No utilizado por:
Posibles equivalentes:
|
Opcional | nulo | nulo |
nodeSelectors |
selectores de nodos |
Puede utilizar selectores de nodos y etiquetas de nodos para controlar los nodos de trabajador en los que se ejecutan los pods de complementos. Para que un pod se ejecute en un nodo, el selector de nodos del pod debe tener la misma clave/valor que la etiqueta del nodo. Defina Formato JSON en texto sin formato o codificado con Base64. No utilizado por:
Posibles equivalentes:
|
Opcional | nulo | {"foo":"bar", "foo2": "bar2"}El pod solo se ejecutará en nodos que tengan la etiqueta |
numOfReplicas |
numOfReplicas | Número de réplicas del despliegue del complemento. No utilizado por:
Posibles equivalentes:
|
Obligatorio | 1Crea una réplica del despliegue del complemento por cluster. |
2Crea dos réplicas del despliegue del complemento por cluster. |
rollingUpdate |
rollingUpdate |
Controla el comportamiento deseado de la actualización sucesiva mediante maxSurge y maxUnavailable. Formato JSON en texto sin formato o codificado con Base64. No utilizado por:
Posibles equivalentes:
|
Opcional | nulo | nulo |
tolerations |
tolerancias |
Puede utilizar contaminantes y tolerancias para controlar los nodos de trabajador en los que se ejecutan los pods de complementos. Para que un pod se ejecute en un nodo que tenga un tinte, el pod debe tener una tolerancia correspondiente. Defina Formato JSON en texto sin formato o codificado con Base64. Posibles equivalentes:
|
Opcional | nulo | [{"key":"tolerationKeyFoo", "value":"tolerationValBar", "effect":"noSchedule", "operator":"exists"}]Solo los pods que tienen esta tolerancia se pueden ejecutar en nodos de trabajador que tengan el mantenimiento |
topologySpreadConstraints |
topologySpreadConstraints |
Cómo difundir vainas coincidentes entre la topología dada. Formato JSON en texto sin formato o codificado con Base64. No utilizado por:
|
Opcional | nulo | nulo |
| Clave (API y CLI) | Nombre mostrado de clave (consola) | Descripción | Necesario/Opcional | Valor por defecto | Valor de ejemplo |
|---|---|---|---|---|---|
customizeKubeProxyConfigMap
|
personalizar kube-proxy configMap |
Si desea que Oracle gestione el proxy de Kube automáticamente, defina Si desea personalizar el comportamiento del proxy de Kube, defina |
Obligatorio |
false
|
true
|
kube-proxy.ContainerResources
|
Recursos de contenedor kube-proxy |
Puede especificar las cantidades de recursos que solicitan los contenedores complementarios y establecer límites de uso de recursos que los contenedores complementarios no pueden superar. Formato JSON en texto sin formato o codificado con Base64. |
Opcional | nulo |
{"limits": {"cpu": "500m", "memory": "200Mi" }, "requests": {"cpu": "100m", "memory": "100Mi"}}
Cree contenedores complementarios que soliciten 100 millicores de CPU y 100 mebibytes de memoria. Limite los contenedores complementarios a 500 millicores de CPU y 200 mebibytes de memoria. |