• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一個(gè)集群文件系統(tǒng)的虛擬化支持平臺(tái)研究與實(shí)現(xiàn)*

      2012-06-27 05:59:26鄔延輝龔松春
      電信科學(xué) 2012年9期
      關(guān)鍵詞:網(wǎng)橋輸入輸出虛擬環(huán)境

      鄔延輝,陳 征,龔松春

      (寧波大學(xué)信息科學(xué)與工程學(xué)院 寧波 315211)

      1 引言

      服務(wù)器的虛擬化給分布式數(shù)據(jù)管理帶來了巨大的、革命性的改變。通過虛擬化手段集成服務(wù)器能夠有效減少空間和動(dòng)力的消耗,提高信息服務(wù)的連續(xù)性,也能夠簡(jiǎn)化硬件設(shè)備的管理工作。從信息服務(wù)的連續(xù)性角度分析,服務(wù)器虛擬化平臺(tái)提供了一個(gè)有效的解決方案。當(dāng)前90%的服務(wù)器關(guān)機(jī)操作是計(jì)劃內(nèi)的關(guān)機(jī),目的是進(jìn)行服務(wù)器設(shè)備維護(hù)。通過使用虛擬化平臺(tái)的動(dòng)態(tài)遷移技術(shù),計(jì)劃內(nèi)的服務(wù)器關(guān)機(jī)次數(shù)能夠顯著減少,動(dòng)態(tài)負(fù)載平衡使得服務(wù)器虛擬化更加強(qiáng)有力,將一些低負(fù)載的服務(wù)器進(jìn)行合并,可以使用更少的服務(wù)器來工作,從而節(jié)省電能的消耗。

      近年來,服務(wù)器虛擬化獲得快速發(fā)展。在硬件方面,服務(wù)器CPU的一項(xiàng)基本功能就是支持虛擬化技術(shù)[1],存儲(chǔ)設(shè)備和網(wǎng)絡(luò)設(shè)備同樣提供服務(wù)器虛擬化的支持。在軟件方面,服務(wù)器虛擬化軟件的解決方案已經(jīng)成熟。目前被廣泛使用的企業(yè)服務(wù)器虛擬化產(chǎn)品包括VMware Server[2]、Citrix XenServer[3]、Microsoft Hyper-V Server[4]以及開放源代碼的KVM(kernel-based virtual machine)[5~7]。VMware是服務(wù)器虛擬化領(lǐng)域的領(lǐng)跑者,它的虛擬服務(wù)器管理軟件提供了許多有用的功能,但同時(shí)它的價(jià)格非常高。Citrix的XenServer系統(tǒng)是VMware強(qiáng)有力的競(jìng)爭(zhēng)者,其市場(chǎng)占有率成長(zhǎng)速率很快。微軟的Hyper-V也在快速發(fā)展中,Hyper-V虛擬機(jī)管理程序被包含在了Windows Server 2008操作系統(tǒng)中。

      與這些昂貴的商業(yè)軟件相比,Linux下的開源服務(wù)器虛擬化軟件XEN hypervisor[8]和KVM是免費(fèi)使用的。出現(xiàn)于2007年的KVM是虛擬化市場(chǎng)的后來者,依靠CPU對(duì)虛擬化的支持和現(xiàn)存的Linux kernel來提供一個(gè)集成的虛擬化方法。被KVM控制的虛擬機(jī)器可以被看作一個(gè)進(jìn)程,它能夠在任何時(shí)候打開或者關(guān)閉,并且響應(yīng)時(shí)間非常短。通過使用KVM解決方案,當(dāng)服務(wù)器休眠時(shí),虛擬機(jī)能夠進(jìn)入休眠狀態(tài)。這是因?yàn)镵VM虛擬機(jī)作為一個(gè)進(jìn)程,接受Linux的電源管理。KVM將Linux的內(nèi)核包含在內(nèi),它能夠有效地工作在Linux操作系統(tǒng)之上,沒有兼容性問題。隨著KVM逐漸成熟,它被越來越多地用在分布式數(shù)據(jù)管理中。

      通過比較服務(wù)器虛擬化的解決方案,選擇開源的KVM來構(gòu)建服務(wù)器虛擬化環(huán)境,在Linux中很容易配置KVM的虛擬化解決方案[9]。但是,隨著服務(wù)器數(shù)量的增加,在服務(wù)器上安裝和配置虛擬化軟件的工作量隨之增加。在分布式數(shù)據(jù)中心的服務(wù)器虛擬化配置過程中,如何快速啟動(dòng)多個(gè)服務(wù)器的操作系統(tǒng)并配置它們,是一個(gè)很大的難題。為了快速完成虛擬化環(huán)境的配置工作,并且減少服務(wù)器的管理工作量,通過網(wǎng)絡(luò)來配置是一個(gè)最好的解決方案。

      在服務(wù)器虛擬化應(yīng)用中,動(dòng)態(tài)遷移作為一個(gè)重要特征,需要共享存儲(chǔ)器的支持。通常,網(wǎng)絡(luò)文件系統(tǒng)(NFS)被配置用來共享存儲(chǔ)區(qū)域,這些存儲(chǔ)區(qū)域是Linux的服務(wù)器提供的。網(wǎng)絡(luò)文件系統(tǒng)服務(wù)器成了分布式數(shù)據(jù)中心的I/O瓶頸,因?yàn)橛写罅康闹鳈C(jī)需要訪問網(wǎng)絡(luò)文件系統(tǒng)服務(wù)器。這些虛擬服務(wù)器的虛擬磁盤映像存儲(chǔ)在網(wǎng)絡(luò)文件系統(tǒng)中,導(dǎo)致了性能低下的輸入輸出操作。所以,需要一個(gè)高性能的文件系統(tǒng)來滿足輸入輸出的需求。

      本文的創(chuàng)新之處在于:使用開源的KVM虛擬化解決方案和集群文件系統(tǒng)Lustre[10]構(gòu)建服務(wù)器虛擬化環(huán)境,極大地減少了服務(wù)器虛擬化環(huán)境的配置時(shí)間,并解決了共享存儲(chǔ)設(shè)備的輸入輸出瓶頸,提高文件并行化讀寫速度。

      2 網(wǎng)絡(luò)啟動(dòng)定制的Linux

      分布式數(shù)據(jù)環(huán)境中,在多個(gè)服務(wù)器上安裝操作系統(tǒng)并進(jìn)行配置是一項(xiàng)很艱巨的任務(wù)。采用網(wǎng)絡(luò)來啟動(dòng)服務(wù)器操作系統(tǒng)的方法,能夠加速這些服務(wù)器的部署和調(diào)度,并減少服務(wù)器操作系統(tǒng)的配置和管理難度。從網(wǎng)絡(luò)上啟動(dòng)服務(wù)器的Linux操作系統(tǒng),可以采用PXE(pre-boot execution environment)協(xié)議來實(shí)現(xiàn),PXE協(xié)議分為客戶端和服務(wù)器端,PXE客戶端在網(wǎng)卡的ROM中,當(dāng)計(jì)算機(jī)引導(dǎo)時(shí),BIOS把PXE客戶端調(diào)入內(nèi)存執(zhí)行,并顯示出命令菜單,經(jīng)用戶選擇后,PXE客戶端將放置在遠(yuǎn)端服務(wù)器上的操作系統(tǒng)通過網(wǎng)絡(luò)下載到本地運(yùn)行。

      PXE協(xié)議成功運(yùn)行,需要在計(jì)算機(jī)啟動(dòng)時(shí),通過DHCP(dynamic host configuration protocol)服務(wù)器配置計(jì)算機(jī)的IP地址,由于是給PXE客戶端分配IP地址,所以在配置DHCP服務(wù)器時(shí),需要增加相應(yīng)的PXE特有配置。PXE客戶端所在的ROM中,已經(jīng)存在了TFTP客戶端。PXE客戶端使用TFTP客戶端,通過TFTP到TFTP服務(wù)器上下載所需的Linux內(nèi)核和根文件系統(tǒng)。

      PXE工作過程如圖1所示。

      PXE客戶端是需要安裝Linux的計(jì)算機(jī),TFTP服務(wù)器和DHCP服務(wù)器運(yùn)行在PXE服務(wù)器上,bootstrap文件、配置文件、Linux內(nèi)核以及Linux根文件系統(tǒng)都放置在PXE服務(wù)器上TFTP服務(wù)器的根目錄下。PXE客戶端在工作過程中,需要3個(gè)二進(jìn)制文件:bootstrap、Linux內(nèi)核和Linux根文件系統(tǒng)。bootstrap文件是可執(zhí)行程序,它向用戶提供簡(jiǎn)單的控制界面,并根據(jù)用戶的選擇,下載合適的Linux內(nèi)核以及Linux根文件系統(tǒng)。

      用于網(wǎng)絡(luò)啟動(dòng)的Linux內(nèi)核需要被定制,被定制的內(nèi)核包含3部分內(nèi)容:

      ·內(nèi)核必須包含服務(wù)器網(wǎng)絡(luò)接口卡驅(qū)動(dòng)。

      ·內(nèi)核必須支持DHCP,內(nèi)核需要從DHCP服務(wù)器獲取一個(gè)IP地址。

      ·當(dāng)內(nèi)核根據(jù)PXE服務(wù)器傳遞的參數(shù),需要掛載網(wǎng)絡(luò)文件系統(tǒng)(NFS)根目錄時(shí),內(nèi)核必須支持根文件系統(tǒng)。可以通過配置和編譯Linux內(nèi)核源代碼來產(chǎn)生被定制的內(nèi)核。

      在使用KVM虛擬化解決方案來構(gòu)建服務(wù)器虛擬環(huán)境時(shí),需要用到網(wǎng)橋功能,但是,通過傳統(tǒng)方法從網(wǎng)絡(luò)啟動(dòng)Linux操作系統(tǒng)不支持網(wǎng)橋功能,而網(wǎng)橋功能是為虛擬機(jī)器分配虛擬網(wǎng)絡(luò)接口的基本方法。網(wǎng)絡(luò)接口控制器(NIC)作為一個(gè)網(wǎng)橋設(shè)備,它必須被設(shè)定為混雜模式才能夠作為網(wǎng)橋設(shè)備來工作。通過網(wǎng)絡(luò)啟動(dòng)Linux操作系統(tǒng)之后,NIC工作在正常模式下,在NIC從正常模式轉(zhuǎn)換到混雜模式的過程中,會(huì)有一個(gè)暫時(shí)的網(wǎng)絡(luò)中斷,這個(gè)網(wǎng)絡(luò)中斷將引起網(wǎng)絡(luò)文件系統(tǒng)(NFS)根文件系統(tǒng)失效,將導(dǎo)致Linux操作系統(tǒng)的崩潰。

      為了使從網(wǎng)絡(luò)啟動(dòng)的Linux操作系統(tǒng)具有網(wǎng)橋功能,在操作系統(tǒng)啟動(dòng)過程中需要使用初始RAM磁盤,即initrd。初始RAM磁盤是在實(shí)際根文件系統(tǒng)可用之前掛載到系統(tǒng)中的一個(gè)初始根文件系統(tǒng)。initrd與內(nèi)核綁定在一起,并作為內(nèi)核引導(dǎo)過程的一部分進(jìn)行加載。內(nèi)核會(huì)將這個(gè)initrd文件作為其兩階段引導(dǎo)過程的一部分來加載模塊,這樣才能稍后使用真正的文件系統(tǒng),并掛載實(shí)際的根文件系統(tǒng)。initrd映像包含了實(shí)現(xiàn)這個(gè)目標(biāo)所需要的目錄和可執(zhí)行程序的最小集合,這些可執(zhí)行程序和系統(tǒng)文件用來創(chuàng)建網(wǎng)橋,并且引導(dǎo)Linux系統(tǒng)第二階段的啟動(dòng)工作。在桌面或服務(wù)器Linux系統(tǒng)中,initrd是一個(gè)臨時(shí)的文件系統(tǒng)。其生存周期很短,只會(huì)用作為到真實(shí)文件系統(tǒng)的一個(gè)橋梁。根據(jù)不同的Linux版本,創(chuàng)建初始RAM磁盤的方法不相同。使用initrd進(jìn)行網(wǎng)絡(luò)啟動(dòng)的步驟如圖2所示。

      為了驗(yàn)證這種方法的可行性,針對(duì)Fedora和Centos操作系統(tǒng)進(jìn)行了測(cè)試,這兩個(gè)Linux操作系統(tǒng)都能夠以網(wǎng)橋模式從網(wǎng)絡(luò)引導(dǎo)并啟動(dòng)。KVM軟件工作穩(wěn)定。

      3 使用Lustre集群文件系統(tǒng)

      Lustre是工作在Linux操作系統(tǒng)之上的一個(gè)開源并行文件系統(tǒng),它由Linux和 Clusters演化而來,為解決海量存儲(chǔ)問題而設(shè)計(jì)的全新文件系統(tǒng),是下一代的集群文件系統(tǒng),可支持10 000個(gè)結(jié)點(diǎn),能夠達(dá)到PB級(jí)的存儲(chǔ)量,100 Gbit/s的傳輸速度以及完美的安全性和可管理性。Lustre提供共享訪問數(shù)據(jù),在I/O級(jí)和數(shù)據(jù)吞吐率方面能滿足成百上千臺(tái)規(guī)模的Linux集群服務(wù)器聚合訪問的需求,數(shù)據(jù)不需要從一個(gè)文件系統(tǒng)復(fù)制到另一個(gè)文件系統(tǒng),通過集群系統(tǒng)共享應(yīng)用和數(shù)據(jù)的任務(wù),執(zhí)行起來要比在單獨(dú)的設(shè)備上執(zhí)行快得多,虛擬機(jī)可以在多個(gè)服務(wù)器之間進(jìn)行動(dòng)態(tài)遷移。使用Lustre文件系統(tǒng)的服務(wù)器需要安裝客戶端軟件,并且掛載Lustre文件系統(tǒng),KVM的多個(gè)客戶映像可以存儲(chǔ)在Lustre文件系統(tǒng)中,在KVM主機(jī)之間共享虛擬服務(wù)器映像,虛擬服務(wù)器磁盤的輸入輸出被重定向?yàn)樽x寫映像文件。隨著映像文件數(shù)量的增多,傳統(tǒng)的網(wǎng)絡(luò)分布式文件系統(tǒng)輸入輸出性能成為瓶頸,而采用Lustre高性能并行文件系統(tǒng)恰好可以很好地消除此瓶頸。

      由于Lustre集群文件系統(tǒng)需要修改Linux內(nèi)核,所以Lustre源碼在編譯前必須進(jìn)行修訂。對(duì)于前面提到的從網(wǎng)絡(luò)啟動(dòng)的服務(wù)器,它的內(nèi)核必須包含Lustre的修訂內(nèi)容。在成功掛載Lustre文件系統(tǒng)后,作為L(zhǎng)ustre客戶端的服務(wù)器能夠透明地使用共享并行文件系統(tǒng)來存儲(chǔ)主機(jī)映像。圖3表示出了KVM虛擬環(huán)境的系統(tǒng)結(jié)構(gòu)。

      4 實(shí)驗(yàn)與分析

      在使用KVM和Lustre集群文件系統(tǒng)的服務(wù)器虛擬環(huán)境中,針對(duì)輸入輸出性能進(jìn)行了測(cè)試,包括普通映像文件讀寫、多用戶大文件的讀寫操作。表1顯示了包含5個(gè)主機(jī)的集群文件系統(tǒng)的文件讀寫測(cè)試結(jié)果。當(dāng)使用單一的網(wǎng)絡(luò)文件系統(tǒng)服務(wù)器作為共享存儲(chǔ)設(shè)備時(shí),整個(gè)虛擬環(huán)境的輸入輸出性能表現(xiàn)被單一網(wǎng)絡(luò)文件系統(tǒng)服務(wù)器性能所限制;當(dāng)使用Lustre集群文件系統(tǒng)作為共享存儲(chǔ)設(shè)備時(shí),虛擬環(huán)境的輸入輸出性能得到了大幅提升。使用Lustre集群文件系統(tǒng)可以解決共享存儲(chǔ)設(shè)備的輸入輸出瓶頸問題。使用Lustre集群文件系統(tǒng),20 GB映像文件的讀寫時(shí)間大大減少,同時(shí)并行讀寫大文件的速度提高了7~8倍,其中,讀寫文件的速度為55.1 Mbyte/s。

      表2顯示使用Lustre集群文件系統(tǒng)時(shí),不同的結(jié)點(diǎn)數(shù)量情況下的各自輸入輸出性能對(duì)比。在集群文件系統(tǒng)中,結(jié)點(diǎn)數(shù)增長(zhǎng)時(shí),雖然并行讀寫文件的速度有所增加,性能提高1.2~1.3倍,但是并沒有達(dá)到線性增長(zhǎng)。

      表1 5個(gè)主機(jī)的集群文件系統(tǒng)的文件讀寫測(cè)試結(jié)果

      表2 集群文件系統(tǒng)不同結(jié)點(diǎn)數(shù)的測(cè)試結(jié)果

      5 結(jié)束語

      在網(wǎng)絡(luò)中啟動(dòng)定制的Linux操作系統(tǒng),快速地對(duì)服務(wù)器虛擬環(huán)境進(jìn)行配置,可以方便地進(jìn)行服務(wù)器虛擬集成,建立服務(wù)器虛擬環(huán)境。通過網(wǎng)絡(luò)啟動(dòng)KVM主機(jī),可以簡(jiǎn)化Linux操作系統(tǒng)的安裝和配置,減少針對(duì)多個(gè)服務(wù)器的大規(guī)模管理工作。將KVM服務(wù)器虛擬化解決方案和Lustre集群文件系統(tǒng)相結(jié)合,構(gòu)建開源的服務(wù)器虛擬環(huán)境,可以實(shí)現(xiàn)服務(wù)器的動(dòng)態(tài)遷移特性,虛擬環(huán)境的輸入輸出性能得到大幅提升,同時(shí)使得創(chuàng)建KVM用戶的耗費(fèi)時(shí)間明顯縮短。從實(shí)驗(yàn)結(jié)果看出,構(gòu)建的KVM和Lustre虛擬環(huán)境在讀寫映像文件和并行讀寫大文件時(shí),性能有了顯著提高。當(dāng)集群文件系統(tǒng)結(jié)點(diǎn)數(shù)規(guī)模增加時(shí),性能并沒有達(dá)到線性增長(zhǎng),在將來的工作中,可以對(duì)集群文件系統(tǒng)性能達(dá)到峰值時(shí)的結(jié)點(diǎn)數(shù)規(guī)模開展測(cè)試工作。

      1 NeigerG,SantoniA,LeungF,etal.Intelvirtualization technology:hardware support for efficient processor virtualization.Intel Technology Journal,2006,10(3):167~177

      2 Barr K,Bungale P,Newell C,et al.The VMware mobile virtualization platform:is that a hypervisor in your pocket.Operating Systems Review(ACM),2010,44(4):124~135

      3 趙華茗,李春旺,周強(qiáng).基于XENServer的數(shù)字圖書館云服務(wù)平臺(tái)實(shí)現(xiàn)研究.電信科學(xué),2010(S1):39~44

      4 Sun Y Q,Lin J C,Qian W,et al.Hyper-V micro kernel architecture security analysis.Journal of Wuhan University of Technology,2010,32(15):130~132

      5 Kivity A,Kamay Y,Laor D,et al.Kvm:the linux virtual machine monitor.Proceedings of the Linux Symposium,Ottawa,Ontario,Canada,2007:225~230

      6 崔澤永,趙會(huì)群.基于KVM的虛擬化研究及應(yīng)用.計(jì)算機(jī)技術(shù)與發(fā)展,2011,21(6):108~111

      7 Adams K,Agesen O.A comparison of software and hardware techniquesforx86 virtualization.Proceedingsofthe 12th International Conference on Architectural Support for Programming Languages and Operating Systems,San Jose,CA,USA,2006

      8 Dahlin M,Johnson R,Krug R B,et al.Toward the verification ofa simple hypervisor.Proceedings of10th International Workshop on the ACL2 Theorem Prover and Its Applications(EPTCS 70),2011:28~45

      9 Zhang H,Wu K,Li J,et al.Parallel file system-supported server virtual environment in data center.Proceedings of the First International Conference on Networking and Distributed Computing,Hangzhou,China,October 2010

      10 Zhao T,March V,Dong S,et al.Evaluation of a performance model of luster file system.Proceedings of 5th Annual ChinaGrid Conference(ChinaGrid 2010),Guangzhou,Guangdong,China,July 2010:191~196

      猜你喜歡
      網(wǎng)橋輸入輸出虛擬環(huán)境
      虛擬環(huán)境中空間壓縮問題的影響與改善
      包裝工程(2023年16期)2023-08-25 11:32:42
      前庭刺激對(duì)虛擬環(huán)境三維空間定向的影響及與空間能力的相關(guān)關(guān)系
      載人航天(2021年5期)2021-11-20 06:04:34
      如何通過虛擬環(huán)境有效管理Python第三方庫
      Camtasia Studio高清視頻輸入輸出原理及方法
      鐵路信號(hào)系統(tǒng)安全輸入輸出平臺(tái)
      網(wǎng)橋技術(shù)在海外工程項(xiàng)目中的應(yīng)用
      輸入輸出理論在大學(xué)英語聽說課堂中的教學(xué)探索
      探析網(wǎng)橋優(yōu)先級(jí)
      虛擬環(huán)境下大數(shù)據(jù)智能并行聚類方法研究
      輸入輸出視角下高職英語教學(xué)研究
      年辖:市辖区| 金秀| 望奎县| 砀山县| 错那县| 榕江县| 徐闻县| 台江县| 全州县| 临桂县| 太仓市| 临沧市| 信丰县| 曲松县| 新干县| 浦县| 南充市| 渝北区| 东海县| 江城| 黄平县| 德庆县| 博白县| 长垣县| 阿城市| 清远市| 泗洪县| 淮南市| 琼海市| 锡林浩特市| 洛隆县| 丰原市| 金塔县| 阿克陶县| 哈巴河县| 齐河县| 那曲县| 武鸣县| 文山县| 偃师市| 彭山县|