監控系統狀態

監控系統狀態

用w命令查看當前系統負載

  • 第一行從左至右分別爲:時間、系統運行時間、登陸用戶數、平均負載
  • 第二行爲:當前用戶的登陸名及其登陸地址等

遠程登陸的時候纔會有ip地址,虛擬機直接登陸是沒有的shell

  • 系統負載介紹

load average:後面三個字段,分別爲系統的一、五、15分鐘平均負載值。
重點關注一分鐘,由於最能體現系統的負載情況
數值的含義:單位時間內系統使用CPU的活動進程數,值越大說明服務器的壓力越大centos

cat /proc/cpuinfo 查看系統的核數

  • 系統負載爲0時,很浪費ui,那沒何時不浪費呢?通常狀況下不超過服務器的CPU數量級就能夠 ,這裏就須要用到命令了

  • 紅圈中,數值爲0表明咱們的邏輯CPU爲1。默認加1

與w類似命令

  • uptime
[root@centos001 ~]# uptime
 01:25:46 up  5:15,  1 user,  load average: 0.00, 0.01, 0.05

vmstat命令

  • 簡介:

w命令是查看系統總體上的負載,可以知道當前系統有沒有壓力。它沒法判斷壓力的來源,因此就有了vmstat。緩存

  • 選項:

#vmstat 1 5
#vmstat 1
第一條命令表示每隔一秒輸出一次狀態,共輸出5次;第二條命令表示每隔一秒輸出一次狀態,且會一直輸出,除非CTRL+C結束服務器

打印結果(關鍵的幾列:r,b,swpd,si,so,bi,bo,us,wa)工具

  • procs:顯示進程的相關信息 。
    r(run):表示運行或等待cpu運行的進程數,一個cpu只能運行一個,其它的須要排隊,若長期大於cpu的個數,則說明cpu不夠用了。
    b(block):表示等待資源的進程數,資源主要值內存、硬盤讀寫等。ui

  • memory:顯示內存的相關信息。
    swpd:表示切換到交換分區的內存數量,單位爲KB。正常爲0,當平凡發生變化時,說明內存不夠了。
    free:表示當前空閒的內存量
    buff:緩衝大小
    cache:緩存大小code

  • swap:顯示內存交換狀況
    swap下面的值會受swpd的值的影響
    si:表示從交換區寫入內存的數據量,單位爲KB。 有多少個數據從swap進入到內存中
    so:表示由內存寫入交換去的數據量,單位爲KB。blog

  • io:顯示磁盤的使用情況
    bi:表示從塊設備讀取數據的量(讀磁盤),單位爲KB。
    bo:表示從塊設備寫人數據的量(寫磁盤),單位爲KB。進程

  • system:爲採集間隔內發生的中斷次數。
    in:表示某一時間間隔內觀測到的設備中斷次數
    cs:表示每秒產生的上下文切換次數ip

  • cpu:顯示cpu的使用狀態。
    us:顯示用戶下所花費CPU時間的百分比,不會超過100. 若長時間大於50 也說明系統的資源不夠用了
    sy:顯示系統自己話費CPU時間的百分比
    id:CPU處於空閒狀態的時間百分比
    注: us 、sy、id三者相加爲100
    wa:表示磁盤等待所佔用CPU時間的百分比,較大時表示資源不夠用了
    st:表示被偷走的CPU所佔百分比(通常爲0,不重要)

top命令

  • 簡介

top命令用於動態監控進程所佔的系統資源,每隔3秒變一次。特色是吧系統資源(CPU等)最高的進程放到最前面

  • 示例

  • 說明

第一行與w命令查看到的系統負載相同
第二行運行狀態 進程數(Task),正在運行,休眠,中止,殭屍進程(zombie殭屍進程:子進程由父進程回收,沒有父進程的則變成了殭屍進程)
第三行:CPU使用狀況。主要關注第一項us,較高時對設備很差。最後一個st爲 :被偷走的cpu百分比
第四行:爲物理內存。關注,這行咱們能看到,總共內存,剩餘內存,使用內存
第五行:爲交換分區

  • 詳細數據介紹:%CPU:默認數據都是以百分比顯示,並根據CPU的佔用大小,由大到小排列
    RES:爲物理內存大小,單位是k字節
    %MEM:按SHIFT+M鍵可以按照內存大小排列,方便咱們找出內存佔用最多的項
    按SHIFT+P可以切換回CPU佔用顯示
    按1鍵可以列出全部核心CPU的使用狀態
    按q鍵退出
  • 選項
    top -c 可以查看到具體的進程 全局路徑
    ​top -bn1 表示非動態打印系統資源的使用狀態,通常在shell腳本的時候會用到 可能會用到的命令:kill pid 分割kill -9 pid 必定能夠殺死。 誤殺了 就恢復不了了

sar命令

  • 簡介:

該命令很強大,幾乎可以監控幾乎因此資源的狀態,好比平均負載、網卡流量、內存使用等。與其餘系統監控工具不一樣,它可以打印歷史信息,能夠顯示當天從零點開始到當前時間的系統狀態信息。

  • 準備

安裝命令:yum install -y sysstat 運行

[root@centos001 ~]# sar
沒法打開 /var/log/sa/sa28: 沒有那個文件或目錄

:這裏咱們沒有加選項,而後報錯了。是由於sar其命令的特性所致,sar每隔10分鐘會將系統狀態信息抓取,並保存至/var/log/sa/sa28這個目錄。咱們這裏沒打開是由於剛安裝後尚未信息保存

  • 選項
    1.命令sar -n DEV 查看網卡流量

rxpck/s:這一列表示每秒進入收取的包的數量
txpck/s表示每秒發出去包的數量
rxkB/s:表示每秒接收的包的數據量(單位爲KB)
txkB/s:表示每秒發送的數據量
:重點關注第一個rxpck/s,若是其值大於1w或幾十萬則有極大可能被攻擊了

2.命令 sar -f /var/log/sa/saxx 查看某一天的歷史文件

xx表明文件保存的時間,該目錄下的文件會保留一個月
目錄下還有個以sarxx結尾的文件,不過須要次日後才能生成。與saxx的區別是能用cat查看

[root@centos001 ~]# sar -n DEV -f /var/log/sa/sa28 
Linux 3.10.0-693.5.2.el7.x86_64 (centos001) 	2017年11月28日 	_x86_64_	(1 CPU)
03時00分01秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
03時10分01秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00

3.命令 sar -q 查看歷史負載

[root@centos001 ~]# sar -q 
Linux 3.10.0-693.5.2.el7.x86_64 (centos001) 	2017年11月28日 	_x86_64_	(1 CP
03時00分01秒   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
03時10分01秒         1       110      0.00      0.01      0.05         0
03時20分01秒         1       109      0.00      0.01      0.05         0
平均時間:         1       110      0.00      0.01      0.05         0

4.命令 sar -b 查看磁盤

主要看它的讀寫

[root@centos001 ~]# sar -b
Linux 3.10.0-693.5.2.el7.x86_64 (centos001) 	2017年11月28日 	_x86_64_	(1 CPU)
03時00分01秒       tps      rtps      wtps   bread/s   bwrtn/s
03時10分01秒      0.09      0.00      0.09      0.00      1.10
03時20分01秒      0.61      0.19      0.43      2.25     10.81

用nload命令查看網卡流量

  • nload 命令比sar命令更加直觀的顯示
  • 準備

yum install -y epel-release
yum install -y nload

  • 左右方向鍵切換網卡,關注進入的流量,若極大則可能被攻擊。q退出
相關文章
相關標籤/搜索