適用于Linux的高級(jí)實(shí)時(shí)系統(tǒng)監(jiān)控工具
之前,我們已經(jīng)寫(xiě)了許多可用于監(jiān)控Linux系統(tǒng)性能的Linux系統(tǒng)監(jiān)控工具,但是我們認(rèn)為,大多數(shù)用戶(hù)更喜歡Linux發(fā)行版附帶的默認(rèn)工具(top命令)。
top命令是Linux中的實(shí)時(shí)任務(wù)管理器,也是GNU/Linux發(fā)行版中最常用的系統(tǒng)監(jiān)控工具,用于查找系統(tǒng)中與性能相關(guān)的瓶頸,這有助于我們采取糾正措施。它具有一個(gè)很好的極簡(jiǎn)主義界面,并提供了一些合理的選項(xiàng),使我們能夠快速地更好地了解整體系統(tǒng)性能。
但是,有時(shí)要找到一個(gè)消耗大量系統(tǒng)資源的應(yīng)用程序/過(guò)程非常棘手,這在top很難實(shí)現(xiàn)。由于top命令無(wú)法高亮顯示占用大量CPU,RAM和其他資源的程序。
為了實(shí)現(xiàn)這種方法,我們引入了一個(gè)功能強(qiáng)大的名為Glances的系統(tǒng)監(jiān)控程序,該程序自動(dòng)高亮顯示正在利用最高系統(tǒng)資源并提供有關(guān)Linux/Unix服務(wù)器的最大信息的程序。
什么是Glances?
Glances是使用Python語(yǔ)言編寫(xiě)的基于跨平臺(tái)命令行curses的系統(tǒng)監(jiān)視工具,該工具使用psutil庫(kù)從系統(tǒng)中獲取信息。使用Glance,我們可以監(jiān)視CPU,平均負(fù)載,內(nèi)存,網(wǎng)絡(luò)接口,磁盤(pán)I/O,進(jìn)程和文件系統(tǒng)空間利用率。
Glances是一個(gè)免費(fèi)工具,并根據(jù)GPL許可可監(jiān)視GNU/Linux和FreeBSD操作系統(tǒng)。Glances中也提供了許多有趣的選項(xiàng)。在Glances中看到的主要功能之一是,我們可以在配置文件中設(shè)置閾值(小心,警告和嚴(yán)重),并且信息將以顏色顯示,這表明系統(tǒng)中的瓶頸。
Glances功能
- CPU信息(與用戶(hù)相關(guān)的應(yīng)用程序,系統(tǒng)核心程序和空閑程序)。
- 總內(nèi)存信息,包括RAM,交換,可用內(nèi)存等。
- 過(guò)去1分鐘,5分鐘和15分鐘的平均CPU負(fù)載。
- 網(wǎng)絡(luò)連接的網(wǎng)絡(luò)下載/上載速率。
- 進(jìn)程總數(shù),活動(dòng)進(jìn)程,睡眠進(jìn)程等。
- 磁盤(pán)I/O相關(guān)(讀或?qū)懀┧俣仍敿?xì)信息
- 當(dāng)前安裝的設(shè)備磁盤(pán)使用情況。
- 排名靠前的進(jìn)程及其CPU /內(nèi)存使用情況,名稱(chēng)和應(yīng)用程序位置。
- 在底部顯示當(dāng)前日期和時(shí)間。
- 以紅色高亮顯示消耗最高系統(tǒng)資源的進(jìn)程。
以下是Glances的示例屏幕截圖。
在Linux / Unix系統(tǒng)中安裝Glances
盡管它是一個(gè)較新的實(shí)用程序,但是您可以通過(guò)打開(kāi)EPEL存儲(chǔ)庫(kù),然后在終端上運(yùn)行以下命令,在基于Red Hat的系統(tǒng)中安裝“ Glances”。
在RHEL/CentOS/Fedora上
- yum install -y glances
在Debian/Ubuntu/Linux Mint上
- sudo apt-add-repository ppa:arnaud-hartmann/glances-stable
- sudo apt-get update
- sudo apt-get install glances
Glances使用
首先,在終端上啟動(dòng)glances。
按“ q”或(“ ESC”或“ Ctrl&C”也可以)從Glances終端退出。
默認(rèn)情況下,間隔時(shí)間設(shè)置為“ 1”秒。但是,您可以在從終端運(yùn)行g(shù)lances時(shí)定義自定義間隔時(shí)間。
- glances -t 2
glances顏色代碼
Glances顏色代碼的含義:
- 綠色:OK(一切都很好)
- 藍(lán)色:CAREFUL 小心(需要注意)
- 紫色:WARNING 警告(警報(bào))
- 紅色:CRITICAL 嚴(yán)重(危險(xiǎn))
我們可以在配置文件中設(shè)置閾值。默認(rèn)情況下,閾值設(shè)置為(careful=50, warning=70 and critical=90),我們可以根據(jù)需要進(jìn)行自定義。默認(rèn)配置文件位于“ /etc/glances/glances.conf”。
glances選項(xiàng)
除了幾個(gè)命令行選項(xiàng)外,掃視還提供了更多的熱鍵,可在掃視運(yùn)行時(shí)查找輸出信息。以下是幾個(gè)熱鍵的列表。
- a - 自動(dòng)對(duì)進(jìn)程進(jìn)行排序
- c - 按CPU%排序進(jìn)程
- m - 按MEM%排序過(guò)程
- p - 按名稱(chēng)對(duì)進(jìn)程進(jìn)行排序
- i - 按I/O速率對(duì)進(jìn)程進(jìn)行排序
- d - 顯示/隱藏磁盤(pán)I/ O統(tǒng)計(jì)信息
- f - 顯示/隱藏文件系統(tǒng)
- n - 顯示/隱藏網(wǎng)絡(luò)統(tǒng)計(jì)信息
- s - 顯示/隱藏傳感器統(tǒng)計(jì)信息
- y - 顯示/隱藏hddtemp統(tǒng)計(jì)信息
- l - 顯示/隱藏日志
- b - 網(wǎng)絡(luò)I/Oools的字節(jié)或位
- w - 刪除警告日志
- x - 刪除警告和重要日志
- 1 - 全局CPU或每個(gè)CPU的統(tǒng)計(jì)信息
- h - 顯示/隱藏此幫助屏幕
- t - 查看網(wǎng)絡(luò)I/O的組合
- u - 查看累積的網(wǎng)絡(luò)I/O
- q - 退出(Esc和Ctrl-C也可以)
在遠(yuǎn)程系統(tǒng)上使用Glances
使用Glances,您甚至還可以監(jiān)視遠(yuǎn)程系統(tǒng)。要在遠(yuǎn)程系統(tǒng)上使用“ glances”,請(qǐng)?jiān)诜?wù)器上運(yùn)行“ glances -s”(-s啟用服務(wù)器/客戶(hù)端模式)命令。
- # glances -s
- Define the password for the Glances server
- Password:
- Password (confirm):
- Glances server is running on 0.0.0.0:61209
注意:發(fā)出“ glances”命令后,它將提示您定義Glances服務(wù)器的密碼。定義密碼并按Enter,您將看到端口61209上運(yùn)行的內(nèi)容。
現(xiàn)在,轉(zhuǎn)到遠(yuǎn)程主機(jī)并執(zhí)行以下命令,通過(guò)指定IP地址或主機(jī)名來(lái)連接到Glances服務(wù)器,如下所示。這是我的glances服務(wù)器IP地址“ 172.16.27.56”。
- # glances -c -P 172.16.27.56
以下是用戶(hù)在服務(wù)器/客戶(hù)端模式下使用Glances時(shí)必須知道的一些要點(diǎn)。
*在服務(wù)器模式下,可以設(shè)置綁定地址-B ADDRESS和偵聽(tīng)TCP端口-p PORT。
*在客戶(hù)端模式下,可以設(shè)置服務(wù)器的TCP端口-p PORT。
*默認(rèn)綁定地址為0.0.0.0,但它在端口61209上的所有網(wǎng)絡(luò)接口上偵聽(tīng)。
*在服務(wù)器/客戶(hù)端模式下,限制由服務(wù)器端設(shè)置。
*您還可以定義密碼來(lái)訪問(wèn)服務(wù)器-P密碼。
總結(jié)
對(duì)大多數(shù)用戶(hù)來(lái)說(shuō),glance是一個(gè)資源友好型工具。但是,如果您是一個(gè)系統(tǒng)管理員,希望通過(guò)瀏覽命令行來(lái)快速了解系統(tǒng)的總體“想法”,那么這個(gè)工具將是系統(tǒng)管理員必須擁有的工具。