《基于自主计算的集群管理软件的设计和实现》由会员分享,可在线阅读,更多相关《基于自主计算的集群管理软件的设计和实现(35页珍藏版)》请在金锄头文库上搜索。
1、基于自主计算的集群管理软件的设计和实现作者:李云春、张德生、李强 2008年10月29日2024/9/11北航计算机学院报告内容研究背景主要研究内容ACMS体系结构和功能模块实现ACMS事件通知机制节点代理的自配置机制中间汇集节点的自恢复机制工作总结和展望2024/9/12北航计算机学院概述课题来源北航校园网格建设中对集群计算环境的管理需求十一五863计划信息技术领域重大项目:高效能计算机系统研制及关键技术研究 2007AA01A127 研究背景集群占据了我国高性能产品和应用的90%份额集群管理日趋复杂北航校园网格目前采用ganglia集群监测软件,无法满足需求平均故障恢复时间较长自主计算研究
2、计算系统的自管理问题,为集群系统管理提供了一种新的思路2024/9/13北航计算机学院自主计算IBM于2001年提出自主计算的概念思想起源于人体的植物神经系统其动机是试图通过“技术管理技术” 自主计算系统具有的属性自动修复自动优化自我保护自动配置2024/9/14北航计算机学院集群管理的国内外相关研究Ganglia树状分层式结构,可扩展没有解决非叶子节点层的容错,易造成单点故障Supermon基于linux集群的分布式监控不能动态添加节点Hawkeye可以定制资源监测模块,适用多平台系统客户端工具还不完善国内曙光公司的DCMM集群监控系统面向曙光服务器集群,软硬件结合研究现状:1、国外起步较早
3、,国内相对滞后2、大多侧重集群的监测3、缺乏自主管理能力2024/9/15北航计算机学院报告内容概述主要内容ACMS体系结构和功能模块实现ACMS事件通知机制节点代理的自配置机制中间汇集节点的自恢复机制工作总结和展望2024/9/16北航计算机学院消息通信机制命令通道事件通知机制ACMS自主管理模型管理策略集群资源分析传感器效应器消息通信机制决策监视执行事件信息模型IBM自主计算框架没有解决具体实现问题:1、管理策略2、事件信息模型3、组件之间的消息通信机制2024/9/17北航计算机学院ACMS体系结构JNDI连接资源监视泵中间汇集组件动态发现管理服务资源探针节点代理服务分析决策引擎监视组件
4、资源中介执行组件数据库事件模型数据库组件管理服务器WEB用户界面监测视图性能曲线负载预测自主管理事件通知机制中间汇集节点域内节点域内节点应用层管理服务层代理服务层域内节点2024/9/18北航计算机学院节点代理服务的功能模块实现MBean ServerCPUMemoryDiskNetworkOSTomcat管理服务组件资源监视泵节点动态发现中间汇集组件资源探针组件各组件设计为标准MBean组件,利用Jmx的动态类装载服务mlet服务实现远程URL路径的动态注册和加载资源探针注册为资源监视泵中线程实例中间汇集组件收集域内节点的监视泵的事件消息节点动态发现组件实现节点自配置动态发现注册运行时可管理
5、可扩展2024/9/19北航计算机学院ACMS体系结构JNDI连接资源监视泵中间汇集组件动态发现管理服务资源探针节点代理服务分析决策引擎监视组件资源中介数据库组件数据库事件模型执行组件管理服务器WEB用户界面监测视图性能曲线负载预测自主管理事件通知机制中间汇集节点域内节点域内节点域内节点管理服务层2024/9/110北航计算机学院管理服务器的功能模块实现资源中介事件监听节点连接器访问接口监视模块消息中间件事件解析器连接器分析决策引擎数据库模块执行模块消息中间件Java规则引擎分析处理单元连接器规则文件消息中间件数据库ORM消息中间件执行器事件信息模型访问接口数据库Web界面节点代理异步消息通信
6、实现松耦合的消息通信自主管理控制环路2024/9/111北航计算机学院基于规则的策略决策决策的问题依据当前的状态,决定采取什么样的动作传统的控制理论建立数学模型计算机系统管理复杂性很难建立建立精确的数学模型基于规则的控制将规则表示为产生式规则产生式规则一般形式IF(条件1) and (条件2) andand (条件m) THEN(动作1)and (动作2)and and (动作n)规则引擎基于规则的专家系统的推理引擎试探性规则正向推理和反向推理2024/9/112北航计算机学院分析决策引擎管理服务器模块的核心组件,通过java规则引擎实现基于规则的自主管理控制五种管理级别采用Drools的规则
7、语言定义规则 cpu_alarm_ra.isActive() CpuMonitorHelper.isOverThreshold(cpu, 80) CpuMonitorHelper.cpuMetricAlarm(cpu); 规则名定义规则属性规则执行条件规则执行结果监视、警告、报警、建议、操作2024/9/113北航计算机学院报告内容课题来源及研究背景主要研究内容ACMS体系结构和功能模块实现ACMS事件通知机制节点代理的自配置机制中间汇集节点的自恢复机制工作总结和展望2024/9/114北航计算机学院ACMS事件通知机制节点代理服务发送的事件通知消息统称为事件消息监测事件消息心跳事件消息操作事
8、件消息事件消息格式采用XML格式描述采用压缩减少网络流量基于JMX Notification通知模型的两层事件监听机制,方便扩展体现以事件通知为中心的设计原则2024/9/115北航计算机学院事件通知机制(续一)监视泵监测事件监听器心跳事件监听器监测定时服务心跳定时服务内部线程类实例化实例化实例化探针ObjectName探针属性集探针监测周期构造参数监听监听中间汇集组件资源中介监测事件监听器心跳事件监听器监测定时服务心跳定时服务监听监听实例化实例化监听监听触发通知触发通知发送通知触发通知触发通知发送通知资源监视泵的事件消息发布中间汇集节点的事件消息汇集资源中介的事件监听2024/9/116北航
9、计算机学院事件通知机制(续二)2.5 ok restart restarted the Tomcat instance of clustertrue 监测事件消息格式心跳事件消息格式定义三种健康状态:OK:探针运行正常FAILURE:资源环境异常ERROR:探针运行时异常操作事件消息格式描述探针操作的执行结果2024/9/117北航计算机学院报告内容课题来源及研究背景主要研究内容ACMS体系结构和功能模块实现ACMS事件通知机制节点代理的自配置机制中间汇集节点的自恢复机制工作总结和展望2024/9/118北航计算机学院节点代理的自配置需要解决的问题中间汇集节点需要知道域内节点的JMX/RMI连
10、接地址手工配置方式无法实现节点动态加入,并且在节点数量很大时,效率极为低下节点代理的自配置机制基于UDP组播的节点动态发现机制心跳计数机制组播报文格式定义FLAGPROXY HOSTRESPONSE PORT标记字段“jmxrmi”中间汇集节点的主机IP地址中间汇集节点的监听响应端口2024/9/119北航计算机学院节点代理的自配置(续一)监视线程响应线程中间汇集组件 资源监视泵组播请求单播响应 加入新节点发现新节点返回JMXServiceURL心跳检测监听事件请求线程建立连接动态发现组件动态发现机制心跳计数机制2024/9/120北航计算机学院报告内容课题来源及研究背景主要研究内容ACMS体
11、系结构和功能模块实现ACMS事件通知机制节点代理的自配置机制中间汇集节点的自恢复机制工作总结和展望2024/9/121北航计算机学院中间汇集节点的自恢复需要解决的问题解决中间汇集节点的单点故障问题Ganglia没有解决中间汇集节点的单点故障基本思想当发现某个域中间汇集节点失效时,管理服务器根据负载预测选举算法从域内节点中选出一个节点作为替代中间汇集节点优点实现了局部域范围内的自恢复,不会增加其他中间汇集节点的负担2024/9/122北航计算机学院中间汇集节点的自恢复(续一)负载预测选举算法根据单指数平滑时间序列预测模型,对过去T时间内的节点综合负载进行预测,选取负载预测值最小的节点作为替代中间
12、汇集节点采用linux系统的平均负载作为综合负载的估计值负载评估计算公式基本思想:最近的负载观测值赋予较高的权值,较早的观测值赋予相对较低的权值,权值呈几何级数递减,使得最近的观测值对将来的负载预测作用更大2024/9/123北航计算机学院中间汇集节点的自恢复(续二)单指数平滑预测公式实现的关键平滑参数 的优化单指数平滑预测的精确性和拟合程度与平滑参数的取值有很大的关系,平滑参数的选取应该满足最小均方误差(MSE)的原则采用黄金分割查找法进行优化查找,在 的初始不确定参数区间(0,1中不断迭代缩小参数的取值范围,最终获得一个满足容忍度 的最佳平滑参数值。 2024/9/124北航计算机学院中间
13、汇集节点的自恢复(续三)第一步:初始化不确定参数区间第二步:如果当前参数区间的长度在容忍度范围内则返回,否则计算黄金分割点第三步:比较两个分割点的预测模型的均方误差,重新划分分割点,继续第二步2024/9/125北航计算机学院中间汇集节点的自恢复(续四)管理服务器中间汇集节点域内节点1域内节点2域内节点n1.发现中间汇集节点失效2.确认中间汇集节点失效健康探测心跳事件数据库获取负载数据返回历史数据集3.计算负载预测值,选举最小预测值的节点4.启动替代中间汇集节点5. 替代中间汇集节点建立监听启动、监听监听事件通知事件通知2024/9/126北航计算机学院实验性能评估节点代理程序占用系统资源实验
14、结果:域内节点和中间汇集节点的代理服务程序占用CPU资源差别不大,平均占用0.3%的CPU资源;内存利用率相差较大,普通域内节点占用3.5%,中间汇集节点占用6.6%2024/9/127北航计算机学院论文总结提出了一种基于规则的集群自主管理体系结构,并设计和实现了节点代理服务和管理服务器的功能结构设计并实现了一种“推”模式的可扩展的基于中间汇集节点的事件通知机制设计并实现了节点代理的自配置机制设计并实现了一种基于负载预测选举算法的中间汇集节点自恢复机制2024/9/128北航计算机学院下一步工作分析决策引擎的实现中,事件信息模型通过简单的测量量实现,未来需要利用人工智能的一些方法建立系统组件间的依赖性模型用于系统感知,使得系统感知智能化集群的状态监测没有实现对更细粒度的进程等状态的监测,未来需要完善对进程等资源的监测和分析,以便实现进一步的集群故障和安全监控2024/9/129北航计算机学院运行实例-监测结果2024/9/130北航计算机学院运行实例-集群状态2024/9/131北航计算机学院运行实例-预测曲线2024/9/132北航计算机学院配置决策引擎2024/9/133北航计算机学院运行实例-自主操作日志2024/9/134北航计算机学院谢谢!2024/9/135北航计算机学院