云计算中虚拟化节能系统的制作方法
【技术领域】
[0001] 本发明涉及云计算领域,尤其涉及云计算中虚拟化节能系统。
【背景技术】
[0002] 云计算是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息 可以按需求提供给计算机和其他设备,主要是基于互联网的相关服务的增加、使用和交付 模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的 一种比喻说法。过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设 施的抽象。狭义云计算指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方 式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式 获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。它意味着计算 能力也可作为一种商品通过互联网进行流通。
[0003] 目前,由于虚拟化技术的快速发展,云计算数据中心也得到了广泛的运用。云计算 平台中的能耗问题日益严重,判断一个数据中心是否节能,能耗的大小是衡量的重要标准 之一,因此如何计算能耗显得非常重要。目前的数据中心中服务器的资源消耗比较严重,造 成节能环保性能差,在使用过程中存在一定的缺陷。
[0004] 综上所述,针对云计算平台能耗较大的缺陷,提出云计算中虚拟化节能系统,以解 决现有技术的不足。
【发明内容】
[0005] 本发明的目的是提供云计算中虚拟化节能系统,通过VM迁移代价模型以及SLA度 量模型作为数据中心的能耗评估模型,设计与实现了云计算中虚拟化节能,解决在云计算 过程中能耗过高的现象。
[0006] 本发明为解决其技术问题所采用的技术方案是,
[0007] 云计算中虚拟化节能系统,包括有云计算资源管理原型系统和后台数据处理系 统;
[0008] 后台数据处理系统包含有物理资源池、虚拟机层、本地模块、用户应用层、全局资 源管理器;物理资源池包含有物理机、网服务器、存储、网络;
[0009] 创建虚拟机时:用户通过全局的管理模块接受到申请虚拟机这个请求,然后分析 这个请求,最后通过选择一台合适的物理机,物理机通过Hypervisor软件创建虚拟机,最 后将创建的虚拟机返回给用户,用户可以在用户应用层安装所需的应用程序;
[0010] 为了达到云计算数据中心节能,同时兼顾用户SLA的目标,在虚拟机层和用户应 用层之间分别添加了能耗监控模块、SLA判断模块、请求分析模块、请求调度模块;
[0011] 云计算资源管理原型系统包含有物理机管理模块、虚拟机管理模块、虚拟机调度 策略模块、监控模块、镜像管理模块、Web模块;
[0012] 物理机管理模块负责物理机的管理,包括注册物理机、添加物理机、物理机性能监 控以、基本信息维护;
[0013] 虚拟机管理模块负责虚拟机状态的管理,包括创建虚拟机、虚拟机生命周期管理、 多VMM支持以及虚拟机基本信息维护;
[0014] 虚拟机调度策略模块负责添加虚拟机放置算法以及虚拟机选择算法;
[0015] 监控模块包括物理机监控和虚拟机监控两个子模块,主要是收集CPU负载信息;
[0016] 镜像管理模块包括镜像的上传、镜像的检索以及镜像的删除;
[0017] Web模块包括监控信息展示、物理机虚拟机管理、镜像策略管理、用户管理和日志 管理等几个子模块,用户和管理员可以通过Web模块操作整个云计算资源管理原型系统, 也可以通过Web模块了解整个资源池中的信息。
[0018] 进一步,所述的Hypervisor软件包括Xen,KVM,物理机可以在一台单一的服务器 上虚拟出多台相互隔离的虚拟机,虚拟机使用的用户来之间是相互是透明的,他们不能感 知到这台物理服务器有多少台虚拟机,也不能判断两台虚拟机是否在同一台物理机上。
[0019] 进一步,所述的请求分析模块用于拦截并分析用户请求,在提交用户请求前作出 是否接受这个用户请求,同时,通过从能耗监控模块和虚拟机管理模块获取的信息,请求分 析模块来作出是否接受请求的决定;
[0020] 请求调度是分配用户请求的虚拟机,决定什么时候开启和关闭虚拟机来满足用户 请求;
[0021] SLA判断模块为用户和云计算服务提供商之间为了保证服务的QoS,都会以一种 协议的方式来保证,比如服务的吞吐量,相应时间等;
[0022] 能耗监控模块用来决定物理机的开启与关闭,当物理机空闲时,关闭物理机可以 节省空闲物理机的能耗。
[0023] 进一步,所述的全局管理模块位于整个数据中心的总控节点上,全局管理模块的 主要的作用就是收集从各个本地管理模块收集上传的信息,获取整个数据中心的资源利用 率情况,并且维护数据中心的资源使用,当全局管理模块判断出数据中心的资源利用不合 理时,就通过优化的命令来调整数据中心中的虚拟机的状态,使其达到一个合理的目标。
[0024] 进一步,所述的本地管理模块位于每一个物理机上,本地实时的监控特定物理机 的CPU利用率,并且,根据CPU的负载情况,判断物理机资源的使用情况,决定哪台虚拟机需 要迁移,什么时候迁移。
[0025] 进一步,所述的物理机注册模块主要负责把物理机添加到管理调动系统,物理机 通过向总控制端发送请求,总控制端决定是否允许该物理机加到系统当中,总控制端通过 心跳的方式不断检测已经加入到系统的物理机是否正常,如果不正常则从数据库信息中做 相应的修改,并向管理员发送相应的报警信息,虚拟机的创建会改变物理机现有可用资源, 更新模块负责更新物理机的信息;
[0026] 物理机管理模块采用C/S架构,当一个物理机想要加入云计算环境中的物理资源 池时,物理机上的客户端先负责物理机信息的收集和检查,然后把这些信息发送到远程的 云计算控制端服务器,控制端服务器负责把物理机添加到物理资源池中,最后在数据库中 添加相应的信息;
[0027] 云计算环境中的物理机以物理机组的方式分成若干组,每个物理机组中有若干物 理机,每个物理机上又有若干的虚拟机,物理机的基本信息和当前的状态,包括物理机名 字,IP地址、最大内存,状态,内存,可用内存,可用CPU数等信息。
[0028] 进一步,所述的虚拟机管理模块在本地管理模块决定哪个虚拟机需要迁移后,由 虚拟机管理模块来负责完成虚拟机的迁移任务,当迁移完成后,调整源物理机和目标物理 机的功耗,进过调整之后,一些闲置的物理机就可以关闭以达到节能的目标,还有一部分物 理机处于休眠状态,之所有没有关闭这些物理机是因为根据需求判断,当请求较多时,处于 休眠状态的物理机可以快速的转换到运行状态来满足用户的请求,这样可以应对高峰时刻 的高并发请求;
[0029] 虚拟机的管理模块包括开启、关闭、迁移、暂停、销毁和重启等操作。
[0030] 进一步,所述的监控模块采用Nagios来监控系统中的物理机和虚拟机。监控的 信息主要包括CPU的负载,内存和网络等信息,监控获取的物理机和虚拟机的信息存储在 MySQL数据库中,调度算法可以通过这些监控信息来做一些虚拟机的调整;通过Nagios获 取的监控信息都存入到了 MySQL数据库中,这样虚拟机的调度策略就可以通过数据库中的 信息来获取物理机和虚拟机的当前和历史的信息,通过这些信息来动态调整整个云平台中 的虚拟机。
[0031] 进一步,虚拟机放置及调整模块主要用来添加具体的虚拟机的放置及调整策略, 系统