數(shù)據(jù)庫自治平臺 KAP 監(jiān)控告警架構(gòu)及實例演示
01 KAP 監(jiān)控告警功能介紹
KAP 是KaiwuDB 的自治服務工具,在 KAP 中監(jiān)控主要是幫助用戶全面掌握KaiwuDB 集群的整體運行情況,實時監(jiān)測集群相關(guān)性能,并支持定制化的模板展示各種指標數(shù)據(jù)。
在告警管理中系統(tǒng)可以根據(jù)配置的規(guī)則、訂閱、通知等信息進行告警,幫助用戶及早發(fā)現(xiàn)問題、解決問題,從而提高被監(jiān)控集群持續(xù)服務的能力,有效保障數(shù)據(jù)庫服務的穩(wěn)定性、安全及可靠性。
02 監(jiān)控告警的技術(shù)架構(gòu)
KAP 的監(jiān)控告警實現(xiàn)了多集群監(jiān)控指標及日志的采集、存儲,支持平臺監(jiān)控展示和告警監(jiān)測和推送。具體流程如下圖所示:

03 監(jiān)控實現(xiàn)
(1)metric 指標采集
metrics 由 metric name 和 label name 組成。
{=,…},存儲相關(guān)指標名稱如下表所示:

(2)指標類型:
Counter(計數(shù)器):累計度量指標,只能遞增、不能為負,也不支持減少,但可以重置回 0;
Gauge(儀表盤):用于存儲有著起伏特征的指標數(shù)據(jù),例如內(nèi)存空閑大??;
Histogram(直方圖):對每個采樣點進行統(tǒng)計,打到各個分類值中(bucket);對每個采樣點值累計和(sum);對采樣點的次數(shù)累計和(count);
Summary(摘要):Histogram 的擴展類型,直接由監(jiān)控端自行聚合計算出分位數(shù),并計算結(jié)果給 prometheus server 的樣本采取請求。
(3)metric 指標存儲
metric 指標占用磁盤大小估算方式:磁盤大小 = metric 保留時間 * 每秒獲取樣本數(shù) * 樣本大小。
可以通過修改配置參數(shù)調(diào)整指標保留時間,在保留時間和樣本大小不變的情況下,如果想減少本地磁盤的容量需求,可以減少時間序列的數(shù)量。因此一個 metric 的 label 數(shù)量也不應該過多,單個 metric 的 label 數(shù)量盡量保持在 10 個以內(nèi)。
(4)監(jiān)控指標可視化
監(jiān)控哪些內(nèi)容,不同的集群,不同的業(yè)務需求都不相同,且展示可能會隨著時間推移發(fā)生變化,這就需要根據(jù)業(yè)務與集群的要求去定制,使監(jiān)控更加靈活、擴展性更強。
04 告警實現(xiàn)
告警規(guī)則管理可支持設置指標觸發(fā)規(guī)則、告警范圍、告警等級、告警詳情等信息,系統(tǒng)根據(jù)定制的規(guī)則檢測指標值,滿足觸發(fā)條件后生成告警事件;
告警通道,是告警事件發(fā)送的通道,使告警事件、告警日志、錯誤日志推送至配置好的服務器;
告警訂閱實現(xiàn)用戶根據(jù)需要推送告警規(guī)則。支持用戶自定義告警信息發(fā)送方式,即通過哪些通道推送哪些分組內(nèi)告警事件信息。如不配置訂閱則只能在告警事件中查看告警信息;
告警事件中用戶可以查看歷史產(chǎn)生的告警事件,點擊時間可查看對應告警事件的詳情。了解發(fā)生告警的節(jié)點、產(chǎn)生時間、恢復時間、最后一次告警時間、告警概述、告警詳情,以及告警通知信息。