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或咨询慧都在线客服,我们有专业的大数据团队,为您提供免费大数据相关业务咨询!