论文部分内容阅读
随着分布式计算、网络技术以及其他相关技术的发展,云计算应运而生。云计算将计算资源整合在云端,为用户提供弹性、可靠、方便的租赁式服务。其中,云计算PaaS平台为用户提供了软件开发部署平台。用户可以使用PaaS平台进行软件的快速开发部署。但同时,PaaS平台依然不够完善,特别是开源PaaS,存在许多的缺陷。尤其是在协同管理方面,存在不足。CloudFoundry作为业界第一个开源PaaS,无法和IaaS层进行协作。从系统的部署到平台上程序的动态管理,以及系统自身组件的监控管理,CloudFoundry都暂时没有优秀的解决方案。目前拥有的部署工具Bosh使用难度较大,同时配置繁琐,而且无法动态配置。而CloudFoundry自带的监控工具过于简单,而且效率非常低。在深入了解了PaaS平台和IaaS平台以及他们之间协作流程的基础上,本文首次提出在CloudFoundry上建立一套完整的协同管理引擎。这套引擎可以方便跨越IaaS平台,同时为CloudFoundry平台提供了组监控、组件恢复以及自动扩展等各种协同管理之上的服务。本文主要解决了在协同管理引擎中分布式数据传递通信机制、自动扩展效率、故障反应速率、动态配置以及组件监控等关键问题。利用ZooKeeper高效率、高可靠性的特点,使协同管理引擎可以快速部署恢复组件、而且可以可靠地提供自动扩展等功能。从本文最后的实验中可以看到,协同开发引擎已经基本达到预期目标,可以实现快速的部署,同时在组件启动、程序扩展效率和动态调整等方面具有理想的表现。