R / Richie全部文章 ↑

Linux · 3 分钟阅读

Linux 系统监控

2026 年生产环境监控的事实标准:Prometheus 抓指标 + Grafana 看图 + Alertmanager 报警。主机内部仍然离不开 top/iotop/nmon 这些老朋友。

主机工具

top / htop                  # 综合
uptime                      # 负载
mpstat -P ALL 1             # 每核
pidstat -urd 1              # 进程 CPU/IO
free -h                     # 内存
vmstat 1                    # 综合
iostat -dx 1                # 磁盘
iotop                       # 进程 I/O
ss -tunlp                   # 网络
iftop / nethogs             # 网络吞吐

装机标配

# Ubuntu
apt install -y htop iotop nethogs sysstat dstat

# RHEL / Alma
yum install -y epel-release
yum install -y htop iotop nethogs sysstat dstat nmon

长期监控(Prometheus + Grafana)

# 抓指标
docker run -d --name node_exporter \
    -p 9100:9100 \
    --network host \
    prom/node_exporter

# Prometheus 配置
cat > prometheus.yml <<EOF
scrape_configs:
  - job_name: 'node'
    static_configs:
      - targets: ['node1:9100', 'node2:9100']
EOF

node_exporter 现在主流是 otel-collector,但 node_exporter 简单稳,仍是默认选项。

告警参考线

指标 警告 严重
CPU 使用率 > 70% 持续 5 分钟 > 90% 持续 1 分钟
内存使用率 > 80% > 95%
磁盘使用率 > 80% > 90%
负载 > CPU 核数 > 2 倍核数
网络丢包 > 0.1% > 1%
HTTP 5xx 比例 > 0.5% > 2%

应用层

场景 工具
进程跟踪 strace / ltrace / bpftrace
CPU 火焰图 perf + FlameGraph
内存泄漏 valgrind / ASan
网络抓包 tcpdump / wireshark
系统调用 strace
应用 APM Prometheus + OpenTelemetry

一些经验

  • 监控的"黄金信号":流量、错误、延迟、饱和度
  • 告警要分级:warning 留 channel,critical 才叫人
  • 监控自身的健康也要监控(up == 0 是经典盲点)
  • 长期数据用远程存储(Thanos / Cortex / Mimir),别靠单点 Prometheus
  • 别在生产开 strace -p 跑 5 分钟——会卡死进程

推荐参考