服务器宕机是一种常见的故障现象,其根源来自于软件和硬件上发生的异常,且几乎无法避免。通过模拟内核故障造成的ECS宕机,可以测试业务系统在宕机时的反应、检测系统恢复能力、验证监控和告警机制的有效性等,并基于演练结果制定应对策略,确保生产环境发生宕机时系统能够迅速恢复正常运行,降低业务中断风险。
实现原理
本方案使用云助手插件ecs-fault-oscrash
,通过sysrq模块触发内核panic,系统将自动重启并恢复正常状态。
重要
该演练场景具有危险性,请确保业务系统具有高可用(HA)能力,并开启了Kdump。关于如何开启Kdump服务,请参见Linux实例如何开启Kdump服务。
使用指南
演练准备
请确保您的ECS实例已安装云助手Agent,并且云助手状态为正常。具体操作,请参见查看云助手状态及异常状态处理。
故障注入
登录ECS实例。
具体操作,请参见通过密码或密钥认证登录Linux实例。
使用具有sudo访问权限的用户,运行云助手插件
ecs-fault-oscrash
。sudo acs-plugin-manager --exec --plugin ecs-fault-oscrash --params inject
显示如下所示时,说明云助手插件
ecs-fault-oscrash
运行成功。查看故障注入是否成功。
非预期运维事件中,出现因实例错误实例重启类型的事件,说明故障注入成功。
在ECS实例中,执行
uptime
,查看系统运行时间来确定ECS实例是否重启。显示如下所示时,说明18:21:46系统已重新启动,故障注入成功。
故障恢复
该场景下ECS实例会自动重启并恢复正常状态。如ECS实例未成功重启,请在控制台强制重启,具体操作,请参见重启实例。
文档内容是否对您有帮助?