——專訪天云軟件技術總監牛繼賓
OpenStack和Docker,這可能是近2年在云計算領域最火的兩個開源技術詞語了。做OpenStack的公司,都在為社區貢獻代碼的同時為企業用戶做云;現在隨著容器技術Docker的興起,又涌現出不少研究Docker并不斷嘗試的創業公司,邊嘗試邊在為用戶做云。
那么,究竟什么是云,OpenStack即是云?還是Docker即是云?開源代碼搭建私有云,安全及定制化如何保障和達到用戶需求?前段時間隨著OpenStack巴塞羅那會議又新出來一個“食客即是廚子”的講法,那么,是宣告著做開源技術做云的“廚子”公司將會批量消失嗎?而什么樣的平臺,才是能夠滿足用戶需求、實現應用的遷移、真正安全可用高效的云平臺?
帶著一些疑問,筆者采訪了北京天云融創軟件技術有限公司(簡稱“天云軟件”)的技術總監牛繼賓。
如何看待OpenStack、中國OpenStack眾創業公司的現狀、以及他們的貢獻/價值、模式和問題?
OpenStack作為云計算開源圈的明星,得到了眾多傳統廠商的支持,成為傳統廠商轉型云計算項目的稻草,同時由于其開源的特色,也成為了眾多創業公司成就云計算廠商夢想的工具。眾多的成功案例的包裝,每年一度的全球峰會,經濟利益驅動的炒作,使OpenStack吸引了無數的眼球。
在云計算開源領域,OpenStack做出了不少貢獻,比如:
1.以放開社區的心態,為IAAS的普及與標準做出了貢獻;
2.OpenStack開放社區的發展,帶動了IT開源技術整體的發展,比如下游的虛擬化開放技術KVM、應用型的技術比如認證Keystone、計量計費模塊Ceilometer、以及結合其他的開源技術Hadoop、Docker等,使開源技術深入人心;
3.對IT產業的影響,基于開源社區,與開源產品在企業級的引入,影響了傳統廠商壟斷的企業級IT產品王國,使企業在選型上多了一種可靠的選擇;
4.從某些角度來說,OpenStack作為一種開源的理念,在IT開源化、社區化上的理念大于OpenStack的實際生產中的應用的貢獻。
此類公司的技術來源于市場上的聲音體現:依靠OpenStack的發行版本,自身也提交代碼反饋社區;依靠OpenStack社區,以commit為榮,定期舉行OpenStack大會,也以參加大會為榮;同時也存在patch刷單、夸大項目規模包裝、政績驅使等因素。
基于OpenStack創業公司的商務模式:
1.做OpenStack的培訓與方案;OpenStack模塊較多,比較復雜,需要做簡單易用的企業級OpenStack,簡化用戶的部署安裝;OpenStack運維繁瑣,需要提供簡化的運維服務,有的甚至提供托管服務;
2.提供給用戶的商用版本OpenStack,宣傳不會做太多的與社區偏離,因為將來社區版本的OpenStack升級以后,分支合并與升級是一個大問題;因此某些OpenStack公司宣稱,我們的關于OpenStack模塊的patch先提交到社區,社區接受以后再做到我們的發行版;所以我們要養著很多OpenStackcommiter;
3.與用戶打交道時,除了方案與報價,還要宣揚自己是否是OpenStack社區金牌會員,多少commiter等,patch commit全球排名等。
至于OpenStack的問題,我認為要從以下幾個講:
1.從技術上來說,OpenStack及其相關技術是一個非常重要的創新,但是把OpenStack做成一個產品,去做私有云或者公有云,并提供相應的服務,這與企業級市場的需求差別比較大,OpenStack很多的模塊目前概念包裝居多,真正的支撐應用的居少,通過OpenStack的各個模塊可以方便的堆砌去搭一個環境,但這個環境只是看上去能工作,很少能經得起穩定、可靠運行的環境需求的考驗。
2.OpenStack環境的部署要求全新的x86服務器,但單純這個是不能很好的與企業IT系統做整合的。舉個例子,除了x86服務器,硬件層面還有各式交換機、各種存儲、各種異構虛擬化,軟件層面還有交易類型、大數據分析類型等,基于OpenStack統一管理并提供服務是一個難點。
3.商業模式的問題。如果在OpenStack上做太多的定制化,則很難進行分支的合并與升級,如果不做太多的定制化,那么提供OpenStack企業服務的價值又在哪兒?
4.再說幾個事實與觀點:
a)第一個是在西班牙巴塞羅那峰會上,OpenStack風風火火,再加上各廠商PR的眾推,讓人感覺到了OpenStack的勢頭無可阻擋。但是會議結束不到一周,OpenStack最居功至偉的兩家公司HPE和Mirantis,都傳出消息,其中消息稱HPE要砍掉整個OpenStack團隊,Mirantis則要裁員300人。
b)從提供企業服務的巨頭與最具著名的OpenStack創業公司在合作發展上遇到的困難,不難看出其服務、盈利、未來發展的不可預期性,因為OpenStack不是Linux操作系統,具備可替代性。
c)NASA作為OpenStack項目的發起者之一,在2012年就開始使用AWS云服務,但最終業務也沒有落在OpenStack之上。
d)再聯想到之前的OpenStack的鼻祖RackSpace被收購。
e)國內外所有的互聯網巨頭,幾乎找不出以OpenStack為核心開發其云平臺的,這本身也說明了問題。
f)在生態圈、技術圈、開源圈風風火火,也不代表了能夠變成成功的商業模式,Redhat只有一家,很難再出現另一家。
一句話總結的話,我認為IAAS層一眾OpenStack,忙著搞生態與社區,盈利難,服務難。
最新的開源技術Docker及Docker創業公司呢,您怎么看?
最出名的PAAS開源技術起源于CloudFoundry,但是也是出了名的復雜與難用,因此在Docker火爆以后,以其集裝箱理念的build、ship、run加上編排調度的管理平臺,以更加靈活更加易用的方式逐漸適應企業,再加上基于容器的編排調度框架像Kubernetes、Swarm、Rancher等等的發布,Docker+編排管理工具逐漸成為PaaS的主力軍。
國內基于Docker的創業公司基本起源于2014年,市場上一下子起來了十多家基于Docker云創業公司,這些公司的技術主要依仗以下五類:基于Docker原生體系,swarm、swarmkit等;基于Kubernetes;基于Marathon、Mesos等號稱構件DCOS;研究CoreOS、RancherOS等;也有在研究Unikernel。
這些公司的活躍度體現:
1.喜愛組建技術沙龍、技術社區,進行大量的市場包裝;
2.喜愛擺弄相關概念與技術組件,完成技術驗證,今天嘗試Docker安裝,明天嘗試K8S on Mesos,后天嘗試基于Haproxy+Confd+etcd的服務注冊與發現,再過一陣嘗試基于一種場景驗證百萬并發;
3.天天宣揚微服務理念,仿佛一家企業如果不嘗試微服務架構,不嘗試Docker環境,就脫離了IT大方向;
4.宣揚明星創業或者高規格創業;
5.夸大自己的案例,幾萬塊的項目,宣傳成高大上的成功案例。
再說到商業模式,這些公司普遍:落單之前有融資;市場造勢比較多;選準一個行業,聯合一些集成商,去打單子;有了標桿的項目以后,繼續融資,尋找接盤俠。
此類創業的問題,我認為主要有以下幾點:
1.這些創業公司高度依賴國外Docker開源相關技術(包括Mesos、Kubernetes、Rancher等),另外這些公司推崇技術至上,最好是由技術驅動業務,缺少各大行業的行業背景積累;
2.Docker本身是提供給研發人員使用的,本身使用方式也不是很難,每個具有研發團隊的單位或者團體,基本自給都能在Docker上去做一些工作,大一些的公司的研發團隊,擺弄Docker相關技術的能力很強,基本對外采需求不大;
3.基于此類技術形成的PAAS類產品,缺乏商業模式,甚至報價模式都比較模糊,單項目的規模甚至比OpenStack層面的軟件為更少;
4.由于互相炒高了技術人員薪酬,創業成本比較高,而產出又比較低(在沒有core committer的公司,即使是某個Docker相關高手,其對公司實際營收的貢獻也奇小無比);
5.其宣揚的微服務理念,短期內在傳統行業落地非常難,而這些傳統行業是to B生意的主要客戶,因此這也標志著大部分的Docker創業公司,盈利預期較長。
一句話總結的話,PAAS層之Docker容器相關技術,天天進行沙龍與宣傳,在發展上未見太多效用。
為何國內有這么多基于OpenStack與Docker的云計算創業公司?
1.大勢推動,云計算大數據時代的到來,催了生了IT產業上下游的巨大熱情,資本界鼎力支持、分析師大力宣揚;
2.從國家層面講,近幾年鼓勵創業創新,IT本身就是技術密集型,再貼上云計算大數據的標簽,恰好落入國家的政策支持范圍,相關產業園區、行業委員會也在鼓勵云計算大力發展;
3.從市場環境上來講,IT項目的建設越來越多的被貼上了云計算或者大數據的標簽,標識著云計算的需求釋放,有需求就有提供;
4.創業門檻變低,有了OpenStack,一個互聯網/傳統公司提交過patch的團隊或者工程師便可以成立一個公司,有了Docker(Mesos、Kubernetes、Rancher),幾個一起喝咖啡的工程師也可以成立一個公司,加上風投的助力,順勢起飛。
既然OpenStack并不完美,Docker也有其自己的問題,那么在云化建設上,有沒有什么解決之道?因為畢竟市場在那里擺著,企業及用戶的需求在那里擺著。
我們去看云計算的核心,分為云資源管理與云服務提供,“云資源”是一些可以自我維護和管理的計算資源,通常為一些大型服務器集群,包括計算服務器、存儲服務器、網絡等等。
云資源管理將所有的計算資源集中起來,并由軟件實現自動管理,無需人為參與。云使用者只需按需申請并使用資源,無需為繁瑣IT部署、管理、維護的細節而煩惱,能夠更加專注于自己的業務,有利于創新和降低成本。
從這個核心出發,我們可以看出,對公有云來說,更強調規模效應與服務功能,在未來,公有云份額越來越大是不爭的事實,私有云是一個過渡階段,但這個過渡階段會比較長。公有云在形成一定的規模以后,會發揮越來越大的價值,比如在IaaS的基礎上,向上發展PaaS、SaaS、新的業務模式比如數據運營、AI、知識學習、視頻運營、等等。
未來,物聯網、人工智能等核心的數據與應用將會有很大一部分運營在公有云中,其余的份額將會被其他相對較大的企業以私有云方式運行,但是公有云與這些私有云會緊密連接。
對私有云來說,一個單位或者部門建設可能分為幾個階段,前期更多的關注資源管理、運維管理,也即all-in-one的管理能力,然后是關注運營管理,比如資源使用的計量計費、財務角度的集約化運營,最后才有可能關注到云服務的提供。未來私有云如果想要有更好的管理與服務能力,需要管理功能強大,同時能夠做混合云。因此,在私有云,用戶需要的是云管理平臺,即CMP。
我們集中討論一下私有云產品與解決方案的層次與針對以上所提現象的一些可能的解決方案:
1.關于云平臺軟件要解決用戶的業務問題,這個需要去明確,未來的云平臺一定要在核心上支撐業務。所謂業務的上云,不單單是業務遷移到x86或者遷移到虛擬機,更多的應該是業務云化之后運行與云資源調度聯動,基于云的調度讓用戶能夠感覺到云計算真正帶來的收益,這樣用戶才能舍得買單。所以,一定要從面向資源管理的云轉向面向業務應用的云,所以需要云管理平臺對業務到資源的一體化調度管理,一體化視圖;
2.單純基于OpenStack或者Docker容器相關技術去幫客戶解決云的問題是走不通的,因此在私有云方面需要一個集大成者,通過這個最終的集中管理將多種的IT設備、虛擬化、OpenStack等云技術平臺、以及公有云進行集中管控,形成混合云,并在此基礎上提供云服務是云計算建設的真正路子。因此最終的云計算是一個云技術的系統集成,幫客戶解決云的整體問題,而不是持續推給客戶某個特定的云計算技術;
3.云計算的核心思想,是將大量用網絡連接的計算資源統一管理和調度,構成一個計算資源池向用戶按需服務,來支撐用戶的業務。網絡是一個核心、形成規模的計算是一個核心、調度與服務也是一個核心,而最終用戶關心是業務。因此未來小規模的云(如果非要說標準,現階段小幾百臺以下的)只剩兩條路:要么發展大,要么并入公有云。所以所有的私有云廠商都要有危機意識,因為公有云不光提供服務,也提供業務(SaaS)。
最終用戶關心的是業務,所以私有云廠商要努力去了解業務,提供更多的與業務相關的功能(不是一個彈性伸縮那么簡單),同時思考SaaS模式、行業云模式、互聯網模式,在特定的模式下找到自己的生存發展壯大之路,而不是依靠某種開源技術在市場上比拼平臺。