过去,我们已经介绍了 Linux 中相当多的命令行监视工具。这些包括 vmstat,htop,top 等。其中 top 是使用最广泛的命令,因为它是预安装的,除了显示正在运行的进程外,还提供系统的实时性能。在本指南中,我们将更多地关注一个直观且用户友好的命令行工具 glances。
基于Python, Glances 是一个开源免费的跨平台命令行监视工具,可提供有关系统性能的大量信息。您可以监视系统指标,例如内存和 CPU 利用率,网络带宽,磁盘 I/O,文件系统和运行进程等。
Glances 以直观且具有视觉吸引力的格式显示指标,包括以下内容:
- System uptime & IP address ( Private & public )
- Memory utilization ( Main memory , swap , available memory ).
- CPU utilization.
- Disk mount points.
- Disk I/O & read and write speeds.
- CPU load average , date and time
- Running processes including active and sleeping processes.
- Network bandwidth ( Including upload and download rates ).
如何在 Linux 发行版上安装 Glances
默认情况下不安装 Glances。让我们看看如何在主要的 Linux 发行版中安装 Glances。
On Ubuntu / Debian / Mint
$ sudo apt install -y glances
对于旧版本,添加 PPA
$ sudo apt-add-repository ppa:arnaud-hartmann/glances-stable
接下来,更新包列表并按所示安装 glance
$ sudo apt update
$ sudo apt install -y glances
On CentOS 8 / RHEL 8
对于 CentOS & RHEL,请先安装 EPEL 包
CentOS 8
$ sudo dnf install epel-release
RHEL 8
$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
然后更新存储库并安装
$ sudo dnf update
$ sudo dnf install -y glances
Glances 也可作为 snap package 使用。它可以安装在所有 Linux 系统上,如下所示
$ sudo snap install glances
此外,由于 Glances 是用 Python 编写的,您还可以使用 pip 包管理器安装它,如下所示
$ pip3 install glances
有关其他安装过程,请参阅此文件 documentation on GitHub
在独立模式下监视系统指标 (本地系统)
启动 Glances 来监视本地系统 (独立模式) 非常简单。只需运行下面的 glances 命令,不需要任何命令选项。
$ glances
马上,你可以看到一些系统指标,从最顶部的私有和公共 IP 地址开始,在终端右上角的正常运行时间。在下面你可以看到其他系统指标,如 CPU 和内存利用率,网络带宽速率,运行进程,磁盘卷等。
下面是 CentOS 8 系统的截图
要在 web 浏览器上查看这些统计信息,请使用 -w 选项,这将生成一个链接,如下所示
$ glances -w
这将启动对端口 61208 的监听,并在浏览器上呈现统计信息,如图所示
可以使用 --password 标志,只允许授权用户访问,保护 web GUI。
$ glances -w --password
用户名默认为 glances
The next time to try to log in, you will be prompted for a password as shown.
下次登录时,系统将提示您输入密码,如下所示
在服务器模式下监视系统指标
The glances command can also be used to monitor a remote host. Just pass the -s option to initialize glances in server mode as seen below.
glances 命令还可以用于监视远程主机,只需要传递 -s 选项在服务器模式下初始化 glance,如下所示
在客户端 PC 上运行如下所示的 glances 命令访问服务器的指标
$ glances -c server-IP-address
下面是来自 Windows 命令行下的服务器度量的截图
Glances 警报
通过在显示系统指标时使用颜色代码,可以更容易地发现并缩小问题范围。您可能想知道不同的颜色代码代表什么,下面是一个分类。
- GREEN: OK (everything is fine)
- BLUE: CAREFUL (need attention)
- VIOLET: WARNING (alert)
- RED: CRITICAL (critical)
缺省情况下,阈值配置为
- careful=50
- warning=70
- critical=90
这些不是一成不变的,可以在 glances 配置文件 /etc/glances/glances.conf 中自定义
系统帮助
执行 glances -h 查看命令帮助,如下所示
$ glances -h
文章总结
Glances 是一个方便的工具,而且在很多方面感觉像是 top 或 htop 命令的改进版本。它提供了动态实时系统指标,可以在 web 浏览器上呈现并在命令行上远程检索。