天天看點

第 十 四 天 : 服 務 器 日 常 的 監 控 工 具

小Q:酸甜苦辣自己嘗,喜怒哀樂自己扛,你就是自己的太陽,無需借别人的光。

==========================================================

今天開始接觸維護伺服器時候的日常管理,當然隻是看了第一階段,總的來說今天的進度稍微慢了點,晚上跟人出去吃了個飯;主要是一些指令去檢視系統裡的一些參數,期間接觸了一些常識,在下一篇再寫。

檢視系統負載:  uptime       w        

檢視cpu狀況   :  cat   /proc/cpuinfo                        

系統負載對應 cpu 核數,負載大于核數,負載就偏高了,否則偏低;

cpu 隻能處理自己能接受到的程序,程序太多,會讓他們等待,每個程序有固定執行時間,超過後就被挂起,輪過一圈再繼續執行;

可以了解為:限時打電話的電話亭,一個核對應一個 u,一個程序一個人,排隊打

檢視系統負載:  vmstat

vmstat   1   6     :1表示1秒鐘顯示一次,5表示一共顯示5次。也可以不加1或者5

 r:在跑這多少程序              b:被阻塞的程序,一般是因為網速或者磁盤io跟不上cpu

swpd:多少資料被交換(kb)   si:進入記憶體中的資料量      so:來自記憶體的資料量

bi:了解為讀磁盤              bo:寫磁盤            in:中斷次數         us:占用cpu的百分比

擴充:http://blog.chinaunix.net/uid-22741583-id-3087675.html

動态檢視具體程序:top

 cpu% + mem% 重點看,預設cpu使用排序,而 M 或 shift +m 按men%使用排序

 使用者态的cpu使用:us                            核心态的cpu使用:sy            

 PR :0~39   NI -20~19                           vipT:虛拟記憶體   

 RES:實體記憶體                                     SHR:共享記憶體

選項:  -bn1          不動态,一次性顯示,用于寫腳本    

              -c             顯示最後一列使用程序的詳細資訊

              -d  1         預設三秒更新一次程序,此選項即設定 1 秒更新一次

檢視PID:ls   /proc     每個PID 是一個程序,裡邊包含多個目錄和檔案

擴充:http://www.cnblogs.com/fengyv/archive/2012/07/11/2585666.html

更多的檢視狀态 sar:

檢視系統狀态資訊:不止可以顯示cpu 磁盤 記憶體等資訊,還可以檢視網卡的使用情況,被稱“瑞士×××”

網卡的帶寬以 bite 為機關,而計算機以 Byte(=8bite)為機關;

顯示網卡資訊:   sar  -n  DEV             主要檢視進網口 rxbyt 和出網卡 txbyt ;

檢視洗盤使用:   sar  -b

檢視cpu使用 :   sar -p   或直接 sar

檢視曆史負載:   sar  -q

安裝:   yum   install   -y  sysstat                               存放路徑: /var/sa/

可以在每個指令後面加兩列數字,如:sar   -p  1   10  表示每秒更新一次,列印十次

擴充:http://blog.chinaunix.net/uid-23177306-id-2531032.html

檢視記憶體 free:

以kb為機關,可以加選項  -m     -g

buffer是即将寫入到磁盤裡去的資料暫存的記憶體區域,

cached是從磁盤裡讀出來的資料暫存的記憶體區域。

擴充:http://os.51cto.com/art/201004/193160.htm

檢視程序: ps                   

ps   aux           =          ps    -elf  

RSS  :表示記憶體使用量              TIME:占用 cpu 多久了

STAT: S  程序在休眠            s  父程序              <   高優先級           N  低優先級

                +  前台運作               L  多線程             R   正在運作           L   被鎖定

                x  以被殺死              T   被暫停             D   不可被中斷       Z僵屍程序

擴充:http://www.360doc.com/content/10/0301/14/61497_17201579.shtml

 檢視網絡狀态 netstat:

檢視系統目前監聽端口 netstat    -lnp      

檢視系統網絡連接配接狀況 netstat     -an

所謂服務與客戶的通信就是在監聽端口;-an的目的就是為了 cs (client和searve)

監聽端口内容:

rsync    同步資料     sendmail   發送郵件       ngnix    web服務       memcached 緩存服務

netstat  -an  為了看 tcpip 和 socket,後者是Linux和unix特有的實作通信的軟體

一般過慮檢視某個端口的并發量,如:netstat  -an  | grep IP:端口 | grep  -ic  服務名

根據并發量觀看系統壓力。

擴充:http://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316661.html

網絡協定:http://zhidao.baidu.com/link?url=EhOXK6FAj3Wp8vok8XRqOr95BToJSFRXJVHtzggYa3yd26VCfWH1DWYx68i0r4MGRujdtLIBVs-G0ZDhYJlqCa

抓包工具 tcpdump和tshark:

有時候帶寬突然被跑滿,就需要抓一下包,如果來源IP與目的IP太多,就可能被攻擊了。

安裝: yum    install   tcpdump          

直接  tcpdump    不顯示号,隻顯示域名和端口名等

選項:-c 100       指定抓包數量         -nn   更直覺的顯示包中流向的内容

           -i eth0      指定查詢的網卡       -s0   使得包中的内容更完整

           -r  1.cap   檢視包中流向内容

包中流向内容:

時間  毫秒數   來源IP(host) 目的IP(host)  狀态  數量······

比如: tcpdump  -nn   -i eth0   -c  100    tcp   port 80   host         

       192.168.1.12    -w   1.cap

tcp:網絡協定類型      port 80  抓80端口         host IP   指定來源IP    

-w  1.cap  将真實内容寫入1.cap;若改為 (> 1.cap)則隻是将流量内容寫進1.cap 後者可用 cat 檢視,前者必須借用軟體來看

安裝抓包工具 tshark:

yum  install  -y   wireshark      

更加直覺的檢視包中流向内容的指令如下

tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.requeste.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"

擴充:http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html

    好: http://blog.csdn.net/fengye245/article/details/5507371

常見的問題:

第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具
第 十 四 天 : 服 務 器 日 常 的 監 控 工 具