oom killer理解和日志分析
前言
我们环境上接到报警,我们的应用停止运行了。环境上无dump文件保留下来(配置如果发生oom保存dump 文件),当我们查看系统日志
oom-killer查看各个日志含义
/var/log/messages 发现 系统中有文件调用 oom-killer 这个命令。
由于环境上面的日志文件不能发出来这里发出几个比较关键点用于以后直接定位日志出现
Sep 28 23:50:01 VM-0-9-centos kernel: node invoked oom-killer: gfp_mask=0x201da, order=0, oom_score_adj=0
Sep 28 23:50:01 VM-0-9-centos kernel: node cpuset=/ mems_allowed=0
这里 node invoked oom-killer 根据这个日志可以看出来是node 的创建导致内存不足调用oom-killer
Sep 28 14:50:01 VM-0-9-centos kernel: Out of memory: Kill process 5430 (java) score 800 or sacrifice child
Sep 28 14:50:01 VM-0-9-centos kernel: Killed process 5430 (java) total-vm:124654756kB, anon-rss:2428635kB, file-rss:0kB
在一份oom-killer日志末尾处 Killed process 表明杀死那个进程 5430 进程,5430 占用anon-rss:2428635kB(2.3G)大小。
Sep 28 14:50:01 VM-0-9-centos kernel: Node 0 DMA free:15900kB min:132kB low:164kB high:196kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15992kB managed:15908kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:0kB slab_unreclaimable:8kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes
Sep 28 14:50:01 VM-0-9-centos kernel: lowmem_reserve[]: 0 2801 7792 7792Sep 28 14:50:01 VM-0-9-centos kernel: Node 0 DMA32 free:43500kB min:24252kB low:30312kB high:36376kB
active_anon:2643608kB(2.5G) inactive_anon:61560kB active_file:40kB inactive_file:40kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:3129216kB managed:2869240kB mlocked:0kB dirty:0kB writeback:0kB mapped:748kB shmem:160024kB slab_reclaimable:54996kB slab_unreclaimable:6816kB kernel_stack:704kB pagetables:67440kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:275 all_unreclaimable? yes
Sep 28 14:50:01 VM-0-9-centos kernel: lowmem_reserve[]: 0 0 4990 4990Sep 28 14:50:01 VM-0-9-centos kernel: Node 0 Normal free:35100kB min:43192kB low:53988kB high:64788kB
active_anon:4609420kB(4.3G) inactive_anon:87644kB active_file:296kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:5242880kB managed:5110124kB mlocked:0kB dirty:0kB writeback:0kB mapped:4260kB shmem:242100kB slab_reclaimable:81876kB slab_unreclaimable:15720kB kernel_stack:1808kB pagetables:204928kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:511 all_unreclaimable? yes
Sep 28 14:50:01 VM-0-9-centos kernel: lowmem_reserve[]: 0 0 0 0
Node 0 DMA free:15900kB min:132kB
Node 0 DMA32 free:43500kB min:24252kB
Node 0 Normal free:35100kB min:43192kB
分别表明当前存在 Node 0 DMA / Node 0 DMA32/ Node 0 Normal 的空闲内存和最小内存。最小内存是保证系统运行。
Sep 28 14:50:01 VM-0-9-centos kernel: [ pid ] uid tgid total_vm rss nr_ptes swapents oom_score_adj name
Sep 28 14:50:01 VM-0-9-centos kernel: [ 5430] 1000 5430 36913689 1537770 66407 0 0 java
Sep 28 14:50:01 VM-0-9-centos kernel: [17132] 0 17132 21804 215 44 0 0 node
Sep 28 14:50:01 VM-0-9-centos kernel: [17133] 0 17133 21804 285 43 0 0 node
Sep 28 14:50:01 VM-0-9-centos kernel: [17134] 0 17134 21866 290 44 0 0 node
Sep 28 14:50:01 VM-0-9-centos kernel: [17135] 0 17135 21866 290 44 0 0 node
这个内存中表明内存中当时运行的的程序(数量很多,这里随便贴出几个用于下次定位)
oom killer理解和日志分析相关推荐
- linux oom日志分析,oom killer理解和日志分析:知识储备
oom killer日志分析,这是前篇,准备一些基础知识 带着问题看: 1.什么是oom killer 他是Linux内核设计的一种机制,在内存不足的会后,选择一个占用内存较大的进程并kill掉这个进 ...
- 日志分析之识别真假蜘蛛与处理办法
导读(日志分析是站长必须要做的事情,如果一个网站主或者seoer不对日志进行分析,那么他绝对不是一个合格的站长.日志分析相关知识很多,我相信大部分站长对基础分析都会掌握,但是一些深入的日志分析问题可能 ...
- oom killer日志分析
早上发现一台业务机器业务运行异常,登陆检查发现crond服务停止 [root@hostname~]# systemctl status crond * crond.service - Command ...
- linux内核oom,linux OOM killer分析
基本概念 Linux 内核有个机制叫OOM killer(Out-Of-Memory killer),该机制会监控那些占用内存过大,尤其是瞬间很快消耗大量内存的进程,为了防止内存耗尽而内核会把该进程杀 ...
- 理解和配置 Linux 下的 OOM Killer
原文:http://www.vpsee.com/2013/10/how-to-configure-the-linux-oom-killer/ 最近有位 VPS 客户抱怨 MySQL 无缘无故挂掉,还有 ...
- 认真理解 oom killer 备忘
最近项目测试,发现一个oom killer问题,所以搜集了一些文章,理解并做记录. 现象:做性能测试时,程序自己退出,记录"killed"日志.查了下syslog发现详细记录了问题 ...
- java g1 gc ref proc_深入理解垃圾收集器的G1及日志分析
尽管Hotspot 最新的垃圾回收器G1是在2006年推出的.但是G1从推行至今的市场反响来看,但现在足以证明这款垃圾收集器是经得起考验的,从java9开始,就默认为G1垃圾收集器.G1是一款面向服务 ...
- Out of memory, OOM killer输出信息分析
当out of memory发生时,out_of_memory函数会选择一个内核认为犯有分配过多内存 "罪行"的进程,并杀死该进程. 这就有很大的几率腾出较多的空闲页,然后再跳转回 ...
- MAT 分析OOM out of memory模拟OOM Killer
MAT : 怎么加载/这里边的一些概念 分别对应分析什么问题(泄露,线程,类加载器导致的泄露, 对象空间情况/ domain tree : 最大对象及谁持有它,保持存活的 histogram : 每个 ...
- Linux/Centos7系统管理之深入理解Linux文件系统与日志分析
前言:inode(文件节点)与block(数据块)硬链接与软连接恢复误删除的文件 (即rm-rf 的操作,可以先进行备份的操作,然后可以进行恢复ext4和xfs文件系统皆可)日志文件的分类用户日志与程 ...
最新文章
- C++ RCSP智能指针简单实现与应用
- android NDK JNI设置自己的log输出函数
- Unable to simultaneously satisfy constraints.
- csgo怎么控制电脑玩家_电脑远程控制怎么弄
- C++分析使用拷贝控制成员和调用构造函数的时机
- hadoop常见算法(持续更新)
- 软工小学期实践PART ONE
- 设计类时需要注意的6个地方
- 要用计算机才能算的题,计算机基础题精选,要考90分以上的同学进考场前必看 -电脑资料...
- 「快学springboot」SpringBoot整合freeMark模板引擎
- Linux中使用定时任务每周定时清理45天以前日志
- 从动态表单得到的一些思考
- Python基础学习5 -字符串
- 360视频:旋转球面投影RSP
- php公益培训第2部,PHP公益培训第3部-HTTP协议视频教程
- ALL_TAB_COLS
- c语言中整数和实数能比较大小吗,c语言中,输入一个数字,怎么判断那个数字是整数还是实数,代码如下,输入实数后出现了死循环...
- Real Digital德国站real.de怎么样?Payoneer绿色入驻通道!
- python求数组平均值numpy_计算numpy数组的平均值
- 使用H5Streamer轻松搭建视频监控项目
热门文章
- csdn 问答使用与测评
- python histogram函数_Python numpy.histogram_bin_edges函数方法的使用
- Python从RGBD数据进行3D场景重建
- 云上PDF怎么删除页眉页脚_有办法了!批量删除多个Word页眉页脚
- dw网页制作教程百度云盘_详细的dw网页制作教程_dw中图片轮播
- MAC版Sublime Text 解决 Unable to download XXX 问题
- 微信小程序等第三方应用接入易班的api
- 用java编写中国象棋_如何用Java实现网络中国象棋室(一)
- vulnhub-Tiki - 类oscp靶机攻略1
- 解决批改网写英语作文不能粘贴问题