论文部分内容阅读
互联网时代下,大多数互联网企业的产品迭代快速,需求的变更也比较频繁。如何实践应用的快速开发、测试和部署流程对提高开发效率起重要作用。云计算技术迅速发展使得云服务模式的实践方式越来越多样化。云计算为产品服务的增加、使用和交付提供平台。开发团队利用云计算技术来支持软件开发流程中的部署和发布工作已成为趋势。企业单纯依靠购买商业云产品来实现产品的发布与部署,在IT成本上会花费大量金钱,数据安全性也不能保障。与商业化的云产品相比,构建企业内部的私有云在数据安全性和成本方面对企业的云计算模式的实践有着重要意义。本文结合企业开发需求,首先通过研究和对比各种云服务模式的特点,将采取构建平台即服务的方式来支持软件持续集成、持续交付和持续部署的流程。再对现有的云计算开发技术的进行研究与对比,提出基于Cloud Foundry开源技术来实现企业私有云平台的方案。通过虚拟化技术将企业的计算设备和存储设备整合成一个资源池,在此基础上采用Cloud Foundry技术构建私有云平台,利用集群化部署工具来实现Cloud Foundry的部署,实现一个稳定的,开放的和灵活扩展的云平台。再针对现有的企业软件系统所需要的开发框架和服务进行云平台扩展,使云平台可以为应用程序自动匹配开发框架,动态分配计算资源和提供基础服务,减少开发人员搭建环境等重复性工作,为应用的快速部署、测试和发布有着提供不同阶段的运行环境。在构建好企业私有云平台后,平台的操作是依靠命令行工具来进行,操作难度较大导致平台的易用性降低。Cloud Foundry的日志收集组件也仅提供基本的日志收集功能,当出现节点故障重启后,日志数据将永久丢失,并且不能提供日志检索功能。结合企业私有云的操作和日志管理问题,本文将设计并实现一个云资源管理系统,使用户可以在部署应用程序时直接指定内存大小和实例个数来动态获取云端的资源,并且开发者可以通过该系统对云平台中的应用程序,服务实例和日志数据进行可视化管理,提供在线创建应用,绑定服务实例以及对应用的日志的检索等功能,满足开发人员对于云平台的灵活操作和管理的需求。最后,本文分别通过单元测试,功能测试和性能测试分别对云资源管理系统进行功能完整性和稳定性方面的测试。检测系统的功能是否满足企业需求,并验证系统在运行时稳定性。为了更加实现一个高效稳定的云平台从而更好地降低企业软件开发过程中的运维复杂度,未来可以对Cloud Foundry云平台的容错方案的研究和改进。另外对云平台在其他IaaS层的实现方案的实践以及移动端软件的设计与实现等,都值得进一步研究和实现,将云计算的服务模式充分实践。