品高云計算的研發(fā)選擇從核心基礎的IaaS切入,并從GoogleApp Engine、AmazonAWS、NASA Nebula、MicrosoftAzure、VMwareCloudFoundry、SinaApp Engine等公有云的實踐應用中思考了各個云計算廠商從IaaS、PaaS到SaaS等各種服務形態(tài)。同時這跟品高長期服務政府、大型企業(yè)的IT系統(tǒng)建設,對政府機構(gòu)、企事業(yè)單位的IT系統(tǒng)演進有深入的了解有很大的關系 。
可演進
作為云計算的倡導力量Google公司,提供公眾的App Engine,“顛覆”了以往的技術(shù)路線。在Google App Engine的沙盒里,沒有操作系統(tǒng)OS位置,因此沒有Unix對比Windows那個更強的哈姆雷特式問題;也沒有關系數(shù)據(jù)庫的位置,因此不需要在Oracle/SQL Server/DB2選擇,也包括MySQL等開源數(shù)據(jù)庫;沒有了傳統(tǒng)的平臺,也就沒有傳統(tǒng)的平臺調(diào)用,POSIX標準、文件協(xié)議、進程通訊等也沒有了,現(xiàn)實IT基礎世界中存在差異的很多地方?jīng)]有了。這個平臺只剩下了App Engine平臺,除了Python語言外,雖然支持Java,但是從官方網(wǎng)站就可以看出Java的很多標準子集都不能運行在沙盒里。
MicrosoftWindows Azure雖然在技術(shù)沒有象Google那么“前衛(wèi)”,但一向擅長兼容性的微軟也沒有能讓開發(fā)者的.NET程序方便、快速地遷移上云運行,究其原因就是重新設計了我們傳統(tǒng)觀念的一些API,譬如使用Blob存儲取而代傳統(tǒng)的文件系統(tǒng)API等。
因此,品高在設計基礎架構(gòu)云平臺的時候,更多學習Amazon這個行業(yè)No.1的基礎架構(gòu)商業(yè)云的功能以及定位。當2008年我們選擇這樣的思路理念時,很多人還抱著懷疑的態(tài)度,但幾年實踐發(fā)展證明,Amazon彈性云計算EC2已在世界范圍內(nèi)得到了相當高的認可。
開放性與標準化
近幾年IT廠商的發(fā)展,比以往任何時候都更加重視對使用者、供應鏈上的合作伙伴關系,從國外的Apple App Store,到國內(nèi)的淘寶開放平臺到各種Mobile Market,都是如此。品高在設計、實現(xiàn)基礎架構(gòu)云平臺的時,秉承向有廣泛受眾的行業(yè)標準靠攏的開放兼容原則,優(yōu)先使用非專利鎖定的開放技術(shù),優(yōu)先利用開源平臺的技術(shù)。
在基礎架構(gòu)云平臺計算平臺的發(fā)展上,Amazon的EC2在國外擁有大的市場占有率,IBM、Oracle、微軟等傳統(tǒng)軟件公司都支持運行在Amazon EC2上,甚至為了公眾更好地使用軟件產(chǎn)品,提供官方定制的Amazon的EC2鏡像。而Amazon的Web Service對其接口、協(xié)議都采用開放的原則,允許各種語言編寫調(diào)用,并提供了標準化的操作工具。品高在設計、實現(xiàn)基礎架構(gòu)云平臺的時候,決定在基礎架構(gòu)云平臺的服務接口層API和亞馬遜的兼容。
技術(shù)融合
基礎架構(gòu)云平臺應該能夠?qū)崿F(xiàn)和多方的主流平臺進行融合,其涉及計算虛擬化、存儲虛擬化以及網(wǎng)絡虛擬化等各個層面的技術(shù),從當前的技術(shù)發(fā)展來看,沒有哪一種技術(shù)絕對領先,那么,系統(tǒng)在設計、實現(xiàn)的時候應該考慮這些技術(shù)的融合、可選支持,以適應不同的客戶選擇。
以虛擬化為例,Xen/KVM都是成熟的技術(shù),品高基礎架構(gòu)云平臺應該考慮包容這些技術(shù)實現(xiàn),應將選擇權(quán)交給客戶。而另一方面云計算的發(fā)展催生了大數(shù)據(jù)處理的需求,大數(shù)據(jù)處理希望最大限度使用硬件處理能力,對這類用戶來講,應避免使用虛擬化技術(shù)造成計算性能虛擬化損耗,應融合如linux容器技術(shù)來支撐彈性計算的需要。
不僅如此,對于上層應用正在廣泛使用的傳統(tǒng)關系型數(shù)據(jù)庫(如mysql,sqlserver等),以及動漫行業(yè)內(nèi)的常見3D渲染軟件3DMax、maya,甚至目前最通用的分布式計算框架hadoop在實現(xiàn)時都應考慮支撐。
高可用性
在建立IT基礎架構(gòu)時,傳統(tǒng)習慣建立在購置高可用性的服務器。可是數(shù)據(jù)中心和云計算對機器的高可用性提出了很大的挑戰(zhàn),因為當服務器的數(shù)量到數(shù)百規(guī)模以上,計算部件的平均無故障時間都會被放大很多倍。
Google最偉大的成功實踐經(jīng)驗告訴我們建構(gòu)一個高計算處理能力的網(wǎng)絡,并不一定需要超級計算機,因此Google的服務器都是DIY的Intel X86PC服務器。在架構(gòu)上就考慮設備的不可靠性,在架構(gòu)上解決。這樣的好處是:
1)高性價比,降低基礎架構(gòu)云平臺實施的建設起點門檻,無需在啟動階段購置大量的品牌服務器;
2)根據(jù)公眾客戶的需要,為持續(xù)的投資以及擴容留下一個快速可演進的路線;市場上,擴容所需的PC服務器在采購方面的響應更加快速;
3)分布式容錯冗余的考慮規(guī)避了造價低等于質(zhì)量低的可能,降低運行維護的成本;
4)充分地結(jié)合Intel X86 CPU多核發(fā)展大流,順應單位成本降低的發(fā)展趨勢;
5)通過基礎架構(gòu)云平臺的并行計算來應對并解決部分上層軟件無法充分利用多核心并行計算的問題。