首頁 >系統教程 >Linux >Glances:一款強大的 Linux 系統監控工具

Glances:一款強大的 Linux 系統監控工具

PHPz
PHPz轉載
2024-02-11 15:18:17749瀏覽

Linux 系統管理員需要經常監控系統的各種資源和效能指標,如 CPU、記憶體、磁碟、網路、溫度等。雖然有很多命令列工具可以提供這些信息,但是它們通常只能顯示一部分數據,或者需要切換不同的命令和視窗。有沒有一款工具可以把所有重要的資訊集中在一個螢幕上,而且還能提供更多的功能和選項呢?答案是有的,它就是 Glances。 Glances 是一個用Python 編寫的開源工具,它可以在終端、瀏覽器或遠端伺服器上顯示Linux 系統的各種即時數據,包括進程、負載、記憶體、磁碟I/O、網路流量、檔案系統、溫度等。它還支援導出資料到不同的服務和資料庫,以及使用 REST API 和 XML-RPC API 進行整合。在本文中,我們將介紹如何在 Ubuntu 和其他 Linux 發行版上安裝和使用 Glances,以及它的一些主要功能和優勢

下面是它的外觀。下面截圖中的終端機已經用 Pywal 工具美化過,可以根據壁紙自動改變顏色。

Glances:一款强大的 Linux 系统监控工具

你也可以將它整合到像 Grafana 這樣的工具中,在一個直覺的儀表板中監控統計資料。

它是用 Python 寫的,這意味著它的絕大多數功能都可以在大多數平台上使用。

Glances 的功能

Glances:一款强大的 Linux 系统监控工具

Glances Data In Grafana Dashboard

#讓我們快速瀏覽 Glances 提供的主要功能:

  • 可以監控系統上的 15 個之多的指標(包括 Docker 容器)。
  • 靈活的使用模式:單機模式、客戶端-伺服器模式、透過 SSH 和 Web 模式。
  • 可用於整合的各種 REST API 和 XML-RPC API。
  • 支援將資料輕鬆匯出到不同的服務和資料庫。
  • 高度的可配置性和適應不同的需求。
  • 非常全面的文檔。

在 Ubuntu 和其他 Linux 發行版上安裝 Glances

Glances 在許多 Linux 發行版的官方軟體庫中都有。這意味著你可以使用你的發行版的軟體包管理器來輕鬆安裝它。

在基於 Debian/Ubuntu 的發行版上,你可以使用以下指令:

sudo apt install glances

你也可以使用 snap 套件安裝最新的 Glances:

sudo snap install glances

由於 Glances 是基於 Python 的,你也可以使用 PIP 在大多數 Linux 發行版上安裝它。先安裝 PIP,然後用它來安裝 Glances:

sudo pip3 install glances

如果沒有別的辦法,你也可以使用 Glances 開發者提供的自動安裝腳本。雖然我們不建議直接在你的系統上隨便運行腳本,但這完全取決於你自己:

curl -L https://bit.ly/glances | /bin/bash

你可以從他們的文件中查看其他安裝 Glances 的方法,甚至你也可以把它當作一個 Docker 容器來安裝。

使用 Glances 監控本機系統上的 Linux 系統資源(獨立模式)

#你可以透過在終端機上執行這個指令,輕鬆啟動 Glances 來監控你的本機機器:

glances

你可以立即觀察到,它將許多不同的資訊整合在一個螢幕上。我喜歡它在頂部顯示電腦的公共和私人 IP:

Glances:一款强大的 Linux 系统监控工具

Glances 也是互動式的,這意味著你可以在它運行時使用命令與它互動。你可以按s 將感測器顯示在螢幕上;按k 將TCP 連線清單顯示在螢幕上;按1 將CPU 統計擴展到顯示單一執行緒。

你也可以使用方向键在进程列表中移动,并按不同的指标对表格进行排序。

你可以通过各种命令行选项来启动 Glances。此外,它还有很多交互式命令。你可以在他们的丰富的文档中找到完整的列表。

Ctrl+C 键退出 Glances。

使用 Glances 监控远程 Linux 系统(客户端-服务器模式)

要监控远程计算机,你可以在客户端-服务器模式下使用 Glances。你需要在两个系统上都安装 Glances。

在远程 Linux 系统上,使用 -s 选项在服务器模式下启动 Glances:

glances -s

在客户端系统中,使用下面的命令在客户端模式下启动 Glances 并连接到服务器:

glances -c server_ip_address

你也可以通过 SSH 进入任何一台电脑,然后启动 Glances,它可以完美地工作。更多关于客户端-服务器模式的信息请看这里。

使用 Glances 在 Web 浏览器中监控 Linux 系统资源(Web 模式)

Glances 也可以在 Web 模式下运行。这意味着你可以使用 Web 浏览器来访问 Glances。与之前的客户端-服务器模式不同,你不需要在客户端系统上安装 Glances。

要在 Web 模式下启动 Glances,请使用 -w 选项:

glances -w

请注意,即使在 Linux 服务器上,它也可能显示 “Glances Web User Interface started on http://0.0.0.0:61208”,而实际上它使用的是服务器的 IP 地址。

最主要的是它使用的是 61208 端口号,你可以用它来通过网络浏览器访问 Glances。只要在服务器的 IP 地址后面输入端口号,比如 http://123.123.123.123:61208。

你也可以在本地系统中使用 http://0.0.0.0:61208/ 或 https://localhost:61208/ 访问。

Glances:一款强大的 Linux 系统监控工具

Web 模式也模仿终端的样子。网页版是根据响应式设计原则打造的,即使在手机上也很好看。

你可能想用密码来保护 Web 模式,这样只有授权的人才能使用它。默认的用户名是 glances

root@localhost:~# glances -w --passwordDefine the Glances webserver password 
(glances username):Password
 (confirm):Do you want to save the password? [Yes/No]: nGlances Web User 
Interface started on http://0.0.0.0:61208/

你可以在快速入门指南中找到关于配置密码的更多信息。

导出 Glances 数据到不同的服务

使用 Glances 最大的优势之一就是开箱即用,它支持将数据导出到各种数据库、服务,并无缝集成到各种数据管道中。

你可以在监控的同时用这个命令导出到 CSV:

glances --export csv --export-csv-file /tmp/glances.csv

/tmp/glances.csv 是文件的位置。数据以时间序列的形式整齐地填入。

Glances:一款强大的 Linux 系统监控工具

你也可以导出到其它大型应用程序,如 Prometheus,以启用条件触发器和通知。

它可以直接插入到消息服务(如 RabbitMQ、MQTT)、流媒体平台(如 Kafka),并将时间序列数据导出到数据库(如 InfluxDB),并使用 Grafana 进行可视化。

你可以在这里查看服务和导出选项的整个列表。

使用 REST API 将 Glances 与其他服务进行整合

这是整个栈中我最喜欢的功能。Glances 不仅可以将各种指标汇集在一起,还可以通过 API 将它们暴露出来。

这个简单而强大的功能使得为任何特定的用例构建自定义应用程序、服务和中间件应用程序变得非常容易。

当你在 Web 模式下启动 Glances 时,REST API 服务器会自动启动。要在 API 服务器模式下启动它,你可以使用以下命令:

glances -w --disable-webui

REST API 的文档很全面,其响应也很容易与 Web 应用集成。这使得使用类似 Node-RED 这样的工具可以很容易地构建一个统一的仪表盘来监控多个服务器。

Glances:一款强大的 Linux 系统监控工具

Glances 也提供了一个 XML-RPC 服务器,你可以在这里查看文档。

关于 Glances 的结束语

Glances 使用 psutil Python 库来访问不同的系统统计数据。早在 2017 年,我就曾使用相同的库构建了一个简单的 API 服务器来检索 CPU 的使用情况。我能够使用 Node-RED 构建的仪表盘监控一个集群中的所有树莓派。

Glances 可以为我节省一些时间,同时提供更多的功能,可惜我当时并不知道它。

在写这篇文章的时候,我确实尝试着在我的树莓派上安装 Glances,可惜所有的安装方法都出现了一些错误,失败了。当我成功后,我会更新文章,或者可能再写一篇文章,介绍在树莓派上安装的步骤。

我希望 Glances 能提供一种顶替 tophtop 等的方法。让我们希望在即将到来的版本中得到它。

本文介绍了 Glances 这款多功能的 Linux 系统监控工具,它可以让你在一个屏幕上查看系统的各种重要信息,并且提供了灵活的使用模式和导出选项。Glances 是一个非常实用和强大的工具,它可以帮助你更好地了解和管理你的 Linux 系统。如果你想要更多地学习和探索 Glances 的功能和配置,你可以参考它的 官方文档 ,或者在 GitHub 上查看它的 源码 和 反馈 。希望本文对你有所帮助!

以上是Glances:一款強大的 Linux 系統監控工具的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:lxlinux.net。如有侵權,請聯絡admin@php.cn刪除