一、系统自带命令行工具(基础监控)
系统自带的命令行工具无需额外安装,适合快速查看资源使用情况,是CentOS虚拟机监控的基础手段。
top命令:实时显示系统进程及资源占用,是Linux系统最常用的监控工具。
top
,按q
退出。us
=用户空间占用、sy
=内核空间占用、id
=空闲率、wa
=IO等待占用,重点关注id
值,若低于20%可能负载过高);total
=总内存、used
=已用内存、free
=空闲内存、available
=应用程序可用内存,Linux内存管理会将未使用的内存用作缓存,因此free
值小是正常现象);M
键可切换为按内存占用排序。htop命令:top命令的增强版,提供更友好的交互界面和更多功能(如鼠标操作、批量终止进程、按树状视图查看进程关系)。
sudo yum install epel-release && sudo yum install htop
;htop
,按q
退出。htop --user=mysql
);F9
终止(需root权限)。vmstat命令:报告系统整体资源使用情况(CPU、内存、磁盘IO、系统调用等),适合查看系统级瓶颈。
sudo yum install sysstat
;vmstat [间隔秒数] [次数]
(如vmstat 1 5
表示每1秒刷新一次,共5次);procs
:r
(运行队列中的进程数,若长期大于逻辑CPU数量,说明CPU不足)、b
(阻塞进程数);memory
:free
(空闲内存)、buff
(缓冲内存)、cache
(缓存内存);swap
:si
(从磁盘交换到内存的数据量)、so
(从内存交换到磁盘的数据量,若si/so
持续大于0,说明内存不足);cpu
:us
(用户空间占用)、sy
(内核空间占用)、id
(空闲率)、wa
(IO等待占用)。iostat命令:监控系统磁盘IO和CPU使用情况,适合分析磁盘性能瓶颈。
vmstat
(sysstat
包);iostat [间隔秒数] [次数]
(如iostat -x 1
表示每1秒刷新一次,显示扩展统计信息);-x
参数):
%util
:磁盘利用率(若接近100%,说明磁盘繁忙);await
:平均IO等待时间(若过长,说明磁盘响应慢);r/s
/w/s
:每秒读/写请求数;rkB/s
/wkB/s
:每秒读/写数据量(KB)。free命令:查看系统内存和交换分区使用情况,以易读格式显示。
free [-h]
(-h
表示以GB/MB为单位,更直观);available
列(应用程序可用内存),而非free
列(未被使用的内存)。netstat命令:监控网络连接、路由表、接口统计信息,适合排查网络问题。
sudo yum install net-tools
;netstat -tulnp
(-t
=TCP连接、-u
=UDP连接、-l
=监听状态、-n
=以数字形式显示地址/端口、-p
=显示进程信息);LISTEN
状态的端口(监听中的服务)、ESTABLISHED
状态的连接(已建立的连接),可结合grep
筛选特定端口(如netstat -tulnp | grep 80
查看HTTP服务连接)。二、第三方图形化/增强工具(高级监控)
第三方工具提供更强大的功能(如实时可视化、历史数据存储、报警机制),适合需要深入监控的场景。
nmon工具:跨平台的系统性能监控工具,支持实时监控CPU、内存、磁盘IO、网络等指标,并可生成报告。
sudo yum install nmon
;nmon
,按c
=CPU、m
=内存、d
=磁盘、n
=网络切换监控项,按q
退出;Prometheus+Grafana组合:开源的监控与可视化平台,适合大规模、分布式系统的长期监控。
node_exporter
采集CentOS虚拟机的系统指标),Grafana负责将数据可视化(创建仪表盘展示CPU、内存、磁盘等指标);node_exporter
(wget https://github.com/prometheus/node_exporter/releases/download/v1.6.1/node_exporter-1.6.1.linux-amd64.tar.gz
,解压后运行./node_exporter
);prometheus.yml
,添加CentOS虚拟机的node_exporter
地址);Cockpit工具:Red Hat推出的系统管理工具,提供Web界面的系统监控与管理功能,适合新手使用。
sudo yum install cockpit
;sudo systemctl enable --now cockpit.socket
,然后在浏览器访问https://<CentOS-IP>:9090
,输入root账号密码登录;三、VirtualBox内置监控(虚拟化管理)
若CentOS虚拟机运行在VirtualBox环境中,可通过VirtualBox Manager查看虚拟机的实时资源使用情况。