温馨提示×

Linux服务器性能监控工具有哪些

小樊
46
2025-11-23 14:27:05
栏目: 云计算

Linux服务器性能监控工具全景

一 命令行与轻量工具

  • 资源总览与进程
    • top / htop:实时查看进程与CPU、内存占用,htop界面更友好、支持按键筛选。
    • atop:带历史记录与资源高亮,覆盖CPU、内存、磁盘、网络层指标,适合回溯分析。
    • nmon:终端实时与采集模式,输出CSV便于后续绘图与对比。
  • CPU与系统
    • mpstat -P ALL 1:逐核CPU利用率,定位热点核。
    • vmstat 1 5:综合查看进程、内存、分页、块IO、CPU,关注si/so(换入/换出)、bi/bo(块读写)。
    • sar -u/-r/-P ALL 1 3(需安装sysstat):查看历史与实时CPU、内存等,便于趋势与回溯。
  • 内存
    • free -h:总览内存/缓存/交换使用。
    • smem -r -k:按进程统计更细的物理内存占用(含共享内存拆分)。
  • 磁盘与I/O
    • df -h:文件系统空间使用。
    • iostat -x 1 3(需sysstat):关注**%util**(设备利用率)、读写速率与队列。
    • dstat:融合CPU、内存、磁盘、网络的综合视图,便于横向对比。
    • iotop:按进程查看磁盘I/O
    • slabtop:查看内核slab缓存分配与热点对象。
  • 网络
    • ss -tulnp:比 netstat 更快的套接字/端口/进程查询。
    • ifstat / nload:按接口查看带宽占用与实时曲线。
    • iftop:按连接查看流量排行,定位大流量对端。
    • tcpdump -i eth0 port 80:抓包分析应用层问题。
    • vnstat -d/-l:按日/月统计与实时带宽使用。
    • ping / mtr延迟路径诊断组合。
  • 日志与内核
    • journalctl -xedmesg | tail -n 20tail -f /var/log/syslog:系统与服务日志、内核消息与故障线索。

二 可视化与平台化监控

  • Prometheus + Grafana:时序采集与灵活PromQL查询,配合Alertmanager阈值/异常告警,适合大规模/云原生环境。
  • Zabbix:开箱即用的分布式监控,支持自动发现、丰富图表与触发器告警,适配多平台。
  • Nagios / Icinga:老牌状态型监控与插件生态,擅长服务可用性告警路由,Icinga 2 提供更现代的架构与界面。
  • Netdata:轻量实时Web监控,部署简单、图表丰富,适合单机/小规模快速可视化。
  • Monitorix:轻量系统/网络监控,内置HTTP服务与图形展示,覆盖常见资源与应用
  • Cacti / Observium / Munin / RRDtool:偏趋势图即插即用插件生态,适合中小规模历史趋势分析。

三 如何选择与组合

  • 单机/临时排障:优先用top/htop、vmstat、iostat、iftop、nload、tcpdump、journalctl,快速定位CPU、内存、磁盘、网络、日志瓶颈。
  • 多机/长期趋势与告警:采用Prometheus + Grafana(采集/存储/可视化/告警)或Zabbix(自动发现/触发器/可视化),统一面板与SLA管理。
  • 资源开销与易用性权衡:Netdata上手最快但资源占用相对更高;Nagios/Icinga告警能力强但配置复杂;Cacti/Munin/Observium擅长图表趋势低门槛部署。

四 高频命令速查表

目标 工具与命令示例
CPU热点核 mpstat -P ALL 1
内存与缓存 free -h;smem -r -k
磁盘空间 df -h
磁盘I/O压力 iostat -x 1 3(看 %util、await、svctm)
进程I/O iotop
综合资源视图 dstat;atop
端口与连接 ss -tulnp
带宽占用 iftop;nload
抓包分析 tcpdump -i eth0 port 80
历史与回溯 sar -u/-r 1 3(需 sysstat)
网络质量 ping;mtr
日志与内核 journalctl -xe;dmesg

0