整理首尔服务器磁盘 IO 高负载的排查思路与实战步骤。
磁盘 IO 高会拖慢整机。以下是排查实战。
一、现象 网站响应慢、数据库卡顿、load 高但 CPU 不高。
二、定位工具 1) iostat -x 1:看 %util、await 2) iotop:看哪些进程在读写 3) pidstat -d:按进程看 IO 4) dstat:综合指标
三、常见原因 1) 日志大量写入 2) 数据库全表扫描 3) 磁盘满或碎片 4) 备份任务集中 5) swap 频繁读写
四、排查步骤 1) 确认 %util 是否接近 100% 2) iotop 找出高 IO 进程 3) 分析该进程行为(日志/查询) 4) 定位具体文件和 SQL
五、解决办法 - 日志:轮转、异步、调低级别 - 数据库:加索引、优化慢查询 - 备份:错峰、限速 - 磁盘:换 SSD、RAID、扩容
六、预防 1) 监控 IO 指标 2) 慢查询告警 3) 日志轮转 4) 定期优化
总结:磁盘 IO 高要先用 iostat/iotop 定位进程,再针对性优化。