背景介绍
Redis 高可用依赖主备同步与故障切换。主/备节点进程因缺陷、配置或误操作停止时,可能触发切换或影响应用:主节点停触发主备切换,备节点停影响读能力和冗余。本演练模拟核心进程停止,验证高可用切换和客户端故障转移,帮助您评估业务影响。
基本原理
通过调用Redis停止Redis服务OpenAPI,模拟Redis节点故障,故障会触发Redis HA机制进行自动恢复。
故障注入
1、纳管实例资源
导航至 故障演练 > 目标应用 > 应用资源 页面。
在资源类型页签中选择分布式缓存服务Redis版,然后单击添加资源。
在弹出的对话框中,勾选目标Redis实例,单击确定。
2、编排演练任务
导航至 故障演练 > 目标应用 > 演练管理页面,单击新建演练。
在基本信息页面,按提示填写演练名称和描述,然后单击下一步。
在演练对象配置页面:
配置动作组:为动作组命名,资源类型选择分布式缓存服务Redis版。
添加实例:单击添加实例,勾选上一步中添加的Redis实例。
添加故障动作:单击立即添加,在列表中选择Redis节点停止动作。
在弹出的参数配置框中,配置所需参数,然后单击确定。
故障节点:注入故障的目标节点(主节点或备节点)。
3、配置全局策略
在全局配置页面,按需添加保护策略和监控指标。
配置完成后,单击完成按钮,创建演练任务。
4、发起故障注入
发起演练:在演练管理列表找到对应演练任务,单击操作列的执行演练,在新页面中点击发起新演练。
进入实验:系统将自动跳转到本次演练的运行详情页,或在演练执行记录列表点击对应执行实例的详情进入。
注入故障:在动作组中,找到Redis节点停止动作卡片,单击执行。
查看日志:单击动作卡片本身,在右侧弹出的侧边栏中查看执行详情。
效果验证
在故障注入期间,您可以通过以下方式验证演练效果:
1、观测实例状态:
登录分布式缓存服务Redis版控制台,进入目标实例的实例详情页,观察实例的节点角色和状态。如果对主节点注入故障,会自动触发主备切换,备节点提升为新的主节点。如果对备节点注入故障,该节点状态会变为异常,并在一段时间后由系统的自动修复机制重启并重新加入集群。
登录分布式缓存服务Redis版控制台,进入目标实例的运行日志页,查看目标Redis节点停止和重启的运行日志。
2、业务应用验证:
观察业务应用表现,,确认是否出现连接中断、请求超时或请求失败等异常。
验证客户端(如 Jedis、Lettuce)的故障转移策略是否生效,即连接是否能自动识别新的主节点并重连。