長久以來,私有云廠商都被一朵烏雲籠罩着:私有云是不是一個僞命題,這個世界是否終將被公有云統治?不管如何振振有詞,當2006年3月14日亞馬遜向全世界公開其公有云服務AWS時,IT的歷史車輪就碾入了公有云紀元,傳統IT廠商不得不面對AWS這個門外的野蠻人。關於私有云,AWS CTO Werner Vogels在2010年就作出了他的論斷,Vogels稱所謂的私有云不過是個銷售話術,是IT廠商爲了將客戶矇在鼓裏設計出來的詞彙。Vogels認爲私有云是「false cloud「,其目的是想讓客戶購買更多硬件來「build your own cloud」。雖然「false cloud」和「build your own cloud」自己就存在邏輯矛盾,但這並妨礙AWS代表其態度:私有云不過是IT廠商造出來自high的救命稻草,根本不能稱爲「雲」。過去幾年我被屢次問到這個問題,問題的核心在於公有云是否終將統治世界。數據庫
若是全世界的IT基礎設施被幾家公有云壟斷,會是什麼樣子?首先Intel會淪爲附庸,除了爲不斷萎縮的PC市場生產CPU外,其全部服務器芯片只能賣給公有云從而完全喪失議價權。公有云也會用其它架構的CPU(例如ARM)來打壓Intel的價格,AWS在這次re:Invent 2018年度雲大會上就發佈了基於ARM芯片Gravtion的EC2實例。服務器
DELL、HP、Cisco等硬件公司會倒閉或被公有云收購。全部的計算、存儲、網絡能力都集中在公有云手中,沒人會再買他們的硬件。公有云也不會購買商業硬件,而是本身製造。不用等到將來,如今公有云/互聯網巨頭已經大量使用白牌硬件,HP再也不作公有云/互聯網公司的服務器生意,實在無利可圖。微信
微軟、Oracle等基礎軟件公司會消亡(微軟能夠經過Azure從新統治世界)。公有云會用本身的產品取代現有一切基礎軟件,提供本身的操做系統、數據庫以及一切PaaS。他們已經開始這樣作了,而且會愈來愈成功。網絡
應用軟件商要看公有云臉色過活。若是足夠的有利可圖,公有云會絕不猶豫的進入你的領域,依靠龐大的技術生態製造出相似的產品並打壓市場價格。巨頭沒有邊界,2014年AWS就推出了WorkSpaces雲桌面產品。架構
這樣的將來,IT創新可能會停滯。公有云之間仍有競爭,但IT市場實在太大,幾家分享數萬億美圓的市場很容易讓巨頭們達成默契的壟斷。運維
這像是危言聳聽,畢竟跟咱們熟悉的IT世界太不同。但不要忘記,在幾十年前的大型機時代,每一個人一臺便攜移動計算機(手機)更像天方夜譚。而如今都成真了。post
「咱們能統治世界」,2010年的AWS多半這樣認爲。僅僅過了8年,2018年的 re:Invent雲大會上AWS發佈了Outposts產品,一款從產品形態和商業模式上都不性感的混合雲產品。Outposts基於AWS的自有硬件(基於Nitro架構的服務器,相似於阿里雲的神龍服務器),能夠部署在客戶本身的數據中心,AWS負責安裝部署並提供後期升級運維等服務,客戶能夠在本身的數據中心內使用AWS公有云上流行的產品(例如EC二、ECS,後期還會包含RDS這樣的PaaS產品)。Outposts提供VMWare兼容以及AWS兼容兩種模式,客戶既可使用他們熟悉的VMWare控制平面,也能夠基於AWS API編寫程序讓應用在本地數據中心和AWS公有云無縫部署。除了首發使用自有硬件,AWS表示將來不排除跟HP、DELL等廠商合做,讓Outposts運行在這些廠商的硬件上。性能
Outposts沒有發明新東西。產品形態上,Azure Stack作了一樣的事情。按使用付費的租賃模式,國內一些廠商作的更完全,提供從機架到虛擬機裏應用打包的全租賃。跟公有云相比,Outposts缺乏一個核心:超高的SLA(Service-Level Agreement,服務等級協議,供應商對客戶服務的質量承諾,達不到服務質量會有相應的賠償)。從本質上講,公有云出售的是「資源的使用權+SLA」。傳統IT廠商其實也提供SLA,但內容條款跟公有云很不同。SLA在上世紀90年代末或2000年初變得流行,早期的IT廠商是以產品保修的方式提供售後服務,隨着客戶愈來愈重視業務的在線時間,IT廠商發現服務質量保證能夠成爲額外的收入來源,故經過SLA跟客戶簽定如產品故障後限定多少時間內修復或換貨的承諾。公有云將業務在線時間相關SLA提升到傳統IT廠商沒法達到的高度,源於對IT基礎設施的控制力,從機房、電、網絡、硬件到軟件都能控制,故能提供分鐘級別的SLA。例如AWS的EC2(虛擬機)、EBS(塊存儲)SLA的月度在線時間比例(Monthly Uptime Percentage)是99.99%,至關於每月最多有4分23秒的不可用時間,對SLA未達到的狀況會作出10%~30%消費賠償。IT廠商作不到這樣的SLA,由於他們的產品只是整個IT架構的一部分,有太多第三方因素可能會影響SLA,硬件故障、機房斷電、運維誤操做等等。超高的SLA對看重業務在線時間的客戶極具吸引力。互聯網公司尤爲如此,設想一下微信、支付寶這樣的應用因IT基礎設施故障停用數天會致使什麼樣的災難。雖然微信、支付寶可以構造AWS相似的基礎設施,但大部分對SLA有高要求的企業是無力自建這樣的基礎設施的,公有云對他們來講是很好的選擇。優化
Outposts沒法提供公有云的SLA。其產品形態讓它跟普通IT產品同樣,只是客戶整個IT架構中的一部分,有太多因素超出AWS掌控,例如客戶數據中心遭遇暴風雪而致使大面積斷電。即便將來AWS爲Outposts擬定SLA,其條款也只會相似IT廠商的常規條款,例如售後服務響應時間、產品升級或更換硬件致使的服務不可用時間等。雖然媒體用不少新興概念來描述Outposts,但正如8年前Vogels指責傳統IT廠商在任何產品前都加一個「雲」字同樣,這只是一種「sales pitch」(銷售話術)。Outposts將AWS的部分公有云產品本地化當然給客戶帶來了巨大的價值,但這種價值來源於AWS公有云的成功,Azure、阿里雲也在作一樣的事情。總之,公有云爲IT帶來了巨大的創新,但一旦它的產品失去了SLA,就再也不性感。ui
對於AWS推出Outposts的動機,中外媒體大多認爲是一種妥協,AWS本身也認可客戶想在本身的數據中心得到跟AWS公有云同樣的功能和體驗。妥協這個詞含有一種不是創新者乏力而是這些客戶不行的意思。AWS在TO B的世界有着蘋果在手機領域相同的創新者地位,人們對於顛覆性創新者總有無限期盼,但願他們毫無妥協的改造這個舊世界。但AWS妥協了,對象並非手中握有大筆IT預算的CIO,而是咱們生存的物質世界。
儘管IT幫助全部的行業提升了效率,這個世界仍有大量的生產活動尚未被IT完全替代。種植糧食的仍然是農業機械、挖礦的仍是礦機、鑽取石油的依然是鑽井,總之除了幾萬億美圓的IT支出外,還有幾百萬億美圓投入到了其它的生產活動中。回到雲計算,將來輔助生產活動的IT基礎設施是否只有公有云?AWS給出了否認的答案。這裏有複雜的緣由,但能夠粗略歸爲:異構IT的複雜性、計算/存儲能力的本地化以及網絡的不可靠。
異構IT的複雜性
大多數生產系統並不是是圍繞IT設計的,他們比IT更早出現,如今被IT改造,例如給鍊鋼設備安裝大量的傳感器收集數據,給生產線安裝機械手臂。這些改造的複雜性製造出異構性IT。若是世界只有公有云,意味着全部的IT都要接入公有云,這不符合公有云的商業模式。公有云能快速發展壯大是由於向客戶提供標準的IT模型(例如AWS最先的經典網絡以及後來的VPC)從而實現規模化。當客戶的IT太過異構不能直接套入公有云IT模型中時,面臨的選擇只有兩個:一是期待客戶IT系統改造以適應公有云;二是提供私有云來適應客戶IT系統。第一條路目前行不通,且不說傳統的力量多麼強大,單從體量上講,千億美圓規模的公有云很難要求動輒萬億美圓的行業爲它改變。只有第二條路可走,提供私有云來適應客戶IT系統。反對者可能會說AWS Outposts輸出的仍然是公有云產品,沒有特別的改變,這個留到後面分析Outposts產品形態時再講。
計算/存儲能力的本地化和網絡不可靠問題
即便異構IT都能接入公有云,仍然面臨當前IT技術的限制。咱們杜撰一個AI系統,它能根據鍊鋼設備傳感器數據實時控制鍊鋼設備。那麼傳感器數據存儲在哪兒?AI系統又運行在何處(須要依賴的計算能力在哪)?假設鋼廠地處偏遠,鍊鋼設備就必須經過網絡接入數千千米外的公有云數據中心,將數據傳送至AI系統並等待分析結果再作下一步操做。這樣的IT系統難以讓人充滿信心,由於它運行在不可靠的網絡上。相對於人類社會的數據總量(據傳爲100ZB,約爲10的14次方GB),目前的網絡絕對是一個低帶寬、高延時、不可靠系統。要保證上述鋼廠網絡的帶寬和延時,得經過專線鏈接數千千米外的數據中心,且必須有冗餘,不然沒法防範施工隊的剷車軋斷線路致使生產中斷。這無疑是巨大的投資。若是把鍊鋼系統的傳感器換成攝像頭,要求AI系統作出低延時的圖像識別,網絡建設成本更是不可想象。解決的辦法是將計算/存儲能力本地化,例如在鋼廠500米內建一個機房,讓AI系統就近運行,網絡的問題也就解決了。對於雲計算廠商來講,輸出一套私有云/混合雲系統到鋼廠的機房,比設計一個橫跨數千千米接入公有云的系統更爲簡單和可靠,這是目前IT技術的限制。
生產製造業的例子彷佛聽起來很遙遠,但就在平常辦公中公有云也會有IT接入的難題。2014年3月AWS發佈WorkSpaces雲桌面產品時,個人第一反應是在想AWS的雲桌面怎麼跟辦公室裏的打印機、掃描儀以及視頻會議系統鏈接起來,由於雲桌面的主要場景爲平常辦公,不可避免的要跟辦公室的各類設備對接。後來我在AWS官網找到了打印機使用的文檔,但同時也在AWS論壇上看到了很多打印機沒法使用的吐槽。這樣的例子有不少,銀行的U盾、智能投影儀等,總之在公有云接入本地設備還不那麼容易。
假如咱們生存在一個虛擬世界,不須要衣食住行只靠信息交換就能夠生存(像科幻電影中那樣戴一個頭盔接入虛擬世界),則公有云徹底能夠知足生產活動的全部IT需求。我說AWS是對物質世界妥協,由於目前的公有云只知足現實世界的部分IT需求。再來看一下蘋果和AWS的創新,你會發現蘋果在發佈IPhone短短几年內幾乎消滅了全部老牌手機廠商,諾基亞、摩托羅拉、黑莓。而AWS雖然對傳統IT廠商打擊巨大,但IBM、HP、DELL、Oracle仍然堅挺的活着。這是由於IPhone除了巨大的創新外,還知足了客戶對手機的全部需求,若是IPhone不能打電話,諾基亞仍然會是最好的手機廠商。儘管AWS跟蘋果同樣帶動了新行業的發展(移動互聯網、SaaS等),獲取了巨大的創新紅利,但他並無知足這個世界的全部IT需求。傳統IT廠商活了下來,作着AWS稱爲「false cloud」的私有云,如今AWS Outposts來了,吹走了私有云天空最後一片烏雲,沒必要再爭論私有云/混合雲是否是僞命題,是「true cloud」或是「false cloud」。正視物質世界IT需求的複雜性,也許將來公有云會知足一切IT,但不是如今。
Outposts是AWS和VMWare合做的產品,客戶可使用他們熟悉的VMWare的控制面板,也可使用AWS Native模式,第一代產品主要是IaaS功能,提供EC二、EBS。能夠確定Outposts的IaaS部分幾乎全是VMWare貢獻的,AWS也宣稱客戶可使用VMWare NSX、AppDefense、vRealize等產品。從技術角度來講,AWS要實現Outposts有兩條路能夠走,一是基於AWS公有云的代碼改造,一是跟VMWare這樣的廠商合做。AWS選擇第二條路,這是對的。公有云和私有云面對不一樣的複雜性,公有云更強調規模和性能,用統一的IT架構提供資源,對傳統IT異構性和利舊基本不考慮。私有云則必須面對異構的IT形態併兼容利舊各類設備,但規模和性能上沒必要向公有云看齊。Outposts的目標客戶是想在本身數據中心中使用AWS產品的企業,他們多爲傳統IT架構,若是經過改造AWS公有云代碼來知足客戶需求,不管難度仍是風險都很是大,這意味AWS的公有云產品在後續發展中都不得不爲私有云考慮,這不只會拖慢公有云創新的步伐,實際上也難操做。想象一下AWS的內核工程師在優化虛擬機熱遷移功能時要顧及一款他歷來沒有據說過的PCI設備,由於私有云客戶會透傳它給虛擬機使用的。採用VMWare作IaaS則沒有這個問題,VMWare歷來就是服務於傳統企業客戶,20年來趟坑無數,沉澱出大量傳統IT須要的功能。前面提到AWS能夠經過部署Outposts來適應企業客戶的傳統IT需求,反對者可能認爲Outposts輸出的也是AWS公有云產品(例如EC二、EBS),並無爲異構IT作任何適配。是的,AWS本身沒有作,VMWare幫他作到了。AWS宣稱Outposts能夠在一臺服務器上運行,離開VMWare也是沒法辦到的。要在一臺服務器上將AWS公有云的控制面和數據面所有塞進去,還要運行客戶自身的業務,無異於將一頭大象塞進冰箱。
在商業策略,跟VMWare合做也是正確的選擇。VMWare除了自身的產品優點外,最強大的是遍及全世界的銷售網絡。外媒報道Outposts會在VMWare銷售網絡中售賣,這無疑極大的節省了這款產品觸達客戶的時間。要讓一款新產品快速的被市場承認和接受,即便伴着AWS的高光也須要花費很多力氣。這不只僅是技術問題,仍是銷售體系、供應鏈、售後服務體系的問題。亞馬遜自己是互聯網公司,更偏向線上售賣,而VMWare則擅長線下售賣。在這場合做中,怎麼看AWS都是受益的。VMWare則禍福難料,一旦開放本身的銷售網絡讓AWS觸達終端客戶,在產品創建起承認度後,很難說AWS不會專門成立部門用本身的技術徹底取代VMWare並創建適合線下的銷售系統。此外,AWS也不只僅只有VMWare一傢伙伴,HP、DELL、Cisco可能正等着歡迎Outposts進入他們的銷售渠道。
與AWS技術路線相反,Azure Stack選擇用其公有云代碼改造能在幾臺服務器中運行的混合雲產品。微軟從來有統一code base的衝動,在智能手機方面就嘗試用Windows相同的代碼打造適用於PC和手機的操做系統,最終結果是從智能手機市場退出。雖然如今不能判定Azure Stack這種技術路線是否成功,但它始終會面臨同一套代碼要服務於兩個大相徑庭市場的問題。內部的技術團隊協調也會遭遇挑戰,公有云團隊強勢必然致使Azure Stack的不少技術需求得不到及時響應,Azure Stack團隊強勢則會拖慢公有云團隊創新的步伐,甚至將他們拖入傳統IT的泥沼中。
我我的贊同AWS的路線,保證產品體驗一致性纔是核心,這隻須要在Outposts的數據面/控制面的API上和公有云兼容便可。至因而一套代碼或兩套代碼並不重要,一是客戶不關心,二是公有云和私有云的市場規模都很是巨大,營運兩個技術團隊服務於不一樣的市場是值得的。AWS也提到他們並不打算經過Outposts輸出全部AWS產品,且認可公有云和私有云交付模式不一樣(Our initial goal is not to re-create all of AWS in Outposts -- they're kind of different delivery models ... but there are some really basic components that we're hearing consistently that are wanted on-premises)。這反應出AWS對Outposts的定位很是明確,在小規模的產品形態中是沒法將全部AWS產品都交付到客戶數據中心的。實際上企業客戶也沒有能力負擔和運維整個AWS公有云,大部分企業僅僅須要AWS的幾個基本功能,這正是Outposts出現的目的。固然也有客戶須要整個AWS公有云,例如正在競標中的美國國防部百億美圓大單,這時AWS天然會將全部產品帶到客戶數據中心,固然不是用Outposts。
將來,公有云要麼統治一切IT基礎設施,要麼消失,到時將再也不有云計算這個詞彙。這都不依賴於如今IT從業者的力量,而是依靠物理學家在基礎物理上的重大突破,顛覆現有的計算機體系。公有云接入傳統IT的幾個問題中,只要網絡問題解決了,其它都能解決。目前低帶寬、高延時、不可靠的網絡極大的阻礙了公有云統治世界的步伐,儘管網絡性能在不斷提高,但這種小步伐提升遠遠趕不上人類生產數據增加的速度。若是基礎物理創造出超級網絡,訪問不受地域距離限制,達到目前CPU訪問內存的帶寬、延時和可靠性,那麼世界只須要公有云。咱們再也不須要本地計算能力,能夠將全部的計算、存儲集中在幾個公有云巨頭的數據中內心,而後經過超級網絡訪問。若是基礎物理向着計算/存儲能力方面突破,假設將來手機大小的計算機就能夠擁有如今AWS公有云所有的計算/存儲能力,那咱們就再也不須要雲這個概念,計算能夠在任什麼時候間地點發生,中心化的基礎設施失去存在的理由。
將來世界的樣子還沒法預測,但在這個時間,AWS發佈了Outposts產品,他終於進入了傳統IT廠商相同的維度,從降維打擊到同維競爭,後十年的雲計算領域必定會更加精彩。
做者簡介:張鑫,是世界上最先一批虛擬化開發者,是《系統虛擬化》一書的主要做者。2010年赴硅谷加入IaaS初創公司Cloud.com,是CloudStack核心架構師,負責Oracle VM,Barematel, Baremetal VPC等核心功能。以後隨Cloud.com併購加入軟件巨頭Citrix,繼續從事CloudStack的核心技術研發。2015年回國創辦開源IaaS項目——ZStack。