日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux系统的监控工具名称,Linux下几款系统监控工具介绍

發布時間:2023/12/15 linux 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux系统的监控工具名称,Linux下几款系统监控工具介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

來源:網絡大俠

vmstat結果內容的解釋

Vmstat

procs -----------memory----------?????? ---swap--?? -----io----?????? --system--?? -----cpu------

r b?? swpd?? free??? buff?????? cache?? si?? so????? bi??? bo???????? in?? cs????????? us sy id wa st

2 0?? 88?? 199564 134860 1175252?? 0??? 0??????? 0?? 352??????? 9323 10496???? 8 6?? 85 0 0

procs

r 列表示運行和等待cpu時間片的進程數,如果長期大于1,說明cpu不足,需要增加cpu。

b 列表示在等待資源的進程數,比如正在等待I/O、或者內存交換等。

memory

swpd 切換到內存交換區的內存數量(k表示)。如果swpd的值不為0,或者比較大,比如超過了100m,只要si、so的值長期為0,系統性能還是正常

free 當前的空閑頁面列表中內存數量(k表示)

buff 作為buffer cache的內存數量,一般對塊設備的讀寫才需要緩沖。

cache: 作為page cache的內存數量,一般作為文件系統的cache,如果cache較大,說明用到cache的文件較多,如果此時IO中bi比較小,說明文件系統效率比較好。

swap

si 由內存進入內存交換區數量。

so由內存交換區進入內存數量。

IO

bi 從塊設備讀入數據的總量(讀磁盤)(每秒kb)。

bo 塊設備寫入數據的總量(寫磁盤)(每秒kb)

這里我們設置的bi+bo參考值為1000,如果超過1000,而且wa值較大應該考慮均衡磁盤負載,可以結合iostat輸出來分析。

system 顯示采集間隔內發生的中斷數

in 列表示在某一時間間隔中觀測到的每秒設備中斷數。

cs列表示每秒產生的上下文切換次數,如當 cs 比磁盤 I/O 和網絡信息包速率高得多,都應進行進一步調查。

cpu 表示cpu的使用狀態

us 列顯示了用戶方式下所花費 CPU 時間的百分比。us的值比較高時,說明用戶進程消耗的cpu時間多,但是如果長期大于50%,需要考慮優化用戶的程序。

sy 列顯示了內核進程所花費的cpu時間的百分比。這里us + sy的參考值為80%,如果us+sy 大于 80%說明可能存在CPU不足。

wa 列顯示了IO等待所占用的CPU時間的百分比。這里wa的參考值為30%,如果wa超過30%,說明IO等待嚴重,這可能是磁盤大量隨機訪問造成的,也可能磁盤或者磁盤訪問控制器的帶寬瓶頸造成的(主要是塊操作)。

id 列顯示了cpu處在空閑狀態的時間百分比

vmstat命令輸出分成六個部分:

(1)進程procs:

r:在運行隊列中等待的進程數 。

b:在等待io的進程數 。

(2)內存memoy:

swpd:現時可用的交換內存(單位KB)。

free:空閑的內存(單位KB)。

buff: 緩沖去中的內存數(單位:KB)。

cache:被用來做為高速緩存的內存數(單位:KB)。

(3) swap交換頁面

si: 從磁盤交換到內存的交換頁數量,單位:KB/秒。

so: 從內存交換到磁盤的交換頁數量,單位:KB/秒。

(4) io塊設備:

bi: 發送到塊設備的塊數,單位:塊/秒。

bo: 從塊設備接收到的塊數,單位:塊/秒。

(5)system系統:

in: 每秒的中斷數,包括時鐘中斷。

cs: 每秒的環境(上下文)切換次數。

(6)cpu中央處理器:

cs:用戶進程使用的時間 。以百分比表示。

sy:系統進程使用的時間。 以百分比表示。

id:中央處理器的空閑時間 。以百分比表示。

如果 r經常大于 4 ,且id經常小于40,表示中央處理器的負荷很重。

如果bi,bo 長期不等于0,表示物理內存容量太小。

vmstat輸出時間標示.

vmstat 1 1 | awk '{print system("date +%H:%M:%S"),$0}'

vmstat:報告關于內核進程,虛擬內存,磁盤,cpu的的活動狀態的工具

主要有幾個用法:

1.vmstat 間隔 測試數量

輸出如下

kthr???? memory?? page faults cpu

-----?? -----------?? ------------------------ ------------ -----------

r b avm fre re pi po fr sr cy in sy cs us sy id wa

0 0 26258 18280 0 0 0 7 20 0 127 227 64 1 2 96 1

procs -----------memory----------??????? ---swap-- -----io---- --system--????????? -----cpu------

r b??? swpd?? free?? buff cache??????????? si?? so????? bi??? bo?????? in?? cs???????????? us sy id wa st

4 0???? 88 336220 255096 934424?????? 0??? 0???? 0???? 0????? 11415 15111????? 10 9 82 0 0

4 0???? 88 336344 255096 934424?????? 0??? 0???? 0??? 12???? 12621 17560????? 11 10 79 0 0

3 0???? 88 336220 255100 934460?????? 0??? 0???? 0?? 268??? 12245 16786????? 12 10 78 0 0

其中:

kthr--內核進程的狀態

--r 運行隊列中的進程數,在一個穩定的工作量下,應該少于5 (r <5)

--b 等待隊列中的進程數(等待I/O),通常情況下是接近0的. (b=0)

memory--虛擬和真實內存的使用信息

--avm 活動虛擬頁面,在進程運行中分配到工作段的頁面空間數.

--fre 空閑列表的數量.一般不少于120,當fre少于120時,系統開始自動的kill進程去釋放

free list

page--頁面活動的信息

--re 頁面i/o的列表

--pi 從頁面輸入的頁(一般不大于5)

--po 輸出到頁面的頁

--fr 空閑的頁面數(可替換的頁面數)

--sr 通過頁面置換算法搜索到的頁面數

--cy 頁面置換算法的時鐘頻率

faults--在取樣間隔中的陷阱及中斷數

--in 設備中斷

--sy 系統調用中斷

--cs 內核進程前后交換中斷

cpu--cpu的使用率

--us 用戶進程的時間

--sy 系統進程的時間

--id cpu空閑的時間

--wa 等待i/o的時間

一般us+sy 在單用戶系統中不大于90,在多用戶系統中不大于80.

wa時間一般不大于40.

2.vmstat -s

現實系統自初始化以來的頁面信息.

top是給Linux設計的。在FreeBSD VM里面的Free概念和其他OS完全不同,使用top查看Free內存對于FreeBSD來說可以說沒什么意義。正確的方法是看vmstat。

# vmstat

procs??? memory??? page??????????????? disk faults??? cpu

r b w???? avm fre?? flt?? re?? pi?? po?? fr?? sr ad0 in sy?? cs us sy id

0 2 1?? 270512?? 20316 30 0 0 0?? 26 5 1223 1589 98 593?? 1?? 1 99

最好使用vmstat t [n]命令,例如 vmstat 5 5,表示在T(5)秒時間內進行N(5)次采樣。如果只使用vmstat,無法反映真正的系統情況。

procs:

r-->在運行的進程數

b-->在等待io的進程數(等待i/o,paging等等)

w-->可以進入運行隊列但被替換的進程

memoy(以k為單位,包括虛擬內核和真實內存,正在運行或最近20秒在運行的進程所用的虛擬內存將被視為active)

avm-->活動的虛擬內存

free-->空閑的內存

pages(統計錯誤頁和活動頁,每5秒平均一下,以秒為單位給出數值)

flt-->錯誤頁總數

re-->回收的頁面

pi-->進入頁面數

po-->出頁面數

fr-->空余的頁面數

sr-->每秒通過時鐘算法掃描的頁面

disk 顯示每秒的磁盤操作(磁盤名字的前兩個字母加數字,默認只顯示兩個磁盤,如果有多的,可以加-n來增加數字或在命令行下把磁盤名都填上。)

fault 顯示每秒的中斷數

in-->設備中斷

sy-->系統中斷

cy-->cpu交換

cpu 表示cpu的使用狀態

cs-->用戶進程使用的時間

sy-->系統進程使用的時間

id-->cpu空閑的時間

解釋:

如果 r經常大于 4 ,且id經常少于40,表示cpu的負荷很重。

如果pi,po 長期不等于0,表示內存不足。

如果disk 經常不等于0, 且在 b中的隊列 大于3, 表示 io性能不好。

Procs

r: 等待運行的進程數 b: 處在非中斷睡眠狀態的進程數 w: 被交換出去的可運行的進程數。此數由 linux 計算得出,但 linux 并不耗盡交換空間

Memory

swpd: 虛擬內存使用情況,單位:KB

free: 空閑的內存,單位KB

buff: 被用來做為緩存的內存數,單位:KB

Swap

si: 從磁盤交換到內存的交換頁數量,單位:KB/秒

s 從內存交換到磁盤的交換頁數量,單位:KB/秒

IO

bi: 發送到塊設備的塊數,單位:塊/秒

b 從塊設備接收到的塊數,單位:塊/秒

System

in: 每秒的中斷數,包括時鐘中斷

cs: 每秒的環境(上下文)切換次數

CPU

按 CPU 的總使用百分比來顯示

us: CPU 使用時間

sy: CPU 系統使用時間

id: 閑置時間

準測

r<5,b≈0,

如果fre對于page列,re,pi,po,cy維持于比較穩定的狀態,PI率不超過 5,如果有pagin發生,那么關聯頁面必須先進行pageout在內存相對緊張的環境下pagein會強制對不同的頁面進行steal操作。如果系統正在讀一個大批的永久頁面,你也許可以看到po和pi列會出現不一致的增長,這種情景并不一定表明系統負載過重,但是有必要對應用程序的數據訪問模式進行見檢查。在穩定的情況下,掃描率和重置率幾乎相等,在多個進程處理使用不同的頁面的情況下,頁面會更加不穩定和雜亂,這時掃描率可能會比重置率高出。

faults列,in,sy,cs會不斷跳躍,這里沒有明確的限制,唯一的就是這些值最少大于100 cpu列,us,sys,id和wa也是不確定的,最理想的狀態是使cpu處于100%工作狀態,單這只適合單用戶的情況下。

如果在多用戶環境中us+sys》80,進程就會在運行隊列中花費等待時間,響應時間和吞吐量就會下降。wa>40表明磁盤io沒有也許存在不合理的平衡,或者對磁盤操作比較頻繁,vmstat各項:

procs: r-->在運行隊列中等待的進程數 b-->在等待io的進程數 w-->可以進入運行隊列但被替換的進程 memoy swap-->現時可用的交換內存(k表示) free-->空閑的內存(k表示) pages re--》回收的頁面 mf--》非嚴重錯誤的頁面 pi--》進入頁面數(k表示) po--》出頁面數(k表示) fr--》空余的頁面數(k表示) de--》提前讀入的頁面中的未命中數 sr--》通過時鐘算法掃描的頁面 disk 顯示每秒的磁盤操作。 s表示scsi盤,0表示盤號 fault 顯示每秒的中斷數 in--》設備中斷 sy--》系統中斷 cy--》cpu交換 cpu 表示cpu的使用狀態 cs--》用戶進程使用的時間 sy--》系統進程使用的時間 id--》cpu空閑的時間

如果 r經常大于 4 ,且id經常少于40,表示cpu的負荷很重。

如果pi,po 長期不等于0,表示內存不足。

如果disk 經常不等于0, 且在 b中的隊列 大于3, 表示 io性能不好。

Linux在具有高穩定性、可靠性的同時,具有很好的可伸縮性和擴展性,能夠針對不同的應用和硬件環境調整,優化出滿足當前應用需要的最佳性能。因此企業在維護Linux系統、進行系統調優時,了解系統性能分析工具是至關重要的。

在Linux下有很多系統性能分析工具,比較常見的有top、free、ps、time、timex、uptime等。下文將介紹幾個較為重要的性能分析工具vmstat、iostat和sar及其使用。

用vmstat監視內存使用情況

vmstat是Virtual Meomory Statistics(虛擬內存統計)的縮寫,可對操作系統的虛擬內存、進程、CPU活動進行監視。它是對系統的整體情況進行統計,不足之處是無法對某個進程進行深入分析。

vmstat的語法如下:

vmstat [-V] [-n] [delay [count]]

其中,-V表示打印出版本信息;-n表示在周期性循環輸出時,輸出的頭部信息僅顯示一次;delay是兩次輸出之間的延遲時間;count是指按照這個時間間隔統計的次數。對于vmstat輸出各字段的含義,可運行man vmstat查看。

用iostat監視I/O子系統情況

iostat是I/O statistics(輸入/輸出統計)的縮寫,iostat工具將對系統的磁盤操作活動進行監視。它的特點是匯報磁盤活動統計情況,同時也會匯報出 CPU使用情況。同vmstat一樣,iostat也有一個弱點,就是它不能對某個進程進行深入分析,僅對系統的整體情況進行分析。

iostat的語法如下:

iostat [ -c | -d ] [ -k ] [ -t ] [ -V ] [ -x [ device ] ] [ interval [ count ] ]

其中,-c為匯報CPU的使用情況;-d為匯報磁盤的使用情況;-k表示每秒按 kilobytes字節顯示數據;-t為打印匯報的時間;-v表示打印出版本信息和用法;-x device指定要統計的設備名稱,默認為所有的設備;interval指每次統計間隔的時間;count指按照這個時間間隔統計的次數。

iostat一般的輸出格式如下:

Linux 2.4.18-18smp (builder.linux.com) 2003年03月07日

avg-cpu: %user?? %nice??? %sys?? %idle

4.81??? 0.01??? 1.03?? 94.15

Device:??????????? tps?? Blk_read/s?? Blk_wrtn/s?? Blk_read?? Blk_wrtn

dev3-0?????????? 30.31????? 1117.68?????? 846.52?? 16104536?? 12197374

dev3-1??????????? 7.06?????? 229.61??????? 40.40??? 3308486???? 582080

對于輸出中各字段的含義,iostat的幫助中有詳細的說明。

使用sar進行綜合分析

表1 sar參數說明

選項 功能

-A 匯總所有的報告

-a 報告文件讀寫使用情況

-B 報告附加的緩存的使用情況

-b 報告緩存的使用情況

-c 報告系統調用的使用情況

-d 報告磁盤的使用情況

-g 報告串口的使用情況

-h 報告關于buffer使用的統計數據

-m 報告IPC消息隊列和信號量的使用情況

-n 報告命名cache的使用情況

-p 報告調頁活動的使用情況

-q 報告運行隊列和交換隊列的平均長度

-R 報告進程的活動情況

-r 報告沒有使用的內存頁面和硬盤塊

-u 報告CPU的利用率

-v 報告進程、i節點、文件和鎖表狀態

-w 報告系統交換活動狀況

-y 報告TTY設備活動狀況

sar是System Activity Reporter(系統活動情況報告)的縮寫。顧名思義,sar工具將對系統當前的狀態進行取樣,然后通過計算數據和比例來表達系統的當前運行狀態。它的特點是可以連續對系統取樣,獲得大量的取樣數據;取樣數據和分析的結果都可以存入文件,所需的負載很小。sar是目前Linux上最為全面的系統性能分析工具之一,可以從14個大方面對系統的活動進行報告,包括文件的讀寫情況、系統調用的使用情況、串口、CPU效率、內存使用狀況、進程活動及IPC有關的活動等,使用也是較為復雜。

sar的語法如下:

sar [-option] [-o file] t [n]

它的含義是每隔t秒取樣一次,共取樣n次。其中-o file表示取樣結果將以二進制形式存入文件file中。

另一種語法如下:

sar [-option] [-s time] [-e time] [-i sec] [-f file]

含義是表示從file文件中取出數據,如果沒有指定-f file,則從標準數據文件/var/adm/sa/sadd取數據,其中dd表示當前天。另外,-s time表示起始時間;-e time表示停止時間;-i sec表示取樣的時間間隔,如果不指定則表示取文件中所有的數據。對于具體的選項參見表1。

一般它與-q和-u聯合使用,以便對每個CPU的使用情況進行分析,比如運行如下命令:

sar -q -u 5 1

將輸出如下:

Linux 2.4.18-18smp (builder.linux.com)??????? 2003年03月07日

09時46分16?????? CPU???? %user???? %nice?? %system???? %idle

09時46分21?????? all????? 0.20????? 0.00????? 0.00???? 99.80

09時46分16? runq-sz plist-sz?? ldavg-1?? ldavg-5

09時46分21???????? 0??????? 91????? 0.00????? 0.00

Average:????????? CPU???? %user???? %nice?? %system???? %idle

Average:????????? all????? 0.20????? 0.00????? 0.00???? 99.80

Average:????? runq-sz plist-sz?? ldavg-1?? ldavg-5

Average:??????????? 0??????? 91????? 0.00????? 0.00

由于sar命令太復雜,只有通過熟練使用才能了解每個選項的含義,對于sar輸出中每個字段的含義運行man sar命令可以得到詳細的解釋。

閱讀(1140) | 評論(0) | 轉發(0) |

總結

以上是生活随笔為你收集整理的linux系统的监控工具名称,Linux下几款系统监控工具介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。