MongoDB监控报警典型实践
更新时间:2023-11-22
概览
百度智能云数据库 DocDB for MongoDB 提供服务状态监控和报警功能,本篇主要介绍云数据库 DocDB for MongoDB 实例的常用报警参数(磁盘空间使用率、实例连接数、出入口流量等)和报警方式的设置方法。
需求场景
- 随着数据量及业务的发展,MongoDB实例的性能资源使用率可能会逐步提升,直至被消耗殆尽。
- 某些场景下MongoDB实例的性能资源可能被大量地异常消耗。如大量的慢查询引起的CPU使用率上升,大量数据写入导致磁盘空间被急剧消耗等情况。
- 通过对实例的关键性能指标设置监控报警规则,让您在第一时间得知指标数据发生异常,帮助您迅速定位并处理故障。
方案概述
查看监控
查看监控步骤
查看实例监控的步骤如下:
- 登录MongoDB管理控制台。
- 在页面左上角,选择实例所在的地域。
- 在左侧导航栏,单击副本集实例列表。
-
在左侧导航栏中点击监控,然后通过选择不同的节点或者组件,您可以查看副本集和分片集群中不同节点的监控信息:
-
副本集实例。 副本集实例可以选择副本集内的节点和时间段查看监控信息。
-
分片集群实例。分片集群实例可以选择分片集群内的不同组件和时间段查看监控信息。
-
监控项说明
为了更好地监控和运维MongoDB实例,百度智能云提供了以下监控参数:
监控参数 | 说明 |
---|---|
CPU使用率 | 实例CPU的使用率,可作为扩容指示指标 |
内存使用率 | 实例的可用内存使用量,可作为扩容指示指标 |
磁盘空间使用率 | 实例使用的磁盘容量百分比,可作为扩容指示指标 |
磁盘空间使用量 | 实例使用的磁盘容量,可作为扩容指示指标 |
操作量 | 每秒操作实例的操作次数,业务特征指标: insert操作 query操作 update操作 getmore操作 delete操作 command操作 |
连接数 | 连接到实例的客户端会话数 |
网络流量 | 网络连接的吞吐量,业务特征指标 |
报警设置
报警策略添加步骤
为了更便捷的自动运维实例,并在监控项出现异常时自动通知用户,您可以针对MongoDB实例的指定节点和相关监控项创建报警策略。报警策略能设定监控项阈值和通知方式,当某个监控项达到阈值时,自动给用户发送报警信息通知用户。
报警策略的添加步骤如下:
-
在实例监控页面,选择需要设置报警策略的节点,并点击报警详情,进入报警策略页面,分片集群的报警策略设置入口如下图所示:
-
点击添加策略,开始对实例节点创建报警策略,报警策略的配置包括策略信息和报警动作两部分,其中策略信息是选择监控项类型和报警阈值,报警动作是报警发生时执行的动作,
-
创建报警策略
-
创建报警动作
-
- 填写策略信息和报警动作,完整填写后点击“提交”后,报警策略就创建成功了。
报警策略参数说明
报警策略参数说明
创建报警策略中的各参数说明及设置建议:
报警策略创建参数 | 说明 | 设置建议 |
---|---|---|
名称 | 报警策略命名 | 名称应具有可读性 |
监控项 | 监控项类型: 操作项监控:insert、query、delete、update、getmore、command 实例连接数 入口流量 出口流量 磁盘使用率 磁盘使用量 |
建议优先设置磁盘使用率报警策略,以便及时扩容,避免磁盘打满影响写入 |
统计周期 | 每隔一个周期统计一次,按照下面的统计方法计算一个周期内的监控项数值,可选:1分钟、5分钟、10分钟、15分钟 | 一般选择5分钟,如果对数据敏感度要求很高,可以选择1分钟 |
统计方法 | 每个周期内统计值的计算方法:平均值、和值、最大值、最小值、样本数 | 平均值及和值是常用的统计方法 |
阈值 | 统计项的预设阈值,可设当统计项>、>=、=、<、<=阈值时触发报警 | 阈值设置参考下文的“报警阈值一般设置” |
重复几次后报警 | 统计值操过阈值的次数连续出现几次后报警 | 一般可设为3次,如果需要报警具有更高敏感性,可以设置为1次 |
报警阈值设置建议
- 磁盘使用情况报警设置
- 磁盘空间使用率具有相对性的特点,不需要每次扩容后修改报警策略,因此通常选择它作为报警项。也可以根据业务需要设置磁盘空间使用量绝对数值作为报警项。
- 磁盘使用率的报警阈值设置为可用磁盘物理空间的80%较为合适。当超过预设红线,应该检查磁盘消耗状况,确定是否由于正常数据业务致使磁盘占用,进一步通过定位故障、删除数据或者扩容升配来满足业务需求。磁盘使用率常用的报警参数如下:
- 连接数报警设置。在云数据库 DocDB for MongoDB 实例内,连接数建议设置为您的实例最大连接数的80%,如果实例参数频繁越过预设值,应检查工作负载情况或者升级实例配置。
- 其他参数。其他参数可根据用户历史数据设定最小值,并设置一个最大阈值,当收到报警信息时及时处理报警,采取对应的应对措施:处理故障或者升配。
报警动作设置建议
参数 | 说明 | 设置建议 |
---|---|---|
动作名称 | 报警动作的名称 | 名称应具有可读性 |
可用地域 | 不同地域的报警动作仅适用于各自地域的报警策略 | 根据实例的地域分布设置 |
通知方式 | 百度智能云目前支持“邮件通知“,”短信通知“,”电话通知“,以及三者的组合通知形式 | 短信和电话通知具有更高的时效性 |
通知对象 | 支持"用户组"和"用户"两种形式 若您当前没有已创建的通知对象,您可以点击“添加用户组”或“添加用户”来进行创建 |
建议填写有云MongoDB数据库运维或管理权限的运维人员,以便及时处理报警。您还可以创建和配置用户组,方便在运维人员发生变动时可以快捷地调整报警对象。关于如何添加用户组和添加用户,你可以查看多用户访问控制 |
定时关闭 | 可选择是否定时关闭该报警动作 | 为了防止实例在改配、重启和其他运维操作期间的报警误报,可以根据业务需要设置定时关闭屏蔽报警 |
相关产品
云监控BCM:全面、可靠、及时的监控服务