技术分享 | EC2自动恢复系统

2026-05-26 15:57

在 MSP 托管运维的生产环境中,EC2 实例可能因操作系统异常、内核崩溃、网络栈故障、底层硬件问题等原因导致实例健康检查失败(Status Check Failed)。

传统处理方式通常依赖人工排查,易存在以下问题:

• 故障发现不及时

• 夜间无人值守

• 恢复耗时长

• 运维流程割裂

• Case 提交依赖人工操作

为提升系统高可用性与运维自动化能力,我们构建了一套基于亚马逊云的自动故障恢复与智能告警闭环系统,当 EC2 实例健康检查失败时,系统自动恢复实例,通过 Kiro 创建 Amazon Support Case,并通过飞书机器人发送通知。


整体修复流程图


具体步骤

本文介绍了如何在 ec2 机器故障时,利用检测机制实现自动恢复和 case 创建调查。


1.Kiro 服务器部署

1.1   系统更新

sudo apt-get update && sudo apt-get upgrade -y

sudo apt-get install -y python3 python3-pip curl wget git

Python 配置

1.2   Kiro 安装

1.3   Amazon CLI安装,并配置亚马逊云凭证

1.4   Kiro HTTP 服务配置

配置完成后启动服务,检查 HTTP 服务是否正常运行


2.通过 Cloudformation 创建亚马逊云资源

在创建 cloudformation 请把 FeishuWebhookURL 填写(可直接在飞书群内拉机器人获取 WebhookURL)


3.对需要在健康检查异常时重启的机器创建标签,通过标签判断能否执行重启,主要是 AutoRecovery 标签。


4.手动向 lambda 发送故障测试,触发 AutoRecovery role 对机器执行 stop/start 操作,以代表机器健康检查失败时恢复操作。

恢复后 Kiro 创建 case,并同步飞书


总结

通过构建基于 CloudWatch、Lambda、Step Functions、Kiro 与飞书通知的 EC2 自动恢复闭环体系,实现了故障自动检测、实例自动恢复、Support Case 自动创建以及告警自动通知,大幅提升了生产环境故障响应效率与运维自动化能力,减少了人工介入与业务中断时间。


云与应用现代化

现代化办公软件

云代理伙伴
扫描关注微信公众号
获取更多云端资讯
联系我们
——
  • 姓名*

  • 电话*

  • 邮箱*

  • 职称*

  • 公司*

  • 地址*

  • 需求*

  • * 点击提交,即表示您同意我们存储和处理您提交的个人信息,以向您提供所请求的内容,该信息仅供公司提供服务使用。您的信息受到相关法律的安全保护。