MONGO DB too many mongodb page_faults 报错排查step by step的示例分析

技术MONGO DB too many mongodb page_faults 报错排查step by step的示例分析这篇文章给大家介绍MONGO DB too many mongodb page_faults

本文介绍了Mongo DB太多MongoDB page _ faults错误报告的实例分析和逐步排除故障的方法。内容非常详细,有兴趣的朋友可以参考一下,希望对大家有所帮助。

早上,运维的同学,早上打来电话,说zabbix的MONGO监控到了报警。图片发给我,报告的错误是mongodb page_faults太多。

最初,page_faults的根本原因是MONGO瞬间从磁盘读取了大量数据,从而导致了page_faults。

此时,一些MONGO DBA会立即响应,查看是否有完整的COLLECION SCAN,因为没有好的索引,大量的扫描会导致这个问题。

但是这个问题的奇妙之处在于,报告错误的PAGE_FAULTS机器没有查询(不是主库)。既然没有查询,你是怎么得到page_faults的?

官方解释截图

MONGO  DB  too  many  mongodb  page_faults   报错排查step  by  step的示例分析

立即确认刚启动的MONGO standy库是否存在page_faults问题。

这些是有问题的机器。(不要笑。新机器中肯定没有这么多页面错误。)

MONGO  DB  too  many  mongodb  page_faults   报错排查step  by  step的示例分析

比较主机的page_faults。

MONGO  DB  too  many  mongodb  page_faults   报错排查step  by  step的示例分析

果然,这个问题机有很多page_faults。

另外,看看内存状态。果然,SWAP已经被使用了。

MONGO  DB  too  many  mongodb  page_faults   报错排查step  by  step的示例分析

通过mongostat查看,系统没有任何问题。

MONGO  DB  too  many  mongodb  page_faults   报错排查step  by  step的示例分析

看着日志。

MONGO  DB  too  many  mongodb  page_faults   报错排查step  by  step的示例分析

可以看到日志已经指向了advisoryHostFQDNS,通过日志发现这个错误一直在发生,执行一个命令需要80秒。

经过查询,可能有几个原因,因为这个advisoryHostFQDNs是集群中每一台MONGODB机器的域名解析,这里查询的信息来自OPS MANANGER,说明我们这边域名解析可能存在一些问题。

这里解决问题的方法:填写每台机器上所有集群MONGODB和OPS MANANGE上HOSTS的机器名称,而不是通过DNS解析,看能否解决以上问题。

mongo db太多MongoDB page _ faults错误报告和逐步排除故障的示例分析在此分享,希望。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/66426.html

(0)

相关推荐

  • 如何理解对Java的异常

    技术如何理解对Java的异常这篇文章主要介绍“如何理解对Java的异常”,在日常操作中,相信很多人在如何理解对Java的异常问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何理解对Java

    攻略 2021年10月23日
  • javascript如何判断id是否存在

    技术javascript如何判断id是否存在这篇文章主要为大家展示了“javascript如何判断id是否存在”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascrip

    攻略 2021年11月7日
  • 大数据总线平台DBus设计思路与工作原理

    技术大数据总线平台DBus设计思路与工作原理大数据总线平台DBus设计思路与工作原理,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、背景企

    攻略 2021年12月3日
  • 7.数组和正则

    技术7.数组和正则 7.数组和正则1.数组数据结构
    1.1什么是数组
    数组的英文是array , 可以存入多个不同类型的数据,是一个复合数据类型。
    1.2定义数组
    $a1 = array(1 , 1.5

    礼包 2021年12月23日
  • eos区块链技术(eos怎么能增长)

    技术在EOS区块链上使用EOSJS和scatter开发dApp今天就跟大家聊聊有关在EOS区块链上使用EOSJS和scatter开发dApp,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根

    攻略 2021年12月14日
  • 什么是php curl

    技术什么是php curl这篇文章主要讲解了“什么是php curl”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么是php curl”吧!

    攻略 2021年11月8日