MongoDB Atlas维护指南:常见类型、注意事项与窗口设置

为了给Atlas用户更好的产品体验,MongoDB产品团队会进行定期维护。

本文将会介绍:

  • 常见维护项目种类及频率,注意事项
  • 维护期间的影响及建议
  • 维护窗口设置说明
  • 维护告警设置和邮件通知范例

维护窗口常见项目

  • 定期SSL证书轮换
  • 软件升级:包括MongoDB的小版本升级、其他附属功能的版本升级
  • 非紧急安全补丁
  • 云服务提供商的非紧急维护,例如:
    • 硬件更改(例如EC2实例升级)
    • 实例操作系统升级(例如从CentOS 7.5升级到7.6)

常见维护窗口种类及频率

1、实例重启:虚拟机重启维护

  • 频率:每周至两周一次
  • 补充说明:这是针对操作系统补丁执行的维护类型。

2、云服务提供商计划的维护:虚拟机停止/启动维护

  • 频率:每月一次
  • 补充说明:当集群更新到新的实例大小时进行维护。例如,当我们收到云服务提供商通知Atlas集群中的某个实例状态下降并计划退役时。

3、MongoDB小版本更新:Mongod进程重启维护

  • 频率:每两个月一次
  • 补充说明:
    • MongoDB的次要版本升级(最常见的情况)
    • 更改Atlas集群的默认启动参数(例如,更改Atlas集群支持的TLS版本)

维护相关注意事项

  • 紧急维护无法跳过。对于紧急情况下的维护操作,必须执行,无法忽略。
  • 代理程序升级对客户的数据库性能没有任何影响,因此这些升级不会在维护窗口时进行。
  • 可能会出现单个更改(例如较小的MongoDB版本更改)触发维护窗口警报的情况;然而,在实际执行维护操作时,可能会有多个待处理的更改,这些更改将同时应用。
  • 被视为安全性关键的维护操作将不受项目上设置的维护窗口的影响;客户将无法停止这些维护事件的应用。

维护期间的影响及建议

  • 在整个维护过程中,只会发生一次选举。平均而言,一次选举可能需要五秒钟,并且整个维护过程可能持续几分钟。
  • 如果应用程序可以承受一次选举,则不会产生维护downtime。
  • Retryable writes操作有助于在选举新的主节点期间防止写入错误。
  • Atlas的Test Failover feature功能可用于测试应用程序在选举事件发生时的行为。
  • 为了避免在高峰时间运行维护操作,可以配置维护窗口。这样可以在指定的时间段内进行维护,避免对业务产生较大影响。

维护窗口设置

1、在Project Setting页面中,找到"Set Preferred Cluster Maintenance Start Time"选项并设置为"On"。

2、点击铅笔图标。

3、在下面展开页面设置开始时间。

4、如果希望Atlas自动延迟一周的计划维护,请点击"Automatically defer maintenance for one week"。

维护窗口设置说明

可以在每个Project中指定不同的维护窗口,当需要进行维护被排期间时,将按照以下方式进行:

  • 例如,可以指定每周三凌晨四点开始进行维护。(注意时区设定!)
  • 如果指定的维护窗口距离当前时间大于或等于72小时,则维护事件将成功排定。如果小于72小时,则会将其推迟到下周。
  • 例如,如果周二发出排在周三凌晨四点进行的维护,由于距离计划时间小于72小时,维护将推迟到下一周的周三凌晨四点才会进行。
  • 默认Project Owner会在每周计划维护前72小时收到电子邮件通知,并在Atlas用户界面中获得即将进行维护的通知。在Project层级的提示横幅中,可以进一步设置:
    a. 手动再推迟一周
    b. 手动立即进行维护
    c. 不做任何操作,等待按计划时间进行维护

如果确认要将维护推迟第二次,将会在维护计划前的48-72小时内出现将维护推迟一周的选项。
在此之前,无法预先选择第二次推迟的选项。

  • 同一Project中的所有集群的维护会并行开始。
  • 每个维护事件最多可推迟两次。

维护告警设置及邮件通知范例

如果希望收到邮件通知,可在Alert中进行相关维护窗口告警设置。

我们会在维护计划设置、维护开始和维护自动推迟的节点为您发送邮件提醒。

维护已计划

维护开始

维护自动推迟

查看维护历史记录

可在Project的Activity Feed中进行筛选查看。

第一步

第二步

第三步

以上就是本期关于Atlas维护指南的全部内容。

如果本文对您有帮助,别忘了收藏和转发!

相关推荐
摩羯座-185690305941 小时前
爬坑 10 年!京东店铺全量商品接口实战开发:从分页优化、SKU 关联到数据完整性闭环
linux·网络·数据库·windows·爬虫·python
编程充电站pro2 小时前
SQL 面试高频:INNER JOIN vs LEFT JOIN 怎么考?
数据库·sql
这周也會开心2 小时前
SQL-窗口函数做题总结
数据库·sql
间彧2 小时前
TiDB详解与Spring Boot实战指南
数据库
极限实验室2 小时前
Easysearch 字段'隐身'之谜:source_reuse 与 ignore_above 的陷阱解析
数据库·redis
2301_772093562 小时前
tuchuang_后端_前端_注册登录
数据库·后端·网络协议·mysql·wireshark
武子康3 小时前
Java-141 深入浅出 MySQL Spring事务失效的常见场景与解决方案详解(3)
java·数据库·mysql·spring·性能优化·系统架构·事务
间彧3 小时前
脏读、不可重复读、幻读详解与对比
数据库
间彧3 小时前
数据库事务隔离级别详解
数据库
fwerfv3453453 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python