應用于Linux操作系統(tǒng)的服務器虛擬化技術在VMware 和思杰的帶領下在創(chuàng)新方面取得了飛快的發(fā)展。如今紅帽公司也斥以巨額戰(zhàn)略投資加入其中。
不幸的是,存儲領域的虛擬化發(fā)展卻一直滯后。幾種IT領域的趨勢-諸如無組織數(shù)據(jù)的爆發(fā)和云計算的出現(xiàn) 都讓這種差異愈發(fā)凸顯,讓許多有識之士意識到存儲虛擬化正在成為阻礙數(shù)據(jù)中心全面虛擬化取得成功的后腿。Linux逐漸成為比以微核為基礎的VMware 技術更加高級的管理程序,其構思也來自于早期研發(fā)階段的微核設計。
本文將著重探討Linux虛擬化目前的狀態(tài)并提供最佳的實踐方法,關注存儲,目的是縮小服務器虛擬化與存儲虛擬化領域之間的差距。
服務器虛擬化
在虛擬化的早期階段,服務器虛擬化最初的不表是通過將DHCP,域名服務器和研發(fā)環(huán)境等相對靜態(tài)的服務整合在一起來提高服務器的利用率。這個目標可以采用創(chuàng)建管理程序的方法來實現(xiàn)--管理程序就是位于硬件和操作系統(tǒng)之間的虛擬軟件層。
隨著虛擬化技術開始為大家所接受,英特爾和AMD相繼在處理器中對虛擬化進行支持,硬件廠商也開始介入其中。之后虛擬化技術進入蓬勃發(fā)展的第二階段,IT管理者將虛擬化應用到了整個數(shù)據(jù)中心并通過中央控制臺進行管理。
Linux核心作為管理程序
根據(jù)性能的不同,硬件輔助虛擬化技術在管理程序領域展露頭角。VMware和Xen使用他們自己的微核管理程序來參與Linux設備的競爭。紅帽KVM則采用了不同的方式,采用可承載的Linux核心模塊和修改過的QEMU來用于設備競爭。
這么做有幾點原因。管理程序必須能支持各種設備,涵蓋多核和大容量內存,可以安全和有效的管理所有這些資源--以此來證明核心的能力。
這種方法也會得到蓬勃發(fā)展的開源研發(fā)社區(qū)的支持。在不久的將來,客戶端操作系統(tǒng)核心將變得更加精簡,因為底層管理程序將仿效標準硬件芯片集,處理包括內存管理,網(wǎng)絡輸入/輸出和操作系統(tǒng)安全在內的復雜功能。
對網(wǎng)絡來說,萬兆以太網(wǎng)將把TCP/IP和ISCSI協(xié)議分配給網(wǎng)絡卡來執(zhí)行。存儲虛擬化將通過全面的NAS和目標存儲系統(tǒng)來分別處理。
虛擬化在云上的發(fā)展
云計算是與虛擬化需求緊密相關的數(shù)據(jù)中心體系架構上的進步,技術創(chuàng)新的關注點也轉移到了云計算上。如今管理程序已經是成熟的管理工具,監(jiān)控能力和相關標準也在發(fā)展之中。云上的資源要更加靈活,多用戶和大規(guī)模。虛擬化廠商正在快速與云需求相輔相成的配合在一起。
RHEV 2.2是紅帽公司邁出的最新一步:思杰公司的重頭產品是旗下的開源XenServer;Rackspace推出了OpenStack,將其作為 Apache許可證授權下使用的免費軟件;Cloud.com (之前的VMOps)和 Eucalyptus也推出了在GNU GPLv3許可證授權下使用的云軟件。
隨著標準的逐步完善,云計算將會有很多的選擇,整合也是不可避免的。
存儲虛擬化發(fā)展依舊滯后
全面的數(shù)據(jù)中心虛擬化和云如果沒有對存儲系統(tǒng)實施虛擬化就無法完成。存儲經常都是事后才考慮的部分,專門為以指令處理為導向的數(shù)據(jù)庫所設計的系統(tǒng)無法與新的需求完美匹配。
存儲系統(tǒng)必須在能力和性能上直線升級;將問題推給硬件系統(tǒng)并不是解決辦法。存儲虛擬化需要全新的軟件方式來平衡擴容體系架構來實現(xiàn)數(shù)以千兆的數(shù)據(jù)傳輸和存儲。
商用硬件時代已經來臨
商用存儲硬件正在快速向企業(yè)級能力靠近,SCSI硬盤的優(yōu)點以低售價,大容量的SATA硬盤形式供用戶 使用。RAID控制器可以支持每秒6GB的SAS連通能力和自動分級。網(wǎng)絡方面,萬兆以太網(wǎng)網(wǎng)可以將存儲和計算輸入/輸出連接為一體(消除了昂貴而復雜的 光纖通道網(wǎng)絡對于IT企業(yè)絕對是個福音)。
你可以用10個存儲節(jié)點,SATA硬盤和萬兆以太網(wǎng)來構建500兆兆位字節(jié)的超級存儲配置。
存儲是個軟件問題
如今的文件系統(tǒng)處理的不僅是數(shù)據(jù)塊。一套完整的存儲操作系統(tǒng)軟件必須能處理容量管理,軟件RAID,網(wǎng)絡協(xié)議和一系列其他的功能。與計算虛擬化類似,用戶可以實現(xiàn)虛擬化領域的大部分功能。
FUSE界面能允許文件系統(tǒng)和虛擬數(shù)據(jù)塊設備來實現(xiàn)這個目標。當下的多核處理器優(yōu)化的性能可以在用戶設備上同步運行多個操作系統(tǒng),那些有關單片電路核心的爭論早已經過時。集群文件系統(tǒng)采用這種方式在商用硬件頂端構建了一個強大的存儲虛擬化軟件層。
Linux與存儲系統(tǒng)直接關聯(lián)
缺省Linux根文件系統(tǒng)Ext3正在逐漸成為過去,而Ext4還存在一些局限。
名為"Btrfs"的最新文件系統(tǒng)正處在積極的研發(fā)階段,將成為Solaris ZFS的Linux解決方案。它可以支持很多強大的功能,比如快照,容量管理,軟件RAID,在線壓縮等。
諸如Btrfs和ZFS等早期磁盤文件系統(tǒng)的不足之處是他們無法超出單個服務器的范圍。
Linux NAS
使用OpenFiler構建的單機版Linux ISCSI或者NFS服務器能通過NFS,CIFS,FTP和ISCSI協(xié)議來提供單機版NAS/SAN,供多個計算節(jié)點內的存儲資源共享。
不過單機版存儲是一種單點故障。
DRBD(分布式復制模塊設備)能為使用激活-被動HA配置的雙存儲服務器提供網(wǎng)絡RAID-1。
Linux向外擴展NAS
上一代的向外擴展系統(tǒng)(比如甲骨文的Lustre,紅帽的GFS,甲骨文的OCFS2和SGI的 CXFS)采用的是以核心為基礎的方式。他們在配置和管理上都比較復雜,而且無法從高性能計算深入滲透到企業(yè)級原始存儲中去。而新一代的擴容文件系統(tǒng)采用 的是用戶區(qū)方式。其中的產品代表為可擴容NFS/CIFS,Ceph和GlusterFS。
向外擴展NFS:NFS v4.1 (pNFS)在2010年1月被正式分配RFC數(shù)字。但不幸的是,由于Linux pNFS采用的是集中式元數(shù)據(jù)和核心方式,它被歸類為第一代產品。pNFS被企業(yè)用戶所接受的速度可能會比較緩慢。由于NFSv3 TCP是使用最廣泛的NAS協(xié)議,因此最好采用循環(huán)DNS或者虛擬IP為基礎的擴容NAS存儲。RHEV, VMware和Xen都可以支持NFSv3。虛擬化和云用戶都開始從所有權存儲區(qū)域網(wǎng)絡為基礎的存儲解決方案向可擴容NAS的方向轉移。
向外擴展CIFS:Samba針對SMB1和SMB2協(xié)議的Linux采用的是CIFS。SMB2解決了SMB1中的性能問題,但是要到明年才能真正出爐。即使是微軟也不推薦在Hyper-V管理程序中使用CIFS。
Ceph:Ceph目前處在積極的研發(fā)階段,看起來頗有前景。與Linux (從v2.6.34和服務器領域開始)一起推出的核心空間客戶端會在用戶區(qū)使用。Ceph使用的分布式元數(shù)據(jù)體系架構增加了多重服務器內部管理分布式復制 元數(shù)據(jù)的復雜性。隨著時間的推移和來自大型社區(qū)的支持,他們應該能應對這個挑戰(zhàn)。Ceph依靠Btrfs來作為后端存儲,直到可以支持NFS才能解決這個 問題,在服務器虛擬化廠商能夠在管理程序中支持本地客戶端之前還需要等待一段時間。
GlusterFS:GlusterFS是用戶區(qū)內部署的完整的存儲操作系統(tǒng)軟件。諸如容量管理器,復 制,排序,網(wǎng)絡協(xié)議,輸入/輸出調度程序,線程和性能模塊等功能都可以作為軟件模塊來執(zhí)行。集群消除了使用彈性散列運算法則的元數(shù)據(jù)服務器需求。還能支持 在線自我恢復。與Linux NFS類似,文件和文件夾都是存儲在使用標準磁盤文件系統(tǒng)的后端硬盤上。集群可以支持諸如NFSv3, CIFS, WebDAV, FTP和本地集群(通過FUSE)等多個NAS協(xié)議。集群還可以廣泛的配置在從亞馬遜彈性計算云環(huán)境到VMware等一系列應用軟件環(huán)境中。
非-POSIX存儲
全新系列的存儲解決方案在以POSIX為基礎的NAS和SQL數(shù)據(jù)庫之間涌現(xiàn)出來。這主要指的 是"NoSQL,",他們形成了包括分布式目標存儲,文件存儲,關鍵值配對和向外擴展目標數(shù)據(jù)庫在內的一整套解決方案。這些解決方案需要針對應用軟件源碼 進行修改。由于這些軟件是為特定目的而設計的,他們在各自的應用軟件領域有著各自的優(yōu)勢。
舉例來說,Hadoop是針對大規(guī)模搜索分析或者數(shù)據(jù)采集應用軟件而設計的。Cassandra和MongoDB類似于亞馬遜的Dynamo或者谷歌的BigTable。Redis, Memcached和Memcachedb能提供分布式關鍵值數(shù)據(jù)存儲。
結論
存儲和計算領域的Linux虛擬化的未來看起來一片光明。免費軟件和開源的發(fā)展也呈多樣性態(tài)勢。當一切塵埃落定,一些創(chuàng)新型解決方案將涌現(xiàn)出來。
我們希望能追蹤到Linux服務器虛擬化的下一個發(fā)展階段,希望隨著服務器虛擬化和存儲虛擬化之間的差距逐漸縮小,企業(yè)用戶能逐漸意識到存儲虛擬化的價值所在。