告警解釋
系統按300秒周期性檢測HBase上的region處在RIT狀態的數量。當檢測到處在RIT狀態的region時長超過閾值時長(連續兩次超過閾值),上報該告警。當處在超時狀態的region都恢復后,告警恢復。
說明
若集群啟用了多實例功能且安裝了多個HBase服務,請根據“定位信息”的“服務名”值來確定具體產生告警的HBase服務。例如HBase1服務不可用,則“定位信息”中顯示服務名=HBase1,處理步驟中的操作對象也應由HBase調整為HBase1。
告警屬性
| 告警ID | 告警級別 | 是否自動清除 |
|---|---|---|
| 19013 | 重要 | 是 |
告警參數
| 參數名稱 | 參數含義 |
|---|---|
| 來源 | 產生告警的集群名稱。 |
| 服務名 | 產生告警的服務名稱。 |
| 角色名 | 產生告警的角色名稱。 |
| 主機名 | 產生告警的主機名。 |
對系統的影響
表的部分數據丟失或不可用。
可能原因
- Compaction永久阻塞。
- HDFS文件異常。
處理步驟
檢查告警原因
1.在FusionInsight Manager首頁,選擇“運維 > 告警 > 告警”,選中“告警ID”為“19013”的告警,查看“定位信息”中的主機名及角色名。
2.選擇“集群 > 待操作集群的名稱 > 服務 > HBase ”,單擊圖表區域右上角的下拉菜單,選擇“定制 > 服務 > 處在RIT狀態的region數”,單擊“確定”,查看該圖表中“處在RIT狀態達到閾值時長的region數”監控項是否在連續3個檢測周期內檢測到值。(默認閾值為60秒)。
- 是,執行步驟3。
- 否,執行步驟7。
3.選擇“集群 > 待操作集群的名稱 > 服務 > HBase > HMaster(主) > Tables” ,查看是否只是某一個表的region RIT狀態超時。
- 是,執行步驟4。
- 否,執行步驟7。
4.在客戶端執行hbase hbck是否報錯“No table descriptor file under hdfs://hacluster/hbase/data/default/table”。
- 是,執行步驟5。
- 否,執行步驟7。
5.以root用戶登錄客戶端。執行如下命令:
cd 客戶端安裝目錄
source bigdata_env
如為安全模式集群,請執行kinit hbase
登錄HMaster WebUI,在導航欄選擇“Procedure & Locks”,在Procedures查看是否有處于Waiting狀態的process id。如果有,需要執行以下命令將procedure lock釋放:
hbase hbck -j 客戶端安裝目錄/HBase/hbase/tools/hbase-hbck2-*.jar bypass -o pid
查看State是否處于Bypass狀態,如果界面上的procedures一直處于RUNNABLE(Bypass)狀態,需要進行主備切換。執行assigns命令使region重新上線。
hbase hbck -j 客戶端安裝目錄/HBase/hbase/tools/hbase-hbck2-*.jar assigns -o
regionName
6.在客戶端執行 hbase hbck,查看否報錯“No table descriptor file under hdfs://hacluster/hbase/data/default/table”。
- 是,執行步驟7。
- 否,處理完畢。
收集故障信息
7.在主備集群的FusionInsight Manager界面,選擇“運維 > 日志 > 下載”。
8.在“服務”中勾選待操作集群的有問題的HBase服務。
9.單擊右上角的
設置日志收集的“開始時間”和“結束時間”分別為告警產生時間的前后10分鐘,單擊“下載”。
10.請聯系運維人員,并發送已收集的故障日志信息。
告警清除
此告警修復后,系統會自動清除此告警,無需手工清除。
參考信息
無。