你應該知道的五種開源PaaS方案
譯文開源平臺即服務(PaaS)讓廣大開發人員和用戶可以貢獻及共享源代碼和擴展件。有的PaaS由廠商驅動,有的則基于標準。
廠商驅動的開源PaaS讓廣大開發人員和用戶被某家廠商牢牢鎖定。說到將應用程序從廠商驅動的開源平臺傳送到另一個平臺,開發人員在這方面的控制權很有限。
基于標準的開放平臺則與廠商無關,比較靈活;它旨在對生命周期管理的自動化過程的編排實現標準化。開發人員可以跨云傳送應用程序。
下面不妨看一下五種流行的開源平臺。請注意:并非所有這些平臺都與OpenStack協同運行。
廠商驅動的開源PaaS
Cloud Foundry(原先由VMware開發)從廣大Ruby開發人員和用戶處獲得源代碼。這個開源PaaS允許人們將信息系統部署到OpenStack、亞馬遜網絡服務(AWS)、vSphere、vCloud Air和vCloud Director。Cloud Foundry提供的主機托管服務包括:MySQL(可用于開發SaaS應用程序)、MongoDB(一種NoSQL數據庫)和RabbitMQ(以異步方式連接應用程序的消息代理)。為了簡化任務,PaaS開發人員獲得諸多工具,比如命令行工具、Eclipse插件、構建整合工具以及應用程序擴展工具。與Cloud Foundry競爭的平臺還有AppScale、Heroku、OpenShift和谷歌應用引擎(Google App Engine)。注意:2014年12月9日,Cloud Foundry基金會宣布,它將作為一個Linux基金會協作項目來加以管理。
OpenShift(紅帽)在私有云(OpenShift Enterprise)、公有云(OpenShift Online)和上游社區(通過OpenShift Origin項目)中運行。OpenShift托管運行MySQL和MongoDB;OpenShift支持的其他數據庫包括PostgreSQL和微軟SQL。這個開源PaaS在紅帽企業級Linux上運行,為你提供了一套客戶(命令)工具集。你可以使用JavaScript、Ruby、Python、PHP、Perl和Java。OpenShift在OpenStack上運行。
Stackato(ActiveState)是基于Cloud Foundry的PaaS。你可以從Stackato的應用程序商店選擇開源項目,而不是貢獻源代碼。你可以瀏覽用各種語言和框架編寫而成的眾多開源項目。為了快速部署,你只要點擊某個項目。
如果你很好奇,可以查看某個項目的源代碼,看看它是如何構建的。你可以決定是定制項目,還是使用自己的應用程序。
Stackato有三個版本可用:
- Stackato Micro Cloud:假設你想把應用程序部署到桌面虛擬機上,或者在亞馬遜EC2沙盒上試一試Micro Cloud。你僅限于4 GB內存、單一節點和基于社區的支持。
- Stackato Cluster:假設你是小型團隊的負責人,想構建小型集群,把應用程序部署到自己的基礎設施上或公有云上。你僅限于20 GB內存和基于社區的支持。你想要多少個節點,就可以有多少個節點。
- Stackato Enterprise:假設貴企業想把應用程序部署到虛擬機管理程序或基礎設施即服務(IaaS)上,同時可充分利用自動擴展的優點。它提供了配置和生產支持,有服務級別協議(SLA)作為保障。
你可以將Stackato與OpenStack、vSphere、CloudStack、XenServer、KVM、HP Cloud Services和AWS結合使用。
2013年6月,Apache Stratos(由WSO2捐獻)作為一種開源PaaS捐獻給了Apache。它可以與許多應用服務器、數據庫、語言、甚至遺留系統協同運行。你可以設置分區來控制IaaS資源。WSO2 App Factory可以幫助你加快PaaS上的生命周期迭代。
這個平臺的貢獻者包括來自SUSE、思科、思杰、美國宇航局噴氣推進實驗室(JPL)、Sungard和Engine Yard的開發人員。你可以將Stratos與AWS、OpenStack和vCloud結合使用。
基于標準的開源PaaS
Cloudify(GigaSpaces)基于OASIS TOSCA(云應用程序的拓撲結構和編排規范)的草案版本。這項與廠商無關的標準的技術委員會成立于2012年。標準的發起者包括冠群、華為、IBM、NetApp、紅帽和SAP。
這項標準并不依賴任何一家廠商的技術(比如虛擬機管理程序虛擬化)就可以運行開源PaaS;它描述應用程序的拓撲結構是工作流程的基礎,工作流程反過來充當策略的基本構建模塊。
該標準可以處理開發人員手動執行下列任務時所犯的嚴重錯誤:
- 設置監控警報;
- 執行部署策略;
- 收集并分析日志;以及
- 對照SLA中的服務可用性保障,衡量性能。
為了消除人員的干預工作,該標準旨在幫助PaaS開發人員將生命周期實現自動化,包括跨云的部署、擴展、補丁、監控和補救。構建并使用開發人員可以使用的云服務模塊庫,就能實現自動化。
你可以使用PaaS來測試自動化和編排流程執行起來多順暢。Cloudify可以在OpenStack、AWS、CloudStack、微軟Azure和VMware上實現自動部署。
結束語
如果你想貢獻并共享源代碼,可以選擇一種開源PaaS。務必要看一下它能否與OpenStack或其他IaaS云經濟高效地協同運行。
英文原文鏈接:http://www.techrepublic.com/article/five-open-source-paas-options-you-should-know/