溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么監(jiān)控Linux服務(wù)器狀態(tài)

發(fā)布時間:2021-10-22 16:18:29 來源:億速云 閱讀:300 作者:小新 欄目:系統(tǒng)運維

這篇文章給大家分享的是有關(guān)怎么監(jiān)控Linux服務(wù)器狀態(tài)的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

Linux 服務(wù)器我們天天打交道,特別是 Linux 工程師更是如此。為了保證服務(wù)器的安全與性能,我們經(jīng)常需要監(jiān)控服務(wù)器的一些狀態(tài),以保證工作能順利開展。

1、watch

watch 命令我們的使用頻率很高,它的基本作用是,按照指定頻率重復(fù)執(zhí)行某一條指令。使用這個命令,我們可以重復(fù)調(diào)用一些命令來達到監(jiān)控服務(wù)器的作用。

默認(rèn)情況下,watch 命令的執(zhí)行周期是 2 秒,但我們可以使用 -n 選項來指定運行頻率,比如我們想要每隔 5 秒執(zhí)行 date 命令,可以這么執(zhí)行:

$ watch -n 5 date

一臺服務(wù)器肯定有多人在用,特別是本部門的小伙伴。對于這些小伙伴有沒渾水摸魚,我們可以使用一些命令來監(jiān)控他們。

我們可以每隔 10 秒執(zhí)行 who 命令,來看看都有誰在使用服務(wù)器。

$ watch -n 10 who  Every 10.0s: who                             butterfly: Tue Jan 23 16:02:03 2019  shs      :0           2019-01-23 09:45 (:0)  dory     pts/0        2019-01-23 15:50 (192.168.0.5)  alvin     pts/1        2019-01-23 16:01 (192.168.0.15)  shark    pts/3        2019-01-23 11:11 (192.168.0.27)

如果發(fā)現(xiàn)系統(tǒng)運行很慢,我們可以調(diào)用 uptime 命令來查看系統(tǒng)平均負(fù)載情況。

$ watch uptime  Every 2.0s: uptime                           butterfly: Tue Jan 23 16:25:48 2019   16:25:48 up 22 days,  4:38,  3 users,  load average: 1.15, 0.89, 1.02

一些關(guān)鍵的進程肯定不能掛,否則可能會影響到業(yè)務(wù)開展,所以我們可以重復(fù)統(tǒng)計服務(wù)器中的所有進程數(shù)量。

$ watch -n 5 'ps -ef | wc -l'  Every 5.0s: ps -ef | wc -l                   butterfly: Tue Jan 23 16:11:54 2019  245

想動態(tài)知道服務(wù)器內(nèi)存使用情況,可以重復(fù)執(zhí)行 free 命令。

$ watch -n 5 free -m  Every 5.0s: free -m                          butterfly: Tue Jan 23 16:34:09 2019                total        used        free      shared  buff/cache   available  Mem:           5959         776        3276          12        1906        4878  Swap:          2047           0        2047

當(dāng)然不僅僅是這些,我們還可以重復(fù)調(diào)用很多命令來對服務(wù)器一些關(guān)鍵參數(shù)進行監(jiān)控,

2、top

使用 top 命令我們可以知道系統(tǒng)的很多關(guān)鍵參數(shù),而且是動態(tài)更新的。默認(rèn)情況下,top 監(jiān)控的是系統(tǒng)的整體狀態(tài),如果我們只想知道某個人的使用情況,可以使用 -u 選項來指定這個人。

$ top -u alvin  top - 16:14:33 up 2 days,  4:27,  3 users,  load average: 0.00, 0.01, 0.02  Tasks: 199 total,   1 running, 198 sleeping,   0 stopped,   0 zombie  %Cpu(s):  0.0 us,  0.2 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st  MiB Mem :   5959.4 total,   3277.3 free,    776.4 used,   1905.8 buff/cache  MiB Swap:   2048.0 total,   2048.0 free,      0.0 used.   4878.4 avail Mem    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND  23026 alvin      20   0   46340   7820   6504 S   0.0   0.1   0:00.05 systemd  23033 alvin      20   0  149660   3140     72 S   0.0   0.1   0:00.00 (sd-pam)  23125 alvin      20   0   63396   5100   4092 S   0.0   0.1   0:00.00 sshd  23128 alvin      20   0   16836   5636   4284 S   0.0   0.1   0:00.03 zsh

在這個結(jié)果里,你不僅僅可以看到 alvin 這個用戶運行的所有的進程數(shù),也可以看到每個進程所消耗的系統(tǒng)資源(CPU,內(nèi)存),同時依然可以看到整個系統(tǒng)的關(guān)鍵參數(shù)。

3、ac

如果你想知道每個用戶登錄服務(wù)器所使用的時間,你可以使用 ac 命令。這個命令需要你安裝 acct 包(Debian)或 psacct 包(RHEL,Centos)。

如果我們想知道所有用戶登陸服務(wù)器所使用的時間之和,我們可以直接運行 ac 命令,無需任何參數(shù)。

$ ac          total     1261.72

如果我們想知道各個用戶所使用時間,可以加上 -p 選項。

$ ac -p          shark                                5.24          alvin                                5.52          shs                               1251.00          total     1261.76

我們還可以通過加上 -d 選項來查看具體每一天用戶使用服務(wù)器時間之和。

$ ac -d | tail -10  Jan 11  total        0.05  Jan 12  total        1.36  Jan 13  total       16.39  Jan 15  total       55.33  Jan 16  total       38.02  Jan 17  total       28.51  Jan 19  total       48.66  Jan 20  total        1.37  Jan 22  total       23.48  Today   total        9.83

感謝各位的閱讀!關(guān)于“怎么監(jiān)控Linux服務(wù)器狀態(tài)”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI