監測服務器資源使用情況 Linux top命令詳解

基礎

free 查看總內存,使用空閒情況

 

vmstat - 查看CPU使用率、內存情況、IO讀寫情況

 

ethtool - 查看網卡寬帶大小

 

top - 實時顯示系統中各個進程的資源佔用狀況

常用操作
  • m:切換顯示內存信息。
  • t:切換顯示進程和CPU狀態信息。
  • c:切換顯示命令名稱和完整命令行。
  • M:根據駐留內存大小進行排序。
  • P:根據CPU使用百分比大小進行排序。
  • T:根據時間/累計時間進行排序。
  • W:將當前設置寫入~/.toprc文件中。
  • E:切換頂部內存信息單位(k,m,g,t,p)
  • e:切換底下進程信息單位(k,m,g,t,p)
  • 1:可監控每個邏輯CPU的狀況

Linux top命令詳解

Linux Load Average過高多少合適?

一般的進程需要消耗CPU、內存、磁I/O、網絡I/O等資源,在這種情況下,平均負載就不是單獨指的CPU使用情況。

即內存、磁盤、網絡等因素也可以影響系統的平均負載值。 在單核處理器中,平均負載值1或者小1的時候,系統處理進程會非常輕鬆,即負載很低。

當達3的時候,就會顯得很忙,達5或8的時候就不能很好的處理進程了(其58目前還是個爭議的閾值,爲了保守起見,建議選擇低的)。

核CPU的話,滿負荷狀態的數字爲 "1.00 * CPU核數",即雙核CPU爲2.00,四核CPU爲4.00。

 
 

高階

iostat - 統計CPU和設備I/O使用情況

一款Linux下的io性能監控軟件,用於統計CPU使用情況和塊設備I/O情況
yum -y install sysstat
默認輸出有三大部分:
  • 系統信息:內核版本、當前日期、CPU架構、CPU核數目;
  • CPU使用統計信息:用戶進程使用率、系統使用率、空閒率等;
  • 塊設備I/O統計信息:每秒讀寫的數據量、總讀寫數據量等。
 

pidstat - 監控進程的資源使用情況

pidstat 命令是 sysstat 工具的一個命令,用來監控全部或者指定進程的CPU、內存、線程、設備IO等系統資源的佔用情況。
  • -u 默認的參數,顯示各個進程的CPU使用統計
  • -r 顯示各個進程的內存使用統計
  • -d 顯示各個進程的IO使用情況
  • -p 指定進程號
  • -w 顯示每個進程的上下文切換情況
  • -t 顯示選擇任務的線程的統計信息外的額外信息
  • -l:顯示命令名和所有參數
  • -C:匹配命令名
 

htop - 可以動態觀察系統進程狀況

top是linux下常用的監控程序,htop相當於其加強版,顏色顯示不同參數,且支持鼠標操作。
  • M :按內存佔用排序
  • P :按CPU排序
  • H :顯示/隱藏用戶線程
  • t : 顯示樹形結構
  • l :顯示進程打開的文件: 如果安裝了lsof,按此鍵可以顯示進程所打開的文件
yum -y install epel-release && yum install -y htop
 

iotop - 監控進程磁盤讀寫情況

iotop 是用於查看硬盤操作的工具,可顯示 Linux 系統上哪些進程執行最多的 I/O。
yum -y install iotop
控件:左右箭頭更改排序列,r 反轉排序順序,o/p /a 切換對應選項,q 退出,任何其他鍵強制刷新。
選項:
  • -h, --help 顯示此幫助信息並退出
  • -o, --only 僅顯示實際執行 I/O 的進程或線程
  • -p PID, --pid=PID 要監控的進程/線程[全部]
  • -u USER, --user=USER 要監控的用戶 [all]
  • -P, --processes 只顯示進程,不顯示所有線程
  • -a, --accumulated 顯示累計 I/O 而不是帶寬
 

iftop - 監控本機網絡流量情況

Iftop 主要用來顯示本機網絡流量情況及各相互通信的流量集合,如單獨同那臺機器間的流量大小,非常適合於代理服務器和 iptables 服務器使用。
yum -y install epel-release && yum -y install iftop
直接執行iftop即可
 
 

更多

dstat - 實時監測網絡的狀態

yum -y install dstat
 

nload - 實時統計網卡帶寬使用率

yum -y install nload
nload em1
 

nethogs - 監控進程帶寬佔用情況

Nethogs 是一個終端下的網絡流量監控工具,它的特別之處在於可以顯示每個進程的帶寬佔用情況,這樣可以更直觀獲取網絡使用情況。它支持 IPv4 和 IPv6 協議、支持本地網卡及 PPP 鏈接。
yum -y install epel-release && yum -y install nethogs
直接執行 nethogs 可以顯示每個進程的帶寬佔用情況
nethogs 後面直接加網卡名稱可以監控該網卡
nethogs 加-d參數指定多長時間刷新一次
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章