AWS EC2 Ubuntu 20.04实例周期性无响应(可达性检查失败)排查咨询
定位AWS EC2 Ubuntu 20.04实例周期性无响应故障的方法
1. 分析系统与实例日志
- 查看EC2控制台日志:在AWS EC2实例详情页的「监控」标签下,获取系统日志和控制台输出,重点排查崩溃前的内核panic、OOM(内存不足)提示、进程僵死报错。
- 实例内查看本地日志:
- 系统启动日志:
cat /var/log/syslog或journalctl -b -1(查看上一次启动的日志) - 内核日志:
dmesg或cat /var/log/kern.log,关注内存耗尽、磁盘IO错误、硬件相关警告 - 认证日志:
cat /var/log/auth.log,排查异常登录或权限变更导致的进程异常
- 系统启动日志:
2. 监控系统资源瓶颈
- AWS CloudWatch数据:查看实例历史CPU、内存、磁盘IO、网络流量数据,确认故障前是否出现CPU持续满载、内存耗尽、磁盘空间占满或IO突增的情况。
- 实例内长期监控:
- 安装
atop:apt install atop,配置每日日志记录,故障后回溯对应时段的资源占用细节 - 用
sar查看历史数据:sar -u(CPU)、sar -r(内存)、sar -d(磁盘IO),默认保留7天数据,可修改配置延长
- 安装
- 磁盘空间检查:
df -h确认根分区或关键分区是否已满,du -sh /var/log排查日志目录是否过度占用空间
3. 排查网络连通性问题
- 检查AWS网络配置:确认安全组、NACL规则无异常变更,核心端口未被意外封禁
- 实例内网络日志:
cat /var/log/syslog | grep -i network或journalctl -u networkd,排查网络服务是否异常终止 - 连通性测试:故障恢复后,用
ping、traceroute测试到网关、AWS内部服务的连通性,排查网络波动或路由问题
4. 存储与磁盘健康检查
- EBS卷状态:在AWS控制台查看EBS卷的性能指标,确认是否存在IOPS超出限制(gp2卷常见)或健康警告
- 实例内磁盘检测:
smartctl -a /dev/xvda(根据实际磁盘设备调整),查看SMART数据排查硬件坏道 - 文件系统检查:
fsck /dev/xvda1(需离线执行,建议先创建卷快照),排查文件系统损坏
5. 内核与进程稳定性排查
- 内核版本检查:
uname -r,Ubuntu 20.04旧内核可能存在稳定性bug,建议升级到最新稳定内核:apt update && apt upgrade -y linux-image-generic - 僵死进程排查:
ps aux | grep Z,若存在大量僵死进程,溯源父进程是否存在内存泄漏或异常崩溃 - 定时任务检查:
crontab -l和ls /etc/cron.*,确认是否有周期性脚本导致资源耗尽
6. AWS层面额外排查
- 实例事件历史:在EC2实例详情页「事件」标签,确认是否有AWS维护事件(如硬件更换)导致实例无响应
- 区域服务状态:查看AWS状态页面,确认对应区域EC2服务是否存在异常
- 硬件迁移测试:若以上排查无结果,停止并重启实例(会迁移到新物理主机),观察故障是否复现
内容的提问来源于stack exchange,提问作者HiZaib
相关产品推荐
相关产品推荐

