Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ Cloud Container Engine/ Guía del usuario/ Nodos/ Optimizing Node System Parameters/ Lista de parámetros del sistema de nodos que se pueden optimizar
Actualización más reciente 2024-09-10 GMT+08:00

Lista de parámetros del sistema de nodos que se pueden optimizar

CCE proporciona parámetros de sistema de nodos predeterminados, que pueden causar cuellos de botella en el rendimiento en algunos escenarios. Por lo tanto, puede personalizar y optimizar algunos parámetros del sistema de nodos. Lista de parámetros del sistema de nodos que se pueden optimizar describe los parámetros del sistema del nodo.

  • La modificación tiene ciertos riesgos. Usted necesita estar familiarizado con los comandos de Linux y el sistema operativo Linux.
  • Los parámetros enumerados en Tabla 1 han sido probados y verificados. No modifique otros parámetros. De lo contrario, pueden producirse fallos de nodo.
  • Los comandos para modificar los parámetros del sistema de nodos solo son válidos cuando se utilizan las imágenes públicas. Los comandos proporcionados en este documento son de referencia solo cuando se utilizan las imágenes privadas.
  • Después de reiniciar el nodo, ejecute el comando sysctl -p para actualizar el valor del parámetro.
Tabla 1 Lista de parámetros del sistema que se pueden optimizar

Parámetro

Ubicación de parámetro

Descripción

Referencia

kernel.pid_max

/etc/sysctl.conf

Número máximo de ID de proceso en un nodo

Consultando el parámetro:

sysctl kernel.pid_max

Cambio de los límites de ID de proceso (kernel.pid_max)

RuntimeMaxUse

/etc/systemd/journald.conf

Límite superior de la memoria ocupada por la caché de log de nodo. Si no se establece este parámetro, una gran cantidad de memoria se ocupará después de que el sistema se ejecute durante mucho tiempo.

Consultando el parámetro:

cat /etc/systemd/journald.conf | grep RuntimeMaxUse

Cambio del RuntimeMaxUse de la memoria utilizada por la caché de log en un nodo

Openfiles

/etc/security/limits.conf

Número máximo de controladores de archivo para un solo proceso en un nodo. Establezca este parámetro en función de los requisitos de servicio.

Consultando el parámetro:

ulimit -n

Cambio del número máximo de controladores de archivo para un solo proceso en un nodo

(dentro del contenedor de Openfiles)

LimitNOFILE

LimitNPROC

  • CentOS/EulerOS:

    /usr/lib/systemd/system/docker.service

  • Ubuntu:

    /lib/systemd/system/docker.service

Número máximo de controladores de archivo para un solo proceso en un contenedor. Establezca este parámetro en función de los requisitos de servicio.

Consultando el parámetro:

cat /proc/`pidof dockerd`/limits | grep files

Cambio del número máximo de identificadores de archivo para un proceso de contenedor único

file-max

/etc/sysctl.conf

Número máximo de controladores de archivo en el sistema. Establezca este parámetro en función de los requisitos de servicio.

Consultando el parámetro:

sysctl fs.file-max

Cambio del número máximo de controladores de archivo de nivel de sistema en un nodo

nf_conntrack_buckets

nf_conntrack_max

/etc/sysctl.conf

Capacidad de la tabla de seguimiento de conexiones. Establezca este parámetro en función de los escenarios de servicio.

Uso del bucket (= / [nf_conntrack_count] / [nf_conntrack_buckets]).

Ajuste el valor de los bucket para asegurarse de que el uso del bucket sea inferior a 0.7.

Consultando el parámetro:

sysctl net.netfilter.nf_conntrack_count
sysctl net.netfilter.nf_conntrack_buckets
sysctl net.netfilter.nf_conntrack_max

Modificación de parámetros de núcleo de nodo

net.netfilter.nf_conntrack_tcp_timeout_close

/etc/sysctl.conf

Tiempo de expiración de la entrada de la conexión en el estado de cierre en la tabla de seguimiento de conexiones. Acortando el tiempo de caducidad puede acelerar el reciclaje.

Consultando el parámetro:

sysctl net.netfilter.nf_conntrack_tcp_timeout_close

net.netfilter.nf_conntrack_tcp_be_liberal

/etc/sysctl.conf

El valor del parámetro es 0 o 1.

  • 0: La función está deshabilitada. Todos los paquetes RST que no están en la ventana TCP se marcan como no válidos.
  • 1: La función está habilitada. Solo los paquetes RST que no están en la ventana TCP se marcan como no válidos. En el caso de contenedores, la activación de este parámetro puede evitar que se limite el ancho de banda de las conexiones TCP que se han traducido mediante NAT.

Consultando el parámetro:

sysctl net.netfilter.nf_conntrack_tcp_be_liberal

tcp_keepalive_time

/etc/sysctl.conf

Intervalo en el que se envía un mensaje de mantenimiento de TCP. Si este parámetro se establece en un valor grande, las conexiones TCP pueden suspenderse en la fase Close_wait durante mucho tiempo, agotando los recursos del sistema.

Consultando el parámetro:

sysctl net.ipv4.tcp_keepalive_time

tcp_max_syn_backlog

/etc/sysctl.conf

Número máximo de medias conexiones de TCP, es decir, el número máximo de conexiones en la cola SYN_RECV.

Consultando el parámetro:

sysctl net.ipv4.tcp_max_syn_backlog

tcp_max_tw_buckets

/etc/sysctl.conf

Especifica el número máximo de sockets en el estado time-wait que puede existir en cualquier momento. Si el valor del parámetro es demasiado grande, los recursos de nodo pueden agotarse.

Consultando el parámetro:

sysctl net.ipv4.tcp_max_tw_buckets

net.core.somaxconn

/etc/sysctl.conf

Número máximo de conexiones de TCP y tamaño máximo de la cola ESTABLISHED. Si el valor del parámetro es demasiado pequeño, el valor puede ser insuficiente.

Consultando el parámetro:

sysctl net.core.somaxconn

max_user_instances

/etc/sysctl.conf

Número máximo de instancias de inotificación permitidas para cada usuario. Si el valor del parámetro es demasiado pequeño, el número de instancias de inotify puede ser insuficiente en los contenedores.

Consultando el parámetro:

sysctl fs.inotify.max_user_instances

max_user_watches

/etc/sysctl.conf

Número máximo de directorios de todas las instancias de supervisión. Si el valor del parámetro es demasiado pequeño, el número de directorios puede ser insuficiente en escenarios de contenedor.

Consultando el parámetro:

sysctl fs.inotify.max_user_watches

netdev_max_backlog

/etc/sysctl.conf

Tamaño de la cola de recepción de paquetes de la pila de protocolos de red. Si el valor del parámetro es demasiado pequeño, el tamaño de la cola puede ser insuficiente.

Consultando el parámetro:

sysctl net.core.netdev_max_backlog

net.core.wmem_max

net.core.rmem_max

/etc/sysctl.conf

Tamaño de memoria (bytes) del búfer de envío y recepción. Si este parámetro se establece en un valor pequeño, el tamaño de memoria puede ser insuficiente en escenarios de los archivos grandes.

Consultando el parámetro:

sysctl net.core.wmem_max
sysctl net.core.rmem_max

net.ipv4.neigh.default.gc_thresh1

net.ipv4.neigh.default.gc_thresh2

net.ipv4.neigh.default.gc_thresh3

/etc/sysctl.conf

Optimización de la recolección de basura de entradas de ARP.

Consultando el parámetro:

sysctl net.ipv4.neigh.default.gc_thresh1
sysctl net.ipv4.neigh.default.gc_thresh2
sysctl net.ipv4.neigh.default.gc_thresh3

vm.max_map_count

/etc/sysctl.conf

Si este parámetro se establece en un valor pequeño, se muestra un mensaje que indica que el espacio es insuficiente durante la instalación de ELK.

Consultando el parámetro:

sysctl vm.max_map_count