linux最好用的資源監(jiān)控工具-glances

一、glances介紹

glances是一個基于python語言開發(fā),可以為linux或者UNIX性能提供監(jiān)視和分析性能數(shù)據(jù)的功能。glances在用戶的終端上顯示重要的系統(tǒng)信息,并動態(tài)的進行更新,讓管理員實時掌握系統(tǒng)資源的使用情況,而動態(tài)監(jiān)控并不會消耗大量的系統(tǒng)資源,比如CPU資源,通常消耗小于2%,glances默認每兩秒更新一次數(shù)據(jù)。同時glances還可以將相同的數(shù)據(jù)捕獲到一個文件,便于以后對報告進行分析和圖形繪制,支持的文件格式有.csv電子表格格式和和html格式。

glances可以分析系統(tǒng)的:

  • CPU使用率
  • 內(nèi)存使用率
  • 內(nèi)核統(tǒng)計信息和運行隊列信息
  • 磁盤I/O速度、傳輸和讀/寫比率
  • 磁盤適配器
  • 網(wǎng)絡I/O速度、傳輸和讀/寫比率
  • 頁面監(jiān)控
  • 進程監(jiān)控-消耗資源最多的進程
  • 計算機信息和系統(tǒng)資源

二、glances安裝方式

  1. 源碼安裝
  2. 基于pip命令安裝
  3. 基于epel公網(wǎng)yum源

由于源碼安裝需要解決大量的依賴包的問題,對于小白同學學習壓力較大,所以本文將重點介紹基于yum的安裝方法,讓大家快速安裝,并能及時體驗到glances監(jiān)控的強大和高效。

三、基于epel公網(wǎng)源安裝glances

由于glances運行需要python環(huán)境,所以我們需要首先安裝好python環(huán)境,這里我給大家使用的是一個腳本安裝python3.7.3,目前的最新版本。

3.1、python3.7.3安裝腳本

#!/bin/bash
# 
#Name: 
#Author: Bai Shuming
#Created Time: 2019/10/1 11:20
#Release: 
#Description:python 3.7.3安裝腳本

#變量
source_url="https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz"
source_pkg="Python-3.7.3.tgz"
source_doc="Python-3.7.3"

cpu_count=`egrep "flags" /proc/cpuinfo |wc -l`

#程序
check () {
  [ "$USER" != "root" ]&&echo "need be root so that"&&exit 1
  [ ! -x /usr/bin/wget ]&&echo "not found command: wget"&&exit 1 
}


install_python () {

check

#1、download python source package
if ! (wget $source_url &>/dev/null) ;then
   echo "$source_pkg download fail"
   exit 1
fi
#2、Decompression source package
if [ -f $source_pkg ];then
    tar xf $source_pkg
else
    echo "not found package: $source_pkg"
    exit 1
fi

#3、python install pre
if ! (yum -y install gcc-* openssl-* libffi-devel  curses-devel lm_sensors sqlite-devel &>/dev/null);then
    echo "yum install software package fail"
    exit 1
fi



#4、configure python install env
if [ -d $source_doc ];then
    
 
   #5、python configure
   cd $source_doc
   
   sed -i.bak '212s/#//' Modules/Setup.dist
   sed -i '213s/#//' Modules/Setup.dist
   sed -i '214s/#//' Modules/Setup.dist
   
   echo "python configure...please waiting"
   if ./configure --enable-optimizations --with-openssl=/usr/bin/openssl &>/dev/null ;then
 
           #6、python make 
           echo "python make...please waiting"
           if make -j $cpu_count &>/dev/null ;then
          
                #7、python install
                echo "python install...please waiting"
                if make install & > /dev/null;then
                    echo "$source_doc install success"
                else
                    echo "python make install fail"
                    exit 1
                fi
            else
                echo "python make fail"
                exit 1
            fi
    else
         echo "python configure fail"
         exit 1
    fi
else
   echo "not found $source_doc"
   exit 1
fi


post_install

}

 
#Post-installation settings
post_install () {
#update pip tool
pip3 install --upgrade pip

}


#函數(shù)調(diào)用

install_python && rm -rf $source_doc

3.2、glances 安裝

[root@manager01 ~]# pip install glances
Collecting glances
  Downloading https://files.pythonhosted.org/packages/32/34/72f9202ad5b7ada314507a50b9ab1fb604d2f468b138679e0a4fedeb91fa/Glances-3.1.0.tar.gz (6.7MB)
     |████████████████████████████████| 6.7MB 659kB/s 
Collecting psutil>=5.3.0 (from glances)
  Downloading https://files.pythonhosted.org/packages/1c/ca/5b8c1fe032a458c2c4bcbe509d1401dca9dda35c7fc46b36bb81c2834740/psutil-5.6.3.tar.gz (435kB)
     |████████████████████████████████| 440kB 575kB/s 
Installing collected packages: psutil, glances
  Running setup.py install for psutil ... done
  Running setup.py install for glances ... done
Successfully installed glances-3.1.0 psutil-5.6.3

3.3、溫度監(jiān)控工具安裝

[root@manager01 ~]# yum -y install lm_sensors

3.4、epel公網(wǎng)源安裝

[root@manager01 ~]# yum install epel* -y
[root@manager01 ~]# yum -y install glances

四、glances監(jiān)控

4.1、開啟glances監(jiān)控

[root@manager01 ~]# glances

glances_1.png

glances 工作界面的說明 :
在上圖 的上部是 CPU 、Load(負載)、Mem(內(nèi)存使用)、 Swap(交換分區(qū))的使用情況。在上圖的中上部是網(wǎng)絡接口、Processes(進程)的使用情況。通常包括如下字段:

 %CPU:該進程占用的 CPU 使用率
 %MEM:該進程占用的物理內(nèi)存和總內(nèi)存的百分比
 VIRT: 虛擬內(nèi)存大小
 RES: 進程占用的物理內(nèi)存值
 PID: 進程 ID 號
 USER: 進程所有者的用戶名
 NI: 進程優(yōu)先級
 S: 進程狀態(tài),其中 S 表示休眠,R 表示正在運行,Z 表示僵死狀態(tài)。
 TIME+: 該進程啟動后占用的總的 CPU 時間
 IO_R 和 IO_W: 進程的讀寫 I/O 速率
 Command: 進程名稱

在上圖的左側(cè)是網(wǎng)絡、磁盤IO、磁盤分區(qū)使用情況。 另外 glances 可以使用交互式的方式運行該工具,用戶可以使用如下快捷鍵:

 h : 顯示幫助信息
 q : 離開程序退出
 c :按照 CPU 實時負載對系統(tǒng)進程進行排序
 m :按照內(nèi)存使用狀況對系統(tǒng)進程排序
 i:按照 I/O 使用狀況對系統(tǒng)進程排序
 p: 按照進程名稱排序
 d : 顯示磁盤讀寫狀況 
 w : 刪除日志文件
 l :顯示日志
 s: 顯示傳感器信息
 f : 顯示系統(tǒng)信息
 1 :輪流顯示每個 CPU 內(nèi)核的使用情況(次選項僅僅使用在多核 CPU 系統(tǒng))

4.2、glances 使用方法

 glances 是一個命令行工具包括如下命令選項:
 -b:顯示網(wǎng)絡連接速度 Byte/ 秒
 -B @IP|host :綁定服務器端 IP 地址或者主機名稱
 -c @IP|host:連接 glances 服務器端
 -C file:設置配置文件默認是 /etc/glances/glances.conf 
 -d:關閉磁盤 I/O 模塊
 -e:顯示傳感器溫度
 -f file:設置輸出文件(格式是 HTML 或者 CSV)
 -m:關閉掛載的磁盤模塊
 -n:關閉網(wǎng)絡模塊
 -p PORT:設置運行端口默認是 61209 
 -P password:設置客戶端 / 服務器密碼
 -s:設置 glances 運行模式為服務器
 -t sec:設置屏幕刷新的時間間隔,單位為秒,默認值為 2 秒,數(shù)值許可范圍:1~32767 
 -h : 顯示幫助信息
 -v : 顯示版本信息

五、glances C/S模式

glances還支持C/S模式監(jiān)控,被監(jiān)控機運行服務端,監(jiān)控端運行客戶端既可以實現(xiàn)遠程監(jiān)控。


glances_cs.png

注意:C/S模式都必須安裝glances才可以實現(xiàn)

5.1、服務端啟動

服務端使用的端口默認是61209,如果使用服務端請注意開啟防火墻。

glances_服務端.png

5.2、客戶端訪問

[root@node2 ~]# glances -c 192.168.10.100

六、其他數(shù)據(jù)保存方式

6.1、導出數(shù)據(jù)為CSV電子表格

[root@manager01 ~]# glances --export-csv /tmp/1.csv

樹明的技術交流群
白樹明技術圈4群:320990728
白樹明技術圈9群:643736601

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容