Glances:一款功能强大的操作系统安全监控平台
Glances是一款跨平臺的安全監控工具,該工具可以通過一個curse或Web界面來幫助研究人員完成大規模數據監控,這些所有的數據回根據用戶接口的情況來進行動態適配。
它還能夠以客戶端/服務器端模式運行,遠程監控可以通過終端、Web接口或API(XML-RPC和RESTful)來實現。除此之外,數據還可以導出至文件或外部數據庫中。
Glances采用Python開發,并使用了外部庫來從目標系統收集數據。該工具基于開源架構實現,開發者可以根據自己的需求來增加新的插件或導出模塊。
工具要求
1、Python 2.7,>=3.4
2、Psutil >= 5.3.0
可選依賴
bernhard ( Riemann 導出模塊)
bottle ( Web 服務器模式)
cassandra-driver ( Cassandra 導出模塊)
couchdb ( CouchDB 導出模塊)
docker ( Docker 監控支持) [Linux/macOS-only]
elasticsearch ( Elastic 搜索導出模塊)
hddtemp ( HDD 溫度監控支持) [Linux-only]
influxdb ( InfluxDB 導出模塊)
kafka-python ( Kafka 導出模塊)
netifaces ( IP 插件)
nvidia-ml-py3 ( GPU 插件)
pika ( RabbitMQ/ActiveMQ 導出模塊)
potsdb ( OpenTSDB 導出模塊)
prometheus_client ( Prometheus 導出模塊)
py-cpuinfo ( Quicklook CPU 信息模塊)
pygal ( graph 導出模塊)
pymdstat ( RAID 支持) [Linux-only]
pySMART.smartx ( HDD Smart 支持) [Linux-only]
pysnmp ( SNMP 支持)
pystache ( 腳本功能 )
pyzmq ( ZeroMQ 導出模塊)
requests ( Ports, Cloud 插件和RESTful 導出模塊)
scandir ( Folders 插件) [Python < 3.5]
statsd ( StatsD 導出模塊)
wifi ( wifi 插件) [Linux-only]
zeroconf (自動發現模式)
工具安裝
Glances自動安裝腳本
安裝依賴組件以及最新版本的Glances產品,請運行下列命令:
curl -L https://bit.ly/glances | /bin/bash或
wget -O- https://bit.ly/glances | /bin/bashPyPI安裝方法
Glances目前已托管在了PyPI上,我們可以使用PyPI來安裝最新的穩定版本:
pip install glances如果需要使用可選功能的話,我們需要安裝下列庫(例如Web接口和導出模塊等):
pip install 'glances[action,browser,cloud,cpuinfo,docker,export,folders,gpu,graph,ip,raid,snmp,web,wifi]'更新Glances至最新版本:
pip install --upgrade glancespip install --upgrade glances[...]如果你需要在特定路徑安裝Glances的話,請運行下列命令:
export PYTHONUSERBASE=~/mylocalpathpip install --user glancesDocker安裝
Glances提供了Docker容器,其中包含了最新版本的開發版HEAD,我們可以用它來監控服務器或其他的容器。
獲取Glances容器:
docker pull nicolargo/glances以控制臺模式運行容器:
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:ro --pid host --network host -it docker.io/nicolargo/glances除此之外,如果你想使用自己的glances.conf文件,你需要創建自己的Docker文件:
FROM nicolargo/glancesCOPY glances.conf /glances/conf/glances.confCMD python -m glances -C /glances/conf/glances.conf $GLANCES_OPT當然了,你還可以在同一行命令中添加Docker的運行參數:
docker run -v `pwd`/glances.conf:/glances/conf/glances.conf -v /var/run/docker.sock:/var/run/docker.sock:ro --pid host -it docker.io/nicolargo/glances以Web服務器模式運行容器:
docker run -d --restart="always" -p 61208-61209:61208-61209 -e GLANCES_OPT="-w" -v /var/run/docker.sock:/var/run/docker.sock:ro --pid host docker.io/nicolargo/glancesFreeBSD
安裝源碼包:
# pkg install py27-glancesPort安裝:
# cd /usr/ports/sysutils/py-glances/# make install cleanmacOS安裝
如果你不需要使用glances自動安裝腳本,請遵循下列安裝步驟。macOS用戶可以使用Homebrew或MacPorts來安裝Glances:
Homebrew
$ brew install glancesMacPorts
$ sudo port install glancesWindows安裝
Windows平臺下安裝Python,并運行下列命令:
$ pip install glances或者使用下列命令將項目克隆至本地:
$ git clone https://github.com/nicolargo/glances.git$ cd glances$ python setup.py installAndroid
在設備上開啟Termux,并運行下列命令:
$ apt update$ apt upgrade$ apt install clang python python-dev$ pip install bottle$ pip install glances開啟Glances:
$ glances源碼安裝
$ wget https://github.com/nicolargo/glances/archive/vX.Y.tar.gz -O - | tar xz$ cd glances-*# python setup.py install工具使用
單一模式運行:
$ glancesWeb服務器模式運行:
$ glances -w http://<ip>:61208客戶端模式運行:
$ glances -s服務器模式運行:
$ glances -c <ip>檢測并查看所有的Glances服務器:
$ glances --browser我們還可以查看原始stats數據:
$ glances --stdout cpu.user,mem.used,loadcpu.user: 30.7mem.used: 3278204928load: {'cpucore': 4, 'min1': 0.21, 'min5': 0.4, 'min15': 0.27}cpu.user: 3.4mem.used: 3275251712load: {'cpucore': 4, 'min1': 0.19, 'min5': 0.39, 'min15': 0.27}...以CSV格式導出數據:
$ glances --stdout-csv now,cpu.user,mem.used,loadnow,cpu.user,mem.used,load.cpucore,load.min1,load.min5,load.min152018-12-08 22:04:20 CEST,7.3,5948149760,4,1.04,0.99,1.042018-12-08 22:04:23 CEST,5.4,5949136896,4,1.04,0.99,1.04...項目地址
Glances:【GitHub傳送門】https://github.com/nicolargo/glances
參考文檔
1、https://glances.readthedocs.io/
總結
以上是生活随笔為你收集整理的Glances:一款功能强大的操作系统安全监控平台的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 按行读取文件内按分隔符分割
- 下一篇: 系统提升架构能力之10种mysql主从实