APP下载

基于数据中心的云资源调度模型设计

2021-11-07王明乾刘建斌

科技信息·学术版 2021年22期

王明乾 刘建斌

摘要:本文针对数据中心云资源虚拟化以及所承载的应用呈现出多用户、异构化等特性,分析服务器多种资源间分配不均衡的问题,建立了云资源调度模型,提出了云资源均衡调度方法,提高了面向数据中心的基础设施资源利用率。

关键词:云资源;调度模型;调度方法

1 引言

随着信息技术和互联网的急速发展,数据量呈现高速增长趋势,从而导致了数据处理能力的相对欠缺。但与此同时数据中心的计算资源的利用率一直处于不平衡的状态,大量计算设备和存储设备长期处于闲置状态。如何实现资源的高效共享以應对大数据高速增长的势头,是当前亟需解决的问题。在这种发展背景下,云计算应运而生。作为云计算的重要应用研究,数据中心正在推动一系列的技术创新来实现云计算的按需提供、弹性可扩展以及海量数据存储等关键特性。

2 云资源调度需求分析

作为数据中心架构的核心,虚拟化技术的主要作用是提供基础设施作为一种服务,实现多租户资源分配,提高企业的资源利用率,将传统数据中心向云计算迁移。虚拟化技术通过从物理设备中抽象计算、网络和存储服务来实现数据中心的按需资源供应,通过在物理机器上构建虚拟单元,将物理资源重新整合,更灵活的提供资源动态供应,有效提髙服务器利用率,减少能耗成本[1]。对于数据中心来说,合理高效的进行资源调度的优化是必不可少的。

为了使数据中心的资源得到更有效的使用,当任务到达时,需要为其提供满足任务需求的虚拟机类型,减少服务运行的开销。使数据中心在工作负载快速到达峰值时,可以迅速提供大量虚拟机来满足突然增加的负载,当负载恢复到正常水平后,多余的虚拟资源可以被回收。我们将虚拟机层资源调度问题定义为:数据中心云资源池在某个调度决策时刻接收到多个用户的工作请求,并且经过分析得到每个用户需要创建的虚拟机类型,所需资源量,以及该类型虚拟机需要创建的数量。资源调度需要解决的问题是,如何从数据中心正常运行的物理机器中选取合适的来完成虚拟机的创建。

3 云资源调度模型

3.1 云资源建模

云资源的建模是云资源管理和控制的基础,所有的资源调度优化算法都要依赖于统一的资源建模方式。云计算中的资源是一个云系统中任何可用的物理或虚拟组件,系统内部的组件以及连接到这个系统的任何设备都是资源。云计算中的资源可以分为物理资源和逻辑资源两类。

1)物理资源。典型的物理资源包括处理器,内存和外围设备。不同主机之间的物理资源差异很大,一台普通个人电脑一般只有4G内存,500G内存,而一台大型机有大量并行处理器,TB级的内存,海量存储以及一些其他专用设备。

2)逻辑资源。逻辑资源是物理资源的抽象,用来完成应用程序的部署[2],以及有效的通信。

在每个云服务提供商的数据中心,有大量不同规格的物理设备,向云用户提供各种计算或者存储资源,尤其是基础设施即服务(IaaS),它提供大量的存储、服务器以及网络等物理设备构建的资源池,用户将他们的业务部署在这些物理资源上,为了完成不同用户的业务,需要各类型资源的协调运作。

针对上述两种云计算中的资源,可以使用统一的数学模型进行描述:

3.2 云资源调度模型

数据中心的云资源池是由计算、通信、存储资源集聚在一起形成的一种大规模复杂的异构并且动态的结构。如何将数据中心集中的资源根据不同的约束条件和各云计算角色的利益竞争关系,分配到对应的用户执行任务上,这是资源调度需要解决的问题[3]。云资源调度中心的目的就是完成从用户提交工作请求,到给用户需要执行的任务分配对应的物理资源这一过程。为了实现这一功能,设计了如图1所示的云资源调度中心,包括以下主要组件。

1)用户交互组件。用户交互组件除了完成用户的身份验证以及计费功能外,最主要的功能是对用户请求的虚拟单元类型、数量以及参数进行分析判断。对于用户提交到云中的工作,首先分析用户提交工作中各子任务的资源请求以及依赖关系,将其对应到合理的虚拟单元类型上,并划分成不同的处理阶段。其次需要分析监控中心收集到的数据,判断用户请求是否能在约束水平内完成。

2)注册中心。注册中心的主要功能是负责云数据中心集群的管理,注册中心记录集群中所有物理资源的信息,包括主机名、IP地址、MAC地址、网络信息等,当有新的物理机加入或者离开数据中心时,需要修改数据库中记录的信息。注册中心记录了云数据中心所有物理资源的有用信息,包括数据中心集群的数量和分布,对于每个集群由记录了集群中物理机器的数量,集群的状态,网络信息。集群中的每台物理机,又记录了它们的名称、位置、状态、操作系统、IP地址、端口、资源总量、网络带宽、计算能力等,还记录了物理机上创建的虚拟单元信息。

3)监控组件。云资源监控模块是负责收集整个云数据中心的计算、存储、网络等资源的使用情况,以及用户提交的工作负载情况,包括请求提交速率,类型,规格等。监控中心负责收集的性能参数有各类型资源利用率(CPU、内存、存储空间等),响应时间,网络流量等。

4)决策中心。决策中心每隔一段时间会进行一次资源决策,称之为决策时刻。决策时刻时决策中心会接收监控中心监控的各项数据,分析数据中心各物理机和虚拟单元的工作负载和资源使用情况,根据合理的资源调度算法得到优化的资源供应或调度方案,使得系统工作性能达到最佳。

该模块是云资源管理系统的核心模块,根据不同的优化目标,调用对用的资源调度算法,对云数据中心所有的可用资源进行集中式的管理和调配,以预期的目标为驱动,将所有可用资源以虚拟单元分配到各用户的工作及其子任务之中。

5)基础设施管理器。该模块是负责系统基础架构中实际的调整操作,对云数据中心的集群、物理资源、虚拟资源以及虚拟镜像进行管理,包括物理机的启动关闭、虚拟单元的创建删除、配置信息的修改等等。当该模块接收到决策中心发出的资源调度方案,将会使用云环境中的虚拟化技术,在对应的物理设备上进行虚拟单元的创建、注销或者迁移。然后将对应的用户任务匹配到该资源上,由其负责具体的任务执行工作。

4 云资源调度方法

4.1 资源调度方法

对于一个虚拟化的云数据中心,假设在某个资源调度决策时刻共有M台可用物理机,每台物理机的可用资源表示为[4]:

图2中描述了一个虚拟化云环境下资源调度问题的实例,假设现在有两台物理机,可用资源分别为(4,8,40)和(4,6,50)。在某個决策时刻隶属于三个用户的三个子任务分别请求的虚拟机类型为(2,4,20),(1,1,10)和(2,2,10)。创建虚拟机需要占用物理机上的可用资源,调度算法依据用户所请求的资源类别、数量以及物理机的资源分布、负载情况,将用户所请求虚拟机均衡的分配在物理机上,以达到性能最优及资源利用率最大。

4.2 云资源调度的流程

为了根据用户的需求,将数据中心集中管理的资源合理分配给对应的需要被执行的任务,资源调度的工作流程如图3所示:

步骤1:首先由用户通过门户网站或者调用API向云系统提交工作请求,此时用户管理中心需要先验证用户的身份。

步骤2:通过验证的用户可以向云端申请资源,用户请求分析模块接收请求,将用户工作中各子任务划分处理阶段,并分析资源请求相关参数,根据系统中可用资源总量进行判断,是否可以完成用户请求。

步骤3:若接收该请求,请求会被转交到决策中心进行处理。决策中心首先会从监控中心获取当前数据中心各物理节点和虚拟节点资源使用状态,以及注册中心中各物理节点信息以及网络信息等等。

步骤4:根据用户提交的工作类型和资源需求,决策中心选择合适的资源调度算法,进行计算,求得优化的调度方案。

步骤5:该方案发送到基础设施管理组件,由其负责具体的虚拟单元管理操作,并将用户请求中的各项子任务分发到对应合理的物理资源上。

当有新的物理节点加入数据中心云资源池时,需要首先向数据中心注册,注册消息中包含物理机的基本信息。注册中心接收消息后会给该物理节点分配一个唯一标识,返回该标识表示注册成功,该物理节点加入云系统。同时注册中心会向监控中心发送消息,通知该中心与新的物理节点建立通信,监控该节点的资源使用情况。当有物理机因老化、坏损等原因永久离开云数据中心时,需要给注册中心发送消息,通知其删除相关信息。

5 总结

本文重点关注了云计算多用户环境下,数据中心云资源调度机制。随着云计算的出现,数据中心云资源虚拟化以及所承载的应用呈现出多用户、异构化等特性,使得服务器内部多种资源间分配不均衡的问题愈加突出,严重影响了基础设施资源的使用效率。本文首先阐述了数据中心对于云资源调度机制的迫切需求。通过对数据中心云资源虚拟化技术的研究,建立了云资源调度模型。提出了多服务器云资源均衡调度模型,提高了数据中心的基础设施资源利用率。

参考文献

[1] 刘鹏.云计算的定义和特点[J]. 2012-06-05.http://www. chinacloud. en/show. aspx,2009..

[2] 黎沛姿,谭北平.在线调查的代表性与可靠性对比研究[J].市场研究. 2005(08).

[3] 张建勋,古志民,郑超. 云计算研究进展综述[J]. 计算机应用研究,2010,27(2):429-433.

[4] Leverich J,Kozyrakis C. On the energy (in) efficiency of hadoop clusters[J]. ACM SIGOPS Operating Systems Review,2010,44(1):61-65.

第一作者:王明乾(1989年12月),男,汉族,籍贯:河北清河,学历:硕士,职称:助教,研究方向:云计算。

第二作者:刘建斌(1990年5月),男,汉族,籍贯:山西省忻州市人,学历:硕士,职称:助教,研究方向:数据存储技术。