一種分布式hadoop集群故障自動診斷修復系統的制作方法
【技術領域】
[0001]本發明涉及一種集群故障自動診斷修復系統,尤其涉及一種分布式hadoop集群故障自動診斷修復系統。
【背景技術】
[0002]業界沒有對hadoop集群監控發現問題后自動分析解決的方案,目前關于hadoop集群故障解決方法為預先配置好關鍵的運維監控指標,對hadoop集群及相關項目健康進行檢查,同時對作業和任務執行進行分析,將監控信息暴露出來,維護人員登錄web平臺查看存在問題的節點及性能,并登錄節點分析日志,修復集群。
[0003]現有技術的主要缺點如下:1、不能實現故障實時告警,配置好的每個監控指標需要維護人員登錄到web平臺查看有問題的節點;2、集群監控只能查看當前的監控數據,沒有存儲和歷史查詢功能,無法進行監控數據分析和建立預測模型;3、不能對監控數據進行自動分析及根據分析結果進行自動化修復,需要人工登錄到問題節點分析錯誤日志,根據經驗進行故障解決。
【發明內容】
[0004]本發明所要解決的技術問題是提供一種分布式hadoop集群故障自動診斷修復系統,能夠輕松有效地控制hadoop集群,使維護變得更加簡單,性能數據、節點狀態更加清晰明確,分析、發現、解決問題更加快速。
[0005]本發明為解決上述技術問題而采用的技術方案是提供一種分布式hadoop集群故障自動診斷修復系統,包括:
[0006]集群文件系統監控模塊:采集獲取集群節點信息以及數據庫文件;
[0007]作業任務監控模塊:采集作業和任務的信息,并對作業任務進行控制管理,包括作業的開啟和停止,對指定作業進行周期采樣,以及對任務優先級進行管理;
[0008]物理節點監控模塊:監控每個物理節點的資源消耗信息;
[0009]數據存儲分析處理模塊:對來自所述集群文件系統監控模塊、作業任務監控模塊和物理節點監控模塊的監控數據進行結構化、統一化后存儲到數據庫;設定監控告警規則,預先配置告警ID、級別及原因;
[0010]自動修復模塊:預先定義配置各類常見告警故障,并為每個告警故障定制預處理腳本,當所述數據存儲分析處理模塊監控巡檢到故障發生時,對當前發生的故障與預先定義配置的告警故障進行匹配,并調用相應的預處理腳本完成故障的自動處理。
[0011 ] 上述的分布式hadoop集群故障自動診斷修復系統,其中,所述集群文件系統監控模塊包括:瀏覽文件記錄,namenode日志記錄,namenode運行情況、集群配置容量、DFS占用容量、非DFS占用容量、DFS的可使用容量、DFS已使用百分比、DFS可使用百分比、活節點數、死節點數、namenode的存儲目錄及類型狀態。
[0012]上述的分布式hadoop集群故障自動診斷修復系統,其中,所述集群文件系統監控模塊包括:獲取HDFS的實時數據和歷史狀態,根據HDFS信息瀏覽和定位相關文件,以及監控關閉或者打開所述相關文件時,各個磁盤已經使用和各個磁盤的總容量,剩余容量,文件名稱和數目,以及文件的使用情況和歷程。
[0013]上述的分布式hadoop集群故障自動診斷修復系統,其中,所述作業任務監控模塊控制集群任務概要信息,堆的大小,所占的比例,Map任務數,Reduce任務數以及各個節點上的任務數量值。
[0014]上述的分布式hadoop集群故障自動診斷修復系統,其中,所述作業任務監控模塊實時查看作業的狀態,查詢整個作業從開始工作到結束工作耗費的時間總和,對與指定任務的作業相關信息,顯示完成的所有進度、總共要進行的任務總數,預計需要完成的任務數量,當前正在運行的任務數量、到目前為止已經完成,沒有成功運行和已經終止的任務。
[0015]上述的分布式hadoop集群故障自動診斷修復系統,其中,所述作業任務監控模塊實時查看任務的信息,包括任務的狀態、運行任務的開始和結束時間,任務的運行速度及任務所消耗的時間,記錄整個任務運行日志,統計任務數目和條目。
[0016]上述的分布式hadoop集群故障自動診斷修復系統,其中,所述物理節點監控模塊對hadoop集群中全部物理機進行分組,監控每個物理節點平均內存和CPU負載,并對物理節點之間監控信息共享。
[0017]上述的分布式hadoop集群故障自動診斷修復系統,其中,所述數據存儲分析處理模塊包括:設置熱點問題告警,對熱點問題進行優先監控,同時建立預測模型,對故障進行預測。
[0018]上述的分布式hadoop集群故障自動診斷修復系統,其中,所述數據存儲分析處理模塊對海量數據進行抽取、轉換、分類和聚類、設定集群告警相關性,并根據關聯規則對監控數據進行關聯分析,定位故障所在。
[0019]上述的分布式hadoop集群故障自動診斷修復系統,其中,還包括設置WEB界面對所述集群文件系統監控模塊、作業任務監控模塊、物理節點監控模塊、數據存儲分析處理模塊以及自動修復模塊的采集監控過程進行可視化展示。
[0020]本發明對比現有技術有如下的有益效果:本發明提供的分布式hadoop集群故障自動診斷修復系統,通過對集群健康指標、作業任務進行監控,進行智能分析預警,讓管理員實時清楚節點狀態、并準確發現節點上出現了什么問題,解決故障不能實時告警的缺陷;并能夠定義配置好告警選項及相應解決辦法,對監控告警數據進行自動化修復。此外,本發明能夠存儲集群監控數據,建立熱點事件進行分析和監控,同時根據監控數據建立預測模型,可以對故障進行預測,解決監控告警數據不能進行智能分析的缺陷。
【附圖說明】
[0021]圖1為本發明分布式hadoop集群故障自動診斷修復系統架構示意圖。
【具體實施方式】
[0022]下面結合附圖和實施例對本發明作進一步的描述。
[0023]圖1為本發明分布式hadoop集群故障自動診斷修復系統架構示意圖。
[0024]請參見圖1,本發明提供的分布式hadoop集群故障自動診斷修復系統,采用集群監控模塊分別對集群文件系統、作業任務和物理節點分別進行監控,數據庫和數據分析模塊構成數據存儲分析處理模塊,從而形成集群文件系統監控模塊、作業任務監控模塊、數據存儲分析處理模塊和自動修復模塊共五個模塊,實現這五個小模塊并將其在web中進行展現和管理,從而組成hadoop自動化監控運維平臺,能夠進行多方面監控、良好的報警機制、數據分析處理、自動化修復管理。
[0025]本發明實現一種hadoop集群健康指標采集、作業任務執行監控、自動化預警與修復的方法。通過此方法,根據預先配置好關鍵的運維監控指標可以對集群健康進行檢查、作業和任務執行進行可視化分析;根據將監控數據轉成到數據庫進行分析處理,可以設置熱點問題,對熱點問題進行重點分析和監控,同時可以建立預測模型,對故障進行預測,提高運維效率;根據定義配置好告警選項和各類告警故障定制好自動化預處理,可以對監控告警數據進行自動化分析,自動化修復;極大的提高了運維的工作效率,為不懂hadoop運維的人提供系統入門的墊腳石,為hadoop管理提供了方便的集群管理工具。
[0026]本發明各模塊主要功能及實現過程如下:
[0027]1、集群文件系統監控模塊:
[0028]整個框架的基礎是hadoop的分布式文件系統(HDFS),對集群節點信息以及各種文件的數據庫進行具體的分析。
[0029]瀏覽文件記錄,namenode日志記錄,namenode運行情況,如成功運行及運行時間或者運行失敗;
[0030]集群配置容量、DFS占用容量、非DFS占用容量、DFS的可使用容量、DFS已使用百分比、DFS可使用百分比、活節點數、死節點數、namenode的存儲目錄及類型和狀態。
[0031]HDFS的實時數據,歷史狀態功能,包括對集群監控后,實時能檢測到HDFS信息,瀏覽和定位相關文件,以及關閉或者打開一個文件,各個磁盤已經使用和各個磁盤的總容量,剩余容量,文件名稱和數目以及文件的使用情況和歷程。
[0032]2、作業任務監控模塊:
[0033]整個架構是對hadoop集群系統各種作業和任務進行監控,對作業監控功能進行管理、控制作業和任務的狀態、采集作業和任務的信息。
[0034]控制集群任務概要信息,堆的大小,所占的比例,Map任務數,Reduce任務數,各個節點上的數量值和Map的各種任務的實施能力,還有Reduce任務實施能力。
[0035]實時查看job的狀態和查詢整個job從開始工作到結束工作耗費的時間總和,對與指定任務的作業相關信息,能夠顯示完成的所有進度、總共要進行的任務總數,預計需要完成的任務數量,此時此刻正在運行的任務數量、到目前為止已經完成,沒有成功運行和已經終止的任務。
[0036]實時查看Task的信息,包括task的狀態、運行task的開始和結束時間,task的運行速度及消耗task所消耗的時間,記錄整個task運行日志,統計task數目和條目。
[0037]提供對作業任務進行控制管理,包括作業功能的開啟和停止,對指定作業進行周期采樣,job優先級進行管理。
[0038]3、物理節點監控模塊:
[0039]物理節點監控模塊結合hadoop集群