JavaShuo
欄目
標籤
使用w查看系統負載,vmstat 命令,sar命令,nload命令
時間 2019-12-17
標籤
使用
查看
系統
負載
vmstat
命令
sar
nload
欄目
負載均衡
简体版
原文
原文鏈接
使用w查看系統負載
如圖,使用 w 命令能夠顯示系統負載信息
第一個時間是使用w命令時,系統當前的時間
第二個時間,也就是up後面的時間,是系統運行了多長的時間
這裏是 9 days, 22:43 說明系統運行了9天22分鐘
2 users 表示有兩個用戶登陸了系統
load averagge 後面的三列數字表示系統負載的數值
第一列是過去1分鐘的平均負載,第二列是過去5分鐘的平均負載,第三列是過去15分鐘的平均負載
好比每一個cpu有有一個默認負載極限
過去一分鐘實際運行的進程比默認的負載極限少
那麼 過去一分鐘的進程數/極限進程負載數 就會小於 1
若是過去一分鐘的進程數等於極限進程負載數
這兩個值相除,就等於1
若是1分鐘內的進程數大於極限負載數,兩個值相除,就會大於1
這個值最好是 小於等於1,若是大於1,說明負載過高
對於多核cpu負載極限也不一樣
好比,單核cpu負載極限是1,雙核就是2,8核就是8
負載極限是按照邏輯cpu來算的,而不是物理cpu
想查看邏輯cpu數量,能夠 cat /proc/cpuinfo
如圖,能夠看 processor 這一行數據
這裏是 0 ,就表示有一個邏輯cpu
這一行數據是從0開始的,實際上 0 就表示1個邏輯cpu
若是這一行數值是7,那就表示有8個邏輯cpu
這一行的數值加 1 就是邏輯cpu的個數
因此 processor 這一行的值+1乘以1就是服務器的極限負載能力值
load average 小於或者等於這個值就說明服務器負載沒有問題
大於這個值說明實際負載大於服務器極限負載值
使用 uptime 命令也能夠查看系統負載信息,不過通常都使用 w
vmstat 命令
vmstat 能夠查看當前系統cpu,磁盤,內存等的使用情況
如圖,使用命令 vmstat 能夠查看一次當前情況
若是想不斷的更新使用情況,可使用 vmstat 1
這樣系統每過1秒,就會顯示一次當前的系統使用情況
也可使用 vmstat 1 5
這條命令意思是 每秒顯示一次信息,總共顯示5次
這樣就能夠看到接下來5秒的系統使用情況
vmstat 顯示的信息主要分爲幾部分,經常使用部分有
procs 表明 cpu
memory 表明內存
swap 表明交換分區
io 表明磁盤
cpu cpu使用時間百分比
procs 下面有 r 跟 b 兩列
r 是 run 的意思
意思是cpu在處理的進程數量
通常正在處理和等待處理的進程數量都在 r 顯示
b 是 block 的意思
下面是數值也是進程數量
跟r的區別是,因爲網絡,或者磁盤等緣由卡死等待的進程數量
會顯示在這裏,好比一個進程須要網絡傳輸數據
可是網絡太慢,數據沒有傳輸完成,致使cpu不能處理該進程
這個進程就會進入等待,由於是網絡卡致使的等待
會顯示在 b 這一列裏面
memory下面的 swpd 是交換分區的意思
若是內存不夠用了,系統會將內存裏面的一部分數據放到交換分區裏面
交換分區通常是在磁盤上面
這個分區若是頻繁變更
說明內存在不斷的與交換分區交換數據
也就表示內存是不夠用的
swap 下面的 si,so 跟swpd有關係
si,so就表示交換分區的讀寫情況,單位是kb
因此 swpd 有變更的話
si,so也必定有數據變化
i表示in,o表示out,目標對象都是內存
因此 si 是數據 in 內存,也就是從swap 讀數據進入內存
so 是數據 out 內存,也就是從內存出來,寫入swap
si 表示數據從交換分區寫入內存
so 表示數據從內存寫入交換分區
io下面的 bi,bo 表明磁盤讀寫
目標對象也是內存
因此 bi 表示 in 內存,從磁盤讀取數據寫入內存
bo 表示 out 內存,從內存讀取數據寫入磁盤
bi 數據從磁盤到內存
bo 數據從內存到磁盤
cpu 下面經常使用的是 us,單位是百分比
us 表示用戶的進程佔用cpu使用時間的百分比
舉例說明,cpu 開啓了 10秒
有 5秒 都在處理用戶的進程
那麼 us 就是 50
sy 是系統本身的進程佔用的cpu使用時間百分比
id 表示cpu空閒的時間的百分比
cpu從啓動開始,通常就是兩種狀態,空閒 或者處理進程
那麼 空閒時間 + 處理進程的時間 = 總的時間
us 就是 處理用戶進程的時間 除以 總的時間 的百分比
sy 就是 處理系統進程的時間 除以 總的時間 的百分比
id 就是 空閒時間 除以 總的時間 的百分比
因此 us + sy + id = 100(百分百)
通常 us 超過 50 說明 cpu 可能性能不足以應付當前任務
wa 是進程等待數的百分比,表示在等待狀態的進程佔總進程數的百分比
top 命令
top 能夠查看系統進程使用情況
top 命令每3秒更新一次信息
如圖,第一行的信息跟 w 第一行同樣
第二行有幾列信息,分別是
total,runningg,sleeping,stopped,zombie
total表示總共有幾個進程,這裏總共有95個進程
running就是正在運行的進程,也就是cpu正在處理的進程
也是 vmstat 中 r 狀態的進程
sleeping 表示進程在休眠狀態,能夠過一段時間纔會運行
stopped 表示進程在中止狀態的進程數
zombie 意思是主進程由於某種緣由已經終止了
可是留下的子進程並無被終止,這些子進程就沒人管了
還在自動運行,可是是沒用的,這些子進程就是zombie狀態
第三行是cpu的信息
能夠在第三行看到 us sy id wa st 的信息
主要要看的也是這幾個
其中,st 表明 cpu 被偷走的時間百分比
若是服務器作了虛擬化,就會產生虛擬機
而虛擬機的cpu利用的資源實際來自於服務器的真實cpu
st 也就是 cpu 被虛擬機拿去使用的時間的佔比
主要仍是觀察 us 的使用狀況
儘可能保證 us 佔比在 60 一下
由於 cpu 常年滿負荷運轉的話,會縮短使用壽命
因此通常在60如下比較好
us 和 load average 不必定有關係
由於系統負載跟進程數佔用cpu有關
可是佔用cpu的進程不必定是 r 狀態
若是不是 r 狀態,那麼 us 就不高
Mem 是內存信息
第一列是總內存大小
第二列是空閒內存大小
第三列是已經使用的內存大小
如圖,下面顯示的是進程的信息
通常來講,默認是按照 cpu 的佔用率來進行排序
cpu 佔用高的進程會在上面
%MEM是內存的佔用率
RES 是進程使用的實際內存,單位是kb
RES 除以 上面的total 就能夠獲得 %MEM 內存佔用率
除了按照cpu佔用率排序以外
還能夠按照內存佔用率排序,使用 大寫M 就能夠按照內存佔用率排序
也就是按 大寫的M鍵
若是想切換回來,按照cpu佔用率排序,可使用 大寫P 鍵
還能夠切換不一樣的cpu查看進程,使用按鍵 1
按 1 就能夠在不一樣的cpu之間進行切換
使用命令 top -c
如圖,c 參數能夠在 COMMAND 列 顯示詳細的命令信息,如這個命令的地址等
還可使用 top -bn1 命令
這樣能夠一次性把全部的進程信息都列出來,適合在寫腳本時使用
若是想kill一個進程,可使用 kill命令 + PID 來殺死一個進程
sar命令
若是系統沒有sar命令,就須要安裝一個包
yum install -y sysstat 就能夠安裝sar命令的包
安裝完包,直接使用 sar 命令,出現錯誤
由於在不加參數的狀況下使用 sar 命令
sar 會調用 /var/log/sa 目錄裏面的歷史文件
sar 每隔10分鐘,會自動保存一個歷史文件在這個目錄裏面
由於如今剛剛安裝完包,這個目錄裏面尚未歷史文件,因此調用出現錯誤
沒有歷史文件的狀況下,想使用sar 就須要加上參數使用
如圖,sar -n DEV 1 3 能夠查看網卡信息
參數 -n 是網絡設備的意思
參數 DEV 是 -n 的參數,指網絡設備的統計信息
網絡設備有不一樣類型的統計信息,DEV是設備基本的統計信息
參數 1 是指 每秒統計一次,參數 3 是指 總共統計三次
也就是 3 秒後sar命令會自動結束
使用命令後,下面出現的信息
第一列是統計信息的時間
第二列是網卡的名字,這裏有兩個網卡,分別是 lo 和 ens33
第三列 rxpck/s 是每秒接收到的數據包,單位是個
第四列 txpck/s 是每秒發送出去的數據包,單位是個
第五列 rxkB/s 是每秒接收的數據量,單位是kb
第六列 txkB/s 是每秒發送出去的數據量,單位是kb
最後三列不怎麼用到,主要看數據包跟數據量的列
接收的數據包,若是是每秒幾千個,算是正常的
若是每秒上萬個,多是被攻擊了
使用這條命令,能夠查看 /var/log/sa/ 目錄下的歷史文件
歷史文件生成名稱是有規律的,通常是 sa+當天的日期的日
好比,今天是10月01日,那麼今天生成的歷史文件名稱就是 sa01
若是是10月20日生成的歷史文件,那麼文件名就是 sa20
當天的歷史文件,每隔10分鐘會更新一次
這個文件夾下面的歷史文件最多保留1個月就會自動刪除
這條命令裏面,使用 -f 參數才能夠打開文件,後面接文件地址
目錄 /var/log/sa/sa01 這個歷史文件是 二進制文件,不能 cat 查看
sa目錄下面除了sa01,還會生成 sar01 這個文件
不過 sar01 要到次日纔會出現,sar01 是文本文件
直接使用 cat 就能夠讀取內容
sar -q 1 10 查看每秒的負載,總共看10秒,不過每秒負載意義不大
直接 sar -q 系統自動分爲 每10分鐘的負載
或者使用 sar -q -f /var/log/sa/sa01 查看當天的負載
這裏,ldavg-1就是前1分鐘的負載狀況
ldavg-5就是前5分鐘,ldavg-15就是前15分鐘負載
sar -b 1 5 查看磁盤讀寫狀況,每秒統計1次,總共5次
下面的信息就是磁盤的讀寫狀況,能夠用 sar -b 查看
nload命令
nload 也能夠監控網卡流量
nload 也是須要安裝包的
安裝 nload 包以前,須要先安裝 epel-release 包
安裝好以後,再使用 yum install -y nload 安裝 nload 包
安裝好包以後,輸入 nload 回車,就會出現上圖界面
能夠實時看到網卡的流量信息
Curr 是當前值,Avg是平均值,Min是最小值,Max是最大值
第一行數據,ens33就是網卡名稱
後面是 ip 地址,而後(1/2)表示總共有2個網卡,這是其中一個
使用 右方向鍵,能夠切換到第二個網卡,如上圖,能夠看到第二個網卡的信息
右方向鍵能夠切換網卡,看到不一樣網卡的信息
也可使用左方向鍵向左切換
右方向鍵能夠來回切換,左方向鍵只能向左切換
按 q 退出該界面
相關文章
1.
使用w查看系統負載 、vmstat、top、sar、nload命令
2.
使用w查看系統負載、vmstat、top、sar、nload命令
3.
11.27 使用w查看系統負載 vmstat top sar nload 命令
4.
w查看負載,vmstat命令,top命令,sar命令,nload命令
5.
LINUX系統學習筆記使用w查看系統負載 ,vmstat命令,top命令, sar命令, nload命令
6.
使用w查看系統負載、vmstat命令、top命令、sar命令、nload命令
7.
使用w查看系統負載 vmstat命令 top命令 sar命令 nload命令
8.
10.1 使用w查看系統負載 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令
9.
28次課(使用w查看系統負載、vmstat命令、top命令、sar命令、nload命令)
10.
使用w查看系統負載, vmstat命令, top命令, sar命令, nload命令
更多相關文章...
•
Docker info 命令
-
Docker命令大全
•
Docker rm 命令
-
Docker命令大全
•
Docker 清理命令
•
Docker容器實戰(七) - 容器眼光下的文件系統
相關標籤/搜索
命令
命令模式
下命令
命令行CMD
ANSYS命令流
zip命令
命令式
Linux命令
clean deploy命令
Linux 命令
Linux
負載均衡
Docker命令大全
MySQL教程
Redis教程
命令
文件系統
應用
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
android 以太網和wifi共存
2.
沒那麼神祕,三分鐘學會人工智能
3.
k8s 如何 Failover?- 每天5分鐘玩轉 Docker 容器技術(127)
4.
安裝mysql時一直卡在starting the server這一位置,解決方案
5.
秋招總結指南之「性能調優」:MySQL+Tomcat+JVM,還怕面試官的轟炸?
6.
布隆過濾器瞭解
7.
深入lambda表達式,從入門到放棄
8.
中間件-Nginx從入門到放棄。
9.
BAT必備500道面試題:設計模式+開源框架+併發編程+微服務等免費領取!
10.
求職面試寶典:從面試官的角度,給你分享一些面試經驗
本站公眾號
歡迎關注本站公眾號,獲取更多信息
相關文章
1.
使用w查看系統負載 、vmstat、top、sar、nload命令
2.
使用w查看系統負載、vmstat、top、sar、nload命令
3.
11.27 使用w查看系統負載 vmstat top sar nload 命令
4.
w查看負載,vmstat命令,top命令,sar命令,nload命令
5.
LINUX系統學習筆記使用w查看系統負載 ,vmstat命令,top命令, sar命令, nload命令
6.
使用w查看系統負載、vmstat命令、top命令、sar命令、nload命令
7.
使用w查看系統負載 vmstat命令 top命令 sar命令 nload命令
8.
10.1 使用w查看系統負載 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令
9.
28次課(使用w查看系統負載、vmstat命令、top命令、sar命令、nload命令)
10.
使用w查看系統負載, vmstat命令, top命令, sar命令, nload命令
>>更多相關文章<<