glances監控工具詳解

glances簡介

glances 可以爲 Unix 和 Linux 性能專家提供監視和分析性能數據的功能,其中包括:

  • CPU 使用率

  • 內存使用情況

  • 內核統計信息和運行隊列信息

  • 磁盤 I/O 速度、傳輸和讀/寫比率

  • 文件系統中的可用空間

  • 磁盤適配器

  • 網絡 I/O 速度、傳輸和讀/寫比

  • 頁面空間和頁面速度

  • 消耗資源最多的進程

  • 計算機信息和系統資源

glances 工具可以在用戶的終端上實時顯示重要的系統信息,並動態地對其進行更新。這個高效的工具可以工作於任何終端屏幕。另外它並不會消耗大量的 CPU 資源,通常低於百分之二。glances 在屏幕上對數據進行顯示,並且每隔兩秒鐘對其進行更新。您也可以自己將這個時間間隔更改爲更長或更短的數值。glances 工具還可以將相同的數據捕獲到一個文件,便於以後對報告進行分析和繪製圖形。輸出文件可以是電子表格的格式 (.csv) 或者 html 格式。



兩種方法安裝 glances

通常可以有兩種方法安裝 glances。第一種是通過編譯源代碼的方式,這種方法比較複雜另外可能會遇到軟件包依賴性問題。還有一種是使用特定的軟件包管理工具來安裝 glances,這種方法比較簡單。本文使用後者,需要說明的是在 CentOS 特定的軟件包管理工具來安裝。glances 要首先配置 EPEL repo,然後使用 pip 工具安裝 glances

pip 軟件包簡介

通常 Linux 系統管理員有兩種方式來安裝一個 Python 的軟件包:一種是通過系統的包管理工具(如 apt-get)從系統的軟件倉庫裏安裝,一種是通過 Python 自己的包管理工具(如 easy_install 或者 pip)從 Python Cheese Shop 中下載安裝。筆者推薦使用 pip。pip 是一個可以代替 easy_install 的安裝和管理 Python 軟件包的工具,是一個安裝 Python 庫很方便的工具,功能類似 YUM。注意 CentOS 和 Fedora 下安裝 Python-pip 後,關鍵字不是 pip 而是 pip-Python。

首先配置 EPEL repo

如果既想獲得 RHEL 的高質量、高性能、高可靠性,又需要方便易用(關鍵是免費)的軟件包更新功能,那麼 Fedora Project 推出的 EPEL(Extra Packages for Enterprise Linux ,http://fedoraproject.org/wiki/EPEL)正好適合你。它是由 Fedora 社區打造,爲 RHEL 及衍生髮行版如 CentOS、Scientific Linux 等提供高質量軟件包的項目。裝上了 EPEL,就像在 Fedora 上一樣,可以通過 yum install package-name,隨意安裝軟件。安裝使用 EPEL 非常簡單:

#wget http://ftp.riken.jp/Linux/fedora/epel/RPM-GPG-KEY-EPEL-6 #rpm --import RPM-GPG-KEY-EPEL-6 #rm -f RPM-GPG-KEY-EPEL-6 #vi /etc/yum.repos.d/epel.repo # create new [epel] name=EPEL RPM Repository for Red Hat Enterprise Linux baseurl=http://ftp.riken.jp/Linux/fedora/epel/6/$basearch/ gpgcheck=1 enabled=0

使用 pip 安裝 glances

這裏介紹一下安裝過程:首先使用 YUM 安裝 pip 工具,然後使用 pip 工具安裝 glances 和用來顯示系統溫度的相關軟件。

#yum --enablerepo=epel install Python Python-pip Python-devel gcc # pip-Python install glances

安裝 lm_sensors 軟件

lm_sensors 的軟件可以幫助我們來監控主板、CPU 的工作電壓、風扇轉速、溫度等數據。這些數據我們通常在主板的 BIOS 也可以看到。當我們可以在機器運行的時候通過 lm_sensors 隨時來監測着 CPU 的溫度變化,可以預防呵保護因爲 CPU 過熱而會燒掉。lm_sensors 軟件監測到的數據可以被 glances 調用並且顯示 

# yum install lm_sensors # pip-Python install PySensors




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:顯示版本信息


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


h:顯示幫助信息
q:離開程序退出
c:按照 CPU 實時負載對系統進程進行排序
m:按照內存使用狀況對系統進程排序
i:按照 I/O 使用狀況對系統進程排序
p:按照進程名稱排序
d:顯示磁盤讀寫狀況
w:刪除日誌文件
l:顯示日誌
s:顯示傳感器信息
f:顯示系統信息

1:輪流顯示每個 CPU 內核的使用情況(次選項僅僅使用在多核 CPU 系統)




glances 的高級應用

讓 glances 輸出 HTML 格式文件,首先安裝相關軟件包

# pip-Python install Jinja2 | [ yum -y install python-jinja2 ] # glances -o HTML -f /var/www/html

使用 Firefox 瀏覽器輸入網址: http://localhost/glances.html

glances 服務器 / 客戶端工作方式

glances 支持服務器/客戶端工作方式,可以實現遠程監控。首先假設

服務器 IP 地址:172.16.100.7

客戶端 IP 地址:172.16.100.8

確保二者都已經安裝好 glances 軟件包。

首先在服務器端啓動;

# glances -s -B 172.16.100.7 glances server is running on 172.16.100.7:61209

可以看到 glances 使用的端口號是 61209,所以用戶需要確保防火牆打開這個端口。

下面在客戶端使用如下命令連接服務器

# glances – c 172.16.100.7


綠色表示性能良好,無需做任何額外工作;(此時 CPU 使用率、磁盤空間使用率和內存使用率低於 50%,系統負載低於 0.7)。


藍色表示系統性能有一些小問題,用戶應當開始關注系統性能;(此時 CPU 使用率、磁盤空間使用率和內存使用率在 50%-70% 之間,系統負載在 0.7-1 之間)。


品紅表示性能報警,應當採取措施比如備份數據;(此時 CPU 使用率、磁盤空間使用率和內存使用率在 70%-90% 之間,,系統負載在 1-5 之間)。


紅色表示性能問題嚴重,可能宕機;(此時 CPU 使用率、磁盤空間使用率和內存使用率在大於 90%,系統負載大於 5)。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章