摘要:作為全球架構(gòu)師峰會(huì)坐看云起時(shí)專題出品人,創(chuàng)始人接受了記者的采訪,就標(biāo)志性的招牌技術(shù)自動(dòng)化運(yùn)維與機(jī)器學(xué)習(xí)進(jìn)行了闡釋。請介紹一下你們的機(jī)器人,它們是做在哪一層的,它們身上的職責(zé)有哪些黃允松非常樂于談這樣的話題。
作為全球架構(gòu)師峰會(huì)“坐看云起時(shí)”專題出品人,QingCloud創(chuàng)始人&CEO Richard Huang接受了InfoQ記者的采訪,就QingCloud標(biāo)志性的招牌技術(shù)“自動(dòng)化運(yùn)維與機(jī)器學(xué)習(xí)”進(jìn)行了闡釋。大波技術(shù)干貨來襲,大家可以選擇觀看視頻或閱讀采訪實(shí)錄。
以下是采訪實(shí)錄。
大家好,我是InfoQ的主持人,現(xiàn)在我在全球架構(gòu)師峰會(huì)ArchSummit的現(xiàn)場。今天很高興能邀請到青云的聯(lián)合創(chuàng)始人兼CEO黃允松來接受我們的采訪。今天我們聊聊你們在做的機(jī)器人的事情。請介紹一下你們的機(jī)器人,它們是做在哪一層的,它們身上的職責(zé)有哪些?
黃允松:非常樂于談這樣的話題。我在很多場合都講過,做Cloud Computing真正最后落腳點(diǎn)在于去Replace人,而不是說僅僅是為了將物理資源虛擬化。恰恰相反,我認(rèn)為云計(jì)算跟虛擬化實(shí)際上是不劃等號(hào)的,你完全可以使用物理的機(jī)器去做一套云的System,這是沒有問題的,只要你做得足夠的好,那都是一樣的。
所以我們在機(jī)器人層面做得最多的事情,基本上計(jì)算存儲(chǔ)、網(wǎng)絡(luò)、安全,每個(gè)層面都涵蓋到?,F(xiàn)在這個(gè)階段cover最多的還是計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)三塊,因?yàn)榘踩鄬?duì)偏簡單——安全是L2、L3跟L4,而我們目前的L4還沒上線,也就說只有L2跟L3,所以它會(huì)比較簡單,因?yàn)樗褪且恍┮?guī)則,所以復(fù)雜度并不高。 我可以舉幾個(gè)例子。比如說計(jì)算層面,有好多很重要的事情,而第一步要做的事情是什么?我們稱它為resource placement policy,資源安置策略。簡單來講,比如說有一個(gè)用戶發(fā)一個(gè)指令,他要一百臺(tái)虛擬的Server,這就是典型的偏計(jì)算的活——Server一般是CPU跟Memory組成的,當(dāng)然磁盤也有,但不是特別重要。那這個(gè)時(shí)候,你要做的最多的事情就是去判斷它應(yīng)該安置在哪里。
最簡單的安置策略是什么呢?均勻化的法則。這是一點(diǎn)問題都沒有的,不外乎就是我旗下有一千臺(tái)物理服務(wù)器,下面就看誰身上的資源比較空閑,我就往誰身上放就好,這是非常非常簡單,也非常有效率的。我相信基本我們能找到的大部分的系統(tǒng)都是這么安放的。
但這個(gè)里面其實(shí)是有問題的。問題在哪呢?就是物理設(shè)備身上已經(jīng)在運(yùn)行的資源,它不一定是在做決策的那個(gè)時(shí)刻正在吃資源,所以有可能會(huì)發(fā)生的情況就是,你根據(jù)Workload所做出的Placement的決策導(dǎo)致了一些機(jī)器壓力會(huì)比較大。當(dāng)然如果說有錢人,這個(gè)事情是不怕的,他們在平均在每一個(gè)物理機(jī)上只跑八個(gè)VM,他們的Placement的策略是極其簡單的,就是均勻化分布法則,沒有其他的,基本上不太考慮未來很可能產(chǎn)生的大的起伏。
這種做法有沒有問題呢?其實(shí)沒有問題,為什么?因?yàn)樗娜哂喽确浅8?,資源的實(shí)際的占用率偏低,所以他就不用擔(dān)心突然之間,比如說什么量上來了之后,會(huì)產(chǎn)生一些壞的影響。
但是這種做法的話,在過去是沒問題的,現(xiàn)在問題非常大:這會(huì)使服務(wù)商根本活不去。因?yàn)橛布某杀緦?shí)際上不是一個(gè)小錢。因?yàn)檫@畢竟是一場生意,因?yàn)檫@不是一個(gè)totally for free的東西,就像你去打開一個(gè)網(wǎng)站看新聞一樣。所以如果一個(gè)云計(jì)算的一個(gè)服務(wù)商,它完全看不到有利潤的未來的話,這個(gè)服務(wù)商的服務(wù)是不可持續(xù)的,這是較大的不安全和不穩(wěn)定和不可靠性。因?yàn)榉?wù)商如果關(guān)門,實(shí)際上這會(huì)使的消費(fèi)者的系統(tǒng)會(huì)非常的艱難,因?yàn)槟阋w移,要搬家,非常艱難。所以我自己覺得,在每個(gè)物理機(jī)身上,可能密度要增大,比如說增大到20個(gè)或者30個(gè),取決于你的硬件的配置。高配的時(shí)候,可能密度會(huì)更高,低配的時(shí)候,密度要降低,但總之來說,我們密度應(yīng)該適當(dāng)?shù)囊幸稽c(diǎn)增長。
在這種模式下,實(shí)際上你最需要做的事情就是如何去判斷。判斷的因素非常多,比如說當(dāng)前的workload運(yùn)行狀態(tài)。另外一個(gè),歷史狀態(tài)。這個(gè)是很有意思的,所有的計(jì)算機(jī)在運(yùn)行過程中,不管是物理的還是虛擬的設(shè)備,他們在運(yùn)行過程中,實(shí)際上是有大量的歷史的數(shù)據(jù)的,每時(shí)每刻每分每秒的數(shù)據(jù)我們都應(yīng)該把它記錄下來,予以分析。這樣我才能夠非常清晰的知道,每一個(gè)設(shè)備,不管是物理的還是虛擬的,它的曲線圖是怎樣的,這個(gè)是我們要抓住在手上的第二個(gè)歷史的因素。第三個(gè)因素在于credit,信任值,就像我們?nèi)耍總€(gè)人在銀行,我相信每個(gè)人在銀行基本上都會(huì)多多少少有一些credit,銀行根據(jù)每個(gè)人在銀行的歷史記錄,他會(huì)有一些對(duì)這個(gè)人有些判斷。
說個(gè)小題外話就是,互聯(lián)網(wǎng)金融為什么它有魅力?有魅力的地方在于它通過技術(shù)手段獲得了很多數(shù)據(jù),于是他就對(duì)消費(fèi)者,或者是小商家能夠迅速的做出判斷,我覺得你可不可信任。這是非常大的一個(gè)買賣,而這個(gè)買賣不僅僅適用于我們有血有肉的人類,它同樣適用于那些冷冰冰的機(jī)器的世界,這是我們要考慮的第三個(gè)點(diǎn),就是所謂的device credit。因?yàn)閷?shí)際上,并不是每臺(tái)設(shè)備都非常靠譜的。長期跟硬件打交道的人應(yīng)該非常清楚,硬件有兩個(gè)時(shí)間點(diǎn)是最容易出問題的。第一個(gè)時(shí)間點(diǎn)是剛上線的時(shí)候,比如說像我們上線一個(gè)項(xiàng)目,一般的設(shè)備規(guī)模差不多在一百臺(tái)到兩百臺(tái)的規(guī)模,規(guī)模不是很大,而我們平均一般比如說一到兩個(gè)月會(huì)上線一套設(shè)備,保持這樣的一個(gè)頻率。你上線一票設(shè)備,假設(shè)是一百臺(tái)或兩百臺(tái),這里面不可能是百分之百都OK的,它一定會(huì)有那么幾臺(tái)有問題。比如我最近剛剛在北京的亦莊,我們上線了一大票設(shè)備,然后壞了,上線以后,開箱即損,幾臺(tái)呢?四臺(tái)都是壞的,每個(gè)壞的這個(gè)表現(xiàn)還不一樣,但是它是壞的,這就是現(xiàn)實(shí)。另外一個(gè)會(huì)有故障的時(shí)間,一般是在三年左右開始出現(xiàn),尤其是硬盤。運(yùn)行期間相對(duì)來說比較安定,但是也不一定,比如CPU都可能會(huì)出錯(cuò),尤其是高壓力的情況之下。我們在魯谷中心,就是西五環(huán)的一號(hào)區(qū)里邊,我們已經(jīng)三臺(tái)設(shè)備的CPU出過問題,所以你會(huì)看得到,在運(yùn)行過程中,實(shí)際上每一臺(tái)設(shè)備,就跟我們?nèi)艘粯?,它?shí)際上是有不同的表現(xiàn)的,這個(gè)就是我們要抓住的第三個(gè)值。其實(shí)還是對(duì)歷史的分析,但是這種分析,它就相對(duì)來說要要求要比較實(shí)時(shí)的能體現(xiàn)這些東西。
所有這些數(shù)據(jù)我們拿到之后,我們首先要做的事情是怎么存放它,接下來的事情是怎么分析它。把這兩步做好之后,于是我們就可以大致得出一個(gè)對(duì)這個(gè)系統(tǒng)的一個(gè)判斷,這個(gè)是非常關(guān)鍵的。對(duì)于計(jì)算這一頭,就是所謂的resource placement policy的這個(gè)判斷是極其重要的,這是第一步。第二步,里面有個(gè)非常關(guān)鍵的,就是當(dāng)資源已經(jīng)up and running,它已經(jīng)被分配出去,它可不可能出問題?太可能了,在我們QingCloud里面,用戶如果有資源正在跑的,然后他比如說跑在A location,它真的是永遠(yuǎn)跑在A location嗎?NO,不是這樣子的,因?yàn)橛布?,還有各種網(wǎng)絡(luò)的格局,隨時(shí)可能會(huì)有改變,我們一定要有技術(shù)的手段,讓這些可能出現(xiàn)的risk,或者disaster,它可以被預(yù)測,就是所謂的prediction。這就跟我們看那個(gè)中央電視臺(tái)的這個(gè)天氣預(yù)報(bào)是一個(gè)概念。預(yù)測非常關(guān)鍵,而且一定要求它是越來越較精確。我相信各位,大家看天氣預(yù)報(bào)的時(shí)候肯定會(huì)有兩種心態(tài),昨天說今天下暴雨了,今天沒下,那個(gè)鬼天氣預(yù)報(bào)太差勁了,這是一種表現(xiàn),因?yàn)樗鼪]有預(yù)報(bào)準(zhǔn)。還有一種說昨天說今天要36度高溫,果然這么熱,好熱好熱,就覺得那個(gè)天氣預(yù)報(bào)好準(zhǔn),對(duì)不對(duì)。實(shí)際上預(yù)測這件事情對(duì)于IT這個(gè)行業(yè)來說,對(duì)于IT 運(yùn)維這個(gè)行業(yè)來說非常重要,你怎么去形容它都不會(huì)過分。
預(yù)測是一個(gè)極其艱難的過程,而且它這個(gè)分析跟我前面講的那一步的分析還有點(diǎn)區(qū)別。前面我講那一步,實(shí)際上大部分的分析是靜態(tài)分析,就是所謂的static,這種靜態(tài)分析講求的地方在于追溯你的歷史,然后我對(duì)你做一個(gè)未來的行為的一個(gè)大概的預(yù)判。但Prediction不同,Prediction權(quán)重更高的是Real-time Data Stream,Data Stream是非常關(guān)鍵的,那這個(gè)地方就是所謂的我們要引入一種超級(jí)快速的,而且那個(gè)overhead要偏低的這種實(shí)時(shí)的數(shù)據(jù)分析技術(shù),所以你會(huì)看到在這個(gè)層面上來說的話,我們要把這些事情做好,實(shí)際上要花大力氣,這也是我們目前正在重點(diǎn)做的事情。我們目前的Prediction準(zhǔn)確率還不是特別理想,所以最近這幾個(gè)月我們花了很大的力氣在增強(qiáng)RD的力量這個(gè)上面,我們也增了很多兄弟在這個(gè)上面做。
另外還有一件事情,就是你看前面講的都是為了防止你出問題,但是肯定不會(huì)百分之百的能防得住,一定會(huì)有些時(shí)候會(huì)出問題的,下面的一件事情是出了問題怎么辦?How to action,怎么樣去針對(duì)那些已經(jīng)正在發(fā)生,或者是已經(jīng)剛剛發(fā)生,Just moment ago,發(fā)生的那個(gè)災(zāi)難,怎么去把這個(gè)事情做好。這個(gè)事情更多的實(shí)際上是叫動(dòng)作的觸發(fā),很多的trigger。這些trigger在我們早期的版本,就是在2012年和2013年的時(shí)候,尤其是2012年做的版本,我們的基本上的邏輯非常簡單,實(shí)際上就是把我腦袋里面那些邏輯寫成Code,然后再配上一些觸發(fā)的條件,最后它就會(huì)形成一種可重復(fù)使用的操作規(guī)則,或者是操作指南。發(fā)生這樣的情況,你要Take這樣的Action,非常簡單的一個(gè)邏輯。但實(shí)際上我們規(guī)模,因?yàn)楝F(xiàn)在QingCloud規(guī)模相當(dāng)大了,我們服務(wù)的客戶群極寬,而且現(xiàn)在有很多美國客人也是在,直接在用我們在中國的部署,所以我們顯然這個(gè)壓力上來之后,災(zāi)難的概率也會(huì)變高,這個(gè)是很好理解的,因?yàn)槟慊鶖?shù)變得很大了。
這個(gè)時(shí)候就會(huì)看到,就是原來這種單純的就是以我已有的知識(shí)結(jié)構(gòu)所形成的這樣的一些trigger的庫,那么實(shí)際上是不足夠的,所以這個(gè)里面要加入什么東西了?new action creation的過程。我們要能夠授權(quán)我們的robots system,能夠去在具備一些條件的情況之下,去自適應(yīng)和創(chuàng)建一些新的規(guī)則集。這是我們正在做的這個(gè),就是在這個(gè)機(jī)器學(xué)習(xí)范疇之內(nèi)的第三件事情,就是非常關(guān)鍵的。
這三件事情基本上都是跟——第一件事情可能跟計(jì)算的關(guān)系會(huì)比較重,后面兩件是比較帶有通用性的——計(jì)算和存儲(chǔ)最相關(guān)的。其實(shí)計(jì)算跟存儲(chǔ)之間是比較緊的,因?yàn)橐话阏f來我們講一臺(tái)設(shè)備,CPU、Memory跟Disk它是少不了的,我想基本上我講的這三件事情,基本上能夠涵蓋他們這個(gè)雙方。
網(wǎng)絡(luò)就不太一樣了,網(wǎng)絡(luò)會(huì)稍微特殊一點(diǎn)點(diǎn)。前段時(shí)間大家有個(gè)很大的爭論,我覺得很有意思,就是大家在微博上跟林源有一些探討,行業(yè)里面很多兄弟都加入了,比如像盛科的蘇總,張總,在討論到底什么叫SDN。我覺得這個(gè)事情就好像大家在討論以前一句老話,叫一千個(gè)人心中會(huì)有多少個(gè)哈姆雷特的那個(gè)意思。我倒不是說就有一千種SDN,但是SDN這個(gè)東西實(shí)際上就看你從哪個(gè)角度去看,你可以叫它SDN,也可以不叫它SDN,無所謂,就好像我經(jīng)常講,就是虛擬化這個(gè)東西跟云到底什么關(guān)系,我要說的絕情絕意一點(diǎn),我就可以明確的講它們沒關(guān)系,就比如說IBM收購了Softlayer,它到底是不是云計(jì)算?沒錯(cuò),它是一個(gè)物理資源出租的業(yè)務(wù),但是你不能說它不是Cloud的模式,因?yàn)樗倪@個(gè)業(yè)務(wù)模式,還有用戶的體驗(yàn),它都是Cloud那個(gè)范,只不過它偏物理設(shè)備的Delivery。那你不能說它采用的是物理資源,所以你說它就不是Cloud business,我覺得這是不對(duì)的。
同樣道理,我們講網(wǎng)絡(luò)層面也是這樣的,實(shí)際上現(xiàn)在我覺得我們更應(yīng)該強(qiáng)調(diào)的事情是說IT這個(gè)工具,或者說IT的思維,對(duì)于通訊行業(yè)、傳統(tǒng)的電信行業(yè)它的影響是有多大。我們使整個(gè)網(wǎng)絡(luò)可編程化,就是可以被Program,然后使得轉(zhuǎn)發(fā)和控制能夠得以合理的分離,使得一旦網(wǎng)絡(luò)出現(xiàn)問題,或者網(wǎng)絡(luò)出現(xiàn)抖動(dòng)之后,我們能夠快速的Recover。像這些東西,實(shí)際上我覺得它就可以稱之為SDN這個(gè)范了。而你不應(yīng)該去強(qiáng)調(diào)說,我一定要基于某一種協(xié)議,之后它才能叫做SDN,或者說我一定要基于某一種特定的規(guī)范之后,它才能叫SDN,我覺得我這個(gè)是需要稍微聲明一下的。當(dāng)然這個(gè)每個(gè)人看法可能不太一樣,但我覺得這無外乎就是一個(gè)廣義和狹義的話題。
那回到QingCloud我們在網(wǎng)絡(luò)層面上的一些實(shí)踐,我覺得首先要做的事情就是什么呢?就是很多人,反正我個(gè)人是這個(gè)看法,我記得盛科的張總他們對(duì)此也是高度一致的看法,就是轉(zhuǎn)發(fā)和控制必須分離。你如果不分離,我們對(duì)于盒子有很明確的依賴。而你看看,我相信你們做Cloud相關(guān)的這些各種報(bào)道,還有研究,我相信你們現(xiàn)在應(yīng)該有很深的體驗(yàn)。就是我們做Cloud跟傳統(tǒng)IT有一個(gè)很大的區(qū)別,就在于我們不可以把我們的系統(tǒng)的可靠性依賴于某一些特定的硬件。我們在傳統(tǒng)的運(yùn)維概念里面對(duì)于硬件的可靠度要求是很明確的,這就是IBM公司能成功的非常核心的原因。為什么IBM能成功?你只有買了IBM的東西,你的系統(tǒng)才能不壞,所以你的core banking,核心銀行業(yè)務(wù),大家就買IBM的mainframe或者是小型機(jī)之類的,對(duì)不對(duì)。因?yàn)橹挥蠭BM能夠有這個(gè)能耐保證你的東西不壞。但是實(shí)際上我們看現(xiàn)在這個(gè)時(shí)候,首先一個(gè)IBM這種做法有一點(diǎn)點(diǎn)過時(shí)了,對(duì)于尤其是新業(yè)務(wù),所以我們做Cloud實(shí)際上有沒有發(fā)現(xiàn),我們實(shí)際上苦心孤意在做的事情是,讓我們各種各樣的應(yīng)用,不管是互聯(lián)網(wǎng)應(yīng)用,Web的、游戲的、Mobile的,或者是偏傳統(tǒng)的業(yè)務(wù),各種比如說什么辦公系統(tǒng)、ERP、CRM,甚至包括電子郵件系統(tǒng),那么這些東西的話,我們用云的方式Run的時(shí)候,我們實(shí)際上心里面有個(gè)預(yù)期,就是你這東西它能不能不壞。但什么叫能不能不壞呢?實(shí)際上設(shè)備一定會(huì)壞,設(shè)備只要一上架一定會(huì)壞。消費(fèi)者心里面的潛在的預(yù)期是什么呢?如果設(shè)備壞的話,我的系統(tǒng)能不能不壞?
實(shí)際上這個(gè)地方落到根本上,說的就是我們的系統(tǒng)在運(yùn)行過程中,它不應(yīng)該對(duì)某一些特定的設(shè)備有期待。簡單來講,就是任何的失敗,任何的一個(gè)exception、error、failure還有disaster,它都應(yīng)該是什么呢?In planing,都是在計(jì)劃中的,這樣才對(duì)。所以這件事情,我們在計(jì)算和存儲(chǔ)的身上,我們已經(jīng)表現(xiàn)的非常明顯,你看看七牛的兄弟們做存儲(chǔ),毫無疑問,他一定要做冗余。當(dāng)然也可以通過新的技術(shù),比如糾刪碼這種方式能夠提高容量的復(fù)用率。但是無論你怎么做,最終你肯定還是有一些冗余的成分在里邊的。我們將文件碎片化、打散分散存放,也都是為了這個(gè)目的,就是簡單來講,我不依賴于你這張硬盤,我也不依賴于你這一個(gè)服務(wù)器,我也不依賴于你這一堆服務(wù)器。網(wǎng)絡(luò)也是一樣的,為什么轉(zhuǎn)發(fā)和控制、分離那么重要?原因就在這,我們一定要讓設(shè)備僅僅充當(dāng)簡單的角色,讓它可以快速被取代,這是非常關(guān)鍵的。所以控制這個(gè)過程是極其重要的。SDN的語境范圍里面,大家把這個(gè)東西稱之為controller,控制器,這個(gè)真是簡單明了。但是因?yàn)槲覀僎ingCloud System里面,因?yàn)槲覀冋麄€(gè)系統(tǒng)都是一個(gè)稱之為一個(gè)robots community,所以在我們的開發(fā)里面沒有用controller這個(gè)單詞,我們用的是一個(gè)Bot這樣的一個(gè)單詞,其實(shí)概念是一樣的。
我們的做法其實(shí)非常的簡單,我們主要是把它任務(wù)分成兩步,第一步就是二層的功能,另外一步就是三層的功能。二層的功能偏簡單,實(shí)際二層的功能基本上就是幾件事情,就是組網(wǎng)及網(wǎng)絡(luò)隔離,就是干這兩件事情。網(wǎng)絡(luò)隔離就是所謂的私有網(wǎng)絡(luò),就是VPC的范疇的一個(gè)東西。組網(wǎng)呢,就是有兩種組網(wǎng),你自己的局域網(wǎng)的組網(wǎng),以及局域網(wǎng)和局域網(wǎng)之間的組網(wǎng)。然后三層的功能是最復(fù)雜的,三層功能涵蓋了很多。最簡單的一個(gè)就是說,我怎么樣確保外部的流量能夠到達(dá)那一步,就是所謂的EIP的功能,elastic IP address,這個(gè)地方涉及到的實(shí)際上是一個(gè)轉(zhuǎn)換的過程。這個(gè)轉(zhuǎn)換的過程大伙都知道,這個(gè)東西就是做流量轉(zhuǎn)發(fā)。做流量轉(zhuǎn)發(fā)有好多種技術(shù),傳統(tǒng)的技術(shù)NAT,新的技術(shù),就看你用什么協(xié)議了,那每一個(gè)東西都是有自己的做法的。我們兩者都有。
為什么兩者都有?這是我經(jīng)常講的,我們做事情千萬不可極端,就是在這個(gè)事情上沒有某一個(gè)技術(shù),它是的好,也沒有一個(gè)技術(shù)是的差的,我們一定要將技術(shù)混合起來用,以確保你的系統(tǒng)是最優(yōu)化的,這個(gè)是非常非常重要的。我經(jīng)常在外邊,你也知道我這個(gè)人特別喜歡跟人講技術(shù),我經(jīng)常在外面講的時(shí)候說,大家的視野千萬不要被某一種概念牽著走了。我記得前段時(shí)間,我忘了是一個(gè)什么會(huì)議,就前兩個(gè)月,他們請我過去講一個(gè)小話題,叫“云計(jì)算中的那些坑”,其中我就講了大概好幾個(gè)坑,其中有一個(gè)我自己都覺得蠻重要的,我把它放到前面講的。就是說,概念重不重要?非常重要,像你們做媒體也是這樣的,要推進(jìn)新的概念,然后去promote這些東西在市場上,這個(gè)很重要。但是我們是做實(shí)施的工程師,我們做工程師的人一定要記住,我們要學(xué)習(xí)這些新的理念跟概念,但一定要辯證的去看,要權(quán)衡它。所以在SDN這里邊,比如EIP,我們兩者皆有的原因是在于,對(duì)于Rack內(nèi)的通訊,顯然傳統(tǒng)的方式更加有效。而對(duì)于跨長線路,長距離的通訊,顯然新的、類似于OpenFlow這樣子的做法更加有效。這個(gè)大家可以通過測試,通過長期的觀察,就能夠很明確的表明這一點(diǎn)。你在Rack內(nèi),TOR(Top of Rack),用這種東西的話,你用新的模式做實(shí)際上得不償失,所以這兩者我們都需要去做它。我們做這個(gè)network bot,就是controller,這兩方的東西都要關(guān)照,那么這是一個(gè)。
另外一件事情再比如說,我們提供的三層路由器,路由器里面所涵蓋的一些功能,我舉個(gè)簡單例子,因?yàn)榛旌显骑@然是一個(gè),不說多的,我覺得10年、20年的時(shí)間應(yīng)該是主流,那么企業(yè)用戶,因?yàn)槲覀冎饕?wù)于企業(yè)用戶,尤其是現(xiàn)在越來越高的比例是帶有一些傳統(tǒng)屬性的企業(yè)用戶,當(dāng)他們開始擁抱這種新IT模式,Cloud Based IT的時(shí)候,他們實(shí)際上對(duì)于自己既有的legacy有很高的期待,就是你的新系統(tǒng),你可以用一種云的方式,你的新系統(tǒng)應(yīng)該跟我的老系統(tǒng)能夠無縫的怎樣怎樣。那這個(gè)地方實(shí)際上就存在一個(gè)問題,就是我們在云端所交付出來的virtual router,那個(gè)東西能不能夠無縫的去兼容、支持所有市面上現(xiàn)在這些傳統(tǒng)的設(shè)備,供應(yīng)商的設(shè)備,不管是華為,華三,還是瑞杰,Cisco,Juniper,無所謂是誰的,能不能做得到,這個(gè)地方是非常重要的一件事情。這就是為什么我們做出來的三層路由器實(shí)際上看上去非常傳統(tǒng),比如說我們支持的隧道協(xié)議就是GRE,為什么是GRE,大家都知道,因?yàn)樗罾吓?,最?quán)威。再比如說,當(dāng)然我們也會(huì)支持新的規(guī)范,比如說類似于像VxLan這種,能夠幫助用戶去走這種新的協(xié)議,當(dāng)然我們也會(huì)做。再比如說像DHCP地址的分發(fā),那么這些東西,其實(shí)都是,我們就原原本本的,就照著傳統(tǒng)的路由器,它三層設(shè)備具有這樣的能力,我們?nèi)プ鏊?/p>
所有這些東西我們在做的時(shí)候一定要把這個(gè)就是轉(zhuǎn)發(fā)能力,放在哪呢?放在盒子身上,而且控制能力放在一個(gè)virtual的設(shè)備里面,說白了就是一個(gè)虛擬的控制器,就是一個(gè)虛擬的Linux或者是一個(gè)Process。這個(gè)里面內(nèi)嵌的一些規(guī)則,我們可以是去跑一個(gè)虛擬機(jī)來做,我們也可以是去跑一個(gè)Container來做,這都是很容易做得到的。那么兩者,我們目前都有,針對(duì)不同的型號(hào)來做到它。
所以說你會(huì)看到以前,你會(huì)看到,就是我們以前,我們講hypervisor,那么QingCloud顯然是百分之百,fully KVM based。但現(xiàn)在顯然不是這樣子的,為什么?因?yàn)槲覀冞€是有一部分Container相關(guān)的東西在里面的,為什么會(huì)有這樣的變化呢?還是那句話,一定要尋求變化,就是有些東西,它可以百分之百用在這樣的一個(gè)層面上。但是另外一些層面,他可能就不一定適用,那這是在網(wǎng)絡(luò)層面的控制,網(wǎng)絡(luò)層面的機(jī)器的做法。
網(wǎng)絡(luò)層面,我們目前有一個(gè)很大的缺失,就是所謂的L2 learning的過程。因?yàn)槲覀儸F(xiàn)在走的設(shè)備是偏傳統(tǒng)的方式,那么在Rack內(nèi)如果發(fā)現(xiàn)了設(shè)備的故障的時(shí)候,它差不多有一到兩分鐘的L2 learning的時(shí)間,這會(huì)使大家非常的沮喪,為什么?因?yàn)閷?shí)際上一兩分鐘的時(shí)間還是有點(diǎn)長的,雖然它是一個(gè)自動(dòng)發(fā)生的過程,因?yàn)橐彩且粋€(gè)設(shè)備的一個(gè)特性,但實(shí)際上有點(diǎn)長,我們目前正在想辦法解決這個(gè)問題。
解決的方案非常簡單,我們會(huì)做自己的硬件。這邊我可以給你透露一下,我們自己設(shè)計(jì)的硬件已經(jīng)設(shè)計(jì)完了,并且發(fā)給了廣東的一家工廠,我星期天就會(huì)去廣州,跟他們談很多細(xì)節(jié)。為什么要做這種設(shè)備?實(shí)際上這個(gè),在我們這個(gè)行業(yè)里面有個(gè)專門的詞叫融合型設(shè)備,融合型設(shè)備就是說這個(gè)設(shè)備它既不是服務(wù)器,也不是存儲(chǔ)柜,也不是網(wǎng)絡(luò)交換機(jī),而是一個(gè)合成體。當(dāng)然這個(gè)東西,你說是不是就是原來的刀片機(jī)的刀箱?NO,不是那個(gè)樣子的,它不是一個(gè)刀片機(jī)的概念的東西,他是一個(gè)全新的一個(gè)OCP Based的設(shè)計(jì)。在這個(gè)里面,你會(huì)看到很清晰的一個(gè)東西,就是說我們要想在傳統(tǒng)的路徑上面去做,但是同時(shí)呢又要解決一些傳統(tǒng)的路徑所遺留下來的問題,我們必須要去改變一點(diǎn)點(diǎn)。
通過這種方式,我們可以使的轉(zhuǎn)發(fā)這樣子的能力會(huì)變得更加的,即便是設(shè)備出問題的時(shí)候,他也不會(huì)波擊太多,就是包括那種比較短暫的學(xué)習(xí)周期。其實(shí)所謂的學(xué)習(xí),就是refresh的過程,然后也會(huì)變得更加的短。甚至是說,雖然內(nèi)部還是在做這樣的refresh,但是用戶感受不到。然后從controller角度來說,我們目前走的路徑是全虛擬化,全虛擬化的好處就是第一個(gè)是,這個(gè)就是Scale可以非常的大。因?yàn)閺恼{(diào)度的角度來說,有些時(shí)候出問題是很正常的,這是網(wǎng)絡(luò)層面上。另外一個(gè),我覺得還有一個(gè)很重要,就是整體來看,我們越來越多的看到一個(gè)東西,就是所謂的,就是這個(gè),因?yàn)槲覀儸F(xiàn)在不是因?yàn)槿只龅帽容^多,像哈爾濱、北京一、北京二,然后廣東,就是我們現(xiàn)在分區(qū)分類比較多,上海很快就會(huì)有上線,香港就是下個(gè)月,8月份,今年已經(jīng)在香港那邊的前站工作都已經(jīng)做完了,美國是11月末。所以都很快,就會(huì)變得很大。這個(gè)地方我們就是面臨一個(gè)很大的問題,就是全局調(diào)度的問題。全局調(diào)度,尤其是跨越這種超級(jí)長的廣域網(wǎng)線路,實(shí)際上我們面臨很大的壓力,這個(gè)確實(shí)是一個(gè)實(shí)際的情況。分區(qū)部署是一個(gè)解決方案。但是分區(qū)部署之后,會(huì)使的我們的成本變高,然后資源復(fù)用率變低,所以我們目前在這一方面,就是說廣域網(wǎng)的環(huán)形網(wǎng)絡(luò)建設(shè)及調(diào)度,這一方面我們在花很大的力氣在做這方面的事情,這個(gè)它就涉及到更進(jìn)一步的所謂SDN的話題。
那么這邊,我覺得有一件事情,大家至少能夠非常確認(rèn)的,這邊我們是totally OpenFlow based。我們目前在看的比較多,就是純OpenFlow的跨廣域網(wǎng)的這個(gè)Traffic調(diào)度過程,包括我們現(xiàn)在IP地址也是自己購買的IP地址。為什么要這么做?就是因?yàn)橐龅竭@個(gè)跨廣域網(wǎng)的assignment。當(dāng)然IP比較特殊,它是有國家特性的,一般給中國大陸用的IP就只能在中國境內(nèi)用,但至少我們能夠做到北京跟廣東之間的IP可以飄動(dòng),是這樣子的,所以你會(huì)看在整個(gè)的這個(gè)其實(shí)歸根結(jié)底,我們今天談的這個(gè)主題,歸根結(jié)底就是怎么樣去做Operation。Operation這件事情呢,我認(rèn)為是從IT本身來說是最主要的工作,這是最最重要的工作。但是Operation這件事情,正是因?yàn)樗闹匾裕晕覀儜?yīng)該讓它消失。我說這句話,它是不矛盾的,就是我們要讓它消失,消失的原因就是因?yàn)樗匾?。因?yàn)樗匾赃@個(gè)活不能交給人去手動(dòng)的去做,當(dāng)然我知道這個(gè)過程非常的漫長。我們在青云里面,也沒有說做到百分之百的沒有人工的干涉和參與,但是我們至少說已經(jīng)做到90%以上的工作沒有人工的參與和干涉了,就絕大部分都不會(huì)有。所以我們在我們的范疇,我們是沒有值班的概念的,我們就是設(shè)備損壞也是一個(gè)正常的邏輯,我們在哪一個(gè)數(shù)據(jù)中心,都不是百分之百的設(shè)備在線上跑,因?yàn)榭倳?huì)有壞的設(shè)備的。所以從這個(gè)角度來說,我們其實(shí)最終的,用一個(gè)詞來講,我們雖然我經(jīng)常講P2P的robots community management system,但實(shí)際上,其實(shí)說白了,其實(shí)說的簡單一點(diǎn),實(shí)際上是一個(gè)什么東西呢?是一個(gè)自動(dòng)化運(yùn)維的過程。
我總結(jié)一下,就是我們要大規(guī)模引入的東西,實(shí)際上就是什么呢?就是所謂的機(jī)器學(xué)習(xí)的過程,就是海量的數(shù)據(jù)的捕獲和處理,以及相應(yīng)的計(jì)算機(jī)的自我學(xué)習(xí)和規(guī)則集的更新的過程,這是一個(gè)非常長期的行為,我相信各位都對(duì)搜索引擎這個(gè)東西是毫不陌生的,搜索引擎就是非常典范的這樣的一個(gè)東西,我們就以百度為例。百度它從網(wǎng)頁上去爬別人的數(shù)據(jù),然后放到自己的索引庫里,這是最傳統(tǒng)的做法。接下來他做百度知道,百度是人肉的一個(gè)過程,是一個(gè)“有人有問題,然后有人去回答問題”,百度在做一個(gè)Match的一個(gè)過程,是一個(gè)人肉的過程,然后半自動(dòng)化,然后你會(huì)看。所有這些我們?nèi)?,?duì)于知識(shí)的掌握過程中的努力,實(shí)際上就是一個(gè)所謂machine learning的過程,就是讓機(jī)器不斷的掌握一些我們的規(guī)則,實(shí)際上我們現(xiàn)在要做得事情,我們對(duì)于Cloud Computing,對(duì)于IT這個(gè)行業(yè)來說,我覺得我們要掌握的事情就是什么呢?就是我們要把這些,我們過去用在人身上,為人提供服務(wù)的機(jī)器學(xué)習(xí)的東西我們要下沉,下沉到為誰提供服務(wù)呢?為設(shè)備提供服務(wù),就是這樣子的,這件事情我覺得并不是更加的艱難,而是更加簡單,只是大伙可能不一定認(rèn)為這個(gè)東西有那么重要而已。為什么?因?yàn)榭雌饋碚f做運(yùn)維,招一幫兄弟去做其實(shí)也蠻OK的。對(duì),是蠻OK的,這個(gè)事情可以做,但實(shí)際上Long Term來看是不行的。如果大伙自己的這個(gè)運(yùn)維的設(shè)備規(guī)模越來越大,就是像我們這樣子增長非常迅猛,我們的增長速度是極快的,就是你招人都來不及。這個(gè)時(shí)候你會(huì)發(fā)現(xiàn),你的救世主就是machine learning,非常較精確,非常高效,所以我覺得這個(gè),我想應(yīng)該就是非常非常關(guān)鍵。對(duì)于每一個(gè)從事Cloud行業(yè)的兄弟們來說,大伙都要往這個(gè)方向努力。
當(dāng)然我們有沒有一天,我們能夠把自己的系統(tǒng)稱之為人工智能,這取決于我們的能力了,當(dāng)然現(xiàn)在這個(gè)階段最多也就叫個(gè)機(jī)器智能,我希望有一天,不管是我,或者其他的這個(gè)團(tuán)隊(duì),不管是誰,不管Amazon、Google,我希望有人能夠真正做出一套百分之百、完全人工智能化的、不需要人類參與的純機(jī)器的世界。當(dāng)然我希望那個(gè)能夠做出來這個(gè)東西的人是我。當(dāng)然我覺得,我也毫不懷疑會(huì)有別的Team,別的團(tuán)隊(duì)也會(huì)在這個(gè)方向上做出非常卓越的努力。
我還有一個(gè)問題,就說你們現(xiàn)在這個(gè)Robots,它的更新是一個(gè)什么頻率,包括,萬一你們怎么去防止機(jī)械人的更新出現(xiàn)邏輯錯(cuò)誤,萬一出現(xiàn)錯(cuò)誤怎么處理?
黃允松:很好的問題。我們目前的話,刷新的頻率是兩周一次的迭代,就是我們的Code Base是兩周一次迭代,而且這個(gè)刷新的過程也是自動(dòng)的,我們會(huì)有一整套的這個(gè)DevOps的過程,就是非常典型的,然后十萬次無錯(cuò)測試。完成之后,自動(dòng)的打包,Push到這個(gè)線上,它是個(gè)自動(dòng)的過程。
怎么防止錯(cuò)誤,這是非常關(guān)鍵的,這就是為什么我們目前沒有百分之百自動(dòng)化的一個(gè)非常核心的原因,就是我們核心系統(tǒng),就是Global Service,就是Core System的話,我們現(xiàn)在每次做更新的東西都是靠人工做。但是Core的東西它更新不是特別的頻繁,一般是一些細(xì)枝末節(jié)的東西;另外一個(gè),還是沒有辦法百分之百防止出錯(cuò),這就是要回到我們前面講的那個(gè),我們這個(gè)談話最前面我講到的就是,出了錯(cuò)之后,怎么樣去Take Action。這個(gè)是非常關(guān)鍵的。實(shí)際上這里面其實(shí)就是一件事情,就是我把我們QingCloud做的這套系統(tǒng),我稱之為叫這個(gè)firmware,叫固件,叫Cloud firmware,就是有點(diǎn)像刷系統(tǒng)一樣那個(gè)系統(tǒng)。我對(duì)于我們這套固件的要求就是什么呢?這套系統(tǒng)它可以被Stop,也可以被pause,也可以被refresh掉。但是在這個(gè)時(shí)候,在做這些事情的時(shí)候,上層的這個(gè)用戶系統(tǒng)是必須是要在up and running,并且不受影響的。你可以理解成我做了一個(gè)Sand box,一個(gè)沙盒一樣概念的東西,它可以保證說我下面的東西如果出了錯(cuò)的話,上層的業(yè)務(wù)系統(tǒng),就是用戶系統(tǒng),它是還是在Up and running的,它是完全隔開的兩個(gè)東西,這一點(diǎn)也是為什么我要設(shè)計(jì)自己的硬件的核心原因。
在我設(shè)計(jì)的硬件里面,CPU不是只有一種CPU,在我的系統(tǒng)里有三種CPU,非常復(fù)雜,就是有三種完全不同架構(gòu)的CPU,這是非常非常有意思的一個(gè)東西。為什么這么做?實(shí)際上我要把我的Cloud firmware,因?yàn)槲艺J(rèn)為,我們做的QingCloud這個(gè)東西是一個(gè)operating system,它就是一個(gè)操作系統(tǒng),只不過它是一個(gè)分布式的操作系統(tǒng),分散在很多設(shè)備上。所以我對(duì)于它這個(gè)東西的定義,對(duì)于操作系統(tǒng)這個(gè)東西的定義,就是QingCloud這樣一個(gè)分布式操作系統(tǒng),它一定在它內(nèi)部結(jié)構(gòu)發(fā)生變化的時(shí)候,一定要不能影響上層的建筑,就是客戶的那些workload,application system,那些東西不能被影響到,所以這一點(diǎn)是非常關(guān)鍵的。而好消息是,這個(gè)東西我們在13年,這個(gè)對(duì)外開放服務(wù)的時(shí)候,我們的系統(tǒng)就是這么來Run的。
所以簡單來講,你這個(gè)問題的答案就是我們就是三個(gè)步驟,三件事情去解決它,第一個(gè)就是Global,就全局分散的core service,我們現(xiàn)在在做refresh、upgrade的時(shí)候,我們一般是靠手動(dòng)的方式在控制,還沒有百分之百的自動(dòng)化;第二個(gè)就是說我們的系統(tǒng)在設(shè)計(jì)的時(shí)候一定要確保,我們QingCloud這一層,這個(gè)Cloud firmware這一層,固件這一層,跟上層系統(tǒng)之間沒有任何關(guān)系,完全隔離,純沙盒模式。最后一個(gè)就是說我們這個(gè)出了錯(cuò)之后,要快速的Rebalance,那么這個(gè)是非常關(guān)鍵的一個(gè)救急法寶。
InfoQ:十分感謝黃允松接受我們的采訪。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/4133.html
摘要:作為全球架構(gòu)師峰會(huì)坐看云起時(shí)專題出品人,創(chuàng)始人接受了記者的采訪,就標(biāo)志性的招牌技術(shù)自動(dòng)化運(yùn)維與機(jī)器學(xué)習(xí)進(jìn)行了闡釋。請介紹一下你們的機(jī)器人,它們是做在哪一層的,它們身上的職責(zé)有哪些黃允松非常樂于談這樣的話題。 作為全球架構(gòu)師峰會(huì)坐看云起時(shí)專題出品人,QingCloud創(chuàng)始人&CEO Richard Huang接受了InfoQ記者的采訪,就QingCloud標(biāo)志性的招牌技術(shù)自動(dòng)化運(yùn)維與機(jī)器...
摘要:但事實(shí)證明,傳統(tǒng)行業(yè)對(duì)云計(jì)算技術(shù)只是謹(jǐn)慎,并非保守。一旦真正接受云計(jì)算技術(shù)后,他們的轉(zhuǎn)型步伐甚至超越了互聯(lián)網(wǎng)企業(yè)。近兩年,云計(jì)算已經(jīng)在金融能源零售地產(chǎn)政府等傳統(tǒng)行業(yè)中落地,并完成了云化的深入改革?! ?月28日,QingCloud Insight 2016在北京國際飯店舉行,向來自全國各地超過1500名企業(yè)用戶、生態(tài)合作伙伴、開發(fā)者、技術(shù)愛好者以及媒體展示了青云 QingCloud 云計(jì)算領(lǐng)...
閱讀 7240·2021-09-22 15:36
閱讀 6035·2021-09-02 10:20
閱讀 1933·2019-08-30 15:44
閱讀 2721·2019-08-29 14:06
閱讀 1213·2019-08-29 11:17
閱讀 1669·2019-08-26 14:05
閱讀 3229·2019-08-26 13:50
閱讀 1617·2019-08-26 10:26