MongoDB 异常宕机与参数cacheSizeGB

近期,处理一MongoDB异常宕机故障,与MongoDB引擎参数cacheSizeGB相关,该参数用来限制MongoDB的wiredTiger引擎使用内存的量。下边是故障处理过程,供以后问题处理参考。

    业务方反馈:MongoDB在2019.9.16 9:16:00异常宕机,经手工正常重启,但是查看mongodb日志没有发现异常

报错。 https://wenku.baidu.com/view/4bac53c8326c1eb91a37f111f18583d048640f38

    问题排查过程: 

    1、观察mongodb的日志,发现除了手工重启的记录,并没有报错日志 

    2、根据mongodb运行的机制,它是消耗内存的大户,并且运行在操作系统上的应用软件无报错直接宕机,

一般是与操作系统资源故障相关,如:主机内存、IO、网络等等。郑州不孕不育医院:http://yyk.39.net/zz3/zonghe/1d427.html

    3、查看主机操作系统日志,发现有OOM告警提示 

--2019.9.16 9:17:10分,操作系统日志提示:mongod invoked oom-killer

--2019.9.16 9:17:12分,操作系统日志提示:操作系统swap空间耗尽

--2019.9.16 9:17:13分,操作系统日志提示:mongod进程28232被kill掉,被kill时其占用内存31G左右

    4、看操作系统内存工32G 

    5、查看mongod的启动配置文件,配置文件中并没有限制mongod内存使用量的参数cacheSizeGB

    6、分析总结: 

    2019.9.16 9:17:10~9:17:13,主机内存和swap相继耗尽,引起 oom-killer kill  mongod,导致mongodb数据库

无疾而终。建议客户在mongodb的启动配置文件中加入mongod的内存使用限制参数cacheSizeGB。


猜你喜欢

转载自blog.51cto.com/14510351/2439578
今日推荐