UCloud 技術副總裁楊鐳:技術的初心是什麼?
日前,Linux 中國社區的老王參加了 UCloud 用戶大會,並有幸和 UCloud 技術副總裁楊鐳進行了面談。以下將我們談話中一些內容分享給大家。
*楊鐳,UCloud 技術*副總裁。全面負責 UCloud 產品研發和產品運營工作,有超過十年 IT & 互聯網行業從業經驗,在網路領域擁有豐富的經驗和深刻的理解。
為什麼專門開發了 UCloudStack?
今天的大會上面您提出一個針對私有雲的 UCloudStack**,**是否可以給我們詳細介紹一下為什麼在有了生態很成熟的 OpenStack 的情況下**,UCloud 還投入了巨大的資源去研發UCloudStack?**
楊鐳:
我們在 OpenStack 上做的還比較早的,當時我們的認知就是公有雲是公有雲,而私有雲 OpenStack 做的比較好。但實際上,通過不斷的時間驗證,我們發現 OpenStack 有一個比較大的問題,就是過於複雜。
回到用戶對私有雲需求來講,用戶實際上關注的還是能不能解決他的需求,而不是說要不要用 OpenStack。所以,我們考慮到,既然已經有了多年的雲計算的開發和運維經驗,如果從頭開始做一個自己的私有雲產品,是不是會做的更好?
我們做了 16 個月就做出來了這個產品,在完成核心產品之後,整體的代碼量還是很少的。代碼量是相對來講是衡量一個項目複雜性的很好的指標。我們根據自己這麼多年來的經驗做下來,我們發現這個事情並沒有那麼的難,而且,現在這個時候,在做這個產品的時候認知就和幾年前不太一樣,我們會比以前想的成熟很多。我們相信做出來的東西會比 OpenStack 更輕量、更好用,這是我們做這個產品的一個主要的想法。
其實現在真正能自己獨立用 OpenStack 產品的公司一般都有一個一定規模研發的團隊,至少十個人。但是雲計算這個市場的人才競爭還是蠻厲害的,一個公司很難有這樣一群比較好的人去做這個事情,所以它的門檻會很高。如果說公司的目標只是為了有一個私有雲,那麼這樣研發投入的必要性是打問號的。這些企業的目標和我們雲服務商的目標不一樣,它的雲只是一個工具,不像我們的雲是我們本身的一個產品。所以這時實際上企業往往會考慮說怎麼能把這個私有雲更好的建起來,很快、很穩定的用起來,在成本上比較合理。所以在我們的這個產品上,我們最重要的一個點確實就是在輕量上。
假如你對 OpenStack 需要做一些改動,是牽一髮而動全身的,為了做某個功能可能要改造底層的東西,這個時候整個過程在研發上來講就太「重」了,所以我們如果從零開始做,其實我們的底層就是可控的。我們在第一次推出的時候,我們總的代碼量才八九萬行,而 OpenStack 所有項目代碼量加起來有幾千萬行,這之間的複雜性靈活性是完全不能比擬的,這是它的一個輕的主要原因。
另外一個,因為我們做這個產品的目的性會比做一個開源的社區項目更明確一點,比如說我們做產品的路線很不一樣。當我們的核心產品完成以後,我們做的一個比較大的改變是和傳統的網路打通,我們 UCloudStack 部署完了以後和傳統的網路做很大的打通,這點和開源社區項目的目標不一樣,它要讓這個東西更加通用。這在產品的改變選擇的路徑差別特別大。這個時候看用戶要什麼,往往用戶要的東西更貼近它想要的,這裡面也是一個很大差異點。
今天本來想放一段視頻,那段視頻是當時在富士康的辦公園區裡面拍的,當時是下午四點鐘進入機房到晚上十點種整個私有雲的交付就完成了。而且當中大概有 2-3 個小時是因為機房的一些問題影響了整個的進度,如果看到那個視頻就會真正感覺到它很輕,但一般而言 OpenStack 部署起來時間會更長,比如說好幾天的時間,它的底層太複雜了。
我們一直認同的一點是說,開源軟體比較適合做一個組件,比如說一個資料庫、一個操作系統、一個很垂直的部分。但是雲實際上不是一個垂直的組件,而是很多組件組成在一起的一個體系。如果你去用開源軟體做組件的方式去做雲,這其實不是特別的理想。
為什麼將客戶隱私保護拔高到這樣的高度?
今天上午大會上您提到一個隱私的產品,禁止一些 API 採集用戶數據,來保護用戶的隱私,這方面能夠詳細談談嗎?
楊鐳:
這個我需要澄清一下,我們說的是禁止我們的雲平台收集我們客戶的信息,而不是說我們禁止了客戶收集他的用戶信息。因為我們是給企業提供服務的,企業本身給他的終端用戶提供服務,我們控制的是我們和企業之間數據的隱私問題。比如說它的使用習慣是什麼,或者它業務的模型是什麼,我們在控制這個。
因為我們自己是做雲服務的,我們的技術工程師在管理我們雲業務的時候,實際上是有可能看到用戶的數據。比如說你是一個電商公司,假設你的資料庫如果沒有進行加密,技術人員是可以看到這個數據的。目前來講絕大多數的廠商,靠的還是流程和制度,靠的不是技術手段保護。什麼叫技術手段,就是說我想看卻看不到,因為是加密的。你只有拿到相應的解密密鑰才能去看。我們說的數據保護更多的是這方面。
再比如說我們的雲主機最終跑在 SSD 硬碟上,如果你去機房裡把硬碟直接拔插走,而沒有加密的話,一定是能讀到裡面的數據。從長遠來看,這是不能出任何問題的,哪怕是一兩次。像某互聯網公司出了幾次乘客的安全事件以後,事情影響就非常惡劣。回到做雲服務,我們的責任一樣重大。我們如果只是一家公司,也許我有的只是很特定的一些數據,但是作為做雲服務的公司,我們上面的客戶不是我們能決定的,要看客戶自己做什麼業務,所以我們上面有幾十萬,甚至幾百萬的數據,這是一個非常長遠、需要很認真對待的事情。所以我們把這一點放到了一個很高的、甚至於到我們企業文化和價值觀的角度。
作為一個工程師來講,首先我們要有價值觀,這是第一點,但是也要從技術上保證,所以我們未來會在這方面投入很多的技術研發工作,來實現比如說我們自己的技術工程師沒有任何可能能看到我們客戶數據。這裡面實際上是有很多的技術工作要做的。
在我們剛剛做雲的前兩年,那時候如果去對數據做加密,就會嚴重影響到性能。這個時候你很難兩者兼得,但是隨著這幾年的技術的演進,很多的加密演算法被逐漸的優化以後,基本能做到做了加密也不怎麼會影響性能。所以現在這個時代,是一個非常好的時機,是一個你應該要去做這件事的時機。
整個這個事情大概我們是這樣看的。除了數據的加密,包括用戶有時候會輸入給我們很多數據,他在做一些操作需要提供身份信息,比如說現在網路安全法要求用戶使用要做實名認證,也就是說他的身份證會上傳到我們這兒,這些數據其實是一個很隱私的數據。這件信息的泄露是一次都不能發生的,所以我們如果回到最根本的來說,我們怎麼樣尊重我們的用戶?這個事情其實比一些產品功能更重要。
我們不希望出了事故以後我們再做一些補救的工作,那時候即使你是真的去做,你的用戶也已經受到了很大的傷害。
另外一個層面,我今天沒有提到,因為雲計算的公司,我們特別需要最頂尖的技術人才,我們這麼多年來在吸引最頂尖的人才上我們逐漸意識到靠的不是錢、待遇,或者是一些職位。最優秀的頂尖技術人才,看的是你公司的理念和價值觀,比如說谷歌、蘋果他們有非常多的幾十年的行業人才在裡面,為什麼?他們做的工作就是數據安全性、隱私就這方面的工作。所以我們也是在商業的進化過程中,我們發現要做一家幾十年的公司,不是靠一兩年的財報,而是靠這些背後的東西,這是我們很真實的一個自己成長的過程。
對開源社區的回饋
我們非常關注 UCloud 在採用開源軟體方面的情況,雲服務商的很多基礎設施都是基於開源軟體的。目前UCloud在開源方面對上游社區的貢獻情況怎麼樣?
楊鐳:
我們目前在開源方面目前做的工作還不多。但是為什麼不多?不是我們不想做,而是因為我們處在一個技術競爭特別激烈的行業裡面,你的產品實際上賣的都是技術。我們的技術人員這麼多年來其實一直不太夠用,所以我們絕大多數的精力是在做我們自己不得不做的事情,比如說今天說的網路架構的透明升級,這個事情實際上把我們的核心人員的精力全部消耗掉了。為了這些升級,我們要跟客戶溝通好這個事情讓客戶放心我們才能做,這也是為什麼我們會做 29 個月的原因,其中有 9 個月是跟客戶溝通的過程中。我們的人並不是很多,我們對自己產品的要求還是蠻高的,在這兩個因素影響下,我們也很難拆出精力來更多的主動回饋社區。
但是這一點上我們想法是很明確的,只要我們現在有精力就會回饋社區。比如說這次做的 25G 的網卡,這個解決了一個核心障礙,我們把這個東西交給上游,但是從整個公司來講這塊投的人員和精力還不是很多。像我們開源的命令行工具,我們和 Hashicorp 做的整合,這些我們全部開源了,但是這些還遠遠不夠。其實開源,也是想讓用戶知道你的代碼到底怎麼寫的,只是說這裡面是一個精力問題,不是意願問題。
我們在 2013 年做了一個內核模塊,是可以把 SSD 盤加速 100 多倍,由於一些原因,我們的代碼是針對某些特定場景的。同時在代碼的規範上也做了一點犧牲,如果要開源,相當於要額外增加 30% 的工作量。但是我們現在一直在想,就像今天舉的例子,把很多東西開源,盡量的變成工具化,而不是放在 UCloud 的內部一個產品,只是我們精力不太夠。
最近 Redis、Kafka、ES 這樣的軟體都在許可件上改了自己原來的開源許可證,針對雲服務商提出了特別的條款。比如說雲服務商用 Redis給客戶提供服務,但是很少對 Redis 進行社區回饋,所以雲服務商需要額外採購商業許可證,您怎麼看這個事情,UCloud 怎麼面對這個情況?
楊鐳:
目前來看,我覺得確實雲服務商對社區的回饋是偏少的,所以說我覺得 Kafka 和 Redis 在這個事情上他們是有一定的道理。但這個事情也不能單方面的看待,因為實際上雲廠商在推出 Kafka、Redis、ES 產品時,其實也幫這些開源軟體做了很多的推廣。Redis 比較簡單,Kafka 或者是 ES,其實還是一個蠻複雜的軟體。雲廠商將這些組件加入平台後,把最複雜的地方把簡化了,用戶甚至連性能維護都不用考慮,另一個維度來看相當於推廣了 Kafka。我認為雲廠商或者是以此謀利的廠商,他應該做足夠的回饋,不管你是以錢的方式,還是以研發的方式,我覺得是應該回饋的。
和楊鐳的溝通當中,我們還談到了許多其他問題,這裡限於篇幅就不展開敘述了。從上面的談話當中,我們能感受到 UCloud 做為一家新興發展起來的初創公司,無論是在技術還是企業價值觀方面,逐漸形成了自己獨有的優勢。其實作為 UCloud 多年的老朋友,這次參加這個大會,讓我意外的是,原來我對他們的了解還所知甚少;也為他們在隱私保護、技術研發等方面默默做的工作而吃驚。希望這些技術人可以秉持初心,真正做出一個好用、值得用的產品來。
「穿山甲專訪」欄目是 Linux 中國社區推出的面向開源界、互聯網技術圈的重要領軍人物的系列採訪,將為大家介紹中國開源領域中一些積極推動開源,諳熟開源思想的技術人,並辨析其思考、挖掘其動因,揭示其背後所發生的事情,為關注開源、有志於開源的企業和技術人標出一條路徑。
取名為「穿山甲」寓意有二:取穿山甲挖掘、深入之意來象徵技術進步和表徵技術領袖的作用;穿山甲是珍稀保護動物,宣傳公益。
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive