Linux SLUB:无法在节点上分配内存
发布时间:2020-12-14 01:41:02 所属栏目:Linux 来源:网络整理
导读:我们经常在/ var / log / messages中的消息下面 kernel: SLUB: Unable to allocate memory on node -1 (gfp=0x8020) 在某些情况下,后跟分配表 kernel: cache: sigqueue(12019:454c4ebd186d964699132181ad7367c669700f7d8991c47d4bc053ed101675bc),object siz
我们经常在/ var / log / messages中的消息下面
kernel: SLUB: Unable to allocate memory on node -1 (gfp=0x8020) 在某些情况下,后跟分配表 kernel: cache: sigqueue(12019:454c4ebd186d964699132181ad7367c669700f7d8991c47d4bc053ed101675bc),object size: 160,buffer size: 160,default order: 0,min order: 0 kernel: node 0: slabs: 57,objs: 23313,free: 0 kernel: node 1: slabs: 35,objs: 14315,free: 0 好的,免费是0,但这怎么可以调整? 以下是设置信息 OS - Centos7.3 Kernel - 3.10.0-327.36.3.el7.x86_64 Docker - 1.12.6 Kubernetes - 1.5.5 我们拥有由kurbernetes提供支持的私有云,拥有10个节点;它在上个月工作正常,现在我们在每个节点上经常收到这些警报,最后几天pod /容器也增加了. 我们在每个节点上都有足够的内存和CPU. 对这些警报进行任何微调都会非常有帮助. 附加信息: 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 解决方法
问题似乎与内核有关,首先是通过free -m和mkswap -c检查交换内存是否正确分配,如果交换没有正确分配,请执行此操作.如果swap很好,那么你可能需要更新内核.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |