告警解釋
系統每30秒周期性檢測NameNode的RPC處理平均時間,并把實際的NameNode的RPC處理平均時間和閾值(默認為100ms)相比較。當檢測到NameNode的RPC處理平均時間連續多次(默認為10次)超出閾值范圍時,產生該告警。
用戶可通過“運維 > 告警 > 閾值設置 > 待操作集群的名稱 > HDFS”修改閾值。
如果平滑次數為1,NameNode的RPC處理平均時間小于或等于閾值時,告警恢復;如果平滑次數大于1,NameNode的RPC處理平均時間小于或等于閾值的90%時,告警恢復。
告警屬性
| 告警ID | 告警級別 | 是否自動清除 |
|---|---|---|
| 14021 | 重要 | 是 |
告警參數
| 參數名稱 | 參數含義 |
|---|---|
| 來源 | 產生告警的集群名稱。 |
| 服務名 | 產生告警的服務名稱。 |
| 角色名 | 產生告警的角色名稱。 |
| 主機名 | 產生告警的主機名。 |
| NameService名 | 產生告警的NameService名稱。 |
| Trigger condition | 系統當前指標取值滿足自定義的告警設置條件。 |
對系統的影響
NameNode無法及時處理來自HDFS客戶端、依賴于HDFS的上層服務、DataNode等的RPC請求,表現為訪問HDFS服務的業務運行緩慢,嚴重時會導致HDFS服務不可用。
可能原因
- NameNode節點的CPU性能不足,導致NameNode無法及時處理消息。
- NameNode所設置的內存太小,頻繁Full GC造成JVM卡頓。
- NameNode配置參數不合理,導致NameNode無法充分利用機器性能。
處理步驟
獲取該告警的信息
1.在FusionInsight Manager首頁,選擇“運維 > 告警 > 告警”,在告警列表中找到該告警。
2.單擊該告警,查看下面的告警詳情。從“定位信息”中的“主機名”信息可知發出該告警的NameNode節點主機名;從“定位信息”中的NameServiceName信息可知發出該告警的NameService名稱。
查看閾值是否設置過低
3.查看依賴于HDFS的業務的運行狀態是否正常運行。查看是否存在運行慢、執行任務超時的情況。
- 是,執行步驟8
- 否,執行步驟4
4.在FusionInsight Manager首頁,選擇“集群 > 待操作集群的名稱 > 服務 > HDFS”,單擊圖表區域右上角的下拉菜單,選擇“定制 > RPC”,在彈出的對話框中選擇“主NameNode RPC處理平均時間”,單擊“確定”。
5.查看“主NameNode RPC處理平均時間”監控中,獲取發出告警的NameService的當前的監控值。
6.在FusionInsight Manager首頁,選擇“運維 > 告警 > 閾值設置 > 待操作集群的名稱 > HDFS”,找到“主NameNode RPC處理平均時間”,單擊default規則中“操作”欄中的“修改”,修改“閾值”為告警出現前后1天內監控值的峰值的150%。單擊“確定”,保存新閾值。
7.等待5分鐘,查看該告警是否自動消除。
- 是,處理結束。
- 否,執行步驟8
查看NameNode節點的CPU性能是否不足
8.在FusionInsight Manager首頁,選擇“運維 > 告警 > 告警”,查看是否有該NameNode節點的ID為“12016”“ALM-12016 CPU使用率超過閾值”告警。
- 是,執行步驟9
- 否,步驟11
9.按照“ALM-12016 CPU使用率超過閾值”告警處理文檔,處理該告警。
10.處理完12016告警后,等待10分鐘,查看該告警是否自動消除。
- 是,處理結束。
- 否,執行步驟11
查看NameNode節點的內存是否設置過小
11.在FusionInsight Manager首頁,選擇“運維 > 告警 > 告警”,查看是否有該NameNode節點的ID為“14007”“ALM-14007 HDFS NameNode堆內存使用率超過閾值”告警。
- 是,執行步驟12
- 否,執行步驟14
12.按照“ALM-14007 HDFS NameNode堆內存使用率超過閾值”告警處理文檔,處理該告警。
13.處理完14007告警后,等待10分鐘,查看該告警是否自動消除。
- 是,處理結束。
- 否,執行步驟14
查看該NameNode配置參數是否合理
14.在FusionInsight Manager首頁,選擇“集群 > 待操作集群的名稱 > 服務 > HDFS > 配置”,搜索配置項“dfs.namenode.handler.count”,查看其值。如果值小于或等于128,則設置為128;如果大于128但小于192,則設置為192。
15.搜索配置項“ipc.server.read.threadpool.size”,查看其值。如果值小于5,則設置為5。
16.單擊“保存”,單擊“確定”。
17.在HDFS的“實例”頁面,先勾選發出該告警的NameService的備NameNode,在“更多”中單擊“重啟實例”,輸入密碼后單擊“確定”,等待備NameNode啟動完畢。
18.在HDFS的“實例”頁面,先勾選發出該告警的NameService的主NameNode,在“更多”中單擊“重啟實例”,輸入密碼后單擊“確定”,等待主NameNode啟動完畢。
19.等待1小時,查看該告警是否自動消除。
- 是,處理結束。
- 否,執行步驟20
收集故障信息
20.在FusionInsight Manager首頁,選擇“運維 > 日志 > 下載”。
21.在“服務”中勾選待操作集群的如下節點信息。
- HDFS
22.單擊右上角的
設置日志收集的“開始時間”和“結束時間”分別為告警產生時間的前后10分鐘,單擊“下載”。
23.請聯系運維人員,并發送已收集的故障日志信息。
告警清除
此告警修復后,系統會自動清除此告警,無需手工清除。
參考信息
無。