引言
作为系统管理员或 DevOps 工程师,服务器性能监控是日常工作中不可或缺的一部分。当你的网站突然变慢,或者服务器负载飙升时,能够快速定位问题至关重要。本文将介绍 5 个强大的 Linux 性能监控工具,帮助你全面掌控服务器状态。
1. htop - 交互式进程查看器
安装方法
# Ubuntu/Debian
sudo apt update && sudo apt install htop -y
# CentOS/RHEL
sudo yum install htop -y
# Alpine
apk add htop
核心功能
htop 是 top 命令的增强版,提供彩色界面和交互式操作:
- 实时进程监控:按 CPU、内存使用率排序
- 树状视图:按 F5 查看进程树关系
- 搜索过滤:按 F3 快速搜索特定进程
- 信号发送:按 F9 发送 kill、term 等信号
- 自定义列:按 F2 添加/删除显示列
实用技巧
# 启动时按特定列排序
htop -s PERCENT_CPU
# 以树状视图启动
htop -t
# 监控特定用户
htop -u www-data
2. nmon - 全方位系统监控
安装与使用
# Ubuntu/Debian
sudo apt install nmon -y
# CentOS
sudo yum install nmon -y
启动 nmon:
nmon
快捷键大全
- c - CPU 使用率
- m - 内存使用
- d - 磁盘 I/O
- n - 网络统计
- t - 进程 TOP
- V - 虚拟内存
- q - 退出
数据记录模式
# 每 30 秒采集一次,共采集 288 次(24 小时)
nmon -f -s 30 -c 288
3. iotop - 磁盘 I/O 监控神器
安装方法
# Ubuntu/Debian
sudo apt install iotop -y
# CentOS/RHEL
sudo yum install iotop -y
常用命令
# 实时监控(需要 root 权限)
sudo iotop
# 仅显示有 I/O 的进程
sudo iotop -o
# 累积显示 I/O 使用量
sudo iotop -a
4. nethogs - 按进程监控网络带宽
安装方法
# Ubuntu/Debian
sudo apt install nethogs -y
# CentOS
sudo yum install nethogs -y
使用示例
# 监控所有网卡
sudo nethogs
# 监控指定网卡
sudo nethogs eth0
5. Glances - 跨平台监控仪表盘
安装方法
# 使用 pip 安装(推荐)
pip install glances
# 或使用包管理器
sudo apt install glances -y
启动方式
# 本地运行
glances
# Web 服务器模式(端口 61208)
glances -w
实战:搭建监控脚本
#!/bin/bash
# monitor.sh - 系统健康检查脚本
LOG_FILE="/var/log/system_monitor.log"
DATE=$(date '+%Y-%m-%d %H:%M:%S')
# 检查 CPU 负载
CPU_LOAD=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}' | cut -d'%' -f1)
# 检查内存使用
MEM_USAGE=$(free | grep Mem | awk '{printf("%.2f"), $3/$2 * 100.0}')
# 检查磁盘使用
DISK_USAGE=$(df -h / | awk 'NR==2 {print $5}' | cut -d'%' -f1)
# 记录日志
echo "[$DATE] CPU: ${CPU_LOAD}% | MEM: ${MEM_USAGE}% | DISK: ${DISK_USAGE}%" >> $LOG_FILE
总结
掌握这些工具,你将能够快速定位性能瓶颈、预防服务器故障、优化资源配置、提升系统稳定性。
记住:监控的目的是为了行动。发现问题后,及时分析和解决才是关键!
文章评论