1、監控系統的負載
w 檢視目前系統的負載,詳細顯示主機運作時間,登入使用者數,系統平均負載資訊;
uptime 檢視目前系統的負載和主機運作時間,簡單顯示;
<a href="http://s3.51cto.com/wyfs02/M00/6B/7E/wKioL1UvYZHigOXsAAHnOr2DkLM806.jpg" target="_blank"></a>
顯示說明:
17:30:02 //系統目前時間;
up 8:06 //主機已運作時間,時間越大,說明機器越穩定。
3 users //使用者連接配接數(是總的連接配接數,不是使用者數)
load average: 0.05, 0.08, 0.02 //系統平均負載,統計最近1,5,15分鐘内系統的平均負載;
第二行開始以及下面所有的行,記錄目前登入的使用者,從哪裡登入,登入的時間等等;
重點需要關注load average:指在特定時間間隔内運作隊列中的平均程序數。
第一個數值表示1分鐘内系統的平均負載值;第二個數值表示5分鐘内系統的平均負載值;第三個數值表示15分鐘系統的平均負載值。這個值的意義是,機關時間段内CPU活動程序數。這個值越大就說明你的伺服器壓力越大。一般情況下這個值隻要不超過伺服器的cpu數量就沒有關系,如果伺服器cpu數量為8,那麼這個值若小于8,就說明目前伺服器沒有壓力,否則就要關注一下了。
cat /proc/cpuinfo 檢視cpu的個數和核數
processor 線程數,從0開始(比如8線程為0-7)
core id 核心數
1
2
3
4
<code>[root@yonglinux ~]</code><code># cat /proc/cpuinfo |grep -c 'processor'</code>
<code>1</code>
<code>[root@yonglinux ~]</code><code># cat /proc/cpuinfo |grep -c 'core id'</code>
<a href="http://s3.51cto.com/wyfs02/M02/6B/83/wKiom1UvYq2iwMsKAAGN55mKEYs149.jpg" target="_blank"></a>
2、監控系統程序狀态 – top
用于動态監控程序所占系統資源,每隔3秒變一次。
Tasks 任務,類似于windows的程序;
running 正在運作的程序;
sleeping 休眠的程序;
stopped 暫停或停止的程序;
zombie 僵屍程序;
RES 這一項為程序所占記憶體大小;
%MEM 為使用記憶體百分比。
在 top狀态下,預設按cpu的使用率大小排列,按 “shift + m”, 可以按照記憶體使用大小排序。按數字 ‘1’ 可以列出各顆cpu的使用狀态。
top -bn1 表示非動态列印系統資源使用情況,可以用在shell腳本中。
top -c 動态顯示,最右側的指令可以顯示更詳細的資訊。
3、實時監控系統狀态 vmstat
vmstat 監控一次
vmstat 1 實時監控,1秒重新整理一次,按ctrl+c退出;
vmstat 1 10 隻監控10次;
<a href="http://s3.51cto.com/wyfs02/M02/6B/83/wKiom1UvYvjgINMyAAD6OjLz0a8238.jpg" target="_blank"></a>
vmstat各名額含義:
r :表示運作和等待cpu時間片的程序數,如果長期大于伺服器cpu的個數,則說明cpu不夠用了;
b :表示等待資源的程序數,比如等待I/O, 記憶體等,這列的值如果長時間大于1,則需要關注一下了
si :由交換區進入記憶體的數量;
so :由記憶體進入交換區的數量;
bi :從塊裝置讀取資料的量(讀磁盤);
bo: 從塊裝置寫入資料的量(寫磁盤);
in : 每秒的中斷次數,包含時鐘中斷;
cs : 每秒的上下文切換次數;
wa :表示I/O等待所占用cpu時間百分比.
4、檢視系統記憶體使用情況 free
<a href="http://s3.51cto.com/wyfs02/M02/6B/83/wKiom1UvYyPCU80RAAEARcvt1v0651.jpg" target="_blank"></a>
free預設以k為機關顯示;
free -m 以M為機關顯示;
free -g 以G為機關顯示;
mem(total):記憶體總數;
mem(used):已經配置設定的記憶體;
mem(free):未配置設定的記憶體;
mem(buffers):系統配置設定但未被使用的buffers;
mem(cached)系統配置設定但未被使用的cache;
buffers/cache(used):實際使用的buffers與cache 總量,也是實際使用的記憶體;
buffers/cache(free):未被使用的buffers與cache和未被配置設定的記憶體之和,這就是系統目前實際可用記憶體;(如圖所示,free+buffers+cached的總和為目前可用的實際記憶體)
buffers(緩沖區)是即将要被寫入磁盤的,cache(緩存)是被從磁盤中讀出來的;
5、檢視系統程序 ps
ps aux 或 ps -elf 詳細顯示目前系統的所有程序狀态
PID :程序的id,這個id很有用,在linux中核心管理程序就得靠pid來識别和管理某一個程(比如我想終止某一個程序,則用 ‘kill 程序的pid’ 有時并不能殺掉,則需要加一個-9選項了 kill -9 程序pid)
STAT :表示程序的狀态,程序狀态分為以下幾種
D 不能中斷的程序(通常為IO)
R 正在運作中的程序
S 已經中斷的程序,系統中大部分程序都是這個狀态
T 已經停止或者暫停的程序,如果我們正在運作一個指令,比如說 sleep 10 如果我們按一下ctrl -z 讓他暫停,那麼我們用ps檢視就會顯示T這個狀态
X 已經死掉的程序(這個從來不會出現)
Z 僵屍程序,殺不掉,打不死的垃圾程序,占系統一小點資源,不過沒有關系。如果太多,就有問題了。
< 高優先級程序
N 低優先級程序
L 在記憶體中被鎖了記憶體分頁
s 主程序
l 多線程程序
+ 在前台的程序
pstree 樹形顯示所有程序
<a href="http://s3.51cto.com/wyfs02/M02/6B/83/wKiom1UvY3fxd6wUAAF6bi6FMrw145.jpg" target="_blank"></a>
6、監控網卡流量、曆史負載 sar
安裝sar的指令:yum install -y sysstat
sar -n DEV 檢視網卡流量
sar -n DEV 1 實時監控網卡的流量,1秒重新整理一次,按ctrl+c退出;
sar -n DEV 1 10 檢視網卡的流量,1秒重新整理一次,檢視10次;
sar -n DEV -f /var/log/sa/sa16 檢視系統日志裡面儲存的網卡流量資訊,按照每天的日期命名;
檢視曆史負載 sar -q
檢視磁盤讀寫 sar -b
7、檢視網絡狀況 netstat
netstat -lnp 檢視目前系統開啟的端口以及socket
netstat -an 檢視目前系統所有的連接配接
<a href="http://s3.51cto.com/wyfs02/M01/6B/7F/wKioL1UvZQSC99RMAAWcaoH7ZgY201.jpg" target="_blank"></a>
<a href="http://s3.51cto.com/wyfs02/M02/6B/7F/wKioL1UvZRizfyXcAAWBkzomft0076.jpg" target="_blank"></a>
本文轉自 模範生 51CTO部落格,原文連結:http://blog.51cto.com/mofansheng/1633403,如需轉載請自行聯系原作者