2013中國存儲峰會

今年是DOIT正式成立十周年,也是中國存儲峰會連續舉辦第九年。十年前成立DOIT傳媒時,還沒有Facebook、微博和微信,轉眼十年過去了,互聯網和IT技術都發生了翻天覆地的變化。也正在經歷從傳統互聯網向移動互聯網變革的過程,IT技術正在越來越融合,云計算、大數據的興起,社交網絡和海量數據的出現使傳統企業IT架構越來越難以滿足需求。

軟件定義數據中心最近比較火,到底什么是軟件定義?有硬件定義么?誰定義了誰?軟件定義是新概念么?《大話存儲2》作者張冬為您闡釋他所理解的“軟件定義”。

 

《大話存儲》作者冬瓜頭張冬

在業界看來,想玩轉存儲,一般至少要看一下《大話存儲》這本書,而今天,這本書的作者,網絡人氣頗高的存儲意見領袖@冬瓜頭張冬,也來到了2013中國存儲峰會的現場,并在軟件定義數據中心分論壇分享了《軟件定義,無處不在無時不有》的主題演講。

另外,與以往會議不一樣的是,在本次會場的最后,現場觀眾沒有陸續減少,反而陸續有人進場,這我想這就是內容的影響力。

那么,在張冬看來,軟件定義數據中心到底是怎么回事呢?

沒有概念的炒作,也沒有產品的宣傳推廣,今天,冬瓜頭張冬以一個嚴謹真誠地學術的角度,做了一場實實在在的干貨分享,識貨的,趕緊mark!

以下是演講實錄:

非常榮幸今天有這個機會給大家做這次演講,那么我現在是在PMC公司工作,但是我這個演講完全是個人的一些觀點,跟公司跟廠商沒有任何關系。剛才聽了Nutanix的同行介紹,有一些我感覺非常共鳴,尤其他剛才說到SAN控制器,你翻開SAN主板你看一下它的CPU跟你現在用的到底哪個更新。我今天這個主題叫做軟件定義,無處不在無時不有,其實軟件定義這個概念,也是去年或者前年炒起來的,不知道被誰出來這么個詞,剛才主持人已經介紹了我就不再多做介紹了,那么軟件定義這個概念的起源,是從SDN這三個字母起源的就是軟件定義網絡,那么之前網絡是什么樣呢?之前網絡就是硬件底層接口一直到上面路由,為什么叫軟件定義,有一幫人不管是用戶還是運營商還是大學里面的教授還是MIT的天才,他們對這個產品有自己的訴求,比方說我沒有這個能力來做底下高速的編碼接口,但是我腦子里有一些思想,我這個路由協議要改一改,我那個算法要改一改,這些都是很上層的功能,那么傳統這些做網絡路由器交換機的廠商,比如思科還有國內的廠商,他們軟件開發的時候不是那么容易就能滿足用戶所有需求,廠商的規劃總是慢于用戶的需求,而且用戶的需求是百般多樣的,不能用一兩種產品滿足所有用戶,那么這部分用戶就發起了我們要軟件定義你的設備,你提供硬件我提供軟件,或者你把你軟件開發接口提供給我,我來開發軟件,那對于傳統軟件是不接受的,我本來身體有大腦,有軀干,你現在把大腦拿掉,我就是一堆爛鐵,廠商肯定是抵觸的。

那么SDN這個詞我自己理解了一下就是上面看到了這個應該說是技術叫法,那軟件定義又出來了這就是SDN市場名詞,那么軟件定義真正目的我個人看法,其實這些硬件廠商不管是網絡還是存儲還是什么設備廠商,只要不是非常底層的設備它里面的軟硬件基本都已經解耦了,解放軟件模塊的生產力。廠商早已解耦,比如最典型的軟件存儲廠商,不管你底下用什么存儲軟件,它都會給你虛擬化起來,還有一個比方說典型的廠商它的OS很早就是軟件定義的,他的廠商一開始就是寫軟件的廠商,再加上跟別人合作的硬件,它的模擬器直接就是內核模擬器,所以說這種廠商只要稍微成一點體系還是比較老的廠商,它的軟件都已經解耦,軟件定義一開始就存在,現在用戶開始要求解耦。

我們看一下軟件定義這個東西誰在炒作它,那么二線三線的存儲廠商集成商這些人非常喜歡這個概念,因為這個市場已經被幾大SAN存儲廠商基本壟斷了,其他二三線的廠商如果產品往外推的話是比較難的,品牌我們有沒人敢用,所以有了這些概念之后,二三線廠商甚至一些集成商,可以拿一些開源的東西加上一些硬件形成自己的東西,所以說誰在炒作它二三線廠商集成商。另外一個比較大的團體在炒作這個概念就是互聯網,互聯網的這幫企業這幫工程師,那他們為什么炒作這概念呢,其實他們沒必要炒作這個概念,他們一開始就在軟件定義,2007年包括騰訊阿里巴巴他們也在用SAN,包括阿里巴巴跟錢有部分的支付寶他們也在用SAN,而且也在新采購一些SAN,這些并不是絕對的SAN就不行,還是看應用場景,所以說他們自身在用這種軟件定義方案,那他們為什么有這個概念,他們并非是炒作主體,只不過他們這種做法被其他人拿來炒作了。

好,我們看一下整體生態的環境,那么上下游幾個角色互聯網企業,網絡運營商,傳統企業客戶,然后集成商,這個集成商大部分都依賴于傳統的企業客戶這塊來做生意。再就是底下一線二線三線廠商,到底誰在抵觸誰在炒作呢,剛才已經基本描述清楚了那些關系。那么對于軟件定義這個概念,我們看一下幾個廠商的態度,當然這是我的猜測,僅代表個人觀點大家看一下就可以了。也就說其實這些廠商對軟件定義,一定是各有各的態度,各有各的反映,這就不可言談了。那說軟件定義我想先從硬件說起,到底誰定義了誰,對以后架構會有什么影響,我想從源頭上談一談這個事情,那么最硬的東西是沙子(音譯),把沙子做成芯片,做成芯片的時候又有了一個層次最硬的層片就是什么數字電路。那么它實現邏輯非???,當然它是不可軟件定義的,比方說你把代碼寫成一次,這個東西就在這兒了,就是軟件定義芯片-FPGA,軟硬解耦,用戶自行開發邏輯,可現場更換,需要重啟,耗費數分鐘。如果你發現電路里面有bug,我再把代碼重新寫一遍,把它上傳上去。比方說你把它定義成一塊CPU可不可以,當然可以。

那我們再把腦子換到存儲里面,說到存儲里面大家可能知道RAID,一開始相當于把磁盤做RAID,RAID上劃分邏輯空間,那么RAID其實也是發展的,那么一開始軟件把物理盤定義了,這算是一種軟件定義,那么后來就最近這段時間RAID2.0這個技術其實也在被炒作,RAID2.0相當于把傳統RAID又給定義了,傳統RAID我不知道大家清不清楚RAID5義(音譯),那么RAID2.0做了什么事,把RAID5義(音譯)的條帶動起來了,我見縫插針每個磁盤上有空閑空間就放到哪個磁盤,那么為什么要把它浮動起來還是為了靈魂,比方說我可以定義條帶深度,這樣的話可以適配不同東西,那么RAID2.0浮動起來之后把數據重構之后這些條帶可以亂寫的,這個時候可以做到充分的多盤并發讀并發寫,那相當于把RAID5義做了深化,平時讀寫的時候你發現要有一些代價,這是RAID軟件定義思想的發展。

那么在這里我想和大家分享一下我之前所設計的一些東西,我之前沒有把它叫做應用定義,那大家都在說軟件定義,我可不可以再高一層,我可以來一個應用定義,或者用戶定義存儲,怎么用戶定義,比方說我在這個存儲里面我給開放接口,你應用各種程序各種需求通過我的接口部署上來可以二次開發,我這算不算用戶定義,這也是一個新概念,我在這里想講一下應用定義概念。傳統RAID1.0上面這圖,或者下面這圖RAID1.5,池就是RAID50,其實這都是一些概念,底層就是RAID50,那么不管是RAID1.0,還是RAID1.5它們對數據布局都沒有充分考慮,你像上面這種那么3個RAID組,邏輯資源之間無隔離性,多數場景下訪問沖突。不靈活沒有解耦,那解耦之后是什么結果,我給不同應用分配不同屬性的空間,比方說你多路視頻,我可以把不同路視頻把它用盡量少的盤來操作沒有問題,這樣做是沒有任何沖突的,而且不會影響其他數據,當你這個空間真正需要這種大規模訪問時候可以把它跨到盤上,然后我可以給你提供接口。你底下是沒有被隔離的,你再擴性能也是無濟于事,這個時候需要用擴容來換性能的方式。應用定義這方面在不改變容量情況下把底下布局給變掉,相當于一個變形金剛一樣,根據應用來布局這個數據,而且是動態的。

這是在一個控制器內部的一些盤,同樣對于多控制器操作系統,假設說剛才Nutanix,那么在Nutanix多個節點上部署這套思想,我可以文件把邏輯空間把各種資源動態的橫向的在各個節點之間做規劃,那么你根據什么去做這個規劃,你可以跟每個節點上面每個資源的利用率去做。那么所有這些步驟你都可以用鼠標動態操作,那么有了這么一種操作方式之后我們的存儲就不是之前傻傻提供一個卷,性能怎么差我也管不了,它是真正一款我也可以把它叫做軟件定義,現在我的用戶資源跟硬件完全是解耦的,而且是靈活的,我也可以把它叫做應用定義,而且是動態在線的。

那么我們再回來看一下云計算,云計算這塊我不打算擴開說了,云計算一直用資源定義數據中心的資源,用一個數據中心級的資源管理軟件你叫它管理軟件也好,既然是操作系統里面有很多模塊,當然這是它發展的雛形,單機操作系統里面有進程,內存,對于數據中心里面每一個進程把進程力度擴大了,每個進程就是一個VI(音譯)本質是一樣的。那么我在這里還想表達一點軟件定義這個概念它對上游廠商它是一個機遇,為什么是一個機遇,就說軟硬充分解耦之后會導致一個什么問題,會導致兩極分化,軟的更軟,軟件的人我就做軟件,硬的更硬,那么當然你這個解耦過程中它不是說一刀就切斷了有很多扯皮,上下倉耦合很緊你要給它拆開會有很多藕斷絲連,這是上游廠商的機遇,這種角色越容易別軟件定義掉,數字電路你能定義掉嗎,你拿英特爾CPU寫一個編碼器會運行嗎,能運行,但隨著非常慢。對于整機廠商,它們角色更多是集成的角色,軟硬件集成,這些廠商看到危機的苗頭,所以說他一開始響應最快比方說一體化設備,這個動作叫做軟件定義可以,里面就是把軟件裝到硬件上,叫做硬件定義可不可以,也可以,就是廠商把握這個資源,軟硬件定義這個東西,最終是個利益的雛形定義過程。

好,我們例舉一下各種軟件定義,從操作系統,到單機無處不在,無時不有,代碼指令定義了CPU里的電路,驅動定義了各種外設,TCPIP和Socket定義了以太網,Raid定義了物理盤,OS卷定義了Lun等等。好,我們最后看一下軟件定義炒作了哪些概念,軟硬解耦/服務器+開源軟件,軟硬耦合更緊(一體機、一體盤)底層的計算和存儲虛擬化。云計算/異構統一管理調度(管理軟件,操作系統)。對象存儲它當時我記得是80年代就有人提出對象存儲,它當時的設計就是在磁盤里面直接提供類似于文件的數據,你像這種思想80年代就有為什么到了現在才真正被細節做出來,包括虛擬機概念都是從大型機下來的,在應用到PC機上。那你說它是不是一種軟件定義磁盤,我覺得是。那么我們看一下軟件定義最終本質是什么?是利益的重定義,本來軟件到底由誰開發,廠商開發還是用戶開發,那這種其實是利益的重定義,軟件廠房開放了它的架構,那么這個廠商就要尋找另外的盈利機會了。那么上下游角色的重定義到底誰是廠商誰是用戶,被重定義也不好說了,好,我的分享就到此結束。

未經允許不得轉載:存儲在線-存儲專業媒體 » 沙子、塑料和銅——《大話存儲》冬瓜頭的軟件定義數據中心
分享到

yangjin

相關推薦

精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走