Linux最好用的資源監控工具-glances

一、glances介紹

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

glances可以分析系統的:

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

二、glances安裝方式

  1. 源碼安裝
  2. 基於pip命令安裝
  3. 基於epel公網yum源

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

三、基於epel公網源安裝glances

由於glances運行需要python環境,所以我們需要首先安裝好python環境,這裡我給大家使用的是一個腳本安裝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

}


#函數調用

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、溫度監控工具安裝

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

3.4、epel公網源安裝

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

四、glances監控

4.1、開啟glances監控

[root@manager01 ~]# glances
Linux最好用的資源監控工具-glances

glances 工作界面的說明 :

在上圖 的上部是 CPU 、Load(負載)、Mem(內存使用)、 Swap(交換分區)的使用情況。在上圖的中上部是網絡接口、Processes(進程)的使用情況。通常包括如下字段:

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

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

 h : 顯示幫助信息
q : 離開程序退出

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

4.2、glances 使用方法

 glances 是一個命令行工具包括如下命令選項:
-b:顯示網絡連接速度 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:關閉網絡模塊
-p PORT:設置運行端口默認是 61209

-P password:設置客戶端 / 服務器密碼
-s:設置 glances 運行模式為服務器
-t sec:設置屏幕刷新的時間間隔,單位為秒,默認值為 2 秒,數值許可範圍:1~32767
-h : 顯示幫助信息
-v : 顯示版本信息

五、glances C/S模式

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

Linux最好用的資源監控工具-glances

注意:C/S模式都必須安裝glances才可以實現

5.1、服務端啟動

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

Linux最好用的資源監控工具-glances

5.2、客戶端訪問

[root@node2 ~]# glances -c 192.168.10.100 

六、其他數據保存方式

6.1、導出數據為CSV電子表格

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


分享到:


相關文章: