5個Linux性能監(jiān)控命令
1. vmstat – 報告虛擬內(nèi)存統(tǒng)計數(shù)據(jù)
vmstat 命令可打印有關(guān)內(nèi)存、交換、I/O 和CPU活動的詳細報告。其中包括已用/可用內(nèi)存、交換入/出、磁盤塊讀/寫和 CPU 進程/閑置時間等指標。
例子:
vmstat 5
其他有用的 vmstat 選項:
? -a – 顯示活動和非活動內(nèi)存
? -s – 顯示事件計數(shù)器和內(nèi)存統(tǒng)計信息
? -S – 以 KB 而不是塊為單位輸出
? 5 – 每 5 秒刷新一次輸出。
上面的示例每 5 秒輸出一次內(nèi)存和 CPU 數(shù)據(jù),直到中斷為止,這對監(jiān)控實時系統(tǒng)性能非常有用。
[root@xx web]# vmstat 5 procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us syidwa st 0 0 0 115732 0 952956 0 0 0 2 2 4 0 0 99 0 0
每一列代表的意思:
procs: 進程統(tǒng)計信息
? r: 運行隊列中正在運行的進程數(shù)
? b: 等待運行的進程數(shù)
memory: 內(nèi)存統(tǒng)計信息
? swpd: 使用的交換空間大?。▎挝粸镵B)
? free: 空閑內(nèi)存大?。▎挝粸镵B)
? buff: 用于緩沖的內(nèi)存大?。▎挝粸镵B)
? cache: 用于緩存的內(nèi)存大?。▎挝粸镵B)
swap: 交換空間統(tǒng)計信息
? si: 從磁盤讀取到交換空間的數(shù)據(jù)大?。▎挝粸镵B/s)
? so: 從交換空間寫入到磁盤的數(shù)據(jù)大?。▎挝粸镵B/s)
io: I/O 統(tǒng)計信息
? bi: 塊設備接收的塊數(shù)(單位為塊/s)
? bo: 塊設備發(fā)送的塊數(shù)(單位為塊/s)
system: 系統(tǒng)統(tǒng)計信息
? in: 每秒中斷的數(shù)量
? cs: 每秒上下文切換的數(shù)量
cpu: CPU 統(tǒng)計信息
? us: 用戶進程使用 CPU 的時間百分比
? sy: 系統(tǒng)進程使用 CPU 的時間百分比
? id: CPU 處于空閑狀態(tài)的時間百分比
? wa: CPU 正在等待 I/O 完成的時間百分比
? st: 被虛擬化環(huán)境(例如虛擬機)偷取的時間百分比
2. iostat – 報告 CPU 和 I/O 統(tǒng)計數(shù)據(jù)
iostat 命令監(jiān)控并顯示 CPU 利用率和磁盤 I/O 指標。其中包括 CPU 負載、IOPS、讀/寫吞吐量等。
一些 iostat 選項:
? c – 顯示 CPU 使用率信息
? t – 為每份報告打印時間戳
? x – 顯示服務時間和等待計數(shù)等擴展統(tǒng)計信息
? d – 顯示每個磁盤/分區(qū)的詳細統(tǒng)計信息,而不是合計總數(shù)
? p – 顯示特定磁盤設備的統(tǒng)計信息
下面每 5 秒鐘顯示一次 sda 每個設備的詳細 I/O 統(tǒng)計信息。
iostat -d -p sda 5
iostat 可幫助分析磁盤子系統(tǒng)的性能,找出硬件瓶頸。
[root@xx web]# iostat Linux 4.19.188-10.el7.ucloud.x86_64 (10-50-90-250) 01/11/2024 _x86_64_ (2 CPU) avg-cpu: %user %nice%system %iowait %steal %idle 0.41 0.00 0.36 0.00 0.00 99.23 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn vda 0.45 0.10 4.60 433948 19644449
每一列參數(shù)代表的意思:
avg-cpu:這一行統(tǒng)計了 CPU 使用情況的平均值。
? %user:用戶態(tài)進程使用 CPU 的百分比。
? %nice:以較高優(yōu)先級運行的用戶態(tài)進程使用 CPU 的百分比(優(yōu)先級較低的用戶態(tài)進程)。
? %system:內(nèi)核進程使用 CPU 的百分比。
? %iowait:CPU 等待 I/O 完成的百分比。
? %steal:當 hypervisor(虛擬化環(huán)境中的宿主機)需要讓出 CPU 給其他虛擬機時,該 CPU 被偷取的百分比。
? %idle:CPU 空閑時間的百分比。
Device:這一行顯示了每個磁盤設備的統(tǒng)計數(shù)據(jù)。
? tps:每秒傳輸?shù)?I/O 請求數(shù)。這個值反映了磁盤設備的工作負載。
? kB_read/s:每秒從設備讀取的數(shù)據(jù)量,以千字節(jié) (KB) 為單位。
? kB_wrtn/s:每秒寫入設備的數(shù)據(jù)量,以千字節(jié) (KB) 為單位。
? kB_read:從設備讀取的總數(shù)據(jù)量,以千字節(jié) (KB) 為單位。
? kB_wrtn:寫入設備的總數(shù)據(jù)量,以千字節(jié) (KB) 為單位。
3. free – 顯示可用和已用內(nèi)存量
free 命令顯示系統(tǒng)中物理內(nèi)存和交換內(nèi)存的總量、已用量和空閑量。這將提供可用內(nèi)存的總體情況。
例子:
free -h
free 命令的一些選項:
? b – 以字節(jié)為單位顯示輸出
? k – 以 KB(而非默認字節(jié))為單位顯示輸出結(jié)果
? m – 以 MB 為單位顯示輸出,而不是以字節(jié)為單位
? h – 以 GB、MB 等人類可讀格式打印統(tǒng)計數(shù)據(jù),而不是字節(jié)。
以人類可讀格式(GB、MB 等)打印內(nèi)存統(tǒng)計數(shù)據(jù)。當你想快速了解內(nèi)存容量時,它非常有用。
4. df – 報告文件系統(tǒng)磁盤空間使用情況
df 命令顯示文件系統(tǒng)的磁盤空間使用情況。它會顯示文件系統(tǒng)名稱、總/已用/可用空間和容量。
常用的參數(shù)選項:
? -h :以人類可讀的格式顯示磁盤使用情況,以 K、M、G 等單位表示文件系統(tǒng)的大小和可用空間。
? -T :顯示文件系統(tǒng)類型。
? -i :顯示 inode 的使用情況而不是磁盤空間。
? -a :顯示所有文件系統(tǒng),包括系統(tǒng)特有的文件系統(tǒng)。
? -x type :排除指定類型的文件系統(tǒng)。例如,-x tmpfs 將排除 tmpfs 類型的文件系統(tǒng)。
? -hT :同時使用 -h 和 -T 參數(shù),以人類可讀的格式顯示文件系統(tǒng)以及各個文件系統(tǒng)類型。
? –total :在最后一行顯示所有文件系統(tǒng)的總空間和已使用空間。
? –help :顯示 df 命令的幫助信息,包括所有可用的參數(shù)選項和用法示例。
例子:
df-h
上述命令將以人類可讀的格式打印磁盤利用率。也可以不帶參數(shù)運行該命令,以塊大小獲得相同的數(shù)據(jù)。
[root@xx web]#df-T Filesystem Type 1K-blocks Used Available Use% Mounted on devtmpfs devtmpfs 891628 0 891628 0% /dev tmpfs tmpfs 904464 0 904464 0% /dev/shm tmpfs tmpfs 904464 107052 797412 12% /run tmpfs tmpfs 904464 0 904464 0% /sys/fs/cgroup /dev/vda1 xfs 62903276 4308344 58594932 7% / tmpfs tmpfs 180896 0 180896 0% /run/user/0
各列的含義:
? Filesystem:文件系統(tǒng)的名稱或掛載點名稱。
? Type:文件系統(tǒng)的類型。
? 1K-blocks:文件系統(tǒng)的總塊數(shù)(以千字節(jié)為單位)。
? Used:已使用的塊數(shù)(以千字節(jié)為單位)。
? Available:可用的塊數(shù)(以千字節(jié)為單位)。
? Use%:已使用空間占總空間的百分比。
? Mounted on:文件系統(tǒng)的掛載點。
5. sar – 收集和報告系統(tǒng)活動
sar 工具收集并記錄一段時間內(nèi) CPU、內(nèi)存、I/O、網(wǎng)絡等系統(tǒng)活動信息。通過分析這些數(shù)據(jù),可以發(fā)現(xiàn)性能問題。
語法:
sar [options] [interval [count]]
其中,[options] 是可選的命令選項,[interval] 是數(shù)據(jù)收集的時間間隔(以秒為單位),[count] 是指定收集的次數(shù)。
一些常用的 sar 參數(shù)選項和示例:
? -u:顯示 CPU 使用率統(tǒng)計數(shù)據(jù)。
示例:sar -u
? -r:顯示內(nèi)存使用情況統(tǒng)計數(shù)據(jù)。
示例:sar -r
? -b:顯示磁盤 I/O 統(tǒng)計數(shù)據(jù)。
示例:sar -b
? -n DEV:顯示網(wǎng)絡接口的統(tǒng)計數(shù)據(jù),其中 DEV 是網(wǎng)絡接口的名稱,如 eth0。
示例:sar -n DEV
? -q:顯示運行隊列和負載平均值的統(tǒng)計數(shù)據(jù)。
示例:sar -q
? -A:顯示所有可用的統(tǒng)計數(shù)據(jù)。
示例:sar -A
? -s HHSS:從指定的起始時間開始顯示統(tǒng)計數(shù)據(jù)。
示例:sar -s 1000
? -e HHSS:顯示到指定的結(jié)束時間的統(tǒng)計數(shù)據(jù)。
示例:sar -e 1200
? -f FILE:指定 sar 數(shù)據(jù)文件的路徑,用于讀取預先記錄的數(shù)據(jù)。在 Linux 系統(tǒng)上,默認情況下,sar 數(shù)據(jù)文件存儲在 /var/log/sa/ 目錄下,文件名以 sa 開頭,后面跟著日期的數(shù)字表示,如 sa01、sa02 等。每個數(shù)據(jù)文件包含了特定日期的系統(tǒng)活動報告數(shù)據(jù)。
示例:sar -f /var/log/sa/sa01
? -o OUTPUT_FILE:將統(tǒng)計數(shù)據(jù)寫入指定的輸出文件中,以便后續(xù)使用。
示例:sar -o output.txt
例子:
sar -u 5 60
每 5 秒采樣一次 CPU 使用情況,持續(xù) 60 次。
sar 提供了實時工具無法提供的詳細歷史系統(tǒng)性能數(shù)據(jù)。
-
cpu
+關(guān)注
關(guān)注
68文章
11011瀏覽量
215185 -
Linux
+關(guān)注
關(guān)注
87文章
11420瀏覽量
212322 -
命令
+關(guān)注
關(guān)注
5文章
722瀏覽量
22631
原文標題:提升Linux系統(tǒng)性能的5大必備監(jiān)控命令,讓你輕松掌控服務器狀態(tài)
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
Linux目錄的創(chuàng)建與刪除命令
Linux與用戶有關(guān)的命令
解析對Linux系統(tǒng)管理員有用的并且最常用的20個命令行系統(tǒng)監(jiān)視工具

Linux中的35個find命令用法

Linux查看資源使用情況和性能調(diào)優(yōu)常用的命令
10個LINUX命令 超好用
Linux系統(tǒng)常用的性能監(jiān)控命令——vmstat命令
Linux操作必備150個命令
常用的linux命令有哪些類型
常用的linux系統(tǒng)性能監(jiān)控命令

評論