在线刊号(2320-9801)印刷刊号(2320-9798)
苏希尔·卡纳德*,普什卡拉杰·索拉特
|
有关文章载于Pubmed,谷歌学者 |
更多相关文章请访问国际计算机与通信工程创新研究杂志
云计算是以服务的形式提供计算能力。在这里的软件中,计算资源和数据通过网络作为计量服务共享给计算机和其他设备。平台即服务(platform -as-a- service)是一种基于云的方法,它提供托管中间件,使用户与资源和平台的管理隔离开来。本文提出了一个使用部署图来管理应用程序及其包括中间件在内的整个集群的系统。在这里,我们强调它向集群添加/移除资源的能力,即当需求增加时,根据部署图语法创建新节点并将其插入集群,当需求减少时,资源被声明并返回到空闲池。
关键字 |
云;IaaS;PaaS;SaaS;高可用性集群;可伸缩性 |
介绍 |
云计算是以服务的形式提供计算能力。根据请求,资源从共享池分配给请求实体,当工作完成时,它们被放弃,系统进一步将其添加回资源池。这里的资源,如网络、存储、以计算形式出现的服务器、符合SOA的应用程序和服务,可以通过较少的管理工作或较少的服务提供者[1]交互频繁地提供和发布。 |
计算服务交付的级别进一步划分为: |
1.软件即服务(SaaS)。提供给使用者的功能是使用运行在云基础设施上的提供者应用程序。各种客户机设备可以通过web浏览器的瘦客户机接口或通过程序接口从各种客户机设备访问应用程序。 |
2.平台即服务(PaaS)。提供给消费者的功能是将云基础设施部署到使用提供商支持的编程语言、服务、库和工具创建或获得的应用程序上。 |
3.基础设施即服务(IaaS)。基础设施即服务(IaaS),提供裸硬件即服务。它包含抽象的硬件实体,如cpu(电源和核心)、内存、网络、通过块和文件导出的存储、网络带宽和连接性。这种形式的服务是基本和原始的,它作为PaaS和SaaS层的基础,提供了一种灵活、可用和标准的计算资源形式。 |
由于云计算环境中资源处理的灵活性,应用程序部署在云计算环境中具有许多优势,本文的重点是高可用性和可伸缩性[2]。支持云计算的应用程序的能力可以迅速提高,以满足强劲的用户基础,并且在放弃需求时可以将其返回到资源池。在本讨论中,我们将重点讨论扩展/扩展类型的可伸缩性。但同样的概念也可以应用于伸缩性的放大/缩小行为。 |
高可用性和可伸缩性必须遵守应用程序部署所在集群的规则。为了获取集群的语法,我们使用部署图。我们建议的实现使用PaaS服务模型和部署图来捕获HA集群语法,并旨在解决云的所有五个基本特征,即按需自助服务、广泛的网络访问、资源池、快速弹性、可测量服务、Multi Tenacity[2]。在本文中可以实现所有类型的云部署,包括但不限于私有、公共、社区和混合云。 |
2相关工作 |
可伸缩性是使用云计算的主要好处之一。可伸缩性是指系统在集群活动和运行时通过添加资源和/或节点来应对增加的负载的能力,而不会中断活动和正在进行的活动事务。根据业务需求,集群可以很容易地扩大或缩小规模。例如,电影票预订应用程序在周末和节假日使用较多,工作日不使用,在较少的使用时间内,可以将服务器返回到资源池,提供给其他时区的组织,或者在同一时区使用较多的组织也可以使用。当业务需求发生变化时,云服务提供商可以增加现有资源,而不需要对现有IT系统进行昂贵的更改。 |
有两种类型的缩放:水平缩放和垂直缩放。当不可能将一种资源类型更改为另一种资源类型时,使用水平伸缩。如果IaaS层由于主机资源限制或hypervisor不支持而无法在运行时扩展虚拟机,PaaS必须选择水平扩展,即向外扩展和在这种情况下扩展。其中节点(即。服务器)根据需要添加(向外扩展)或删除(向内扩展)到系统中,处理器和RAM更少。在垂直扩展中,我们在系统中增加/删除(增加/减少)资源(处理器和内存)。它易于实现,但比垂直扩展成本更高。 |
现代应用程序需要中间件的支持,如数据库、web服务器等。为了在运行时部署和扩展应用程序,我们需要管理中间件的运行时部署,初始化它并将服务器添加到应用程序集群中。缺乏这样的框架使得遗留应用程序无法在云环境中部署。 |
面向服务体系结构(SOA)的类似工作,用于在PaaS上部署基于SOA的解决方案,由Bao Rong[3]介绍。但在这里,我们正在为通用集群应用程序协作部署模型和向外/向内扩展平台。 |
提出了另一种为企业资源规划提供高可用性和高可伸缩性的方法。WebSphere cloudburst是IBM为资源监控提供的解决方案,旨在加快创建和部署应用程序到云和虚拟环境。此解决方案不考虑单个服务器上的负载,以向外扩展/在集群中扩展。这里提出的解决方案能够使集群中的虚拟节点报告系统正在经历的运行状况和负载,因此可用于自动化集群部署。 |
3使用部署图(ascdd)提出的集群自动可伸缩性系统 |
该系统提供了一个基于事件驱动机制的自动按需扩展框架。群集上的虚拟节点向监视服务器报告有关其运行状况和负载的信息。当虚拟节点上的负载增加时,每个节点上的代理都会向监控服务器报告有关负载的情况,然后监控服务器会向外扩展特定角色的组件。类似地,如果虚拟节点上的负载减少,则每个节点上的代理都会向监控服务器报告负载减少的情况,这样它就可以在特定角色的组件中伸缩。部署图和脚本被提供给管理服务器进行配置。 |
系统包括以下部分: |
1.部署引擎(DE) |
2.Web UI |
3.监控/管理框架(MMF) |
(a)监测代理人 |
部署引擎(DE)负责安装虚拟机映像,将其接入网络,安装监控代理,安装中间件,然后进行配置。DE不是一个自我驱动的实体,但它将由MMF管理。 |
监察及管理架构(MMF)读取部署图拓扑文件,创建基础平台定义,后续可通过WEB UI对该定义进行修改。这个平台定义将包含以下信息。 |
1.平台的体系结构,包括多种中间件和虚拟机规格。 |
2.规则 |
平台的体系结构,定义了应用程序运行所需的体系结构,以及何时部署应用程序和何时销毁应用程序的规则。 |
MMF将借助与不同中间件相关的插件来部署/管理/销毁它们。 |
Web UI将提供fabric的整体管理,包括: |
i.创建/更新拓扑文件。 |
2测试拓扑文件。 |
3部署中间件平台。 |
iv.获取平台的状态/运行状况。 |
以下建议的算法可用于在集群中添加节点: |
在测试环境中,我们对上述系统进行了实验,发现该体系结构是线性的,能够根据负载变化监视和交付集群中的节点。 |
四、实验结果 |
在我们的实验室中,我们对上述系统进行了实验,发现该体系结构能够根据负载变化监视和交付集群中的节点。我们可以以大约1个节点/分钟的速度在集群中注入一个角色的节点。结果非常惊人,但仍有很大的改进空间。以下是实验的操作: |
1.增加集群负载 |
2.降低集群负载 |
增加集群负载 |
当系统负载以1000个请求/分钟的速率增加时,当每个节点能够处理100个请求时,我们可以以O(n)个线性可伸缩性进行扩展。 |
降低集群负载 |
当系统负载以1000个请求/分钟的速率降低时,当每个节点能够处理100个请求时,我们可以在O(1)常数时间内进行缩减。 |
诉的结论 |
本文介绍了一个基于事件驱动管理的云资源共享平台,该平台提供了一种有效的资源共享方式和自动的、随需应变的可伸缩性。由此产生的系统可以更持久地对资源进行负载和压力,而不需要人工干预。算法可以进一步改进,以分析系统在负载下的模式,并提前采取纠正措施。 |