有奖捉虫:行业应用 & 管理与支持文档专题 HOT
文档中心 > 混沌演练平台 > 故障动作库 > 云数据库 > 云数据库 MySQL 只读实例组不可用

背景

云数据库 MySQL(CDB)实例可以配置多个只读实例组(Read Only Group, 简称 RO 组),RO 组可承担主实例的只读请求,提高 CDB 整体的读性能。腾讯云混沌演练平台提供模拟 CDB 只读实例组不可用故障场景,该场景可验证以下场景:
1. 跨可用区部署的 RO 组,当发生单 AZ 故障后,另外可用区的 RO 组能否对外提供正常服务。
2. RO 组实例故障后对业务影响(主节点能否承受读压力)。
说明:
该故障动作会进行用户安全组数量以及 CDB 实例是否配置有只读实例的环境检测,若您的实例不满足该条件,故障注入将会失败。为 CDB 实例创建只读实例可参见云数据库 MySQL 文档 创建只读实例

故障描述

该故障动作会将用户指定注入范围内的 RO 组实例封禁,使其对外不可用,故障相关 RO 组中实例的存量连接会被中断。

演练实施

步骤一:演练准备

一台 云数据库 MySQL 实例,并且该实例已经配置了只读实例。
一台 云服务器 CVM 实例,用于测试数据库连接。(用户可选择其他连接方式验证测试)

步骤二:演练编排

1. 登录 混沌演练控制台,进入演练管理页面,单击新建演练
?
?
?
2. 进入经验模板选择界面,点击跳过,创建空白演练。
?
?
?
3. 填写演练基本信息。
?
?
4. 填写演练动作组信息,选择资源类型云资源资源对象为 MySQL,并点击添加实例
?
?
?
演示 CDB 实例概览:
?
?
?
5. 点击立即添加添加故障动作,选择只读实例组不可用故障动作,并单击下一步
?
?
?
6. 填写故障动作参数。
?
?
?
这里故障注入范围选择主可用区 RO 组,因此故障将会注入到所选中的 CDB 实例的位于主实例可用区(广州六区)下的 RO 组实例 cdbro-xxx4st。
说明:
持续 kill 连接时长(s):当前动作会帮您创建持续 kill 连接任务,用来 kill 存量长连接,此参数用来指定持续 kill 任务时长,如果您的 cdb 连接数较大,可以增大此参数,确保能在持续时间内kill完所有连接,默认时间为60s。
故障注入范围:选择注入故障的可用区。
主可用区:主实例所在可用区的 RO 组
非主可用区:其他非主实例所在的可用区的 RO 组。
全部可用区:所有可用区的 RO 组。
指定可用区:指定可用区的 RO 组。
7. 单击下一步,进入全局配置,全局配置请参见 快速入门。确认无误后,单击提交,创建演练。
?
?
?

步骤三:执行演练

故障前:
MySQL RO 组实例在故障前,依据之前步骤配置的注入范围,将会选中同为广州二区的只读实例 cdbro-*****uj 进行故障注入,使用 CVM 实例登录当前 RO 实例,建立一个客户端连接。
?
?
?
进入 数据库智能管家 DBbrain 可查看到当前 CVM 建立的连接。
?
?
?

执行演练:

1. 进入演练详情,在动作卡片处点击执行,开始执行演练动作。
?
?
故障注入之后,可单击详情,查看执行结果信息。
?
?
此时,可观察到存量的连接已断连。
?
?
2. 点击执行恢复动作。
?
?
?
恢复动作执行成功之后,使用 CVM 重新连接 RO 实例。恢复之后,可重新连接到该 RO 实例,故障已被清除。
?
?
?


http://www.vxiaotou.com