背景
智能顾问-混沌演练提供模拟云数据库 PostgreSQL 主备切换的场景故障动作,可以模拟 PostgreSQL 因故发生主备切换的场景。进行主备切换演练,旨在帮助开发人员在更加复杂和真实的环境中进行系统测试和实验,以发现可能存在的问题和风险。通过混沌工程的实验和测试,开发人员可以更加全面地了解系统的工作方式和性能特征,并针对不同的故障场景制定相应的应对措施和策略,从而提高系统的稳定性和可用性。
注意:
PostgreSQL 在主备切换之后,会进行备机的重建与迁移。备机就绪的时间与数据量有关,若出现执行失败,请稍后重试执行。同时,不要频繁进行主备切换演练,在切换完成之后,建议等待10~20分钟再执行二次切换。PostgreSQL 切换主备实例参考文档。 主备切换影响
主备切换过程中会有闪断,请确保应用程序有重连机制。
如果主实例挂载的有只读实例,主备切换后只读实例会有分钟级延迟。
演练实施
步骤一:演练准备
一台跨AZ分别部署主节点、备节点的 PostgreSQL 实例。
步骤二:演练编排
2. 单击左下角跳过,新建空白演练。
3. 填写演练信息,选择对象类型 PostgreSQL。然后点击添加实例,添加需要进行演练的实例。
4. 选择实例之后,点击演练动作模块中立即添加。
5. 添加主备切换故障动作。然后点击下一步。
6. 配置动作参数,动作参数处关闭强制切换,单击确认。
动作参数说明:
强制切换: 若开启,将不会校验主备切换条件,直接进行主备切换;若关闭,则需要通过主备切换条件校验之后才会进行主备切换。
7. 单击下一步,进入全局配置,全局配置请参见 快速入门。 8. 确认无误后,单击提交。
9. 点击演练详情,进入演练详情页,并开始演练。
步骤三:执行演练
1. 观察演练前实例可用性信息数据,并关注演练前实例的主节点、备节点。
2. 由于演练为手动推进,所以需要手动执行故障动作。可单击动作卡片中的执行启动故障注入。
4. 故障注入成功之后,可点击动作卡片的空白处,查看动作详情。可以看到,实例的主节点已切换。
6. 执行故障恢复动作,可将实例部署状态恢复至故障前状态。(建议等待10分钟之后再执行恢复动作)
7. 故障恢复动作执行成功之后,可点击动作卡片的空白处,查看动作详情。可以看到,实例的主节点已切换。