GetInsight組件技術及功能(五):系統綜合管理平臺和分布式計算框架
GetInsight是慧都自主研發、應用最靈活的大數據平臺。能夠幫助您隨時找到您想要的數據,使數據得到安全、穩定和高效的管理與應用。GetInsight是企業大數據解決方案的重要組成部分,除了提供完整的大數據功能組件,我們還提供組件自定義搭配,為企業選擇滿足方案需要的大數據功能組件,使您的大數據解決方案成本降到最低,從而高品質的解決您的大數據需求問題。
了解什么是GetInsight,請點擊這里查看GetInsight的基礎介紹>>
本文主要跟大家介紹GetInsight的系統綜合管理平臺、分布式計算框架和分布式MLlib。
系統綜合管理平臺
系統綜合管理平臺是大數據平臺的管理軟件,通過棧的形式提供Service的組合使用,簡化了部署過程,使集群快速運行起來。它具備大數據其他組件的安裝、管理、運維等基本功能,提供Web UI進行可視化的集群管理,簡化了大數據平臺的安裝、使用難度。同時,它實現集群狀態的監控,可以方便的通過瀏覽器交互并進行參數的修改和節點擴展。
管控組件有自身的用戶管理系統,基于RBAC賦予用戶對集群的管理權限。同時,它支持基于Kerberos的認證系統,提供了基于角色的用戶認證、授權和審計功能,并為用戶管理集成了LDAP和Active Directory。
管控組件的實現使用了很多開源組件,其中:
- 在Agent端,采用了puppet管理節點;
- 在Web端,采用了ember.js作為前端的MVC構架和NodeJS相關工具,用handlebars.js作為頁面渲染引擎,在CSS/HTML方面還用了Bootstrap 框架;
- 在Server端,采用了Jetty, Spring,Jetty,JAX-RS等;
- 同時利用了Ganglia,Nagios的分布式監控能力。
GetInsight系統綜合管理平臺的功能
操作級別
集群管控組件支持三種不同類型的操作級別,它們分別是:
- Service Level Action - 基于Service級別的操作粒度管理,例如Mapreduce作業、Spark作業、Tez作業等;
- Host Level Action - 基于機器級別的操作粒度管理,例如開啟或停止文件系統集群、分布式數據庫等;
- Component Level Action - 基于模塊級別的操作粒度管理,例如在單個節點開啟或停止文件系統或分布式數據庫的數據節點等。
用戶管理
管控組件有自身的用戶與角色管理系統,組件默認的權限有下面幾種:
- Cluster User - 以只讀的權限查看集群和Service的信息,如節點配置、service狀態、健康狀態等。
- Service Operator - 能夠操作Service的生命周期,如啟動,停止,也可以進行一些如平衡負載和的資源管理進程刷新操作
- Service Administrator - 在Service Operator的基礎上增加了配置service,移動管理節點,啟用HA等操作
- Cluster Operator - 在Service Administrator的基礎上增加了對節點和集群成員的操作,如增加,刪除集群成員等
- Cluster Administrator - 集群的超級管理員,可以操作任何組件。
集群監控
集群管控組件實現的集群監控,主要體現在下面幾個方面:
- 作業監控 - 支持作業與任務執行的可視化與分析,能夠更好地查看依賴和性能。
- 狀態查看 - 用戶界面非常直觀,用戶可以輕松有效地查看集群當前信息并控制集群。
- 通知系統 - 當需要引起關注時,例如節點停機或磁盤剩余空間不足等問題,系統將向其發送郵件。
- 組件導向 - 集群管控組件并沒有對其他組件進行過多的功能集成,為了盡量保持了跟原生大數據組件的隔離性,通過Quick Links 直接導向其他組件的管理界面。
告警機制
為了幫助用戶鑒別以及定位集群的問題,實現了告警機制(Alert)。很多告警已經被提前設定并默認維持,這些告警用于監測集群的各個模塊以及機器的狀態。對于告警來說,主要有兩個概念,一個是Alert Definition,一個是 Alert Instance。顧名思義,Alert Definition 就是告警的定義,其中會定告警的檢測時間間隔(interval)、類型(type)、以及閾值(threshold)等。這些定義會被定期讀取,然后創建對應的實例(instance)。例如 MapReduce2 這個 Service 就定義了兩個告警“History Server WEB UI”和“History Server Process”來定期檢查 History Server 模塊的狀態。
告警的檢查結果會以五種級別呈現,分別是 OK、WARNING,CRITICAL、UNKNOW 和 NONE。其中最常見的是前三種。告警分為 5 種類型,分為 WEB、Port、Metric、Aggregate 和 Script。具體的區別見下面的表格。
類型 |
用途 |
告警級別 |
閥值是否可配 |
單位 |
PORT |
用來監測機器上的一個端口是否可用 |
OK, WARN, CRIT |
是 |
秒 |
METRIC |
用來監測 Metric 相關的配置屬性 |
OK, WARN, CRIT |
是 |
變量 |
AGGREGATE |
用于收集其他某些 Alert 的狀態 |
OK, WARN, CRIT |
是 |
百分比 |
WEB |
用于監測一個 WEB UI(URL)地址是否可用 |
OK, WARN, CRIT |
否 | 無 |
SCRIPT |
Alert 的監測邏輯由一個自定義的 python 腳本執行 |
OK, CRIT |
否 |
無 |
分布式計算框架
分布式計算框架是一個圍繞速度、易用性和復雜分析構建的大數據處理框架,支持實時流計算,是大數據核心計算引擎,可以獨立集群部署,大量數據集計算任務分配到多臺計算機上,同時也是基于內存的迭代式計算框架,也可以基于磁盤做迭代計算,提供高效內存計算。該框架會使用一種名為Resilient Distributed Dataset(彈性分布式數據集)的數據模型,即RDD的模型來處理數據,另外該算框架基于內存的計算特點,使得在某些業務場景相比傳統的Hadoop MapReduce帶來幾十到上百倍的性能提升,特別契合機器學習迭代計算的要求。同時支持批處理、流處理、交互式查詢、機器學習、圖計算等常見的數據處理場景,而且兼容HDFS、Hive等分布式存儲系統,可融入Hadoop生態。憑借高性能和全面的場景支持,成為大數據處理的主流標準。分布式計算框架
分布式MLlib
分布式MLlib一個常用的分布式機器學習算法庫,算法被實現為對RDD的Spark操作。機器學習是一門涉及概率論、統計學、逼近論、凸分析、算法復雜度理論等多領域的交叉學科,專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身的性能。MLlib目前已經提供了基礎統計、分析、回歸、決策樹、隨機森林、樸素貝葉斯、保序回歸、協同過濾、聚類、維數縮減、特征提取與轉型、頻繁模式挖掘、預言模型標記語言、管道等多種數理統計、概率論、數據挖掘方面的數學算法,可以分為回歸、分類、聚類、協同過濾四類。分布式計算框架立足于內存計算,天然的適應于迭代式計算,符合機器學習平臺所要求的強大處理能力。機器學習的運行流程如下
慧都工業大數據分析方案即將精益生產理論體系進行了完美的融合和應用,并對大數據總體架構進行了更細致明確的解讀,提供自主研發的大數據平臺,實現ETL、數據管理及存儲、數據建模。如下圖所示:
關于慧都大數據分析平臺
慧都大數據分析平臺「GetInsight®」升級發布,將基于企業管理駕駛艙、產品質量分析及預測、設備分析及預測等大數據模型的構建,助力企業由傳統運營模式向數字化、智能化的新模式轉型升級,抓住數據經濟的發展勢頭,提供管理效能,精準布局未來。了解更多,請聯系。
慧都大數據專業團隊為企業提供商業智能大數據平臺搭建,免費業務咨詢,定制開發等完整服務,快速、輕松、低成本將任何Hadoop集群從試用階段轉移到生產階段。
歡迎撥打慧都熱線023-68661681或咨詢慧都在線客服,我們有專業的大數據團隊,為您提供免費大數據相關業務咨詢!