← 返回上一頁
Kubernetes

用 SmartPing 打造秒級網路品質監控:部署教學與功能解析

本頁目錄

前言

在維運環境中,網路品質的即時監控往往是第一道防線。當服務出問題時,我們最常做的事就是 ping 一下看看通不通、延遲多少。但手動 ping 只能看到當下那一刻的狀態,要做到持續性、視覺化的監控,就需要專門的工具。SmartPing 正是這樣一款輕量的網路品質監控方案,支援多種 PING 繪圖功能與告警機制。

SmartPing 是什麼?

SmartPing 是一款綜合性的網路品質(PING)檢測工具,主要功能包括:

  • 正向 / 反向 PING 繪圖:視覺化呈現不同方向的 PING 結果
  • 互 PING 拓撲圖:顯示多台機器間的網路狀態,支援自訂延遲、丟包閾值告警(包含聲音告警與郵件告警),告警時自動執行 MTR 檢測
  • 全國 PING 延遲地圖:各省份可分電信、聯通、行動三條線路顯示
  • 線上檢測工具:可利用 SmartPing 各節點進行網路相關檢測

環境準備:安裝 Go 語言

SmartPing 是用 Go 語言開發的,因此需要先建立 Go 環境。

下載並解壓 Go

wget https://studygolang.com/dl/golang/go1.17.6.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.17.6.linux-amd64.tar.gz

設定環境變數

在 /etc/profile 末尾加入以下兩行:

export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin

驗證安裝

重新登入或重啟後,執行以下指令確認 Go 已正確安裝:

go version
# 應顯示類似 go version go1.17.6 linux/amd64

部署 SmartPing

下載與解壓

mkdir /home/smartping
cd /home/smartping/
wget https://github.com/smartping/smartping/releases/download/v0.8.0/smartping-v0.8.0.tar.gz
tar zxvf smartping-v0.8.0.tar.gz

啟動服務

./control start

防火牆設定

SmartPing 預設使用 8899 埠作為 Web 服務端口,需要開放防火牆:

firewall-cmd --permanent --add-port=8899/tcp
firewall-cmd --reload
firewall-cmd --zone=public --list-ports

管理介面

啟動完成後,透過瀏覽器存取 http://YOUR_SERVER_IP:8899 即可進入管理介面。

預設登入密碼為 smartping,如需修改請編輯設定檔:

  • conf/config.json
  • conf/config-base.json

主要功能面板說明

功能面板 用途說明
PING 繪圖 顯示正向 / 反向 PING 的延遲與丟包趨勢圖
拓撲圖 多節點間互 PING 狀態的視覺化呈現
延遲地圖 全國各省份的網路延遲分佈,支援多運營商線路
告警設定 自訂延遲閾值與丟包率,支援聲音與郵件通知
檢測工具 利用部署的各節點執行即時網路檢測

部署建議

如果你有多個機房或多個雲端區域,可以在每個節點都部署一個 SmartPing 實例,並設定互 PING。這樣就能在管理介面上一目了然地看到所有節點間的網路品質狀況,一旦某條鏈路出問題,告警會立刻通知你。

對於更進階的監控需求(如整合 Prometheus / Grafana),SmartPing 本身較為輕量,可能不夠用。但如果你只是需要一個快速部署、直覺好用的 PING 監控方案,SmartPing 絕對是不錯的選擇。

總結

SmartPing 的核心價值在於它的簡單與直觀。不需要複雜的設定,幾分鐘就能部署完成,馬上開始監控網路品質。特別適合中小型團隊或需要快速建立網路監控基線的場景。搭配告警功能,能在網路異常的第一時間發現問題,避免用戶投訴才知道出了狀況。

分享這篇
X LinkedIn Facebook Hacker News Reddit

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料。