X-Pack Watcher集群報警
Elasticsearch X-Pack Watcher是一個基于Elasticsearch實現(xiàn)的監(jiān)控報警服務,可跟蹤網(wǎng)絡,具備對基礎設施、索引數(shù)據(jù)和集群健康等指標進行監(jiān)控和報警的能力。通過為阿里云Elasticsearch添加X-Pack Watcher,可以實現(xiàn)當滿足某些條件時執(zhí)行指定操作。
功能介紹
X-Pack Watcher主要由Trigger、Input、Condition和Actions組成。
Trigger:Watcher定時觸發(fā)器。
多久觸發(fā)一次Watcher,相當于多久執(zhí)行一次input,支持多種調(diào)度觸發(fā)器。詳細信息,請參見Schedule Trigger。
Input:將數(shù)據(jù)加載到執(zhí)行上下文。
用于后續(xù)的Watcher執(zhí)行階段,如果input沒有指定,將會加載一個空上下文。詳細信息,請參見Inputs。
Watcher支持以下input類型:
simple:將輸入靜態(tài)數(shù)據(jù)加載到執(zhí)行上下文。例如手動輸入一段簡單的數(shù)據(jù)進行報警。
search:將搜索結(jié)果加載到執(zhí)行上下文。例如全文搜索關鍵詞,對搜索結(jié)果進行統(tǒng)計實現(xiàn)報警。
http:將HTTP請求結(jié)果加載到執(zhí)行上下文。例如通過Elasticsearch請求接口獲取集群健康狀態(tài)、節(jié)點狀態(tài)等實現(xiàn)報警。
chain:將一系列的輸入數(shù)據(jù)加載到執(zhí)行上下文,這些數(shù)據(jù)一般是來自多個源。
Condition:執(zhí)行Actions的條件。
滿足條件將會觸發(fā)下一步操作,如果不指定條件,默認為always。詳細信息,請參見Conditions。
Watcher支持以下condition類型:
always:條件總為true,始終執(zhí)行Watcher Actions。
nerver:條件總為false,從不執(zhí)行Watcher Actions。
compare:對Watcher有效負載中的值進行簡單比較,以確定是否執(zhí)行Watcher Actions。
array_compare:將Watcher有效負載中的值數(shù)組與給定值進行比較,以確定是否執(zhí)行Watcher Actions。
script:使用腳本確定是否執(zhí)行Watcher Actions。
Actions:報警接收對象。
常見的報警接收對象包括郵件、Webhook 、index和logging等。詳細信息,請參見Actions。
說明通過郵件接收報警存在端口限制,阿里云Elasticsearch不支持,建議通過Webhook進行郵件轉(zhuǎn)發(fā)。
應用場景
當ES實例中的logs索引出現(xiàn)error日志時,觸發(fā)系統(tǒng)自動發(fā)送報警郵件或釘釘、企業(yè)微信消息。具體操作,請參見配置釘釘機器人接收X-Pack Watcher報警和配置企業(yè)微信機器人接收X-Pack Watcher報警。
實現(xiàn)CCR異常報警通知。具體操作,請參見通過X-Pack Watcher實現(xiàn)CCR異常報警通知。
注意事項
Elasticsearch實例的X-Pack Watcher功能默認關閉,需要您主動開啟。 具體操作,請參見配置YML參數(shù)。
舊網(wǎng)絡架構(gòu)下,X-Pack Watcher功能僅支持單可用區(qū)Elasticsearch實例,不支持多可用區(qū)實例。更多信息,請參見【通知】網(wǎng)絡架構(gòu)調(diào)整。
新網(wǎng)絡架構(gòu)下,X-Pack Watcher功能受到網(wǎng)絡限制,需要借助私網(wǎng)連接功能打通網(wǎng)絡限制。更多信息,請參見配置實例私網(wǎng)連接和【通知】網(wǎng)絡架構(gòu)調(diào)整。
阿里云Elasticsearch的X-Pack Watcher功能不支持直接與公網(wǎng)通訊,需要基于實例的私網(wǎng)地址通訊。