在 Debian 系统中,swapper(交换分区/交换文件)的监控通常是通过监控 swap 使用情况、swap IO、swappiness 以及内核 swap 相关指标来完成的。下面从命令行、系统工具、可视化、日志与告警几个方面说明。
free -h
swapon --show
free -h:看 total / used / freeswapon --show:看 swap 设备、类型、大小、优先级cat /proc/swaps
cat /proc/sys/vm/swappiness
swappiness:0–100,值越大越积极使用 swaptop
MiB Swap 行f 可添加 SWAP 列htop
vmstat 1
关注:
si:从 swap 读入内存so:从内存写出到 swapsar -W 1
sar -r 1
-W:swap 分页-r:内存与 swap 使用需安装:
apt install sysstat
for pid in $(ls /proc | grep '^[0-9]'); do
awk -v p=$pid '/VmSwap/{print p, $2 " KB"}' /proc/$pid/status
done | sort -k2 -n -r | head
或:
smem -s swap -r
安装:
apt install smem
node_memory_swap_total_bytesnode_memory_swap_available_bytesnode_vmstat_pswpinnode_vmstat_pswoutGrafana 官方有 Node Exporter Full 面板。
system.swap.size[,total] / [,free]journalctl -k | grep -i swap
dmesg | grep -i swap
常见:
Out of memoryswap: unexpecteddmesg | grep -i oom
swap 不够或 swappiness 过低都可能触发 OOM。
# 临时调整
sysctl vm.swappiness=10
# 永久
echo "vm.swappiness=10" >> /etc/sysctl.conf
sysctl -p
监控建议阈值:
如果你需要:
可以告诉我使用场景,我可以给更具体的方案。