話說最近網路虛擬化(Networking Virtualization,NV)和SDN真實熱得發燙,先談一下我個人的理解和看法。由於沒有實際玩過相應的產品,所以也只是停留在理論階段,而且尚在學習中,有些地方難以理解甚至理解錯誤,因此,特地來和大家交流一下。
早在2009年就出現了SDN(Software Defined Networking)的概念,但最近才開始被眾人所關注,主要還是因為Google跳出來表態其內部數據中心所有網路都開始採用OpenFlow進行控制,將OpenFlow從原本僅是學術性的東西瞬間推到了商用領域。第二個勁爆的消息就是VMWare大手筆12.6個億$收掉了網路虛擬化公司Nicira。
SDN只是一個理念,歸根結底,她是要實現可編程網路,將原本封閉的網路設備控制面(Control Plane)完全拿到「盒子」外邊,由集中的控制器來管理,而該控制器是完全開放的,因此你可以定義任何想實現的機制和協議。比如你不喜歡交換機/路由器自身所內置的TCP協議,希望通過編程的方式對其進行修改,甚至去掉它,完全由另一個控制協議取代也是可以的。正是因為這種開放性,使得網路的發展空間變為無限可能,換句話說,只有你想不到,沒有你做不到。
那SDN為什麼會和NV扯上關系呢?其實他們之間並沒有因果關系,SDN不是為實現網路虛擬化而設計的,但正式因為SDN架構的先進性,使得網路虛擬化的任務也得以實現。很多人(包括我自己)在最初接觸SDN的時候,甚至認為她就是NV,但實際上SDN的目光要遠大得多,用句數學術語來說就是「NV包含於SDN,SDN包含NV」。
再來看看NV,為什麼NV會如此火爆,歸根結底還是因為雲計算的崛起。伺服器/存儲虛擬化為雲計算提供了基礎架構支撐,也已經有成熟的產品和解決方案,但你會發現一個問題,即便如此,虛擬機的遷移依然不夠靈活,例如VMWare vMotion可以做到VM在線遷移,EMC VPLEX可以做到雙活站點,但虛擬機的網路(地址、策略、安全、VLAN、ACL等等)依然死死地與物理設備耦合在一起,即便虛擬機從一個子網成功地遷移到另一個子網,但你依然需要改變其IP地址,而這一過程,必然會有停機。另外,很多策略通常也是基於地址的,地址改了,策略有得改,所以依然是手動活,繁雜且易出錯。所以說,要實現Full VM Migration,即不需要更改任何現有配置,把邏輯對象(比如IP地址)與物理網路設備去耦(decouple)才行。這是一個舉例,總而言之,目的就是實現VM Migration Anywhere within the DataCenter non-disruptively,尤其是在雲這樣的多租戶(Multi-tanency)環境里,為每一個租戶提供完整的網路視圖,實現真正的敏捷商務模型,才能吸引更多人投身於雲計算。
SDN不是網路虛擬化的唯一做法,Network overly(mac in mac, ip in ip)的方式也是現在很多公司實際在使用的,比如Microsoft NVGRE、Cisco/VMWare VXLAN、Cisco OTV、Nicira STT等。事實上overly network似乎已經成為NV實現的標准做法,SDN模型下的NV實現目前更多的是在學術、研究領域。新技術總是伴隨大量的競爭者,都想在此分一杯羹,甚至最後成為標准。好戲才剛剛上演,相信會越發精彩。
個人覺得這是一個非常有意思的話題,希望和大家交流心得,互相學習.
NV的目標就是如何呈現一個完全的網路給雲環境中的每一個租戶,租戶可能會要求使用任何其希望使用的IP地址段,任何拓撲,當然更不希望在遷移至公共雲的情況下需要更改其原本的IP地址,因為這意味著停機。所以,客戶希望有一個安全且完全隔離的網路環境,保證不會與其他租戶產生沖突。既然vMotion之類的功能能夠讓虛擬機在雲中自由在線漂移,那網路是否也能隨之漂移呢?這里簡單介紹下微軟的Hyper-v networking virtualization,到不是因為技術有多先進,只不過他的實現細節比較公開,而其它公司的具體做法相對封閉,難以舉例。
其實微軟的思路很簡單,就是將原本虛擬機的二層Frame通過NVGRE再次封裝到 IP packet中進行傳輸,使得交換機能夠通過識別NVGRE的Key欄位來判斷數據包的最終目的地。這其實就是一個Network Overlay的做法,它將虛擬網路與物理網路進行了分離。試想,公司A和公司B都遷移到公有雲且就那麼巧,他們的一些虛擬機連接到了同一個物理交換機上,現在的問題是,他們各自的虛擬機原本使用的私有IP段是一樣的,如果沒有VLAN就會導致IP沖突。但現在看來,這已經不是問題,因為虛擬機之間的通信都要通過NVGRE的封裝,而新的IP包在物理網路上傳輸時是走物理地址空間的,而物理地址空間是由雲服務提供者所獨占的,因此不存在IP沖突的情況。
總結一下就是,這里的網路虛擬化可以認為是IP地址虛擬化,將虛擬網路的IP與物理網路完全分離,這樣做就可以避免IP沖突,跨子網在線遷移虛擬機的問題,微軟的要求是:虛擬機可以在數據中心中任意移動,而客戶不會有任何感覺,這種移動能力帶來了極大的靈活性。
Software-defined networking (SDN) is an approach to computer networking which evolved from work done at UC Berkeley and Stanford University around 2008.[1] SDN allows network administrators to manage network services throughabstraction of lower level functionality. This is done by decoupling the system that makes decisions about where traffic is sent (the control plane) from the underlying systems that forwards traffic to the selected destination (the data plane). The inventors and vendors of these systems claim that this simplifies networking.[2]
SDN requires some method for the control plane to communicate with the data plane. One such mechanism, OpenFlow, is often misunderstood to be equivalent to SDN, but other mechanisms could also fit into the concept. The Open Networking Foundation was founded to promote SDN and OpenFlow, marketing the use of the term cloud computing before it became popular.
This section does not cite any references or sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged andremoved. (February 2013)
One application of SDN is the infrastructure as a service (IaaS).
This extension means that SDN virtual networking combined with virtual compute (VMs) and virtual storage can emulate elastic resource allocation as if each such enterprise application was written like a Google or Facebook application. In the vast majority of these applications resource allocation is statically mapped in inter process communication (IPC). However if such mapping can be expanded or reced to large (many cores) or small VMs the behavior would be much like one of the purpose built large Internet applications.
Other uses in the consolidated data-center include consolidation of spare capacity stranded in static partition of racks to pods. Pooling these spare capacities results in significant rection of computing resources. Pooling the active resources increases average utilization.
The use of SDN distributed and global edge control also includes the ability to balance load on lots of links leading from the racks to the switching spine of the data-center. Without SDN this task is done using traditional link-state updates that update all locations upon change in any location. Distributed global SDN measurements may extend the cap on the scale of physical clusters. Other data-center uses being listed are distributed application load balancing, distributed fire-walls, and similar adaptations to original networking functions that arise from dynamic, any location or rack allocation of compute resources.
Other uses of SDN in enterprise or carrier managed network services (MNS) address the traditional and geo-distributed campus network. These environments were always challenged by the complexities of moves-adds-changes, mergers & acquisitions, and movement of users. Based on SDN principles, it expected that these identity and policy management challenges could be addressed using global definitions and decoupled from the physical interfaces of the network infrastructure. In place infrastructure on the other hand of potentially thousands of switches and routers can remain intact.
It has been noted that this "overlay" approach raises a high likelihood of inefficiency and low performance by ignoring the characteristics of the underlying infrastructure. Hence, carriers have identified the gaps in overlays and asked for them to be filled by SDN solutions that take traffic, topology, and equipment into account.[7]
SDN deployment models[edit]
This section does not cite any references or sources. Please help improve this section by adding citations to reliable sources. Unsourced material may be challenged andremoved. (February 2013)
Symmetric vs asymmetric
In an asymmetric model, SDN global information is centralized as much as possible, and edge driving is distributed as much as possible. The considerations behind such an approach are clear, centralization makes global consolidation a lot easier, and distribution lowers SDN traffic aggregation-encapsulation pressures. This model however raises questions regarding the exact relationships between these very different types of SDN elements as far as coherency, scale-out simplicity, and multi-location high-availability, questions which do not come up when using traditional AS based networking models. In a Symmetrically distributed SDN model an effort is applied to increase global information distribution ability, and SDN aggregation performance ability so that the SDN elements are basically one type of component. A group of such elements can form an SDN overlay as long as there is network reachability among any subset.
Floodless vs flood-based
In a flood-based model, a significant amount of the global information sharing is achieved using well known broadcast and multicast mechanisms. This can help make SDN models more Symmetric and it leverages existing transparent bridging principles encapsulated dynamically in order to achieve global awareness and identity learning. One of the downsides of this approach is that as more locations are added, the load per location increases, which degrades scalability. In a FloodLess model, all forwarding is based on global exact match, which is typically achieved using Distributed Hashing and Distributed Caching of SDN lookup tables.
Host-based vs Network-centric
In a host-based model an assumption is made regarding use of SDN in data-centers with lots of virtual machines moving to enable elasticity. Under this assumption the SDN encapsulation processing is already done at the host HyperVisor on behalf of the local virtual machines. This design reces SDN edge traffic pressures and uses "free" processing based on each host spare core capacity. In a NetworkCentric design a clearer demarcation is made between network edge and end points. Such an SDN edge is associated with the access of Top of Rack device and outside the host endpoints. This is a more traditional approach to networking that does not count on end-points to perform any routing function.
Some of the lines between these design models may not be completely sharp. For example in data-centers using compute fabrics "Big" hosts with lots of CPU cards perform also some of the TopOfRack access functions and can concentrate SDN Edge functions on behalf of all the CPU cards in a chassis. This would be both HostBased and NetworkCentric design. There may also be dependency between these design variants, for example a HostBased implementation will typically mandate an Asymmetric centralized Lookup or Orchestration service to help organize a large distribution. Symmetric and FloodLess implementation model would typically mandate in-network SDN aggregation to enable lookup distribution to a reasonable amount of Edge points. Such concentration relies on local OpenFlow interfaces in order to sustain traffic encapsulation pressures.[5] [6]
B. 什麼是軟體定義的數據中心
軟體定義數據中心(SDDC)是指數據中心的所有基礎設施都是虛擬化的,並且能夠以一種所要即所得的服務方式來提供。數據中心的控制是完全由軟體自動化來完成,同時所有的硬體配置維護都是通過智能軟體來完成。一般來說軟體定義的數據中心主要包括分成四個部分,計算、存儲、網路、管理。
其核心是讓客戶以更小的代價來獲得更靈活的、快速的業務部署、管理及實現。
三大優勢:
1.敏捷性(agility): 更快、更靈活的業務支撐與實現(以及軟體開發模式的優化與變更);
2.彈性(Elasticity):隨業務需求的資源的動態可伸縮性(水平+垂直);
3.省錢(Cost-efficiency):軟體實現避免了重復硬體投資和資源浪費。
基於超融合搭建的數據中心作為近年來軟體定義數據中心熱門方案被廣泛運用於教育,醫療,金融,大型製造業等。
C. 未來雲數據中心要怎樣的網路虛擬化解決方案機器學習與數據挖掘
每次談起虛擬化或雲計算,管理員都會不約而同的抱怨:"數據中心網路趕不上雲計算發展的步伐"。數據中心計算和存儲能力在過去十年裡取得了巨大提
升,而網路還在採用過去的架構方式,並沒有跟上這種演進步伐。隨著雲計算和移動互聯網的加速發展,企業對大幅提高數據中心能力的需求也越來越強烈。"
為什麼我們需要網路虛擬化
傳統的三層體系結構正在大數據和雲計算的新世界之下崩潰,大二層技術逐漸流行。數據中心內的硬體設備被虛擬化後,可以進一步地邏輯池化,並且邏輯資源池
可以跨多個數據中心,在邏輯資源池上提供虛擬的數據中心給用戶使用,從而將離散、分層、異構的多個數據中心聯結成新的雲數據中心。從這個角度來看,網路的
虛擬化變得絕對必要,以提供一種彈性和可擴展的工作負載的引擎,而不是單獨管理離散的物理元件之間的連接。
從本質上講,網路虛擬化是伺服器虛擬化自然的和必要的進化。它允許整個數據中心作為一個類似於計算和存儲資源一樣進行管理,能夠滿足動態應用程序工作的負載需求。
什麼樣的網路虛擬化才是適合於未來的雲計算數據中心?
sdn的提出,提供了另外一種方式來解決問題的可能。然而sdn只解決了其中一部分問題,並沒有解決現網存在的所有問題:
問題1:功能靈活擴展:要實現網路功能的軟體定義,從設備基礎架構就要靈活可編程,而功能靈活擴展需要一個開放和靈活擴展的controller平台架構。
問題2:平滑演進:任何客戶,不可能完全拋棄現有網路,去建一個新的網路。下一代網路必須能夠在現網直接部署,平滑過渡,才可以生存下去。這就要求controller必須具備開放的南北向介面,以便適應於傳統的網路。
對於未來的雲計算數據中心,網路虛擬化方案需要適應計算和存儲虛擬化的浪潮,快速的實現雲計算業務的發放,以及能夠滿足動態的應用程序工作負載的需求;同時需要幫助管理員更簡單的管理物理網路和虛擬網路,實現網路可視化。
開放性同樣是完美網路虛擬化的一個衡量標准,只有提供豐富的南北向介面和開放的api,並能夠滿足業界主流雲平台對接需求,才能夠滿足雲計算業務日新月異的發展,同時開放性也意味著能夠開發不同的插件以便適配現有的網路,從而實現網路的平滑演進。
華為agilecontroller如何打造面向未來的網路虛擬化解決方案
敏捷網路是華為公司面向企業市場發布的下一代網路解決方案。它基於sdn思想加三大架構創新,讓網路能夠快速、靈活地為業務服務,讓企業獲得領先四倍的業務創新速度,幫助企業在激烈的競爭中獲得先機。
敏捷網路控制器agilecontroller,智慧的數據中心大腦
華為敏捷控制器(agilecontroller),旨在為客戶構築簡單、高效、開放的雲數據中心網路,雲網融合,支撐企業雲業務快速發展,讓數據中心網路更敏捷地為雲業務服務。
第一:業務高效,實現自動地網路資源快速發放
在雲計算中,存儲和虛擬機已經自動化的實現了按需申請,華為agilecontroller能夠實現網路自願的自動化發放,申請網路資源像申請虛擬機一樣方便,高效的網路自動化從而讓雲計算業務更快上線,大大減小了業務上線的周期。
第二:運維簡單,讓虛擬與物理網路協同管控
華為agilecontroller能夠實現物理網路和虛擬網路的協同管控,支持物理資源和虛擬資源(物理網路、虛擬機、虛擬交換機、分布式虛擬交換機等)統一管理;通過網路可視化讓管理更簡單,極大的降低了管理員的管理難度。
在數據中心網路中,還有一個重要問題就是虛擬機遷移問題,agilecontroller能夠實現網路策略自動適應高速遷移,與業界其他虛擬機網路策略
遷移方案不同的是:agilecontroller通過高速radius介面下發網路策略,使得網路策略部署速度大幅提升,達到業界10-20倍,可滿足
數據中心海量虛擬機的突發遷移需求;結合華為豐富的大二層網路解決方案(trill/evn等),vmware虛擬機可以在數據中心內以及跨數據中心間任
意遷移,雲業務部署更加靈活。
第三:開放,可與主流雲平台對接
敏捷網路是從硬體定義網路,到軟體定義網路,再到全可
編程的系統。華為agilecontroller提供豐富的南北向介面,開放api,實現轉發面與控制面的可編程,可與客戶現有設備與業務系統進行對接,
提升端到端運維效率,加快新業務上線速度,營造企業快速創新環境。
業界雲平台眾多,主流雲平台有
huaweifusionsphere、vmwarevcac、openstack等等,華為agilecontroller均支持與其對接,致力於打造
一個彈性、開放平台,集成各個領域的優秀實踐,讓用戶可根據業務需要靈活定義網路,做到即需即用。
我們毫不懷疑,數據中心的發展勢頭迅
猛。基礎架構如何支持這種增長呢?虛擬化僅僅是其中的一部分。未來網路可能還需要更多的特徵。在諸多的特徵中,如何選擇構建自己的網路呢?目前來看,華為
的敏捷網路,即吸取了sdn的精華,同時又考慮了現有網路的平滑演進,agilecontroller的簡單、高效和開放,為成功構建未來的網路奠定了堅
實的基礎。
雲計算讓網路應用變得精彩,讓應用創新變得更容易;網路是雲計算的基石,沒有網路就沒有雲計算,雲計算的發展對網路提出了更高的要求。
敏捷控制器agilecontroller應運而生,它的出現簡化了客戶的雲平台對設備的操作難度,現在有了敏捷控制器agilecontroller
之後,全自動的中間件可以協助用戶對設備進行管理。同時華為敏捷控制器是一個開放的平台,將把敏捷控制器的南北向介面開放,從而給行業客戶一個開放的自定
義空間,與合作夥伴一起構建起敏捷商業的實踐,讓他們更聚集在業務的變革和轉型上,也讓ict的雲端融合管理真正實現,大幅度提升了雲計算的部署和管理效
率,讓物理網路和計算存儲資源一樣,成為雲的一部分,網路和計算相互協同,相互可視,讓雲計算變得簡單。
D. 軟體定義網路,網路虛擬化和網路功能虛擬化的區別
網路團隊經常要處理鋪天蓋地的配置請求,這些配置請求可能需要數天或數周來處理,所幸的是,現在有幾種方法可以幫助企業提高網路靈活性,主要包括網路虛擬化[注](NV)、網路功能虛擬化[注](NFV[注])和軟體定義網路[注](SDN[注])。
這三種方法可能聽起來有些混淆,但其實每種方法都是在試圖解決網路移動性這個宏觀問題的不同子集問題。在這篇文章中,我們將探討NV、NFV和SDN的區別以及每種方法如何幫助我們實現可編程網路。
網路虛擬化
企業網路管理員很難滿足不斷變化的網路需求。企業需要一種方法來自動化網路,以提高IT對變化的響應率。在這個用例中,我們通常試圖解決一個問題:如何跨不同邏輯域移動虛擬機?網路虛擬化其實是通過在流量層面邏輯地劃分網路,以在現有網路中創建邏輯網段,這類似於硬碟驅動器的分區。
網路虛擬化是一種覆蓋;也是一個隧道。NV並不是物理地連接網路中的兩個域,NV是通過現有網路創建一個隧道來連接兩個域。NV很有價值,因為管理員不再需要物理地連接每個新的域連接,特別是對於創建的虛擬機。這一點很有用,因為管理員不需要改變他們已經實現的工作。他們得到了一種新方式來虛擬化其基礎設施,以及對現有基礎設施進行更改。
NV在高性能x86平台上運行。這里的目標是讓企業能夠獨立於現有基礎設施來移動虛擬機,而不需要重新配置網路。Nicira(現在屬於VMware)是銷售NV設備的供應商。NV適合於所有使用虛擬機技術的企業。
網路功能虛擬化
NV提供了創建網路隧道的功能,並採用每個流服務的思維,下一個步驟是將服務放在隧道中。NFV主要虛擬化4-7層網路功能,例如防火牆或IDPS,甚至還包括負載均衡(應用交付控制器)。
如果管理員可以通過簡單的點擊來設置虛擬機,為什麼他們不能以相同的方式打開防火牆或IDS/IPS呢?這正是NFV可以實現的功能。NFV使用針對不同網路組件的最佳做法作為基礎措施和配置。如果你有一個特定的隧道,你可以添加防火牆或IDS/IPS到這個隧道。這方面很受歡迎的是來自PLUMgrid或Embrane等公司的防火牆或IDS/IPS。
NFV在高性能x86平台上運行,它允許用戶在網路中選定的隧道上開啟功能。這里的目標是,讓人們為虛擬機或流量創建服務配置文件,並利用x86來在網路上構建抽象層,然後在這個特定邏輯環境中構建虛擬服務。在部署後,NFV能夠在配置和培訓方面節省大量數據。
NFV還減少了過度配置的需要:客戶不需要購買大型防火牆或IDSIPS產品來處理整個網路,客戶可以為有需要的特定隧道購買功能。這樣可以減少初始資本支出,但其實運營收益才是真正的優勢。NFV可以被看作是相當於Vmware,幾台伺服器運行很多虛擬伺服器,通過點擊配置系統。
客戶了解NV和NFV之間的區別,但他們可能不希望從兩家不同的供應商來獲得它們。這也是為什麼Vmware現在在VmwareNSX提供NV和NFV安全功能的原因。
軟體定義網路
SDN利用「罐裝」流程來配置網路。例如,當用戶想要創建tap時,他們能夠對網路進行編程,而不是使用設備來構建網路tap。
SDN通過從數據平面(發送數據包到特定目的地)分離控制平面(告訴網路什麼去到哪裡)使網路具有可編程性。它依賴於交換機來完成這一工作,該交換機可以利用行業標准控制協議(例如OpenFlow)通過SDN控制器來編程。
NV和NFV添加虛擬通道和功能到物理網路,而SDN則改變物理網路,這確實是配置和管理網路的新的外部驅動手段。SDN的用例可能涉及將大流量從1G埠轉移到10G埠,或者聚合大量小流量到一個1G埠。SDN被部署在網路交換機上,而不是x86伺服器。BigSwitch和Pica8都有SDN相關的產品。
所有這三種類型的技術都旨在解決移動性和靈活性。我們需要找到一種方式來編程網路,而現在有不同的方法可以實現:NV、NFV和SDN。
NV和NFV可以在現有的網路中運作,因為它們在伺服器運行,並與發送到它們的流量進行交互;而SDN則需要一種新的網路架構,從而分離數據平面和控制平面。
E. 軟體定義存儲和存儲虛擬化的區別與聯系
搞清楚這個問題之前,首先要了解什麼是軟體定義存儲和存儲虛擬化。
什麼是軟體定義存儲
SDS 的全稱是 Software Defined Storage ,字面意思直譯就是軟體定義存儲。關於 SDS 的定義可以參考全球網路存儲工業協會(Storage Networking Instry Association,SNIA),SINA 在 2013 正式把 軟體定義存儲(SDS) 列入研究對象。
SINA 對軟體定義存儲(SDS) 的定義是:一種具備服務管理介面的虛擬化存儲。 SDS 包括存儲池化的功能,並可通過服務管理介面定義存儲池的數據服務特徵。另外 SINA 還提出 軟體定義存儲(SDS) 應該具備以下特性:
自動化程度高 – 通過簡化管理,降低存儲基礎架構的運維開銷
標准介面 – 支持 API 管理、發布和運維存儲設備和服務
虛擬化數據路徑 – 支持多種標准協議,允許應用通過塊存儲,文件存儲或者對象存儲介面寫入數據
擴展性 – 存儲架構具備無縫擴展規模的能力,擴展過程不影響可用性以及不會導致性能下降
透明度 – 存儲應為用戶提供管理和監控存儲的可用資源與開銷
什麼是存儲虛擬化
SNIA認為,存儲虛擬化通過對存儲(子)系統或存儲服務的內部功能進行抽象、隱藏或隔離,使存儲或數據的管理與應用、伺服器、網路資源的管理分離,從而實現應用和網路的獨立管理。對存儲服務和設備進行虛擬化,能夠在對下一層存儲資源進行擴展時進行資源合並、降低實現的復雜度。存儲虛擬化可以在系統的多個層面實現。
SNIA提供的存儲虛擬化模型(如下圖),包括三部分:
軟體定義存儲和存儲虛擬化的區別與聯系
由以上定義可以看出,存儲虛擬化和軟體定義不是一個維度的概念但是有很強的相關性。SDS是存儲虛擬化實現的一種實現形式,但是類似RAID、虛擬化網管、磁碟分區等其實都是屬於存儲虛擬化的一種實現形式,另外,存儲虛擬化並不一定是軟體定義的,硬RAID卡就是典型的拿硬體實現存儲虛擬化。
F. 軟體定義存儲和存儲虛擬化的區別聯系
搞清楚這個問題之前,首先要了解什麼是軟體定義存儲和存儲虛擬化。
什麼是軟體定義存儲
SDS 的全稱是 Software Defined Storage ,字面意思直譯就是軟體定義存儲。關於 SDS 的定義可以參考全球網路存儲工業協會(Storage Networking Instry Association,SNIA),SINA 在 2013 正式把 軟體定義存儲(SDS) 列入研究對象。
SINA 對軟體定義存儲(SDS) 的定義是:一種具備服務管理介面的虛擬化存儲。 SDS 包括存儲池化的功能,並可通過服務管理介面定義存儲池的數據服務特徵。另外 SINA 還提出 軟體定義存儲(SDS) 應該具備以下特性:
自動化程度高 – 通過簡化管理,降低存儲基礎架構的運維開銷
標准介面 – 支持 API 管理、發布和運維存儲設備和服務
虛擬化數據路徑 – 支持多種標准協議,允許應用通過塊存儲,文件存儲或者對象存儲介面寫入數據
擴展性 – 存儲架構具備無縫擴展規模的能力,擴展過程不影響可用性以及不會導致性能下降
透明度 – 存儲應為用戶提供管理和監控存儲的可用資源與開銷
什麼是存儲虛擬化
SNIA認為,存儲虛擬化通過對存儲(子)系統或存儲服務的內部功能進行抽象、隱藏或隔離,使存儲或數據的管理與應用、伺服器、網路資源的管理分離,從而實現應用和網路的獨立管理。對存儲服務和設備進行虛擬化,能夠在對下一層存儲資源進行擴展時進行資源合並、降低實現的復雜度。存儲虛擬化可以在系統的多個層面實現。
SNIA提供的存儲虛擬化模型(如下圖),包括三部分:
軟體定義存儲和存儲虛擬化的區別與聯系
存儲虛擬化的概念更大一些,軟體定義存儲只是存儲虛擬化的一種形式,除此之外,從廣義來看,其實拿物理盤做RAID,然後在其之上劃LUN,呈現給OS,這也是一種存儲虛擬化。
G. 軟體定義存儲(SDS)與軟體定義數據中心(SDDC)有什麼區別
軟體定義數據中心(SDDC)包括計算、存儲、網路、管理和安全五大部分,其中存儲的部分就是軟體定義存儲(SDS)。
H. 數據中心的虛擬化
企業級的數據中心的發展趨勢是具備高度的靈活性和適應性,比如能根據外部需求做出快速變化,如何實現這些技術,虛擬化技術,或是模塊化數據中心的創建等,都是比較好的解決方法。
快速變化的商業需求和有著大規模能耗和製冷需求的最新技術都在催生數據中心的改變,而這些則意味著企業需要花費巨額資金,舉例來說,刀片伺服器的問世徹底改變了每平米的能耗和製冷需求,因為刀片意味著需要耗費更大的能源及散發更多的熱量。
市場咨詢公司Gartner預計,刀片會在未來被更加靈活的伺服器類型所代替,這類伺服器的計算架構會把內存、處理器、輸入輸出設備一起作為共享資源池看待,然後根據使用者的需求把這些資源進行分配和再分配。用戶不用依賴硬體廠商來決定每台伺服器的硬體配置,而是根據企業的需求,來購買資源,從而實現更高效的資源和利用。IT部門可以把32片刀片伺服器和部分內存模塊合並在一個大型伺服器內,作為一個固定的計算單元來使用,這樣的做法是通過減少資源的浪費來提高伺服器的利用率,但是,刀片伺服器是無法根據IT部門運行的應用軟體來進行優化配置的。
Gartner認為"數據中心的設計原理是很簡單的,就是計算出當前的需求,再把未來15到20年的增長需求估算在內,就可以建設配套設施了。最新建造的數據中心開放時通常會有大量的空置空間,整個數據中心都要依靠UPS,供水,供電和製冷系統的支持,但多數空間卻是閑置的。這就導致了硬體設備和供電系統的費用居高不下,這種模式是低效的"。
而分散建造數據中心的方法是價格每個區域都是獨立配置的,但這並不會意味著數據中心會被分散,分析預測,企業數據中心作為私有雲運行,這種靈活的計算網路通過谷歌和亞馬遜這樣的公共提供商進行模塊化,然後在內部對企業自己的用戶進行管理。
私有雲會需要後操作系統來把所有的企業分布式資源作為單獨的計算池來管理,分析師預測,虛擬化的日益普及是源於X86伺服器操作系統的故障,這從根本上限制了每台伺服器的功效,從而導致了無數能源的浪費,並且,虛擬機的配置是非常容易的,因此,虛擬化發展非常迅速。
當IT產業呼籲高效節能的伺服器操作系統,並且能夠根據應用軟體的特殊類型進行自定義,從傳統的功能型操作系統逐漸向整個數據中心的後操作系統時代過渡會成為必然。
後操作系統仍然處於發展階段,VMware公司最新的虛擬數據中心操作系統就是如此,有分析師把整個概念描述為"位於應用軟體和分布式計算資源之間的虛擬化層,它能利用分布式計算資源來執行日程管理,負載,應用軟體監管和錯誤處理"。
所有這些最新的概念和技術諸如雲計算,虛擬化,後操作系統,分散建造數據中心,更多自定義化伺服器體系架構都在推動數據中心向未來邁進,IT部門能按照用戶的個性化需求來提供按需定製的服務,而不必擔心空間或者能源的浪費和過度配置,目標就是創建操作便捷,適宜發展的數據中心資源。所有的一切都是為了實現數據中心的靈活性,為了更好的適應需求的變化。
I. 軟體定義存儲和存儲虛擬化的區別
搞清楚這個問題之前,首先要了解什麼是軟體定義存儲和存儲虛擬化。
什麼是軟體定義存儲
SDS 的全稱是 Software Defined Storage ,字面意思直譯就是軟體定義存儲。關於 SDS 的定義可以參考全球網路存儲工業協會(Storage Networking Instry Association,SNIA),SINA 在 2013 正式把 軟體定義存儲(SDS) 列入研究對象。
SINA 對軟體定義存儲(SDS) 的定義是:一種具備服務管理介面的虛擬化存儲。 SDS 包括存儲池化的功能,並可通過服務管理介面定義存儲池的數據服務特徵。另外 SINA 還提出 軟體定義存儲(SDS) 應該具備以下特性:
自動化程度高 – 通過簡化管理,降低存儲基礎架構的運維開銷
標准介面 – 支持 API 管理、發布和運維存儲設備和服務
虛擬化數據路徑 – 支持多種標准協議,允許應用通過塊存儲,文件存儲或者對象存儲介面寫入數據
擴展性 – 存儲架構具備無縫擴展規模的能力,擴展過程不影響可用性以及不會導致性能下降
透明度 – 存儲應為用戶提供管理和監控存儲的可用資源與開銷
什麼是存儲虛擬化
SNIA認為,存儲虛擬化通過對存儲(子)系統或存儲服務的內部功能進行抽象、隱藏或隔離,使存儲或數據的管理與應用、伺服器、網路資源的管理分離,從而實現應用和網路的獨立管理。對存儲服務和設備進行虛擬化,能夠在對下一層存儲資源進行擴展時進行資源合並、降低實現的復雜度。存儲虛擬化可以在系統的多個層面實現。
SNIA提供的存儲虛擬化模型(如下圖),包括三部分:
SNIA提供的存儲虛擬化模型
軟體定義存儲和存儲虛擬化的區別與聯系
由以上定義可以看出,存儲虛擬化和軟體定義不是一個維度的概念但是有很強的相關性。SDS是存儲虛擬化實現的一種實現形式,但是類似RAID、虛擬化網管、磁碟分區等其實都是屬於存儲虛擬化的一種實現形式,另外,存儲虛擬化並不一定是軟體定義的,硬RAID卡就是典型的拿硬體實現存儲虛擬化。