(计算机系统结构专业论文)机群环境下多层次复杂商业应用管理的关键技术研究.pdf_第1页
(计算机系统结构专业论文)机群环境下多层次复杂商业应用管理的关键技术研究.pdf_第2页
(计算机系统结构专业论文)机群环境下多层次复杂商业应用管理的关键技术研究.pdf_第3页
(计算机系统结构专业论文)机群环境下多层次复杂商业应用管理的关键技术研究.pdf_第4页
(计算机系统结构专业论文)机群环境下多层次复杂商业应用管理的关键技术研究.pdf_第5页
已阅读5页,还剩64页未读 继续免费阅读

(计算机系统结构专业论文)机群环境下多层次复杂商业应用管理的关键技术研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 随着社会信息化程度的不断提高以及机群技术的日益成熟,越来越多的商业 应用被集中部署到以机群为主要环境的数据中心。这些应用服务一般要持续运 行,承受大量的用户访问,在商业流程和其他社会活动中扮演重要的角色。服务 提供者为了保障服务的负载均衡和高可用特性,通常会为这些商业应用配备冗余 的软硬件资源,并采用相应的管理系统,辅助管理人员自动化地调配这些资源、 维持稳定的服务质量( o o s ) 。在这种趋势下,应用管理开始成为系统管理的重 要分支而且,目前商业分布式应用的规模日益庞大,多层次复杂应用开始流行, 其复杂的结构和内部相互关系使得人工控制已无法完全满足管理需求,迫切需要 通过相应的应用管理系统来有效地实施管理行为。 本文以机群环境下多层次复杂商业应用管理的关键技术为主要研究内容。文 中首先将应用管理及系统作为独立的方向进行了研究,通过比较和总结,归纳了 该领域内相关的基本概念和方法,并在此基础上,针对大规模机群内的多层次复 杂应用的管理,提出了一种解决方案。 本文首先对应用的结构和冗余资源配置进行了分析和抽象提炼,提出了一种 用于描述大规模多层次复杂商业应用服务的形式化归纳模型,总结出了递归嵌套 的表达方式,使得应用之间的复杂关系和冗余配置可以用符合上下文无关文法的 语言所描述,应用管理系统对应用的认知过程得到了自动化。进一步应用这一模 型及表述方法,本文还提出了适应于冗余资源大量存在的多层次复杂应用的状态 判定原则,以及管理系统调度冗余资源、进行多层次负载均衡的算法。 在这一系列理论分析的基础上,可以构建面向多层次复杂应用的通用应用管 理环境,使得部署于机群之上的复杂商业应用在此架构下得到统一的管理。依据 这一方案,本文设计并实现了应用管理平台服务系统,a m p s ,并以该系统为例 进一步讨论了应用管理系统的评价原则和基本指标。 关键词:应用管理多层次商业应用形式化高可用资源调度 a b s t r a c t a b s t r a c t a st h ei n f o r m a t i o nt e c i m o l o # e s ,e s p e c i a l l yc l u s t e rc o m p u t i n g , p r e v a i li no u r s o c i e t y ,m o r ea n dm o r ec o m p l e xd i s t r i b u t e da p p l i c a t i o n sa r ed e p l o y e di nl a r g e s c a l e c l u s t e r sa sc o m m e r c i a ls e r v i c e s t h e r es e r v i c e sk e e pn o n s t o pr u n n i n gu n d e rh e a v y w o r k l o a d f r o mm a s s i v eu s e ra c :c , c s s c s ,a n dp l a yam o r ei m p o r t a n tr o l ei nb u s i n e s sa n d o t h e rs o c i a ld e p a r t m e n t s i no r d e rt oa t t a i nl o a db a l a n c i n ga n dh i 曲a v a i l a b i l i t y , t h e s e s e r v i c e sa r eu s u a l l ye q u i p p e dw i t hr e d u n d a n ts o f t w a r ea n dh a r d w a r ec o m p o n e n t sa n d m a n a g e db yc e r t a i nm a n a g e m e n ts y s t e m s ,w h i c ha i da d m i n i s t r a t o r so na u t o m a t i c m o n i t o r i n g , c o n t r o l l i n ga n dr e s o n r c es c h e d u l i n g w i t ht h ea d v e n to ft h i st r e n d , a p p l i c a t i o nm a n a g e m e n tb e c o m e sas i g n i f i c a n tb r a n c ho fs y s t e mm a n a g e m e n t f u r t h e r m o r e ,a sf o rc o m m e r c i a ld i s t r i b u t e da p p l i c a t i o n s ,l a r g e - s c a l ea n dm u l t i t i e r s t r u c t u r e sb e c o m em o r ep o p u l a r , w h i c he x h a u s tm a n u a la d m i n i s t r a t i o na n ds i m p l e m a n a g e m e n ts y s t e m s c o n s i d e r i n ga p p l i c a t i o nm a n a g e m e n ta sa ni n d e p e n d e n tr e s e a r c hd i r e c t i o n ,t h i s p a p e rs u m m a r i z e sq u i t eaf e wo fb a s i cc o n c e p t sa n dd e s i g nm e t h o d si n t h i sf i e l d e s p e c i a l l yf o rm u l t i - t i e r , c o m p l e xa p p l i c a t i o n s ,t h i sp a p e rp u tf o r w a r dan e ws o l u t i o n i nt h i sp a p e r af o r m a lm o d e li sd e f i n e db a s e do nt h ea b s t r a c t i o no fd e p e n d e n c y b e t w e e na p p l i c a t i o n sa n dt h ee s s e n t i a l so fr e d u n d a n tr e s o u r c e s ar c c u r s i v ei t e r a t o r i n g p r o c e s sc a nb ed r a w n f r o mt h i sm o d e lb yw h i c hw ec o u l du s ec o n t e x t - f r e el a n g u a g e t od e s c r i b et h es t r u c t u r e so ft h em u l t i - t i e ra p p l i c a t i o n s a f t e ri n t r o d u c i n gt h e s ef o r m a l m e t h o d s ,t h ep a p e rc r e a t e sj u d g e m e n tm e t h o d so nt h er u n t i m es t a t e so fa p p l i c a t i o n s a n dn e w s c h e d u l i n ga l g o r i t h m s ,m a k i n gi tp o s s i b l et os c h e d u l em u l t i - l e v e lr e s o u r c e s f o rc o m p l e xc o m m e r c i a la p p l i c a t i o n s t h u s 。au n i v e r s a lm a n a g e m e n tp l a t f o r me n v i r o n m e n ti sa b l et ob ec o n s t r u c t e d a c c o r d i n gt ot h et h e o r ya b o v es ot h a tm o s to fc o m p l e xc o m m e r c i a la p p l i c a t i o n s e r v i c e sd e p l o y e di nc l u s t e r sc a nb eg o v e r n e du n d e rt h i sk i n do fa r c h i t e c t u r e b a s e d o nt h i sc o n c l u s i o n , a na p p l i c a t i o nm a n a g e m e n tp l a t f o r ms e r v i c e ( a m p s ) h a sb e e n i m p l e m e n t e d t a k i n gt h i ss y s t e ma sa l le x a m p l e ,t h ep a p e rd i s c u s s e st h e e v a l u a t i o no f a p p l i c a t i o nm a n a g e m e n ts y s t e m sf u r t h e ra tl a s t k e y w o r d s :a p p l i c a t i o nm a n a g e m e n t m u l t i - t i e rc o m m e r c i a l a p p l i c a t i o n f o r m a lm e t h o d 胁g ha v a i l a b i l i t yr e s o u r c es c h e d u l i n g n i 图表目录 图表目录 图1t o p 5 0 0 采用系统结构的趋势和t o p 5 0 02 0 0 5 年的系统结构分布2 图2 用于商业应用服务的机群环境 图3 大型数字图书馆中的应用 图4 数字图书馆应用的近似表示和抽象表现 图5 机群商业应用管理系统逻辑架构,。1 1 图6w e b l o g i cs e r v e rc l u s t e r 结构原理 图7g a r t n e rg r o u p 的四层模型和相应的处理流程 图8 例子:循环依赖 图9 数字图书馆应用中使用的请求分发器 图1 0 数字图书馆应用的两种形式化划分方案 图1 1 复杂服务单元的剩余服务能力表示3 2 图1 2p h o e n i x 平台核心的栈层次结构 图1 3 a m p sg u i 客户端的架构图 图1 4a m p s e r v e r 的基本架构。 图1 5 a m p s e r v e r 自身模块划分 图1 6 与a m p s e r v e r 相关的通信结构 图1 7 与a m p s e r v e r 相关的通信通路 图1 8 配置服务同a m p s e r v e r 之间的通信 图1 9 a m p s 的w e b 用户界面。 图2 0z a p ! 应用的两层架构 图2 1 模拟部署结构。 4 5 4 6 5 1 。5 6 。5 7 图2 2 并发请求负载分布图 图2 3z e b r a s e r v e r l 两种情况下的负载比较 5 8 图表目录 图2 4z e b r a s e r v e r 2 两种情况下的负载比较 图2 5a p a c h e l 两种情况下负载比较 图2 6 a p a c h e 2 两种情况下的负载比较 图2 7 a p a c h e 2 服务器使用状况 图2 8z e b r a s e r v e r l 服务器使用状况。 图2 9 响应时间比较 图3 0 吞吐率比较 表格1 科学计算应用与商业应用服务的对比 6 1 表格2 作业管理系统与应用管理系统资源调度比较3 5 表格3 测试用机群节点配置 5 7 声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作 及取得的研究成果。就我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果。与我一同工 作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并 表示了谢意。 作者签名蓐陋扩 日期沙六上 关于论文使用授权的说明 中国科学院计算技术研究所有权处理、保留送交论文的复印件, 允许论文被查阅和借阅;并可以公布论文的全部或部分内容,可以采 用影印、缩印或其它复制手段保存该论文。 燃名:竹:堍帆舭彳 第一章引苦 1 1 基于机群的商业应用服务 第一章引言 随着i n t e r a c t 的普及和社会信息化的不断发展,越来越多的非科学计算类的 商业应用系统被开发和部署到各商业企业和公共服务部门中去这些应用通常要 持续地应答外界用户的各类服务请求,涉及信息搜集、获取、处理、存储、检索、 发布等各个方面,在商业运行和社会生活的各个领域扮演重要角色。 与此同时,机群计算环境( c l u s t e rc o m p u t i n ge n v i r o n m e n t ) 作为日益成熟 的高性能分布式计算环境,在性能价格比、可扩展性的方面拥有突出的优势,越 来越多地被应用到商业计算领域,已成为众多大规模商业应用服务平台优先采用 的体系结构。大规模用户并发访问、大规模数据处理请求的商业应用服务需求同 机群体系结构相结合,使分布式计算领域的研究和应用出现了新的特点 1 1 1 机群计算环境 机群体系结构源于2 0 世纪6 0 年代i b m 公司h a s p 、j e s 系统的思想,起 初是为了将用户的若干大型机( m a i n f r a m e s ) 连接起来向外提供性价比较高的商 业并行计算环境【1 】。直到8 0 年代,商业应用和科学计算领域不断增长的计算能 力要求使得传统高成本、低访问性能的超级计算机系统( 如c r a y s g i ) 已无法满 足要求,随着高性能微处理器、高速网络和若干高性能分布式计算标准工具的出 现,机群技术才开始成为研究的热点特别是9 0 年代以后,商业化标准成品 ( c o m m o d i t y - o f f - t h e s h e l f ,c o t s ) 硬件的应用,以及开放软件的流行,使得 机群技术迅猛发展,开始成为高性能计算领域的重要分支。 在目前世界高性能计算机排名t o p 5 0 0 中,机群体系结构已经占据主体位置 ( 见下图1 ,2 0 0 5 年的排名中占7 2 0 ) 【2 1 。不仅各大厂商都开始提供基于机群 体系结构的产品( 包括硬件设备和相应管理软件) ,同时还改进原有软件,开始 提供对机群计算环境的支持( 如数据库产品o r a c l e 、s q l s e r v e r 、m y s q l 等) , 开源软件社区也将提出了相应的机群建构方案( 如b e o w u l f ) ,特别是l i n u x 操作 系统及相应软件包的标准化,大大地推进了机群技术的普及,出现了很多相关的 研究分支【3 】,在世界最大的开源软件项目发布网站s o u r c e f o r g e 的c l u s t e r i n g 分 类中有相关项目4 0 0 多个【4 】。i e e e 机群计算工作组( i e e et a s kf o r c e0 1 1c l u s t e r c o m p u t i n g ) 是研究机群计算环境标准的组织【5 】 基于机群的多层次复杂商业应用管理的关键技术研究 图1t o p 5 0 0 采用系统结构的趋势和t o p 5 0 02 0 0 5 年的系统结构分布 本文中所指的机群定义【1 1 如下: 机群是一类并行分布式处理系统,它由一组高速互联的独立运行的计算机 系统组成,这些系统共同工作,表现为统一的、集成的计算资源环境。 用于商业应用服务的典型机群环境的架构如下图2 : 图2 用于商业应用服务的机群环境 机群计算环境的基本组成单元是独立运行的机群计算节点( c l u s t e rn o d e ) 【6 】,这些节点一般为标准的商业化计算机系统,如个人计算机和工作站这些 普通设备上装配有网络接口硬件( n e t w o r ki n t e r f a c eh a r d w a r e ) 和相应的通讯协 议软件包( c o m m u n i c a t i o np a c k a g e ) ,之间通过高速网络互联,达到分布式和并 2 第一章引占 行处理的目的在机群节点的操作系统之上,常常部署了中间件系统 ( m i d d l e w a r e ) ,这一层次一般用来作为创建单一系统映像( s i n g l es y s t e mi m a g e ) 的基础,并提供消息通信、同步、存储等多种机群基础软件环境。为了更好地对 机群内的各种软硬件资源和应用服务进行监视、分析和控制,还会在机群内配置 多种管理系统,进一步加强机群的计算优势。 1 1 2 大规模商业应用的发展 2 0 世纪8 0 年代以来,整个社会对高性能计算能力的需求飞速增长。最开始 出现在科学研究和工业领域,如石油勘探开发、气象预报、生物信息学、航空航 天、汽车制造等等。由于机群系统有着较高的性能价格比和可扩展性,加之标准 高速并行通信库和机群作业管理系统的发展,使得这些科学计算应用相继被移植 到机群计算平台上。 进入9 0 年代以后,信息化成为社会发展的重要助力,信息技术在商业和其 他社会生活领域中的应用快速发展首先是各个商业企业在计划、采购、制造、 销售和企业管理的各个环节采用信息技术,例如联机事务处理( 0 u p ) 、联机分 析处理( 0 u 心) 、电子商务、企业信息化管理平台( 包括e r p 、c r m ) 等:其 次是公共信息服务的发展,如数字图书馆,大型电子邮件系统,还包括近年来新 兴的网络内容服务,如综合门户网站和搜索引擎、大型b b s 、网络游戏平台、 流媒体服务等等这些应用多表现为对外提供同商业活动相关的各种信息服务, 所以常常统称为“商业应用服务”,本文简称为“商业应用”或“应用服务”。同 传统的科学计算应用相比,这类应用有如下的特点【7 】; 表格1 科学计算应用与商业应用服务的对比 科学计算应用商业应用服务 面向任务处理面向服务的提供 少量批处理作业提交大量并发服务请求 要求较强的计算和内部通信能力要求m 处理能力和计算能力相配合 强调系统高吞吐率 强调服务质量 每次作业可靠完成即可 7 2 4 x 3 6 5 长期不问断运行 计算过程系统负载较为平均 高峰值均值负载比 1 1 3 大规模商业应用与机群相结合所带来的管理问题 在商业应用服务的发展初期,服务内容比较简单,可靠性要求较低,用户访 问量较少,所以搭建这类服务相对较为简单9 0 年代后期以后,商业应用服务 在企业运行和公共生活方面占有重要地位,更大规模的服务系统相继被部署和使 用,这些服务提供信息内容非常庞杂而且更新迅速( 如门户网站) ,可靠性要求 3 基于机群的多层次复杂商业应用管理的关键技术研究 非常高( 如网上银行和金融交易系统,要求可靠性达到9 9 9 9 9 以上) 。大量用 户并发请求服务( 如搜索引擎、数字图书馆、网络游戏服务) ,传统的大型机服 务器系统已经无法满足要求,而机群则以其众多优势成为商业应用服务优先选择 的平台环境。例如:a ) 高计算性能和i o 吞吐能力。机群为松耦合结构,可以 分别部署高性能的计算节点和i o 服务节点,或者将进一步分离为机群内的 独立系统;b ) 高可扩展;商业应用服务的内容和负载要求是不断提高的,机群 环境可以不断纳入新的资源以提高整体服务能力,以满足规模不断增长的大型服 务的需要,目前世界最大的搜索引擎g o o g l e 在世界范围内安装的机群节点服务 器已扩展至2 0 0 ,0 0 0 个【8 】;c ) 高可靠:机群架构可以为应用服务的各个方面提 供冗余备份资源,保障系统不间断向外提供可靠服务;d ) 高性能价格比:机群 采用p c 、工作站等标准化的商业计算元件,提供单位计算能力的成本低于传统 大型机,特别是在扩展服务能力时,由于机群系统的高可扩展性,其扩展费用更 是远低于传统系统。这些原因都促进了商业应用服务,特别是大规模商业应用服 务越来越多地同机群计算环境相结合,进而产生了新的分布式计算研究和应用领 域。 然而,松耦合、计算与i o 分离、资源数量动态变化、冗余资源配置都使得 应用服务的运行环境变得更为复杂而且这种环境配置也极大的促进了分布式商 业服务的发展,应用开始出现功能层次分化、相互依赖、合作服务的趋势。要在 如此复杂、松散、多交的基础结构之上保证多种应用服务的高质量运行,需要特 定类型的管理活动的辅助,对应用服务接受管理的能力也提出了更高要求这种 需求进一步引出了应用管理和应用服务可管理性的概念,并逐渐发展为系统管理 的重要分支。 1 2 应用管理与应用服务的可管理性 应用服务的可管理性( a p p l i c a t i o n m a n a g e a b i l i t y ) 是应用服务自身的一种标 志性属性,该属性同应用管理相联系。应用管理的基本思想,从出现应用服务程 序开始。就已经出现,近年来随着机群和商业应用的发展,在系统管理领域逐渐 演进成为完整概念,它的定义【9 】如下: 软件系统或相关人员通过外部工具或应用自身提供的接口,部署和配置应 用,监控应用运行时的健康状态和性能信息,结合应用特点和相关策略做出判 断,分析和预测,并在此结论的基础上。控制和调整应用的部署运行配置 参数和属性,调配应用相关的各种资源,以期望应用持续向外提供特定质量服 务的活动和过程 本文所指的应用服务的可管理性,是在上面所述定义的基础上建立的一类评 价标准,它所衡量的是应用( 特别是服务型应用) 参与应用管理活动、应答应用 4 第一章号i 言 管理行为的能力目前可管理性已成为应用服务创建和部署的标准要求之一,渗 透到应用设计、开发、发布、部署和运行各个阶段特别对于大规模商业应用服 务来说,他们对服务质量的要求使得可管理性已经成为不可或缺的标准。 应用管理的最终目的,是为了向外提供特定质量的服务。如果应用的可管理 性较高,则意味着它可以配合管理行为,根据服务质量的要求对自身做出调整。 商业应用服务自身的具体特性各异,要提高应用的可管理性,概括说来可从两个 方面着手; 第一,完善应用自身的管理接口,增强管理配置功能。这需要将可管理性作 为重要的影响因素纳入应用服务程序的设计和开发阶段进行综合考虑。这些考虑 主要集中在两个方面,首先是应用应该尽可能丰富、及时地发布自身的健康状态 和性能信息,让管理方( 管理人员或软件系统) 对应用服务的运行状况有所了解; 其次是应用应该加强自身的可定制性、可调整性,提供相应的接口,供外部管理 方调用,这样,在发生某种事件现象后,管理方就可以在应用运行时动态改变 应用的参数设置,调整应用运行行为。目前,很多软件开发平台都不同程度地提 供了可管理性支持:m i c r o s o f t n e t 框架中就提供了基础软件库,使得应用程序 可以很容易的向外提供系统性能监视、系统跟踪和日志,还可以在运行时动态更 新、变更系统的组成,而不影响对外服务 1 0 l , j 2 e e 框架则提出了相应的管理标 准( j m x 等) ,统一在应用中内嵌管理功能和相应的接口【1 1 ,1 2 】。 第二,增强管理方的能力,主要包括三个方面,一是根据管理的需要,主动 侦测应用服务的运行信息;二是根据侦测到的信息进行分析判断,确定应用服务 的行为特征;三是根据判断结果做出相应的调整决定,对应用服务相关的参数和 环境进行改动,以期改进服务质量 以上两个方面是相辅相成的,如果应用提供的接口完整、功能丰富,就可以 简化管理方的工作;如果管理方的能力相对强大,也可以弥补应用自身可管理配 置的欠缺,在总体上提升应用服务的可管理性,最终达到保障服务质量的目的。 应用管理活动中的管理方,主要分为管理人员和管理系统两类。在应用管理 活动出现的早期,管理人员会使用简单工具获取应用信息,然后人工判断要做出 何种调整,再利用简单工具完成调整。由上文1 1 3 可知,随着机群系统的采用, 以及应用服务的规模愈发庞大,管理难度逐渐增大,人工干预已经无法满足要求, 这时就出现了应用管理系统。 本文所关注的,即是如何提高作为管理方的应用管理系统的能力。应用管理 系统进入研究领域以来已在多个方向上取得进展,但商业应用的相关发展更是突 飞猛进,出现了相互依赖的多层次分布、冗余资源配箕等多种复杂架构形式,而 应用管理系统对此类应用复杂性的适应问题始终没有得到解决,因而成为本文研 究的重点 摹于机群的多层次复杂商业应用管理的关键技术研究 1 3 研究动机;商业应用服务管理的复杂性 随着全社会信息化程度的不断提高,越来越多的商业企业和公共部门开始采 用商业应用来提高生产效率、优化自身服务。特别是各种服务类商业应用,已成 为生产和对外服务的基础设施,承担着主要的信息划分,处理、存储和发布工作。 即使在“普适计算”日益流行、各种信息客户端无处不在( 包括手持设备、信息 家电,信息公共设施等等) 的今天。处于中心服务端的各类商业服务应用不但没 有被削弱,反而得到了加强,其规模不断增大,以适应不断增长的信息量和并发 用户请求。 机群计算环境凭借其在性能价格比、可扩展和可靠性方面的优势,逐渐与商 业应用服务相结合,两者的相关技术开始互相促进、共同发展在这一过程中, 集中式服务器管理又回归到商业信息服务领域中来,并由此产生了很多新的流行 趋势,如服务器聚集( s e r v e rc o n s o l i d a t i o n ) 【1 6 1 ,服务器群组( s e r v e rf a r m ) 【1 7 , w e b 服务群组( w e bf a r m ) 1 6 】,应用服务提供商模式( a p p l i c a t i o ns e r v i c e p r o v i d e r m o d e ) 【1 8 1 等等。这些技术在大型商业服务平台和数据中心中有着广泛的使用, 它们之间的共通点,就是使用同一机群内的软硬件资源,同时向外提供多种应用 服务,以实现统一管理、减少整体拥有成本( t o t a lc o s to fo w n e r s h i p ,t c o ) 的 目的。 例如,某大型的公共数字图书馆,它允许用户通过认证后检索书目、在线浏 览图书内容,并同时提供音频和视频流媒体服务,它的生产部门甚至同时生产和 处理其他供未来使用数字产品,如下图3 所示。 数据挖掘与 决策支持 := = = 1 一i 信息搜集l : 岈谢幛矧写篓米l ; 呈差茎盆窭if 信息的检索磊荔工生产服务ll ”。 机群计算环境 外界访问门户 信息下载和 浏览服务 认证和计 费服务 圈3 大型数字图书馆中的应用 该数字图书馆的认证服务、计费系统、检索服务、多种内容浏览服务、流媒 6 第一章引言 体服务和数字化加工服务可能会部署于同一个机群环境中同时运行。 在实际的部署中,大型机群内的商业服务会有三个特点,首先,各类服务要 以一定的服务质量长时间不问断地应答用户访问,因此常常配备有冗余资源作为 后援,防止故障和高峰访问;其次,这些服务使用同一机群内的节点资源同时运 行,共享配备的冗余资源,之间存在着竞争关系;第三,多个应用之间还可能存 在层次依赖关系,本文中称具有层次依赖关系有配备了冗余资源的应用服务为 “多层次复杂商业应用服务”( 详细定义见3 1 节) 。对于这些商业应用服务,核 心的管理活动就是如何根据运行情况在各应用服务之间调配机群内的可用资源, 并通过负载均衡手段( 添加用户请求分发器) 和高可用工具( 故障切换) 来维持 一定标准的服务质量。 但是,由于商业应用有着较高的峰值均值负载比,管理者要不断适应负载 的动态变化,将资源分配给负担最重的服务,简单的人工管理无法满足要求,也 容易产生错误操作( 见2 1 节) 。因此,迫切需要一类管理系统,实现机群内的 大规模商业应用服务管理的自动化,辅助管理人员有效利用资源,保证服务质量。 然而,商业应用服务的管理系统的创建,要解决两个基本问题: 首先,商业应用服务的结构日益复杂,出现了垂直分布( 详见参考文献 1 5 】 和本文3 1 节) 从用户的角度看到的某种服务,实际上可能是由运行于不同服 务节点上的、多个层次的分布式应用组成的。他们之间存在复杂的依赖关系,合 作完成的对用户请求的应答。因此,要判断某种服务是否运行正常、计算其负载 情况,必须事先获知该服务的组成结构,根据不同部分的不同作用和各自的运行 状况进行具体分析在g a r t n e rg r o u p 的调查结论中,服务意外失效的产生根源 中,应用失效( a p p l i c a t i o n f a i l u r e ) 占4 0 ,这其中重要的一条原因即是没有将 应用之间的关系作为重要因素纳入管理分析【1 3 】。管理系统必须能够应付复杂的 多层次( 3 t i e ro rn - t i e r ) 应用结构,避免做出错误判断。 其次,冗余软硬件资源( 主要是冗余的节点资源) 配备所形成的水平分布( 详 见参考文献 1 5 1 和本文3 1 节) ,也会带来挑战。为了维持稳定的服务质量,应用 常常使用冗余配置来做服务备份或负载分担。更为复杂的是,为了达到良好的效 果,整个应用服务会在多个层次上进行这种冗余配置,这就进一步增加了管理系 统进行分析和判断的复杂性。 下面举例来说明管理系统所面临的挑战。上文提到的图书馆应用可以近似表 示为下图4a ,每个方框均表示一个独立的应用服务,其中灰色填充方框表示该 部分应用正常工作,向外提供服务;白色填充的方框为空闲的冗余资源,没有向 外提供服务或该资源用于其他任务那么该图所表示的,就可以看作是一个多层 次复杂商业应用服务这一应用由可部署在同一机群内的有多个应用服务组合而 成,各组成部分按依赖关系分为多个层次,各个层次上又配备了冗余服务资源。 7 基于机群的多层次复杂商业应用管理的关键技术研究 对该实际应用进行简化和一般化扩展,可得如图4b 中所示的抽象表示a 1 和a 2 是表示的应用具有相同的功能,b i g ,d i ( k l ,2 ) 也分别是表示功能地位相同 的应用。这些应用一般作为后台服务独立运行在服务器节点上他们之间的依赖 关系用单箭头表示,如a 向外提供服务会依赖于b 和c ,而b 又依赖于d 重 复的b 1 和b 2 是冗余资源配置a l 、b 1 、c 1 、d 1 这四种应用合作向外提供一 种服务,a 2 、b 2 、c 2 、d 2 也完成相同的功能,这两组也是互为冗余资源的。 a b 图4 数字图书馆应用的近似表示和抽象表现 因此,要对该应用进行管理,管理方除了要了解a b c d 四种服务之间的依 赖关系之外,还要清楚上述的两个层次的冗余配置,以便在下列情况时做出精确 的判断: i 当部分应用失效时,是否认定应用服务整体无法向外提供服务因 为一个b 1 ( 或一个b 2 ) 失效所导致的结果同c 1 ( 或q ) 应用失效 的结果是不同的; i i 当应用服务整体出现质量恶化时,如何判断性能瓶颈的所在位置, 以便进行负载均衡例如,图4b 中a l b l c l d l 提供的服务过载时, 需要判断是启动新的b l 还是启动整个的 l 2 一d 2 ,哪种管理操作能够 更方便地分担负载、维持对用户请求的及时响应。 在实际部署中,同一机群向外提供多种服务,其资源是有限的一般配置中 都会在多个应用之间共享使用冗余资源,各应用之间存在竞争关系,所以相应的 管理系统就需要事先了解应用的具体结构,实时判断应用的运行状况,并自动将 资源调度给急需的应用服务 8 第一章引言 综上所述,商业应用服务发展到今天,出现了多层次依赖的复杂结构和冗余 资源配置,原有的人工管理和简单的应用管理系统均已无法满足要求,本文以面 向多层次复杂商业应用的管理系统为研究对象,致力于解决上述的管理难题。 1 4 本文的研究内容 本文的主要工作是机群环境下的应用管理相关技术的研究,特别是面向多层 次复杂商业应用服务的管理系统的研究在大型机群内部署的大规模商业应用服 务,其组成结构垂直分解为多个应用层次,水平又部署了多类冗余资n 1 5 1 ,对 应用管理系统提出了新的挑战。本文以此为研究对象,首先归纳了应用服务管理 系统所面临的新问题,分析了多层次复杂商业应用的特点,之后提出了一种形式 化归纳模型,用来描述复杂应用服务的结构和资源配置状况,并在此基础上发展 出了一套应用运行状态判断策略和资源调度算法,解决了构建面向此类应用服务 的管理系统的基本问题 本文的主要贡献: 1 提出了一种用于描述大规模多层次复杂商业应用服务的形式化归纳模 型,并以此为基础归纳出了多层次复杂商业应用逻辑结构上的递归嵌套 特性依照这一模型,可以准确地定义应用各层次之间的依赖关系,并 描述应用在各个层次上所作的冗余资源配置这种描述可以被符合上下 文无关文法的语言所表达,使得管理系统可以利用形式化和编译领域中 的若干成熟结论( 如语法分析器) ,更为简洁地接受、分析、处理、发 布对可管理应用的描述,使得管理流程更为流畅。这种模型对于多层次 复杂应用服务在机群中的实际部署和配置也有一定的指导意义。 2 整理了若干提供了判断应用状态、制定管理策略的方法和原则,并以此 为基础提出了一套适应于冗余资源大量存在的多层次复杂应用的状态 判定原则和资源调配算法,使得面向该类应用的管理系统的基本功能实 现具备了理论基础。 3 设计并实现了面向多层次复杂商业应用服务的管理系统- - a m p s ( a p p l i c a t i o nm a n a g e m e n tp l a t f o r i l ls e r v l c e ) 。j d r i p s 应用管理系统以一 体化机群中间件系统p h o e n i x 为基础,可以描述多层次( 理论上层次数 无限) 应用服务和资源冗余配置状况,具有应用定义、删除、启动、关 闭等基本的管理功能;能够监控应用的死活和实时负载状况,提供应用 遇故障重启和简单迁移;可以根据应用服务当前的负载状况,自适应地 动态调配资源和请求分发,达到均衡负载、资源充分利用的目的。 4 给出了应用管理系统的基本评价标准,提出了若干效能指标,并依照这 些标准对a m p s 进行了总体评价。 9 蕞于帆群的多层次复杂商业应用管理的关键技术研究 1 5 本文的结构 在本章介绍了商业应用管理的基本概念及其所面i 临的问题,在此基础上,本 文以后各章的内容安排如下:第二章介绍机群环境下的大规模多层次商业应用服 务的特点,说明实现该类应用的管理系统所面临的挑战,并通过比较现有的几类 应用管理系统的功能和实现原理,引出本文所要解决的关键技术;第三章开始阐 述多层次复杂商业应用服务的形式化分析和建模,形成本文的中心理论,并定义 了一套可用于应用管理系统的描述方法;第四章会在第三章中所提出的模型基础 上,对多层次复杂应用运行状态的判断进行分析并给出若干计算和判定原则;第 五章进一步提出了资源调度的策略和算法,完成了面向多层次复杂商业应用管理 系统的基本理论;第六章中描述了a m p s 管理系统,a m p s 是前面三章中所述 的理论的一个具体实现,改章简要地说明了该系统的设计方案、关键技术特点和 部分实现细节;第七章介绍了应用管理系统的评价标准,并针对其中的若干指标 对a m p s 进行了评价;第八章是对全文工作的总结以及对未来研究工作内容的 展望。 1 0 第二章多层次复杂商业应用管理系统的关键技术 第二章多层次复杂商业应用管理系统的关键技术 2 。1 应用管理系统的基本功能要求 应用管理系统是参与应用管理活动的自动化管理程序。它的发展源于两方面 原因;首先是大规模商业应用服务的管理本身要求减少人工干预,这不仅仅是为 了减少整体拥有成本f r b t a lc o s to fo w n e r s h i p ,t c o ) ,也是为了尽可能地减少操 作错误导致服务系统意外失效的时间( u n e x p e c t e dd o w n t i m e ) ,g a r t n e rg r o u p 的 调查表明服务系统意外失效有4 0 是由于人为操作错误造成的1 1 3 1 ,增加管理自 动化功能十分必要;其次,近年来的技术发展,尤其是应用自身可管理性的加强 促进了这类自动管理程序的发展。特别是机群系统广泛使用后,商业应用服务同 底层操作系统和硬件设备之间存在着中间件层次,这一层次通常维护着机群计算 环境内的各种信息,提供消息传递和命令执行通路。因此,应用管理系统可以架 构在中间件之上,这样不但可以通过该层次自动获取应用服务的运行状况,还可 以利用该平台动态地执行管理行为。 典型的机群商业应用服务管理系统,应该具备四种基本功能,其常见的基本 架构如下图所示,图中灰色的部分为应用管理系统,并按照其基本功能进行了逻 辑划分i 图5 机群商业应用管理系统逻辑架构 i 描述:对所要管理的应用服务的基本特征、运行要求、调整触发条 件等静态信息进行初步的定义和处理,然后按照一定的组织方式进 行描述和存储,以各管理系统的其他模块使用该功能是管理系统 的基础功能。描述内容的丰富程度、组织形式和存储手段不仅直接 影响管理系统后继功能的实现和执行效果,对应用服务自身的部署 和设置也有着重要的指导意义; 豇监视:利用应用服务自身提供的接口或其他系统手段获知应用的健 1 1 基于机群的多层次复杂商业应用管理的关键技术研究 康状态和性能信息,这些信息表征着应用的运行状况,通常会用作 两个用途:一是显示给相关的管理人员,进行提示和报警;二是提 供给应用管理系统,在下一步分析判断时使用; i i i 分析:管理系统通常都会有分析模块,它会根据事先定义的应用服 务描述信息做出刿断,包括a ) 是否要按定义进行某种定期操作;b ) 目前当前应用的运行状况如何,同描述信息进行匹配比较之后,是 否要进行事先定义好的操作;c ) 是否发生某类事件,触发某种操作; i v 控制:根据分析模块做出的判断结论,利用应用自身提供的接口或 系统工具等管理手段,对应用服务的运行参数、环境设置和资源配 置进行相应调整,改变应用的运行方式、状态或规模,以最终达到 各类管理目的。 从上图还可看出,应用管理系统的各个逻辑模块在不同程度上依赖于机群的 系统管理工具,包括机群管理系统、该系统包含的各种工具和该系统依赖的系统 服务,而应用服务管理系统和机群系统管理最终又都依赖于机群中间件 随着商业应用服务的类型不断增多,规模不断增大,服务质量的需求不断变 化,对管理系统的要求也逐渐提高对于功能完整的应用管理系统,在设计和实 现时需要注意以下几个方面的需求1 1 4 】: i 支持的应用类型:仅仅就商业应用来说,不同服务的架构和运行特 征也存在很大不同,构建支持所有应用的管理系统是不现实的,也 是不经济的( 本文称管理系统所支持的应用为“目标应用”) ; i i 所需的监控信息:要确定用户最终会通过管理系统了解应用的哪些 运行信息,哪些信息可以作为管理策略选择的判断依据和触发条件; i i i 管理策略:监控信息、事件同管理行为是如何对应的,如何根据侦 测到的信息做出判断; i v 对应用的控制:定义应用管理系统可以对应用做出何种控制操作, 如启动、关闭、调整并行运行的线程数等。对于商业应用服务来说, 最为常见的是对应用进行遇故障恢复、迁移和负载均衡操作l v 资源调配能力:管理系统要能够对机群内的各类软、硬件资源进行 定义、配置、划分、调配和控制,根据运行状态自动调整应用服务 所使用的资源是重要的管理行为,管理系统要有明确的资源调配算 法或资源调配框架( 可容纳多种算法策略) ; v i 可用性:在进行自动管理操作的同时,要提供给管理人员友好的人 机界面以便进行人工管理; v i i 高可用:应用服务管理系统要保障应用的高可用,其自身必须具备 高可用特性; 第二章多层次复杂商业应用管理系统的关键技术 v i i i 可扩展性:商业应用服务的规模和服务内容是不断增长的,管理系 统也必须能够适应这种变化; i 】【安全性:管理系统应该只允许拥有特权的人员进行应用进行管理操 作和对管理系统进行设置; x 平台可移植性;管理系统应适应机群内各种不同类型的硬、软件资 源。 以上各项概括了应用管理系统的基本功能要求,是描述和评定一个管理系统 的基础,指明了应用管理系统的发展方向,该领域内的大多数进展都可以归于对 上面所列项目中的一个和若干个方向的加强,也基于上面的分类进行评价。本文 所要重点研究的,是面向多层次复杂商业应用的管理系统,同以往的管理系统有 所不同,其目标应用( 即第i 项) 更为特殊,因此,需要从已有工作的基础上, 扩展出新的解决方案来实现上面i i v 项的功能。 2 2 应用管理及应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论