Glances - 一个用于Linux的高级实时系统监控工具

概述

在top命令是在Linux中实时任务管理器和GNU / Linux发行版中最常用的系统监视工具来发现系统性能相关的瓶颈,帮助我们采取纠正措施。 它有一个很好的简约接口,配备少量的合理选项,使我们能够更快地了解整体系统性能。然而,有时它查找一个消耗大量系统资源的应用程序/进程是非常麻烦的, 因为top命令降低了消耗过多的CPU,RAM,其他资源的程序的能力。

为了实现这个目标,今天就介绍一款很强大的工具--Glances,可自动突出显示正在使用最高的系统资源,并提供最大的关于Linux / Unix服务器信息的程序。


一、什么是 Glances?

Glances 是一个由 Python 编写,使用 psutil 库来从系统抓取信息的基于 curses 开发的跨平台命令行系统监视工具。

通过 Glances,我们可以监视 CPU,平均负载,内存,网络流量,磁盘 I/O,其他处理器 和 文件系统 空间的利用情况。

Glances 是一个用来监视 GNU/Linux 和 FreeBSD 操作系统的 GPL 授权的自由软件。

Glances 同时也提供了很多实用的选项。 其中我们能够在配置文件见到的一项主要的功能就是设 置关键值及相应的标签 (careful[小心], warning[警告] 和 critical[严重]), 然后她会自动帮我们用不同颜色标出系统达到某个瓶颈的信息。


二、Glances 主要功能

  • CPU 信息 (用户的相关应用, 系统核心程序和空闲程序)
  • 总内存信息,包括了物理内存,交换空间和空闲内存等等
  • 之前的 1 分钟、5 分钟和 15 分钟平均的 CPU 负载
  • 网络链接的下行和上行速度
  • 处理器总数,以及其活动状态
  • 硬盘 I/O 相关(读写)速度详情
  • 当前挂载设备的磁盘使用情况
  • 高 CPU 和内存使用的进程名,和相关应用的位置
  • 在底部显示当前日期和时间
  • 将消耗最高系统资源的进程用红色标出

三、Glances 中颜色含义

Glances - 一个用于Linux的高级实时系统监控工具

Glances 会用以下几种颜色来代表状态:

· 绿色:OK(一切正常)

· 蓝色:CAREFUL(需要注意)

· 紫色:WARNING(警告)

· 红色:CRITICAL(严重)

阀值可以在配置文件中设置,一般阀值被默认设置为(careful=50、warning=70、critical=90)。

我们可以按照自己的需求在配置文件(默认在 /etc/glances/glances.conf)中自定义。


四、Glances安装

官网文档:https://glances.readthedocs.io/en/latest/install.html

glances在epel源就有,所以安装很简单,配置好epel源就可以使用yum安装了。

1、下载安装epel源

#yum -y install epel-release

2、安装glances

#yum -y install glances

Glances - 一个用于Linux的高级实时系统监控工具

3、如果需要web页面监控,需安装web客户端工具

#pip install bottle

Glances - 一个用于Linux的高级实时系统监控工具


五、Glances 的选项

glances 是一个命令行工具包括如下命令选项:

Glances - 一个用于Linux的高级实时系统监控工具

-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用法

1、命令行直接使用glances命令

Glances 的默认刷新频率是 1(秒),但是可以通过在终端指定参数(t)来手动定义其刷新频率。

按“Q”或(“ESC”键或“Ctrl键和C'也适用)从终端退出

glances -t 2

Glances - 一个用于Linux的高级实时系统监控工具

glances 工作界面的说明 :
在图 的上部是 CPU 、Load(负载)、Mem(内存使用)、 Swap(交换分区)的使用情况。在图的中上部是网络接口、Processes(进程)的使用情况。通常包括如下字段:

VIRT: 虚拟内存大小
RES: 进程占用的物理内存值
%CPU:该进程占用的 CPU 使用率
%MEM:该进程占用的物理内存和总内存的百分比
PID: 进程 ID 号
USER: 进程所有者的用户名
TIME+: 该进程启动后占用的总的 CPU 时间
IO_R 和 IO_W: 进程的读写 I/O 速率
NAME: 进程名称
NI: 进程优先级
S: 进程状态,其中 S 表示休眠,R 表示正在运行,Z 表示僵死状态。

在图 的中下部是传感器检测到的 CPU 温度。 在图的下部是磁盘 I/O 的使用情况。 另外 glances 可以使用交互式的方式运行该工具,用户可以使用如下快捷键:

h : 显示帮助信息
q : 离开程序退出
c :按照 CPU 实时负载对系统进程进行排序
m :按照内存使用状况对系统进程排序
i:按照 I/O 使用状况对系统进程排序
p: 按照进程名称排序
d : 显示磁盘读写状况
w : 删除日志文件
l :显示日志
s: 显示传感器信息
f : 显示系统信息
1 :轮流显示每个 CPU 内核的使用情况(次选项仅仅使用在多核 CPU 系统)


2、输出为html格式,配置web server展出

# pip install jinja2 或者yum -y install python-jinja2
# glances -o HTML -f /var/www/html

注:输出html格式时,需要jinja2的支持,需要先安装依赖。默认输出的文件名是glances.html,可以通过http://IP/glances.html访问。

Glances - 一个用于Linux的高级实时系统监控工具


这个命令还是很有用的,建议大家重点掌握,后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以一起学习~

Glances - 一个用于Linux的高级实时系统监控工具

相关推荐