麒麟操作系统swap使用率过高的排查思路
现象:用户业务环境服务器在运行时,监控平台告警swap使用99%,在系统内查询物理内存使用39%左右,swap使用达99%。
问题排查:
1)使用命令查询使用了swap空间的进程并排序:for i in cd /proc;ls |grep "^[0-9]" |awk '$0 >100'
;do awk ‘/Swap:/ {a=a+KaTeX parse error: Expected 'EOF', got '}' at position 2: 2}̲ END {print '"i"’,a/1024"M"}’ /proc/$i/smaps;done |sort -k2nr > ./swap.log
2)获取到的占用swap空间的进程,在当前目录下生成的swap.log文件里查询,第一列PID,第二列swap空间占用大小,由高到低排序。然后再使用ps aux |grep pid(swap占用高的),查询下是哪个服务占用的?
3)查询倒是kingbase数据库占用swap高导致的。
解决办法:
1)客户协调数据库厂商排查,最后的反馈是不影响业务,建议扩容swap。