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