編者按:PaaS的發(fā)展已經(jīng)經(jīng)歷了兩個階段:第一個階段通過為開發(fā)者提供DevOps 等工具,來加速應(yīng)用交付,如GAE、Force.com等;第二代則實(shí)現(xiàn)全方位的應(yīng)用生命周期管理,關(guān)注開放性和云間相互操作性,其代表者包括Cloud Foundry、OpenShift。本文作者魯為民博士是 ANCHORA 的創(chuàng)始人和CEO,在美國有多年工作經(jīng)驗。魯為民認(rèn)為當(dāng)前PaaS的定義過于狹隘,他提出了一個新的概念 InPaaS (Infrastructure-and-Platform as a Service),這個新一代的云應(yīng)用平臺應(yīng)該整合目前包括 PaaS和IaaS 在內(nèi)的多種技術(shù),同時支持云服務(wù)的不同部署方式。以下為原文:
在本周的在線培訓(xùn)中,用友軟件PaaS混合云負(fù)責(zé)人白小勇,也將帶來“PaaS平臺在企業(yè)IT中的應(yīng)用”課程,報名地址:http://huiyi.csdn.net/meeting/info/825/biz
按照NIST的定義,IaaS主要提供包括計算、存儲和網(wǎng)絡(luò)等基本的計算資源的交付和管理能力,使用戶能夠在上面部署任何軟件。而PaaS則是被定義為一個建立在云基礎(chǔ)設(shè)施上的應(yīng)用部署系統(tǒng),這個系統(tǒng)為用戶提供API,工具和服務(wù)來部署和管理應(yīng)用和服務(wù)。而PaaS的用戶是開發(fā)測試者以及IT運(yùn)維和管理者。 PaaS經(jīng)歷了一個摸索期后,人們已對PaaS逐漸形成了一個較為清晰的共識,PaaS已超越了IaaS API和DevOps等工具,它通過應(yīng)用生命周期的管理來加速應(yīng)用的交付。從早期的PaaS技術(shù)的代表者 Google App Engine、Force.com、Heroku和SAE 等中可以看到 PaaS具有以下一些基本特征:
這些PaaS加速應(yīng)用的交付。首先,它們讓包括開發(fā)者在內(nèi)的用戶不需要擔(dān)心硬件和虛擬機(jī)器,操作系統(tǒng),應(yīng)用服務(wù)器,以及對服務(wù)管理,使得他們更加快捷和容易地進(jìn)行應(yīng)用部署和迭代,以及應(yīng)用的橫向擴(kuò)展。但其明顯的短塊是用戶很容易被綁定。他們需要使用特定的編程語言來開發(fā)應(yīng)用程序,需要針對特定的服務(wù)插件和APIs來編程,或者需要部署應(yīng)用在特定的IaaS上。這些特點(diǎn)限制了用戶對于應(yīng)用程序開發(fā),部署和運(yùn)維的自由度和敏捷性,以及應(yīng)用程序的可移植性。
正因為如此,新一代的云應(yīng)用平臺技術(shù)則實(shí)現(xiàn)全方位的應(yīng)用生命周期管理,關(guān)注開放性、應(yīng)用的可移植性和云間相互操作性,其代表者包括Cloud Foundry, OpenShift, Docker, Heroku, MoPaaS和BAE等PaaS技術(shù)或服務(wù),除了在第一代PaaS技術(shù)對用戶在實(shí)現(xiàn)應(yīng)用交付的加速所提供的功能外,具備以下大多數(shù)特征:
多方位的開放將計算資源的抽象提高到應(yīng)用服務(wù)層面,同時將應(yīng)用的運(yùn)維交由平臺來自動管理,也使得PaaS有效地提供應(yīng)用程序的可移植性。同時,通過提供方便的工具和不斷擴(kuò)展的服務(wù)讓開發(fā)者對于開發(fā)語音、框架、服務(wù)和基礎(chǔ)設(shè)施有了更多的選擇自由度。通過計算資源的安全隔離,使得計算資源得以有效的安全的交付和管理。當(dāng)然,從像Cloud Foundry這樣PaaS技術(shù)到真正實(shí)現(xiàn)PaaS云應(yīng)用平臺服務(wù)還需要很多工作。圖1是一個基于Cloud Foundry的典型PaaS架構(gòu)。
基于 Cloud Foundry 的 PaaS架構(gòu)
事實(shí)上,市場對云應(yīng)用平臺服務(wù)的剛性需求不斷的增長,但目前大家理解的IaaS和PaaS反映對計算平臺資源抽象的兩個極端:PaaS對計算資源的抽象主要從應(yīng)用和服務(wù)層面來進(jìn)行,而IaaS則更多是物理計算資源的抽象。用戶應(yīng)用需求的多元性需要多元的計算資源抽象。單獨(dú)IaaS或PaaS提供的服務(wù)不可能完全滿足市場的需求。下面兩個場景則反映了這樣的需求:
企業(yè)IT的需求和新經(jīng)濟(jì)的發(fā)展需要應(yīng)用生命周期管理變得更快捷和容易。云平臺給人們帶來的希望包括解決上面這些問題,提供高效的應(yīng)用開發(fā)部署,監(jiān)控管理,將抽象層面從虛擬機(jī)和操作系統(tǒng)提升到應(yīng)用和服務(wù),以及平臺本身的高可用,高容錯,可監(jiān)控,擴(kuò)展性,容易部署和更新,從而實(shí)現(xiàn)簡單和敏捷的應(yīng)用生命周期管理。
特別是企業(yè)云應(yīng)用平臺市場正處于一個快速成長階段。企業(yè)目前正積極的尋求合適的云戰(zhàn)略,問題已從"為何“變?yōu)榱恕霸鯓印薄?0%的企業(yè)和機(jī)構(gòu)考慮采用云計算技術(shù),近80%的企業(yè)希望采用多云的應(yīng)用部署。IaaS首先在企業(yè)生產(chǎn)獲得牽引力, 通過提供虛擬計算、存儲、數(shù)據(jù)庫和其他基礎(chǔ)設(shè)施硬件服務(wù)為企業(yè)提供IT資源的整合和管理。但人們發(fā)現(xiàn),IaaS 遠(yuǎn)遠(yuǎn)不能滿足企業(yè)IT的需求,特別在IaaS上進(jìn)行應(yīng)用的開發(fā)、集成、部署和運(yùn)維還是相當(dāng)?shù)馁M(fèi)時費(fèi)錢。由于PaaS通過像Google App Engine 和 Heroku等服務(wù)已被充分驗證,作為“最后一英里”的云技術(shù),是企業(yè)云計算戰(zhàn)略的一個關(guān)鍵組成部分。但是不論是IaaS還是PaaS單獨(dú)都不可能完全滿足用戶的需求,目前用戶以開始考慮和實(shí)施IaaS和PaaS的相互滲透和融合。實(shí)際上,他們并不關(guān)心這些服務(wù)是姓“I"(基礎(chǔ)設(shè)施)還是”P"(平臺)。他們希望新的云計算平臺能整合企業(yè)的各種需求,提供多元的計算資源抽象,讓新的應(yīng)用和服務(wù)的開發(fā)和部署變動非常迅捷,能讓應(yīng)用保持持久運(yùn)行。
云計算市場希望新一代的云平臺能呈現(xiàn)這些景愿,將復(fù)雜的云基礎(chǔ)設(shè)施和各種應(yīng)用資源變成可配置可管理的實(shí)體;提供靈活多樣的不同抽象程度的計算資源實(shí)體以滿足不同業(yè)務(wù)的需求;讓創(chuàng)新更容易和更快捷的同時,還能夠能提供企業(yè)所需要的對平臺本身的控制和能見度。這個新一代的云應(yīng)用平臺應(yīng)該整合目前包括 PaaS和IaaS 在內(nèi)的多種技術(shù),同時支持云服務(wù)的不同部署方式,包括公有云,私有云,社區(qū)云,和混合云,我們暫且稱為 InPaaS (Infrastructure-and-Platform as a Service)。具體來說,InPaaS云平臺技術(shù)具有高可用、高安全、易交互、易組合、易監(jiān)管、易審計和易維護(hù)等特點(diǎn),特別包括以下的一些功能:
實(shí)現(xiàn)InPaaS云平臺不是簡單地將PaaS和IaaS進(jìn)行集成,因為目前各種IaaS和PaaS的多種功能重疊、使得疊加后系統(tǒng)性能降低,用戶使用復(fù)雜度增加。需要更深層了解用戶需求,找到適合市場需求的解決方案。另外,人們不斷地從不同角度來開發(fā)一系列新的云計算技術(shù)以解決不同的市場需求,而這些也可以作為InPaaS所需要的一些技術(shù)元素。比如,Docker等新一代輕量級容器將有可能成為 InPaaS所需要的輕量級容器技術(shù)的候選,以實(shí)現(xiàn)所需要的計算資源抽象,交付和管理。此外,SDN等技術(shù)也可能是一個實(shí)現(xiàn)InPaaS各個節(jié)點(diǎn)間和跨云的安全有效的通訊機(jī)制。
就整體解決方案來說,Cloud Foundry 之父Derek Collison和他的初創(chuàng)公司Apcera在云平臺技術(shù)上走在了前面,他們通過全新的技術(shù)架構(gòu)設(shè)計開發(fā)出一種策略驅(qū)動(policy-driven)的新一代企業(yè)云平臺 Continuum來整合目前的 IaaS、PaaS和SaaS(下圖)。其核心是通過透明地導(dǎo)入策略來提供企業(yè)IT所需要的控制和能見度。此外,微軟前高管和華納兄弟的技術(shù)總監(jiān)Jonathan Murray提出了相近的可組合的企業(yè)(composable enterprise)的概念來定義新的云平臺服務(wù),通過它企業(yè)可以建立應(yīng)用創(chuàng)建,托管,監(jiān)控一條龍的快速服務(wù)來滿足業(yè)務(wù)成長的需求。用戶可以通過其來加速生產(chǎn),應(yīng)用開發(fā)變得越來越標(biāo)準(zhǔn)化。應(yīng)用會變得比任何時候都更加容易創(chuàng)建,越來越多的服務(wù)將不同的組件組合在一起。
Apcera 的 Continuum 架構(gòu)
作者簡介:魯為民博士是 ANCHORA 的創(chuàng)始人和CEO。他在云計算、信息存儲、大數(shù)據(jù)、機(jī)器學(xué)習(xí)、和智能系統(tǒng)等領(lǐng)域具有豐富理論和實(shí)踐經(jīng)驗,先后獲得北京清華大學(xué)學(xué)士和美國加州理工學(xué)院 (CalTech) 博士學(xué)位。在包括IEEE Transactions等學(xué)術(shù)期刊和諸多國際會議上發(fā)表了超過50篇學(xué)術(shù)論文、取得了多項美國和中國發(fā)明專利。他擁有超過十五年在美國硅谷從事高科技產(chǎn)品研發(fā)、市場營銷、以及項目團(tuán)隊管理的經(jīng)驗。他先后在美國國家宇航局噴氣推進(jìn)實(shí)驗室 (NASA JPL)、硅谷IT初創(chuàng)公司、以及跨國企業(yè)IBM 等從事多年高科技產(chǎn)品的研究和開發(fā)。他創(chuàng)辦了ANCHORA,開發(fā)和銷售新一代云計算平臺產(chǎn)品和服務(wù);特別是提供中國首個開放中立的云應(yīng)用平臺服務(wù):MoPaaS。
(注:作者感謝Derek Collison、陳懷臨、黃允松、白小勇,丁軼群和王凱等同仁有益的討論和意見。)