1. 程式人生 > >日常運維-1

日常運維-1

10.1 使用w檢視系統負載
(1)
這裡寫圖片描述
第一行從左到右依次表示當前時間、系統已執行時間、登入使用者數(終端登入顯示為ttyx,遠端登入顯示為pts/x)、平均負載(每1分鐘、每5分鐘、每15分鐘)主要是注意第一個負載值,值越大說明伺服器壓力越大。一般情況下,這個值不要超過伺服器的邏輯cpu數量就沒有關係。

(2)檢視伺服器的邏輯cpu

cat /proc/cpuinfo 

這裡寫圖片描述只有一個邏輯cpu,那麼每分鐘的負載值為1是最理想的,也就是每個程序有佔用一個邏輯cpu是最合適的。

(3)uptime命令也可以顯示負載資訊,不過不是很詳細的
這裡寫圖片描述

10.2 vmstat命令

  • vmstat命令可以檢視到當使用w命令檢視到系統存在壓力時,系統壓力出現在什麼地方。
vmstat 1 //顯示的資訊每一秒列印一次,按下ctrl +c 結束
vmstat  1 5 //每一秒鐘顯示一次 ,共顯示5次後結束

這裡寫圖片描述

  • 出現的資訊中需要關注的是以下幾列
    (1)r(run):表示執行或等待cpu時間片的程序數。等待cpu時間片不是說這個程序沒有執行,實際上某一時刻1個cpu只能有一個程序佔用,其他程序只能處於等待狀態,這些等待cpu資源的程序依然是執行狀態。如果該數值長期大於邏輯cpu的個數,那麼就說明cpu資源不夠用 了
    (2)b(block):表示等待資源的程序數,這個資源指的是I/O、記憶體、網速等資源。這個數值長期大於1,那麼也是需要關注的
    (3)swpd :表示切換到交換分割槽中的記憶體數量。當記憶體不夠的時間,才會將資料臨時放到交換分割槽中。如果該數值在頻換的變化,那麼記憶體與交換分割槽在進行頻繁的讀寫,那麼也就說明記憶體不夠了。如果這個數值在變化,那麼si與so肯定也是有變化的。

    swap顯示記憶體的交換情況
    (4)si :表示由交換分割槽寫去到記憶體的資料量。單位為KB
    (5)so:表示由記憶體寫入到交換分割槽的資料量

io顯示磁碟的使用情況
(6)bi :表示從磁碟讀取資料量的多少(讀磁碟)。單位KB
(7)bo:表示從磁碟寫入資料量的多少(寫磁碟)
如果這2個數值在頻換的變化,表示磁碟在頻換的讀寫。磁碟的讀寫速度比較慢,肯定會影響b列數值的變化。

(8)us:表示使用者級別(如:網站、mysql)佔用cpu資源的時間百分比。如數值長期大於50,也說明cpu資源不夠了。
(9)sy:表示系統本身佔用cpu資源的時間百分比
(10)id:表示cpu處於空閒狀態的時間百分比
us+sy+id=100%
(11)wa:表示I/O等待所佔用的cpu的時間百分比。數值也很大,說明cpu不夠用
(12)st:表示被偷走的cpu資源(進行過虛擬化後,一些子機會佔用cpu資源)

10.3 top命令

  • 用top命令顯示程序所佔用的系統資源。每3秒中顯示一次。
    這裡寫圖片描述
    第一行與w命令檢視到的資訊是一樣的

    第二行:
    Tasks :總程序數
    runing:正在執行的程序數
    sleeping:正在處於休眠狀態的程序數。
    stopped:已經停止的程序數
    zombie:父程序被意外中止,留下一些子程序無人管理。這就是殭屍程序數。

    第三行是cpu百分比。需要關注的是us。系統負載可以很高,%us
    可能很低或是0%。但是當%us很高的話,那麼系統負載肯定很高。

Kib MeM :記憶體的使用情況。總大小、剩餘、已使用、寫入磁碟/從磁碟中讀取的快取大小(關注)
Kib Swap :交換分割槽的使用情況

  • 預設情況是是使用%cpu來排序。
    這裡寫圖片描述
    (2)按大寫的M來用記憶體排序,切換為%cpu排序按大小的P

這裡寫圖片描述

(3)數字1顯示所有CPU的使用情況。
這裡寫圖片描述

(4)top -c 命令可以檢視到具體的命令
這裡寫圖片描述

(5)top -n1 靜態的一次性顯示所有的資訊,適合在寫指令碼時使用。

(6)PID用來”殺死”程序。kill +PID就能殺死相對於的程序。

10.4 sar命令

  • 用sar命令幾乎可以監控系統所有的資源狀態。它的優點是可以列印歷史資訊,可以顯示當天從零點到當前時刻的系統狀態資訊。
yum install -y sysstat  //安裝sar命令包
  • 安裝後使用sar命令會報錯,那麼因為sar工具還沒有生成相應的資料庫檔案(無需實時監控,因為不用去查詢那個檔案庫)。大約10f分鐘後會生成檔案
    這裡寫圖片描述
  • sar -n DEV 檢視流量網絡卡
    這裡寫圖片描述
    rxpck:接收到的資料包。接收的資料包量太大會導致網路堵塞,網站不能開啟。資料包上萬了,肯定不正常。
    txpck:傳送出去的資料包
    rxkB:接收的資料量。
    txkB:傳送的資料量。100M頻寬換算成速率也就是12.8M/s。
  • 在/var/log/sa目錄下儲存了檔案最多保留一個月
    這裡寫圖片描述
  • 檢視系統負載
    這裡寫圖片描述
  • 檢視磁碟讀寫
    這裡寫圖片描述

10.5 nload命令

  • 用nload命令更直觀的檢視網絡卡流量。需要安裝2個包
yum install -y  epel-release 
yum install -y nload 
  • 直接執行nload出現以下資訊

    這裡寫圖片描述

  • 在/var/log/目錄下有2個時期
    sa: 2進位制檔案,不能使用cat,只能用sar -f 去檢視它(絕對路徑)
    sar :可以直接cat檢視檔案內容。