如何使用 taosKeeper 做好監控工作,時序資料庫 TDengine 3.0 監控工具詳解

TDengine發表於2023-04-14

小 T 導讀:taosKeeper 是 TDengine 3.0 的執行狀態指標監控工具,透過簡單的幾項配置即可獲取 TDengine 的執行狀態資訊。其使用 TDengine RESTful 介面,所以不需要安裝 TDengine 客戶端即可使用。本文將詳細解讀 taosKeeper 的詳細語法規則,方便有需要的使用者開展應用。

時序資料庫 TDengine( Time Series Database ) 透過 taosKeeper 將伺服器的 CPU、記憶體、硬碟空間、頻寬、請求數、磁碟讀寫速度等資訊定時寫入指定資料庫,也支援對重要的系統操作(比如登入、建立、刪除資料庫等)以及各種錯誤報警資訊進行記錄。系統管理員可以從命令列直接檢視該資料庫,也可以在 Web 端透過圖形化介面檢視這些監測資訊。這些監測資訊的採集預設是開啟的,也可以透過修改配置檔案裡的選項 monitor 來關閉。

taosKeeper 安裝方式:單獨編譯 taosKeeper 並安裝,詳情請參考 taosKeeper 倉庫()。

配置和執行方式

taosKeeper 需要在作業系統終端中執行,該工具支援三種配置方式:命令列引數、環境變數和配置檔案。優先順序為:命令列引數、環境變數、配置檔案引數。

需要注意的是,在執行 taosKeeper 之前要確保 TDengine 叢集與 taosAdapter 已經正確執行,並且 TDengine 已經開啟監控服務。監控配置可參考相關檔案,具體的配置項包括  monitor、monitorFqdn、monitorPort、monitorInterval 和 telemetryReporting。

命令列引數啟動

可以直接執行 taosKeeper,也可以在執行命令時提供命令列引數。

$ taosKeeper

環境變數啟動

透過設定環境變數達到控制啟動引數的目的,通常在容器中執行時使用。

$ export TAOS_KEEPER_TDENGINE_HOST=192.168.64.3$ taoskeeper

具體引數列表請參照  taoskeeper -h 輸入結果。

配置檔案啟動

執行以下命令即可快速體驗 taosKeeper。當不指定 taosKeeper 配置檔案時,優先使用  /etc/taos/keeper.toml配置,否則將使用預設配置。

$ taoskeeper -c <keeper config file>

具體配置檔案示例請參考:

獲取監控指標

taosKeeper 作為 TDengine 監控指標的匯出工具,可以將 TDengine 產生的監控資料記錄在指定資料庫中,並提供匯出介面。

檢視監控結果集

$ taos# 如上示例,使用 log 庫作為監控日誌儲存位置> use log;> select * from cluster_info limit 1;

結果示例:

           ts            |            first_ep            | first_ep_dnode_id |   version    |    master_uptime     | monitor_interval |  dbs_total  |  tbs_total  | stbs_total  | dnodes_total | dnodes_alive | mnodes_total | mnodes_alive | vgroups_total | vgroups_alive | vnodes_total | vnodes_alive | connections_total |  protocol   |           cluster_id           |=============================================================================================================================================================================================================================================================================================================================================================================== 2022-08-16 17:37:01.629 | hlb:6030                       |                 1 | 3.0.0.0      |              0.27250 |               15 |           2 |          27 |          38 |            1 |            1 |            1 |            1 |             4 |             4 |            4 |            4 |                14 |           1 | 5981392874047724755            |Query OK, 1 rows in database (0.036162s)

匯出監控指標

$ curl

部分結果集:

# HELP taos_cluster_info_connections_total # TYPE taos_cluster_info_connections_total countertaos_cluster_info_connections_total{cluster_id="5981392874047724755"} 16# HELP taos_cluster_info_dbs_total # TYPE taos_cluster_info_dbs_total countertaos_cluster_info_dbs_total{cluster_id="5981392874047724755"} 2# HELP taos_cluster_info_dnodes_alive # TYPE taos_cluster_info_dnodes_alive countertaos_cluster_info_dnodes_alive{cluster_id="5981392874047724755"} 1# HELP taos_cluster_info_dnodes_total # TYPE taos_cluster_info_dnodes_total countertaos_cluster_info_dnodes_total{cluster_id="5981392874047724755"} 1# HELP taos_cluster_info_first_ep # TYPE taos_cluster_info_first_ep gaugetaos_cluster_info_first_ep{cluster_id="5981392874047724755",value="hlb:6030"} 1

TDinsight

除了 taosKeeper,TDengine 還提供了 TDinsight——使用監控資料庫 + Grafana 對 TDengine 進行監控的解決方案,下文將淺談一下 TDinsight 的前期部署和準備。在部署時,我們首先需要下載自動化指令碼  TDinsight.sh

wget

準備:

  1. TDengine Server 資訊:
    • TDengine RESTful 服務:使用引數  -a指定。如果是執行在同一主機,通常是 
    • TDengine 使用者名稱和密碼,使用  -u -p 指定。
  2. Grafana 告警通知
    • 使用已經存在的 Grafana Notification Channel  uid,引數  -E。該引數可以使用  curl -u admin:admin localhost:3000/api/alert-notifications |jq 來獲取。JSON 解析工具  jq 可能需要單獨安裝。
sudo ./TDinsight.sh -a  -u root -p taosdata -E <notifier uid>

執行程式並重啟 Grafana 服務,開啟皮膚: 可以檢視 TDengine 服務執行狀態。

監控資料庫為使用者提供了更多的監控項,與 taosKeeper 共同築牢 TDengine 資料監控的城牆。在下一篇文章中,我們將會詳解解說如何使用 TDinsight 方案對 TDengine 進行監控,敬請期待。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014783/viewspace-2945694/,如需轉載,請註明出處,否則將追究法律責任。

相關文章