新聞中心
linux 上最常用的命令行進(jìn)程監(jiān)控工具是 top 和它那色彩斑斕、功能豐富的表弟 htop。

創(chuàng)新互聯(lián)自2013年創(chuàng)立以來(lái),先為定安等服務(wù)建站,定安等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為定安企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。
要監(jiān)控 Linux 上的溫度,可以使用 lm-sensors。同樣,還有很多實(shí)用工具可以監(jiān)控其他實(shí)時(shí)指標(biāo),如磁盤(pán) I/O、網(wǎng)絡(luò)統(tǒng)計(jì)等。
Glances 是一個(gè)系統(tǒng)監(jiān)控工具,它把這些都聯(lián)系在一起,并提供了更多的功能。我最喜歡的是,你可以在遠(yuǎn)程 Linux 服務(wù)器上運(yùn)行 Glances 來(lái)監(jiān)控本地系統(tǒng)的系統(tǒng)資源,也可以通過(guò) Web 瀏覽器監(jiān)控。
下面是它的外觀。下面截圖中的終端已經(jīng)用 Pywal 工具美化過(guò),可以根據(jù)壁紙自動(dòng)改變顏色。
你也可以將它集成到像 Grafana 這樣的工具中,在一個(gè)直觀的儀表盤(pán)中監(jiān)控統(tǒng)計(jì)數(shù)據(jù)。
它是用 Python 編寫(xiě)的,這意味著它的絕大多數(shù)功能都可以在大多數(shù)平臺(tái)上使用。
Glances 的功能
讓我們快速瀏覽一下 Glances 提供的主要功能:
- 可以監(jiān)控系統(tǒng)上的 15 個(gè)之多的指標(biāo)(包括 Docker 容器)。
- 靈活的使用模式:?jiǎn)螜C(jī)模式、客戶端-服務(wù)器模式、通過(guò) SSH 和 Web 模式。
- 可用于集成的各種 REST API 和 XML-RPC API。
- 支持將數(shù)據(jù)輕松導(dǎo)出到不同的服務(wù)和數(shù)據(jù)庫(kù)。
- 高度的可配置性和適應(yīng)不同的需求。
- 非常全面的文檔。
在 Ubuntu 和其他 Linux 發(fā)行版上安裝 Glances
Glances 在許多 Linux 發(fā)行版的官方軟件庫(kù)中都有。這意味著你可以使用你的發(fā)行版的軟件包管理器來(lái)輕松安裝它。
在基于 Debian/Ubuntu 的發(fā)行版上,你可以使用以下命令:
sudo apt install glances
你也可以使用 snap 包安裝最新的 Glances:
sudo snap install glances
由于 Glances 是基于 Python 的,你也可以使用 PIP 在大多數(shù) Linux 發(fā)行版上安裝它。先安裝 PIP,然后用它來(lái)安裝 Glances:
sudo pip3 install glances
如果沒(méi)有別的辦法,你還可以使用 Glances 開(kāi)發(fā)者提供的自動(dòng)安裝腳本。雖然我們不建議直接在你的系統(tǒng)上隨便運(yùn)行腳本,但這完全取決于你自己:
curl -L https://bit.ly/glances | /bin/bash
你可以從他們的文檔中查看其他安裝 Glances 的方法,甚至你還可以把它作為一個(gè) Docker 容器來(lái)安裝。
使用 Glances 監(jiān)控本地系統(tǒng)上的 Linux 系統(tǒng)資源(獨(dú)立模式)
你可以通過(guò)在終端上運(yùn)行這個(gè)命令,輕松啟動(dòng) Glances 來(lái)監(jiān)控你的本地機(jī)器:
glances
你可以立即觀察到,它將很多不同的信息整合在一個(gè)屏幕上。我喜歡它在頂部顯示電腦的公共和私人 IP:
Glances 也是交互式的,這意味著你可以在它運(yùn)行時(shí)使用命令與它互動(dòng)。你可以按 s 將傳感器顯示在屏幕上;按 k 將 TCP 連接列表顯示在屏幕上;按 1 將 CPU 統(tǒng)計(jì)擴(kuò)展到顯示單個(gè)線程。
你也可以使用方向鍵在進(jìn)程列表中移動(dòng),并按不同的指標(biāo)對(duì)表格進(jìn)行排序。
你可以通過(guò)各種命令行選項(xiàng)來(lái)啟動(dòng) Glances。此外,它還有很多交互式命令。你可以在他們的豐富的文檔中找到完整的列表。
按 Ctrl+C 鍵退出 Glances。
使用 Glances 監(jiān)控遠(yuǎn)程 Linux 系統(tǒng)(客戶端-服務(wù)器模式)
要監(jiān)控遠(yuǎn)程計(jì)算機(jī),你可以在客戶端-服務(wù)器模式下使用 Glances。你需要在兩個(gè)系統(tǒng)上都安裝 Glances。
在遠(yuǎn)程 Linux 系統(tǒng)上,使用 -s 選項(xiàng)在服務(wù)器模式下啟動(dòng) Glances:
glances -s
在客戶端系統(tǒng)中,使用下面的命令在客戶端模式下啟動(dòng) Glances 并連接到服務(wù)器:
glances -c server_ip_address
你也可以通過(guò) SSH 進(jìn)入任何一臺(tái)電腦,然后啟動(dòng) Glances,它可以完美地工作。更多關(guān)于客戶端-服務(wù)器模式的信息請(qǐng)看這里。
使用 Glances 在 Web 瀏覽器中監(jiān)控 Linux 系統(tǒng)資源(Web 模式)
Glances 也可以在 Web 模式下運(yùn)行。這意味著你可以使用 Web 瀏覽器來(lái)訪問(wèn) Glances。與之前的客戶端-服務(wù)器模式不同,你不需要在客戶端系統(tǒng)上安裝 Glances。
要在 Web 模式下啟動(dòng) Glances,請(qǐng)使用 -w 選項(xiàng):
glances -w
請(qǐng)注意,即使在 Linux 服務(wù)器上,它也可能顯示 “Glances Web User Interface started on http://0.0.0.0:61208”,而實(shí)際上它使用的是服務(wù)器的 IP 地址。
最主要的是它使用的是 61208 端口號(hào),你可以用它來(lái)通過(guò)網(wǎng)絡(luò)瀏覽器訪問(wèn) Glances。只要在服務(wù)器的 IP 地址后面輸入端口號(hào),比如 http://123.123.123.123:61208。
你也可以在本地系統(tǒng)中使用 http://0.0.0.0:61208/ 或 https://localhost:61208/ 訪問(wèn)。
Web 模式也模仿終端的樣子。網(wǎng)頁(yè)版是根據(jù)響應(yīng)式設(shè)計(jì)原則打造的,即使在手機(jī)上也很好看。
你可能想用密碼來(lái)保護(hù) Web 模式,這樣只有授權(quán)的人才能使用它。默認(rèn)的用戶名是 glances。
root@localhost:~# glances -w --password
Define the Glances webserver password (glances username):
Password (confirm):
Do you want to save the password? [Yes/No]: n
Glances Web User Interface started on http://0.0.0.0:61208/
你可以在快速入門(mén)指南中找到關(guān)于配置密碼的更多信息。
導(dǎo)出 Glances 數(shù)據(jù)到不同的服務(wù)
使用 Glances 最大的優(yōu)勢(shì)之一就是開(kāi)箱即用,它支持將數(shù)據(jù)導(dǎo)出到各種數(shù)據(jù)庫(kù)、服務(wù),并無(wú)縫集成到各種數(shù)據(jù)管道中。
你可以在監(jiān)控的同時(shí)用這個(gè)命令導(dǎo)出到 CSV:
glances --export csv --export-csv-file /tmp/glances.csv
/tmp/glances.csv 是文件的位置。數(shù)據(jù)以時(shí)間序列的形式整齊地填入。
你也可以導(dǎo)出到其它大型應(yīng)用程序,如 Prometheus,以啟用條件觸發(fā)器和通知。
它可以直接插入到消息服務(wù)(如 RabbitMQ、MQTT)、流媒體平臺(tái)(如 Kafka),并將時(shí)間序列數(shù)據(jù)導(dǎo)出到數(shù)據(jù)庫(kù)(如 InfluxDB),并使用 Grafana 進(jìn)行可視化。
你可以在這里查看服務(wù)和導(dǎo)出選項(xiàng)的整個(gè)列表。
使用 REST API 將 Glances 與其他服務(wù)進(jìn)行整合
這是整個(gè)棧中我最喜歡的功能。Glances 不僅可以將各種指標(biāo)匯集在一起,還可以通過(guò) API 將它們暴露出來(lái)。
這個(gè)簡(jiǎn)單而強(qiáng)大的功能使得為任何特定的用例構(gòu)建自定義應(yīng)用程序、服務(wù)和中間件應(yīng)用程序變得非常容易。
當(dāng)你在 Web 模式下啟動(dòng) Glances 時(shí),REST API 服務(wù)器會(huì)自動(dòng)啟動(dòng)。要在 API 服務(wù)器模式下啟動(dòng)它,你可以使用以下命令:
glances -w --disable-webui
REST API 的文檔很全面,其響應(yīng)也很容易與 Web 應(yīng)用集成。這使得使用類(lèi)似 Node-RED 這樣的工具可以很容易地構(gòu)建一個(gè)統(tǒng)一的儀表盤(pán)來(lái)監(jiān)控多個(gè)服務(wù)器。
Glances 也提供了一個(gè) XML-RPC 服務(wù)器,你可以在這里查看文檔。
關(guān)于 Glances 的結(jié)束語(yǔ)
Glances 使用 psutil Python 庫(kù)來(lái)訪問(wèn)不同的系統(tǒng)統(tǒng)計(jì)數(shù)據(jù)。早在 2017 年,我就曾使用相同的庫(kù)構(gòu)建了一個(gè)簡(jiǎn)單的 API 服務(wù)器來(lái)檢索 CPU 的使用情況。我能夠使用 Node-RED 構(gòu)建的儀表盤(pán)監(jiān)控一個(gè)集群中的所有樹(shù)莓派。
Glances 可以為我節(jié)省一些時(shí)間,同時(shí)提供更多的功能,可惜我當(dāng)時(shí)并不知道它。
在寫(xiě)這篇文章的時(shí)候,我確實(shí)嘗試著在我的樹(shù)莓派上安裝 Glances,可惜所有的安裝方法都出現(xiàn)了一些錯(cuò)誤,失敗了。當(dāng)我成功后,我會(huì)更新文章,或者可能再寫(xiě)一篇文章,介紹在樹(shù)莓派上安裝的步驟。
我希望 Glances 能提供一種頂替 top 或 htop 等的方法。讓我們希望在即將到來(lái)的版本中得到它。
我希望這能給你提供大量關(guān)于 Glances 的信息。你們使用什么系統(tǒng)監(jiān)控工具呢,請(qǐng)?jiān)谠u(píng)論中告訴我。
分享文章:Glances:多功能Linux系統(tǒng)監(jiān)控工具
本文來(lái)源:http://fisionsoft.com.cn/article/dpiicip.html


咨詢
建站咨詢
