开源平台即服务(PaaS)允许开发人员和用户贡献和共享源代码和扩展。一些PaaS是供应商驱动的,而另一些则是基于标准的。厂商驱动的开源PaaS让开发者和用户被某个厂商牢牢锁定。在将应用程序从供应商驱动的开源平台转移到另一个平台时,开发人员对此的控制有限。一个开放的、基于标准的平台是供应商中立和灵活的;它旨在标准化生命周期管理自动化流程的编排。开发人员可以跨云发布应用程序。让我们来看看五个流行的开源平台。请注意:并非所有这些平台都适用于OpenStack。供应商驱动的开源PaaSCloudFoundry(以前由VMware开发)从广泛的Ruby开发人员和用户那里获取源代码。这种开源PaaS允许人们将信息系统部署到OpenStack、AmazonWebServices(AWS)、vSphere、vCloudAir和vCloudDirector。CloudFoundry提供的托管服务包括:MySQL(可用于开发SaaS应用程序)、MongoDB(NoSQL数据库)和RabbitMQ(用于异步连接应用程序的消息代理)。为了简化任务,PaaS开发人员获得了命令行工具、Eclipse插件、构建集成工具和应用程序扩展工具等工具。CloudFoundry的竞争平台包括AppScale、Heroku、OpenShift和GoogleAppEngine。注:2014年12月9日,CloudFoundryFoundation宣布将作为LinuxFoundationCollaborativeProject进行管理。OpenShift(RedHat)在私有云(OpenShiftEnterprise)、公共云(OpenShiftOnline)和上游社区(通过OpenShiftOrigin项目)中运行。OpenShift托管MySQL和MongoDB;OpenShift支持的其他数据库包括PostgreSQL和MicrosoftSQL。此开源PaaS在RedHatEnterpriseLinux上运行,并为您提供一组客户端(命令)工具。您可以使用JavaScript、Ruby、Python、PHP、Perl和Java。OpenShift在OpenStack上运行。Stackato(ActiveState)是一个基于CloudFoundry的PaaS。您可以从Stackato的应用商店中选择开源项目,而不是贡献源代码。您可以浏览众多用各种语言和框架编写的开源项目。为了快速部署,您只需单击一个项目。如果您好奇,可以查看项目的源代码以了解它是如何构建的。您可以决定是自定义项目,还是使用您自己的应用程序。Stackato提供三个版本:StackatoMicroCloud:假设您想将应用程序部署到桌面虚拟机,或者尝试在AmazonEC2沙箱上使用MicroCloud。您仅限于4GB内存、单个节点和基于社区的支持。StackatoCluster:假设你是一个小团队的领导者,想搭建一个小集群,将应用部署在自己的基础设施或公有云上。您仅限于20GB的内存和基于社区的支持。您可以拥有任意数量的节点。StackatoEnterprise:假设您的企业希望在管理程序或基础设施即服务(IaaS)上部署应用程序,同时利用自动扩展。它提供配置和生产支持,并以服务级别协议(SLA)为后盾。您可以将Stackato与OpenStack、vSphere、CloudStack、XenServer、KVM、HP云服务和AWS一起使用。2013年6月,ApacheStratos(由WSO2捐赠)作为开源PaaS捐赠给Apache。它适用于许多应用程序服务器、数据库、语言,甚至遗留系统。您可以设置分区来控制IaaS资源。WSO2AppFactory可以帮助您加速PaaS上的生命周期迭代。该平台的贡献者包括来自SUSE、Cisco、Citrix、NASA喷气推进实验室(JPL)、Sungard和EngineYard的开发人员。您可以将Stratos与AWS、OpenStack和vCloud结合使用。基于标准的开源PaaSCloudify(GigaSpaces)基于OASISTOSCA(云应用程序拓扑和编排规范)的草案版本。该供应商中立标准的技术委员会于2012年成立。标准赞助商包括CA、华为、IBM、NetApp、RedHat和SAP。该标准不依赖任何一家供应商的技术(如管理程序虚拟化)来运行开源PaaS;它将应用程序的拓扑结构描述为工作流的基础,而工作流又是策略的基本构建块。该标准解决了开发人员在手动操作时犯下的严重错误:设置监控警报;执行部署策略;收集和分析日志;根据SLA中的服务可用性保证衡量性能。为了消除人为干预,该标准旨在帮助PaaS开发人员实现生命周期自动化,包括跨云部署、扩展、修补、监控和修复。可以通过构建和使用开发人员可以使用的云服务模块库来实现自动化。您可以使用PaaS来测试自动化和编排过程的工作情况。Cloudify可以在OpenStack、AWS、CloudStack、MicrosoftAzure和VMware上自动部署。结论如果您想贡献和共享源代码,您可以选择开源PaaS。看看它是否可以经济高效地与OpenStack或其他IaaS云一起工作。英文原文链接:http://www.techrepublic.com/article/five-open-source-paas-options-you-should-know/
