cluster - Linux SLUB: no se puede asignar memoria en el nodo
kubernetes repo (1)
Estamos recibiendo con frecuencia debajo del mensaje en /var/log/messages
kernel: SLUB: Unable to allocate memory on node -1 (gfp=0x8020)
A continuación se establece la información
OS - Centos7.3
Kernel - 3.10.0-327.36.3.el7.x86_64
Docker - 1.12.6
Kubernetes - 1.5.5
Tenemos una nube privada impulsada por kurbernetes, que tiene 10 nodos; funcionó bien hasta el mes pasado y ahora recibimos estas alertas con mucha frecuencia en todos los nodos, los contenedores / contenedores también aumentaron en los últimos días.
Tenemos suficiente memory
y cpu
disponibles en cada nodo.
Cualquier ajuste fino para estas alertas será muy útil.
Información adicional: opciones de sysctl.conf
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_max_syn_backlog = 4096
net.core.somaxconn = 1024
net.ipv4.tcp_syncookies = 1
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.rmem_default = 65535
net.core.wmem_default = 65535
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.ip_local_port_range = 1024 65535
vm.max_map_count = 262144
vm.swappiness=10
vm.vfs_cache_pressure=100
los problemas parecen ser con kernel
, primero una comprobación de caída si la memoria de intercambio está asignada correctamente o no por free -m
y mkswap -c
, si swap no está asignado correctamente, hazlo. si el intercambio es correcto, entonces es posible que deba actualizar el kernel.