告警解釋
系統每60秒周期性檢測HBase服務的老年代GC時間,當檢測到HBase服務的老年代GC時間超出閾值(默認連續3次檢測超過5秒)時產生該告警。
在FusionInsight Manager首頁,用戶可通過選擇“運維 > 告警 > 閾值設置> HBase > GC > GC中回收old區所花時長”修改閾值。
當HBase服務的老年代GC時間小于或等于閾值時,告警恢復。

說明若集群啟用了多實例功能且安裝了多個HBase服務,請根據“定位信息”的“服務名”值來確定具體產生告警的HBase服務。例如HBase1服務不可用,則“定位信息”中顯示服務名=HBase1,處理步驟中的操作對象也應由HBase調整為HBase1。
告警屬性
| 告警ID | 告警級別 | 是否自動清除 |
|---|---|---|
| 19007 | 重要 | 是 |
告警參數
| 參數名稱 | 參數含義 |
|---|---|
| 來源 | 產生告警的集群名稱。 |
| 服務名 | 產生告警的服務名稱。 |
| 角色名 | 產生告警的角色名稱。 |
| 主機名 | 產生告警的主機名。 |
對系統的影響
老年代GC時間超出閾值,會影響到HBase數據的讀寫。
可能原因
該節點HBase實例內存使用率過大,或配置的堆內存不合理,或HBase存在大量的IO操作,導致進程GC頻繁。
處理步驟
檢查GC時間
1.在FusionInsight Manager首頁,選擇“運維 > 告警 > 告警”,選中“告警ID”為“19007”的告警,查看“定位信息”中的角色名并確定實例的IP地址。
- 告警上報的角色是HMaster,執行步驟2。
- 告警上報的角色是RegionServer,執行步驟3。
2.在FusionInsight Manager首頁,選擇“集群 > 待操作集群的名稱 > 服務 > HBase > 實例”,單擊告警上報的HMaster,進入實例“概覽”頁面,單擊圖表區域右上角的下拉菜單,選擇“定制GC > HMaster的GC時間” ,單擊“確定”,查看該圖表中“GC中回收old區所花時長”監控項的值是否連續3個檢測周期大于閾值(默認閾值為5秒)。
- 是,執行步驟4。
- 否,執行步驟6。
3.在FusionInsight Manager首頁,選擇“集群 > 待操作集群的名稱 > 服務 > HBase 實例”,單擊告警上報的RegionServer,進入實例“概覽”頁面,單擊圖表區域右上角的下拉菜單,選擇“定制 > GC > RegionServer的GC時間” ,單擊“確定”,查看該圖表中“GC中回收old區所花時長”監控項的值是否連續3個檢測周期大于閾值(默認閾值為5秒)。
- 是,執行步驟4。
- 否,執行步驟6。
查看JVM的當前配置
4.在FusionInsight Manager界面,選擇“集群 > 待操作集群的名稱 > 服務 > HBase > 配置”,單擊“全部配置”。 在搜索框中輸入“GC_OPTS”,確定當前告警角色HMaster(HBase->HMaster),RegionServer(HBase->RegionServer)的“GC_OPTS”內存參數。將GC_OPTS參數中的“-Xmx”和“-XX:CMSInitiatingOccupancyFraction”的值參考以下說明進行調整。

說明a.HMaster的GC參數配置建議:
建議“-Xms”和“-Xmx”設置成相同的值,這樣可以避免JVM動態調整堆內存大小時影響性能。
調整“-XX:NewSize”大小時,建議把其設置成和“-XX:MaxNewSize”相同,均為“-Xmx”大小的1/8。
當HBase集群規模越大、Region數量越多時,可以適當調大HMaster的GC_OPTS參數,配置建議如下:Region總數小于10萬個,“-Xmx”設置為4G;超過10萬個,“-Xmx”設置為不小于6G;超過10萬時,每增加35000個Region,增加2G的“-Xmx”,整體的“-Xmx”的大小不超過32G。
b.RegionServer的GC參數配置建議:
建議“-Xms”和“-Xmx”設置成相同的值,這樣可以避免JVM動態調整堆內存大小時影響性能。
調整“-XX:NewSize”大小的時候,建議把其設置為“-Xmx”大小的1/8。
RegionServer需要的內存一般比HMaster要大。在內存充足的情況下,堆內存可以相對設置大一些。
根據機器的內存大小設置“-Xmx”大小:機器內存>200G,“-Xmx”設置為32G;128G<機器內存<200G,“-Xmx”設置為16G;機器內存<128G,“-Xmx”設置為8G。“-Xmx”配置為32G,可支持單RegionServer節點2000個Region,200個熱點Region。
“XX:CMSInitiatingOccupancyFraction”建議設置為“100 * (hfile.block.cache.size+hbase.regionserver.global.memstore.size)”,最大值不超過85。
5.觀察界面告警是否清除。
- 是,處理完畢。
- 否,執行步驟6。
收集故障信息
6.在主備集群的FusionInsight Manager界面,選擇“運維 > 日志 > 下載”。
7.在“服務”中勾選待操作集群的“HBase”。
8.單擊右上角的
設置日志收集的“開始時間”和“結束時間”分別為告警產生時間的前后10分鐘,單擊“下載”。
9.請聯系運維人員,并發送已收集的故障日志信息。
告警清除
此告警修復后,系統會自動清除此告警,無需手工清除。
參考信息
無