云服務模式:SaaS、PaaS和IaaS,哪一種適合你?
譯文近日我分析了Techno-Pulse網站的Google Analytics數據,結果發現幾個搜索關鍵字與Cloud Service Models(云服務模式)有關。讀者們似乎在尋找服務模式方面的實用信息,以便幫助自己作出決定。雖然我在不少文章中部分提到過這個話題,不過在此專門探討一下,希望幫助讀者更清楚地了解和決定應該選擇哪一種云服務模式。
云服務模式僅僅意味著哪一種類型的服務提供給客戶。不同的模式適合不同種類的要求,可以獲得不同的業務目標。簡單搜索一下,你會發現網上有許多關于Cloud * as a Service的內容,其中的*可以換成下面任何一個:
Desktop(桌面)、Security(安全)、Data(數據)、Software(軟件)、Platform(平臺)、Infrastructure(基礎架構)、IT(信息技術)、Testing(測試)、Hardware(硬件)、Computing(計算)、Database(數據庫)和Storage(存儲)等。
這一切讓人有點暈頭轉向。由于云計算仍在發展之中,供應商們可以自由創新并提供各種服務,這些服務方面缺乏任何嚴格而明確的規則。所以,不妨讓我化繁為簡,提出被最多人接受的服務模式類型,由美國商務部國家標準和技術研究所(NIST)定義。
NIST在其特別刊物800-146文檔中提到了三類云服務模式。制作的這篇文檔供聯邦機構使用。非政府組織也可以在自愿的基礎上使用它,不受版權保護。
三類服務模式
•SaaS(軟件即服務)
•PaaS(平臺即服務)
•IaaS(基礎架構即服務)
NIST進一步詳細地定義了這些服務,下面提供了摘要,只不過換成了本人的表述。 #p#
SaaS篇
消費者不用操心與服務有關的任何問題或麻煩。服務提供商對應用程序享有非常高的管理控制權,負責更新、部署、維護和安全。提供商對應用程序行使最終管轄權。比如說,Gmail就是一種SaaS,谷歌是提供商,我們大眾則是消費者。我們對Gmail享有的管理權和用戶級控制權非常有限,不過消費者可以通過設置來采取一系列有限的操作,比如啟用優先收件箱、簽名和撤銷發送郵件等。
下圖表明了提供商與用戶之間的相對控制級別——SaaS結構組成和控制范圍,引用自NIST文檔。
SaaS用戶是哪些?
除了組織和企業外,SaaS用戶/訂戶還可以是你我這樣的個人。在大多數情況下,使用費按用戶數量來計算。比如說,Google Apps最多可供10個電子郵件帳戶免費使用;但是如果用戶數量超過10個,Google Apps for Business每月每個用戶收費5美元。
何時/為何應該選擇SaaS?
如果你想要致力于業務,而不是把時間浪費在更換壞掉的故障、管理IT基礎架構;最重要的是,不想把時間浪費在聘請和留住IT人員上。
你應該選用哪種SaaS?
•使用SaaS最有效的是云端生產力和協作應用程序(如Google Apps),以及在線項目管理應用程序(如DeskAway以及Zoho Mail/Chat/Docs/Project/Sheet/Writer等)。
•客戶關系管理(CRM)應用程序——Impel CRM、Salesforce.com和微軟Dynamics。
•基于云的存儲和共享服務,如Dropbox、Skydrive(Windows Live)、亞馬遜簡單存儲服務(S3)、Google Docs、Box.net和Mozy。
•中小企業/中小公司可以選用EazeWork(用于人力資源、工資處理和銷售)#p#
PaaS篇
簡單地說,PaaS是可以在上面開發、測試和部署軟件的一種平臺;這意味著,軟件的整個生命周期都可以在PaaS上完成。這種服務模式專門面向應用程序的開發人員、測試人員、部署人員和管理員。這項服務提供了開發云SaaS應用程序所需要的一切資源。
下圖顯示了NIST定義的PaaS結構組成和控制范圍:
PaaS通常包括了開發環境、編程語言、編譯程序、測試工具和部署機制。在一些情況下,比如谷歌應用引擎(GAE),開發人員可以下載開發環境,然后在開發人員自己的基礎架構中本地使用開發環境;或者開發人員可以通過瀏覽器,使用提供商的基礎架構中的工具。
PaaS用戶是哪些?
獨立軟件開發商(ISV)、IT服務提供商或者甚至想開發SaaS的開發人員個體。
何時/為何應該選擇PaaS?
你完全致力于開發應用程序,其他一切都將由平臺來處理。
你應該選擇哪種PaaS?
•GAE在Java和Python開發人員個體當中比較受歡迎。
•微軟Windows Azure針對企業級用戶群。ASP.Net(C#、VB.Net)開發人員會發現采用Windows Azure很容易。
•亞馬遜也向前邁出了一步,提供PaaS:Beanstalk(這讓Java開發人員多了一個選擇)。
•幾家總部設在印度的PaaS提供商(如OrangeScape和Wolf Frameworks)正憑借其5G可視化PaaS,在市場上掀起了動靜。OrangeScape應用程序可以在所有主要的云平臺上運行,包括谷歌應用引擎、微軟Azure、IBM SmartCloud、亞馬遜彈性計算云(EC2)或數據中心,沒必要改寫應用程序。
•Engine Yard和Heroku是面向Ruby on Rails(RoR)的領先的云PaaS。Heroku(已被Saleforce.com收購)也是用于開發Facebook應用程序的優先PaaS。
•PHP開發人員可以在PHP Fog和CloudControl之間進行選擇。
•想選擇支持多語言的應用平臺,不妨考慮DotCloud。
•總部設在印度的Ozonetel Systems提供KooKoo PaaS,提供云電話服務。#p#
IaaS篇
你需要虛擬計算機、云存儲、防火墻和配置服務等網絡基礎架構部件嗎?IaaS正是你應該選擇的云服務模式。系統管理員是這種服務的一類用戶。使用費可以按多個標準來計算,比如每個處理器小時、每小時存儲的數據(GB)、所用的網絡帶寬、每小時所用的網絡基礎架構以及所用的增值服務(如監控和自動擴展等),不一而足。
下圖顯示了NIST定義的IaaS結構組成和控制范圍:
IaaS用戶是哪些?
你知道《開心農場》和《黑幫戰爭》嗎?是的,它們是由Zynga.com開發的最受歡迎的兩款Facebook游戲。每個月超過2.3億個用戶在亞馬遜AWS上運行12000多臺服務器。每當游戲開發商推出一款新游戲,開始是使用幾臺服務器,然后實時擴增服務器容量。
為了防止服務器遭到分布式拒絕服務攻擊(DDOS),頗有爭議的維基解密網站(Wikileaks)曾托管在亞馬遜AWS上。現在,這個網站似乎搬回到了瑞典的主機上。
其中最重要的用戶是SaaS和PaaS提供商,它們與IaaS提供商托管在一起。總部設在印度的在線訂票服務商redBus。
何時/為何應該選擇IaaS?
IaaS對于不知道新推出的應用程序/網站會有多成功的創業公司來說非常有用。你可以選擇多個操作系統、平臺、數據庫和內容分發網絡(CDN)——它們都在一個地方。
注意:由于經濟原因,目前不建議把每月訪客量不到10000人次的靜態網站托管在IaaS平臺上。如果你使用亞馬遜AWS,可能每月需要付費18美元左右。
你應該選擇哪種IaaS?
亞馬遜是IaaS領域的先驅。其他領先的提供商包括Rackspace、GoGrid、Joyent、Rightscale和Terremark(已被美國電信運營商韋里遜公司收購)。
想選擇總部設在印度的IaaS,不妨考慮下面兩家提供商:
•NetMagic Solutions
•InstaCompute(隸屬印度電信運營商塔塔通信公司)