系统类故障排查

概述

本文主要介绍使用阿里云服务器ECS时的系统类故障排查,包含CPU、磁盘I/O、内存、硬盘、带宽资源占用异常的问题排查与定位。

详细信息

说明

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。

  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。

  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

请根据现场实际情况,选择以下对应的解决方案。以下检查步骤以CentOS 7.9为例。

CPU负载

连接登录ECS,输入以下命令:

sudo top

查看图片红框处的“load average”,此处三个数值分别为 1分钟、5分钟、15分钟前到现在的系统负载平均值。一般情况下如果这个数除以逻辑CPU的数量,结果高于5(具体数值需要根据实际服务器CPU处理能力以及系统使用情况而定)的时候就表明系统在超负荷运转了。 结合“%CPU”占比较高的PID基本可定位是什么程序(COMMAND)在大量占用CPU。

逻辑CPU数量可以通过以下命令获取:

sudo lscpu

其中,“CPU(s)”的数量即为逻辑CPU个数。

磁盘I/O

iostat是Linux中被用来监控系统的I/O设备活动情况的工具,可通过以下命令查看磁盘I/O情况。

显示所有设备的负载情况。

sudo iostat

以M为单位显示所有信息,指定硬盘vda,间隔1秒,总共显示5次。

sudo iostat -d -m vda 1 5