当前位置:主页 > 管理论文 > 移动网络论文 >

基于模型的云应用动态配置框架

发布时间:2020-09-28 13:49
   云应用是云计算技术在应用层的一种重要体现形式,通常由分布式异构组件构成,且组件相互依赖,配置参数众多。组件依赖导致配置参数间存在关联,使应用运行时弹性扩展难以确定组件实例的配置顺序并保证关联参数的一致性,导致应用扩展后的系统故障和服务不可用。针对这一问题,提出了一种基于模型的云应用动态自配置方法,实现运行时组件实例配置顺序的自动协调,保障配置参数的一致性,提高应用运行时弹性扩展的可靠性。首先提出一种部署配置模型STM(Service-based Topology Model),该模型采用声明式的方法刻画云应用的部署拓扑结构,并基于服务的方式描述组件信息,实现组件间关联关系的分离,涵盖运维部署、扩展、运行时服务状态的监测。然后基于该模型,提出了一个云应用动态自配置协议,其基于服务注册发现机制实现组件间强依赖关系的解耦,保证动态调整应用实例时组件配置变化的一致性,实现组件部署配置的并行化。基于上述方法实现了一个原型系统,通过对分布式应用BookStore-TPCW的部署配置和运行时弹性扩展来验证方法的有效性。
【部分图文】:

流程图,故障恢复,故障检测,组件


身的故障等统一归结为组件服务不可用故障。应用组件服务状态的检测依赖应用拓扑模型中对应NodeType或者NodeTem-plate指定的check属性,check属性指定检测应用组件健康状态的命令,如Tomcat组件可定义check命令为netstat-ntlp|grep8080。默认故障check属性值为提到的检测虚机、物理机故障以及网络故障,通过心跳机制与ServiceCluster交互。本文后续的故障均代指服务不可用故障。①故障检测如图9所示,应用组件初始化时,部署执行器会将拓扑模型中定义的组件check信息提交给健康诊断器。健康诊断器以一定的频率将组件的状态信息发送至ServiceCluster,当时间延迟超过一定阈值或者健康诊断器诊断出应用组件服务不可用时,ServiceCluster将该组件的Service状态更改为不可用,其他依赖该组件的组件就会感知到该信息,从而启动动态配置器,重新更改配置参数。图9故障检测与故障恢复流程图②故障恢复当组件产生故障并被检测到时,ServiceCluster将该组件的Service与Attributes值标记为不可用,同时通知监测该组件信息的动态配置器和Manager,重新载入模板生成新的配置文件,重新启动组件。组件间参照依赖关系描述,自动协调配置顺序,某一组件收到更新配置通知后,会将自身的状态先更改为不可用,从而使依赖该组件的其他组件的动态配置器一直处于等待状态,直到完成重新配置。Manager则将信息反馈给运维管理人员,由运维管理人员进一步恢复。2)应用组件弹性扩展①

条图,拓扑,建模,动态配置


各个组件的初始实例数,在系统默认的组件仓库中检测与拓扑模型中NodeTemplate对应的NodeType,最后将拓扑模型自动转化为Puppet脚本,自动安装应用的各个组件并启动Agent端的动态配置器完成应用的动态配置。该系统的动态配置依赖于服务发现工具Consul搭建服务发现和keyValue存储集群,每个组件的Service以及Attributes信息将通过Agent端的ConsulAgent发送至Consul的Server集群。图11BookStore-TPCW拓扑建模5实验本实验主要为验证本文解决的3个问题而设计,步骤如下:1)定义BookStore-TPCW的STM模型如图11所示,单个Tomcat节点,单个MySQL节点,包含50万条图书数据,单个Nginx节点。在Nginx的upstream配置模板中声明对BookStore-TPCW服务信息的依赖:{{rangeservice“book-store-tpcw”}}server{{.Address}}∶{{.Port}}max_fails=0fail_timeout=10s;{{end}},其中{{}}定义特定的操作,rangeservice代表遍历所有可用BookStore-TPCW服务信息,每条服务信息生成一条server配置信息。在BookStore-TPCW的context配置模板中声明对MySQL服务信息的依赖,部署应用并观察压力测试平均响应时间,以检测应用是否部署成功。2)运行时为应用

条图,平均响应时间,节点,虚机


0,MySQL版本为5.6.25。实验环境采用软件所软件工程中心研发的云平台OnceCloud,测试虚机的配置为1核CPU,1GB内存,压力测试工具采用JMeter2.13。5.2实验结果与分析1)系统将模型转化为脚本并分发至3个虚机节点,分别对应应用的3个组件,启动动态配置协议。MySQL节点等待50万条图书数据初始完毕,将注册MySQL服务信息,触发等待中的Tomcat节点配置context文件并启动,此时应用已正确部署。如图12所示,前1分57秒在500并发下系统能正确响应,此时Nginx的配置如图13所示。2)如图12所示,在未中断服务的情况下,在1分57秒时系统自动构建扩展脚本扩展Tomcat节点,自动修改Nginx的upstream配置文件,触发Nginx重新载入配置文件,此时平均响应时间在同样负载下较单节点更为稳定,此时Nginx的配置如图14所示。3)在Nginx关闭默认健康检测功能运行场景下,启动压力测试30秒后,关闭其中一个Tomcat节点模拟组件宕机故障,此时Nginx平均失败事务数占比37.89%,如图15所示,节点宕机后,失败事务数一直高于0。图12增加Tomcat节点前后的平均响应时间upstreambookstore-tpcw{#ip_hash;keepalive20;server133.133.134.78:8081fail_timeout=10s;}图13单节点后Nginx配置upstreambookst

【二级参考文献】

相关期刊论文 前3条

1 刘亚军;;谈语文教学如何培养学生的语感能力[J];科技致富向导;2014年03期

2 张霖;;浅谈怎样在语文教学中培养学生语感[J];学周刊;2012年14期

3 樊俊;;浅谈语文教学中语感能力的培养[J];科技信息;2012年12期

【相似文献】

相关期刊论文 前10条

1 李晓东;王子彦;;基于构件的反射式动态配置技术研究[J];微计算机信息;2008年33期

2 陈雅莉;艾萍;姚成霞;;动态配置机制及其在水利信息系统中的应用[J];水利信息化;2010年04期

3 文志华;周序生;廖立君;李长云;;一种面向自适应的动态配置方法[J];湖南工业大学学报;2009年01期

4 曹e

本文编号:2828869


资料下载
论文发表

本文链接:https://www.wllwen.com/guanlilunwen/ydhl/2828869.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户23a7e***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com