10.4-sar命令

用 sar 命令監控系統狀態
sar 命令很強大,它可以監控系統幾乎所有資源狀態,比如平均負載、網卡流量、磁盤狀態、內存使用等。與其他系統狀態監控工具不同,它可以打印歷史信息,可以顯示當天從零點開始到當前時刻的系統狀態信息。如果你的系統沒有安裝這個命令,請使用 yum install -y sysstat 安裝。初次使用 sar 命令會報錯,那是因爲 sar 工具還沒有生成相應的數據庫文件(無需實時監控,因爲不用去查詢那個庫文件)它的數據庫文件在 /var/log/sa 目錄下。因爲這個命令太複雜,所以只介紹以下兩個方面。

安裝 sar 包

[root@evan-01 ~]# sar
-bash: sar: command not found
[root@evan-01 ~]# yum install -y sysstat

初次使用 sar

[root@evan-01 ~]# sar
Cannot open /var/log/sa/sa20: No such file or directory
[root@evan-01 ~]# 

沒有加任何的選項,它就會到生成的歷史文件查找。初次使用 sar 命令會報錯,那是因爲 sar 工具還沒有生成相應的數據庫文件(無需實時監控,因爲不用去查詢那個庫文件)它的數據庫文件在 /var/log/sa 目錄下,每隔10分鐘會生成一下,因爲我們剛安裝的 sar 所以還沒有,不過不用擔心,不影響我們加上其他選項使用

查看網卡流量 sar -n DEV

[root@evan-01 ~]# sar -n DEV 1 5
Linux 3.10.0-693.el7.x86_64 (evan-01)   11/20/2019      _x86_64_        (1 CPU)

11:39:50 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
11:39:51 AM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11:39:51 AM     ens33      1.01      1.01      0.06      0.17      0.00      0.00      0.00

11:39:51 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
11:39:52 AM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11:39:52 AM     ens33      0.99      0.99      0.06      0.37      0.00      0.00      0.00

11:39:52 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
11:39:53 AM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11:39:53 AM     ens33      0.99      0.99      0.06      0.37      0.00      0.00      0.00

11:39:53 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
11:39:54 AM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11:39:54 AM     ens33      0.99      0.99      0.06      0.37      0.00      0.00      0.00

11:39:54 AM     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
11:39:55 AM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11:39:55 AM     ens33      1.00      1.00      0.06      0.37      0.00      0.00      0.00

Average:        IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
Average:           lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
Average:        ens33      1.00      1.00      0.06      0.33      0.00      0.00      0.00
[root@evan-01 ~]#

這個命令會把當天記錄的網卡信息打印出來,每隔10分鐘記錄一次。IFACE這一列表示設備名稱,rxpck/s 這一列表示每秒進入收取的包的數量,txpck/s 這一列表示每秒發送出去的包的數量,rxkB/s這一列表示每秒收取的數據量(單位爲 KB),txkB/s 這一列表示每秒發送的數據量(後面幾列不需要關注)

如果有一天服務器丟包非常嚴重,那麼你就應該查一下網卡流量是否異常了。如果 rxpck/s 那一列的數值大於 4000,或者 rxkB/s 那一列的數值大於 5000000,很有可能是被攻擊了。正常的服務器網卡流量不會那麼高,除非是你自己在複製數據


再來執行下 sar

[root@evan-01 ~]# sar
Linux 3.10.0-693.el7.x86_64 (evan-01)   11/20/2019      _x86_64_        (1 CPU)
[root@evan-01 ~]# ls /var/log/sa/
sa20
[root@evan-01 ~]# 

已經不再有報錯了,查看下發現 /var/log/sa/ 目錄下已經有了文件了,自動生成的,每隔10分鐘抓一次


查看某一天的網卡流量歷史
-f 選項查看某一天的網卡流量歷史,後面跟文件名。sar 的庫文件一定在 /var/log/sa/目錄下。包的名字很有意思,後面數字代表日期

[root@evan-01 ~]# sar -n DEV -f /var/log/sa/sa20
Linux 3.10.0-693.el7.x86_64 (evan-01)   11/20/2019      _x86_64_        (1 CPU)
[root@evan-01 ~]# 

現在還沒數據,所以沒展示出來。


查看歷史負載 sar -q

[root@evan-01 ~]# sar -q
Linux 3.10.0-693.el7.x86_64 (evan-01)   11/20/2019      _x86_64_        (1 CPU)

11:40:01 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
11:50:01 AM         1       121      0.00      0.01      0.05         0
12:00:01 PM         1       122      0.02      0.02      0.05         0
12:10:01 PM         1       122      0.01      0.02      0.05         0
12:20:01 PM         1       122      0.07      0.04      0.05         0
12:30:01 PM         1       123      0.00      0.01      0.05         0
12:40:01 PM         1       122      0.00      0.01      0.05         0
12:50:01 PM         1       122      0.00      0.01      0.05         0
01:00:01 PM         1       122      0.01      0.03      0.05         0
01:10:02 PM         1       121      0.00      0.01      0.05         0
01:20:01 PM         1       121      0.00      0.01      0.05         0
01:30:01 PM         1       122      0.00      0.01      0.05         0
01:40:01 PM         1       121      0.02      0.02      0.05         0
01:50:01 PM         1       121      0.00      0.01      0.05         0
02:00:01 PM         1       121      0.00      0.01      0.05         0
Average:            1       122      0.01      0.02      0.05         0
[root@evan-01 ~]#

這個命令有助於我們查看服務器在過去某個時間的負載情況

查看磁盤負載 sar -b

[root@evan-01 ~]# sar -b
Linux 3.10.0-693.el7.x86_64 (evan-01)   11/20/2019      _x86_64_        (1 CPU)

11:40:01 AM       tps      rtps      wtps   bread/s   bwrtn/s
11:50:01 AM      0.08      0.00      0.08      0.00      1.12
12:00:01 PM      0.05      0.00      0.05      0.00      0.42
12:10:01 PM      0.09      0.02      0.08      0.31      1.07
12:20:01 PM      0.03      0.00      0.03      0.00      0.41
12:30:01 PM      0.92      0.37      0.55     10.83     13.99
12:40:01 PM      0.03      0.00      0.03      0.00      0.37
12:50:01 PM      0.06      0.00      0.06      0.00      0.87
01:00:01 PM      0.05      0.00      0.05      0.00      0.48
01:10:02 PM      0.10      0.00      0.10      0.00      1.34
01:20:01 PM      0.02      0.00      0.02      0.00      0.29
01:30:01 PM      0.07      0.00      0.07      0.00      0.86
01:40:01 PM      0.03      0.00      0.03      0.00      0.33
01:50:01 PM      0.02      0.00      0.02      0.00      0.29
02:00:01 PM      0.06      0.00      0.06      0.00      0.62
02:10:01 PM      0.06      0.00      0.06      0.00      0.51
Average:         0.11      0.03      0.08      0.74      1.53
[root@evan-01 ~]#

查看磁盤的讀和寫

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章