開源技術迅猛發展,特別是以OpenStack、Hadoop、Cloud Foundry等為代表的企業級開源項目。我們基于企業級開源市場的發展,探究開源技術與企業級市場的最佳結合點。我們將邀請開源社區的代表、云計算提供商、開源軟件分發商、服務器廠商、軟件廠商等開源生態圈的眾多組成廠商暢談他們對開源的認識以及企業級市場與開源的結合。
青云QingCloud聯合創始人兼架構師林源
本次參加我們采訪的嘉賓是青云QingCloud聯合創始人兼架構師林源。據了解,QingCloud的整個云框架是自主研發而不是采用常見的開源產品。對此,林源表示,青云QingCloud在2012年創立,剛開始也考量過當時的開源產品,包括OpenStack、CloudStack等。但是我們發現了一個問題,當你面對的是企業客戶時,產品的性能、穩定性,甚至是彈性、可擴展性都要達到一定的要求,才能滿足企業客戶的需求。但是開源的產品和成熟的商業產品中間是有很大距離的,所以當時我們認為如果要想取信于企業客戶,尤其是一些很嚴肅的企業客戶的話,開源產品不可能達到我們預期的目標,所以在那個時間點上,我們只能選擇自己去做,并不是我們有意要走一條很難的路,而是我們沒有選擇,因為我們要做的東西,他們滿足不了。甚至從現在的時間點來看,青云QingCloud現在做的功能、性能也是開源產品無法企及的。
林源以OpenStack為例解釋了業務核心層面如果過分依賴開源項目就會導致自身業務發展受限。作為底層支撐的開源工具,我們是可以利用的。但作為公有云廠商,不應該直接利用現成的云框架,因為你無法控制它。OpenStack的代碼量很大,這些東西對客戶來說也許并不是他們真正想要的東西。如果你要滿足客戶的需求,改造它是很難的。用OpenStack做一個功能,必須跟著社區走,但你在社區沒有話語權或者發言權,你是等它還是自己做?如果自己做的話,大家產生紛爭,怎么做?這就是問題。
青云QingCloud對開源的態度有兩個:一是核心技術一定要掌握在自己手上。開源技術比如MySQL、PostgreSQL、Cassandra、ZooKeeper、KVM、QEMU、Linux都很成熟、都可以用,但是云的管理方面,包括分布式存儲、分布式網絡等,這一整套技術一定要掌握在自己手中;二是只用開源最擅長的功能,其他邊邊角角都不要。開源項目離成熟有一定的距離,每個項目剛開始立項時總是重點要解決一個問題,我們所用的就只是這個功能就行,沒必要使用那些大而全的全功能開源產品。
林源表示最核心的技術一定掌握在自己手上。第一、我們相信可以做的比目前的開源框架要好;第二、核心技術掌握在自己手上,線上如果出了問題,代碼是自己的,我們都可以直接定位,解決問題非常快。開源對我們來說是一個黑盒子,需要對它的每一行代碼,你去改造它可能需要很長的路要走。這也是為什么青云QingCloud要通過自己寫代碼的方式實現屬于自己的核心技術。
青云QingCloud的產品開發和迭代周期是很短的,比如用戶的負載均衡器(LB)需要一個壓縮功能,我們兩天就可能開發完,測試幾周或者一個月時間就上線。如果等著社區滿足需求,那根本實現不了目前的敏捷性。云服務最簡單的需求是滿足客戶的需求,但是在OpenStack里面參與的廠商抱著各種各樣的目的,承載了太多的需求。
以OpenStack為例,很多廠商都在圍繞它慢慢培養生態圈。對此,林源表示,IaaS層的輸出接口是標準的,我們以Hortonworks、Cloudra的Hadoop為例,他們的Hadoop版本完全可以運行在青云QingCloud。OpenStack、青云QingCloud、AWS等IaaS提供商在輸出層面是一樣的,不存在生態圈的問題。他們用OpenStack的目的是把OpenStack作為產品分發的渠道,青云QingCloud也可以成為他們的渠道。
對于青云QingCloud是否有意參與開源社區建設的問題,林源表示,青云QingCloud現在大量使用開源產品,底層用了KVM、QEMU,因為我們的體量很大,青云是這些開源技術的試驗田,我們幫他們發現了很多很重要的問題,并且把代碼回饋給了社區。另一方面,我們會考慮把自己的部分產品開源,但這需要過程,當然還得保留最核心的技術。
林源對于中國本土社區也發表了看法,他說,之前大家都覺得中國人缺少分享,現在這種情況在改善,包括像BAT等互聯網公司,他們對很多開源技術都有大量的貢獻。中國和美國相比,雖然同為互聯網的大國,但是我覺得中國的發展會更快,中國體量這么大,很多問題在美國很難遇到,所以中國本土開源社區可以給開源項目貢獻更多的力量。
總之,青云QingCloud代表了一種不同風格的云計算提供商,他們并沒有按照常規采用通用的開源產品進行定制化,而是采用自主研發的線路,這得益于其強大的開發團隊。期待青云QingCloud給國產云計算市場帶來不一樣的云。