Ubuntu 服务器性能监控从 top 到 Glances 的 3 种方案部署与选型指南在 Ubuntu 服务器运维中性能监控是确保系统稳定运行的关键环节。面对生产环境中可能出现的资源瓶颈管理员需要一套从轻量到全面的监控方案组合。本文将深入解析三种典型方案基础命令行工具top/htop、增强型终端工具Glances以及 Web 仪表盘方案Netdata并提供可落地的部署指南与选型决策框架。1. 基础命令行方案top 与 htop 的实战应用作为 Linux 系统原生的性能监控工具top 命令是大多数管理员接触的第一个性能观察窗口。其默认界面展示了系统负载、进程列表和资源占用概况top - 14:30:45 up 2 days, 3:45, 1 user, load average: 0.15, 0.21, 0.19 Tasks: 112 total, 2 running, 110 sleeping, 0 stopped, 0 zombie %Cpu(s): 3.2 us, 1.1 sy, 0.0 ni, 95.5 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 7824.4 total, 1024.2 free, 4096.3 used, 2703.9 buff/cache MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 3328.1 avail Mem关键字段解析load average三个数值分别表示过去1、5、15分钟的系统平均负载%Cpu(s)用户态us、内核态sy、空闲id等CPU状态占比MiB Mem物理内存使用情况注意buff/cache属于可回收内存MiB Swap交换分区使用情况长期占用过高需警惕内存不足htop 作为 top 的增强版通过以下命令安装后提供更直观的交互体验sudo apt update sudo apt install -y htophtop 的核心优势体现在彩色可视化不同资源使用率以颜色区分鼠标支持直接点击列头可排序进程快捷键操作F2进入设置界面自定义显示项F4过滤特定进程如输入nginx只显示相关进程F9向选中进程发送信号如SIGTERM优雅终止进程Space标记进程持续高亮跟踪提示在内存分析时重点关注RES实际物理内存占用与SHR共享内存的差值这代表进程独占的内存用量。公式为独占内存 RES - SHR2. 增强型终端方案Glances 的部署与深度配置Glances 是一款跨平台的现代化监控工具通过单个命令即可获取包括温度传感器、磁盘IO、网络流量等全方位数据。安装方式如下sudo apt install -y python3-pip sudo pip3 install glances[all]基础使用与特色功能全局概览启动后默认显示CPU、内存、交换分区、负载等核心指标磁盘监控不仅显示使用率还包括各分区读写速率MB/s网络监控实时显示每个网卡的上传/下载流量告警阈值关键指标超过预设值时会自动红色高亮API访问通过--export http参数启用Web API接口对于生产环境建议将Glances配置为systemd服务实现持久化运行。创建服务配置文件sudo tee /etc/systemd/system/glances.service EOF [Unit] DescriptionGlances Monitoring Tool Afternetwork.target [Service] ExecStart/usr/local/bin/glances -w --disable-plugin cloud -t 5 Restarton-failure Userroot [Install] WantedBymulti-user.target EOF启用并启动服务sudo systemctl daemon-reload sudo systemctl enable --now glances关键参数说明-w启用Web服务器模式默认端口61208--disable-plugin cloud禁用不必要的云检测插件-t 5设置刷新间隔为5秒通过浏览器访问http://服务器IP:61208即可获得完整的Web界面。对于需要长期监控的场景可以结合--export influxdb参数将数据写入时序数据库。3. Web仪表盘方案Netdata 的一键部署与定制Netdata 以其开箱即用的特性成为轻量级实时监控的首选。其安装仅需单条命令bash (curl -Ss https://my-netdata.io/kickstart.sh) --stable-channel --disable-telemetry安装完成后Netdata 会自动监听19999端口可通过http://服务器IP:19999访问收集600种系统指标配置systemd服务实现开机自启核心功能亮点零配置告警预置CPU、内存、磁盘等常见阈值告警规则历史数据默认保存1小时的高精度数据可扩展插件生态支持Python、Bash等扩展插件收集应用指标API支持所有数据可通过/api/v1/data?chartsystem.cpu等接口获取对于需要长期存储数据的场景可通过修改/etc/netdata/netdata.conf启用后端数据库[backend] enabled yes type graphite destination 192.168.1.100:20034. 方案对比与选型决策指南下表从六个维度对比三种监控方案的特性特性维度top/htopGlancesNetdata安装复杂度已预装/apt安装pip或包管理器安装需运行安装脚本资源占用10MB内存~30MB内存~50MB内存数据持久化不支持需额外配置导出内置1小时历史数据监控粒度进程级系统级进程级系统级应用级告警能力需手动观察基础阈值告警预置智能告警规则典型场景快速故障诊断日常巡检长期性能分析选型建议组合开发测试环境htop Glances Web模式生产轻量监控Glancessystemd服务 简易日志告警全面监控体系Netdata主监控 Prometheus长期存储 Alertmanager告警路由对于需要监控GPU等特殊硬件的场景可补充安装专用工具# Intel GPU监控 sudo apt install -y intel-gpu-tools intel_gpu_top # NVIDIA GPU监控 nvidia-smi -l 1 # 每秒刷新一次5. 高级技巧监控数据的可视化与自动化将Glances或Netdata与Grafana集成可以构建更专业的监控看板。以Netdata为例配置步骤如下在Grafana中添加Netdata数据源类型选择PrometheusURL填写http://netdata-ip:19999/api/v1/allmetrics?formatprometheus导入官方提供的 Netdata仪表盘模板配置告警通道如邮件、Slack等对于需要定期生成性能报告的场合可以使用Glances的批处理模式glances --export csv --export-csv-file /var/log/glances-$(date %Y%m%d).csv然后通过crontab设置定时任务# 每天凌晨生成报告 0 0 * * * /usr/local/bin/glances --export csv --export-csv-file /var/log/glances-$(date \%Y\%m\%d).csv在内存有限的服务器上可以通过修改Glances的配置减少资源占用[global] refresh10 # 降低刷新频率 disable-plugindocker,cloud,folders # 禁用非必要插件
Ubuntu 服务器性能监控:从 top 到 Glances 的 3 种方案部署与选型指南
发布时间:2026/7/6 22:26:07
Ubuntu 服务器性能监控从 top 到 Glances 的 3 种方案部署与选型指南在 Ubuntu 服务器运维中性能监控是确保系统稳定运行的关键环节。面对生产环境中可能出现的资源瓶颈管理员需要一套从轻量到全面的监控方案组合。本文将深入解析三种典型方案基础命令行工具top/htop、增强型终端工具Glances以及 Web 仪表盘方案Netdata并提供可落地的部署指南与选型决策框架。1. 基础命令行方案top 与 htop 的实战应用作为 Linux 系统原生的性能监控工具top 命令是大多数管理员接触的第一个性能观察窗口。其默认界面展示了系统负载、进程列表和资源占用概况top - 14:30:45 up 2 days, 3:45, 1 user, load average: 0.15, 0.21, 0.19 Tasks: 112 total, 2 running, 110 sleeping, 0 stopped, 0 zombie %Cpu(s): 3.2 us, 1.1 sy, 0.0 ni, 95.5 id, 0.2 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 7824.4 total, 1024.2 free, 4096.3 used, 2703.9 buff/cache MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 3328.1 avail Mem关键字段解析load average三个数值分别表示过去1、5、15分钟的系统平均负载%Cpu(s)用户态us、内核态sy、空闲id等CPU状态占比MiB Mem物理内存使用情况注意buff/cache属于可回收内存MiB Swap交换分区使用情况长期占用过高需警惕内存不足htop 作为 top 的增强版通过以下命令安装后提供更直观的交互体验sudo apt update sudo apt install -y htophtop 的核心优势体现在彩色可视化不同资源使用率以颜色区分鼠标支持直接点击列头可排序进程快捷键操作F2进入设置界面自定义显示项F4过滤特定进程如输入nginx只显示相关进程F9向选中进程发送信号如SIGTERM优雅终止进程Space标记进程持续高亮跟踪提示在内存分析时重点关注RES实际物理内存占用与SHR共享内存的差值这代表进程独占的内存用量。公式为独占内存 RES - SHR2. 增强型终端方案Glances 的部署与深度配置Glances 是一款跨平台的现代化监控工具通过单个命令即可获取包括温度传感器、磁盘IO、网络流量等全方位数据。安装方式如下sudo apt install -y python3-pip sudo pip3 install glances[all]基础使用与特色功能全局概览启动后默认显示CPU、内存、交换分区、负载等核心指标磁盘监控不仅显示使用率还包括各分区读写速率MB/s网络监控实时显示每个网卡的上传/下载流量告警阈值关键指标超过预设值时会自动红色高亮API访问通过--export http参数启用Web API接口对于生产环境建议将Glances配置为systemd服务实现持久化运行。创建服务配置文件sudo tee /etc/systemd/system/glances.service EOF [Unit] DescriptionGlances Monitoring Tool Afternetwork.target [Service] ExecStart/usr/local/bin/glances -w --disable-plugin cloud -t 5 Restarton-failure Userroot [Install] WantedBymulti-user.target EOF启用并启动服务sudo systemctl daemon-reload sudo systemctl enable --now glances关键参数说明-w启用Web服务器模式默认端口61208--disable-plugin cloud禁用不必要的云检测插件-t 5设置刷新间隔为5秒通过浏览器访问http://服务器IP:61208即可获得完整的Web界面。对于需要长期监控的场景可以结合--export influxdb参数将数据写入时序数据库。3. Web仪表盘方案Netdata 的一键部署与定制Netdata 以其开箱即用的特性成为轻量级实时监控的首选。其安装仅需单条命令bash (curl -Ss https://my-netdata.io/kickstart.sh) --stable-channel --disable-telemetry安装完成后Netdata 会自动监听19999端口可通过http://服务器IP:19999访问收集600种系统指标配置systemd服务实现开机自启核心功能亮点零配置告警预置CPU、内存、磁盘等常见阈值告警规则历史数据默认保存1小时的高精度数据可扩展插件生态支持Python、Bash等扩展插件收集应用指标API支持所有数据可通过/api/v1/data?chartsystem.cpu等接口获取对于需要长期存储数据的场景可通过修改/etc/netdata/netdata.conf启用后端数据库[backend] enabled yes type graphite destination 192.168.1.100:20034. 方案对比与选型决策指南下表从六个维度对比三种监控方案的特性特性维度top/htopGlancesNetdata安装复杂度已预装/apt安装pip或包管理器安装需运行安装脚本资源占用10MB内存~30MB内存~50MB内存数据持久化不支持需额外配置导出内置1小时历史数据监控粒度进程级系统级进程级系统级应用级告警能力需手动观察基础阈值告警预置智能告警规则典型场景快速故障诊断日常巡检长期性能分析选型建议组合开发测试环境htop Glances Web模式生产轻量监控Glancessystemd服务 简易日志告警全面监控体系Netdata主监控 Prometheus长期存储 Alertmanager告警路由对于需要监控GPU等特殊硬件的场景可补充安装专用工具# Intel GPU监控 sudo apt install -y intel-gpu-tools intel_gpu_top # NVIDIA GPU监控 nvidia-smi -l 1 # 每秒刷新一次5. 高级技巧监控数据的可视化与自动化将Glances或Netdata与Grafana集成可以构建更专业的监控看板。以Netdata为例配置步骤如下在Grafana中添加Netdata数据源类型选择PrometheusURL填写http://netdata-ip:19999/api/v1/allmetrics?formatprometheus导入官方提供的 Netdata仪表盘模板配置告警通道如邮件、Slack等对于需要定期生成性能报告的场合可以使用Glances的批处理模式glances --export csv --export-csv-file /var/log/glances-$(date %Y%m%d).csv然后通过crontab设置定时任务# 每天凌晨生成报告 0 0 * * * /usr/local/bin/glances --export csv --export-csv-file /var/log/glances-$(date \%Y\%m\%d).csv在内存有限的服务器上可以通过修改Glances的配置减少资源占用[global] refresh10 # 降低刷新频率 disable-plugindocker,cloud,folders # 禁用非必要插件