论文部分内容阅读
随着互联网技术的发展,云计算已经成为一种趋势,平台即服务(PaaS)就是云计算的一种重要类型。现在已经出现了很多优秀的PaaS平台,例如微软公司的Azure、谷歌公司的App Engine、Vmware公司的Cloud Foundry。PaaS整合现有的各种业务能力,成为一个基础平台,并对其之上的应用提供各种技术支持。PaaS平台需要管理其之上的成千上万的SaaS应用的部署和更新,因此自动化部署模块对PaaS平台而言有着重要的应用意义。本文的主要研究内容是为PaaS平台实现一套功能完善的自动化部署模块。本文首先列举了比较流行PaaS平台,了解了PaaS平台对自动化部署的需求,分析了传统自动化部署机制,发现传统自动化部署机制存在部署失败导致服务停止的问题,设计出了基于迭代部署的云平台自动化部署模块。云平台自动化部署模块采用了Event-Driving技术,包装了现在比较流行的基于AMQP协议的RabbitMQ消息总线,降低了各功能模块间的耦合度,能够比较容易的向云平台自动化部署模块添加新的功能。云平台自动化部署模块采用ZooKeeper来发布和共享信息,降低了与PaaS平台的其他功能模块的耦合度,能够比较容易地从一个PaaS平台移植到另一个PaaS平台。云平台自动化部署模块主要采用Java开发,含有一定Ruby脚本,具有平台无关性,通过了单元测试,功能测试和性能测试,已经满足了PaaS平台的自动化部署需求。