• 
    

    
    

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

      ?

      一種云環(huán)境下的鏡像文件存儲系統(tǒng)*

      2014-02-28 06:16:34王洪發(fā)
      電信科學 2014年2期
      關鍵詞:鏡像文件適配器存儲系統(tǒng)

      王洪發(fā)

      (浙江水利水電學院計算機與信息工程系 杭州310018)

      1 引言

      云計算的本質是按需提供服務給組織或個人[1]。云服務提供商采用的服務方式通常是以虛擬機形式動態(tài)分配計算資源給用戶使用,例如Amazon Elastic Compute Cloud、OpenStack、Eucalyptus、Nimbus和OpenNebula。然而,隨著在一個云池中的虛擬機數(shù)量增多,它會引起以下兩個問題[2,3]。

      ·因為虛擬機鏡像難以被共享或移動,一臺虛擬機很難在不同主機上運行。

      ·用戶的虛擬機鏡像和數(shù)據(jù)是不安全的,因為它們不是分開存儲,并且缺乏容災性和恢復機制。

      因此,設計一個虛擬機鏡像文件存儲系統(tǒng)是非常必要的,更重要地是鏡像文件存儲系統(tǒng)能夠為用戶提供可伸縮、高性能、低成本的數(shù)據(jù)存儲池。

      目前,在云計算數(shù)據(jù)中心有3種模式的鏡像存儲:本地存儲、集中共享存儲和網(wǎng)絡存儲。本地存儲是最便捷的,但是容量有限,并且鏡像文件不能在不同主機之間共享,使得虛擬機遷移變得很困難。集中共享存儲能提供優(yōu)秀的I/O性能和容易的虛擬機遷移,例如使用光纖或Infiniband[4]連接主機和磁盤陣列,但是集中共享存儲非常昂貴并且可擴展性不好。網(wǎng)絡存儲是由許多廉價的存儲設備組成,它們之間通過TCP/IP以太網(wǎng)連接,并且使用分布式文件系統(tǒng)或并行文件系統(tǒng)。

      在本文中,筆者設計并實現(xiàn)了一個基于Lustre[5]的分布式鏡像文件存儲系統(tǒng)——IFSpool(image file store pool)。開源實現(xiàn)的Lustre能夠提供高I/O性能和優(yōu)秀的可擴展性和可靠性,并且被成功部署在商業(yè)應用環(huán)境,而筆者所做的主要工作是在主機服務器和Lustre之間添加存儲適配模塊。利用IFSpool中緊密的結合隊列和緩存機制以及通過協(xié)調數(shù)據(jù)訪問順序來提高I/O吞吐率和減輕啟動風暴。實驗結果表明IFSpool能有效地滿足鏡像文件存儲的需求。

      2 鏡像文件存儲的需求

      傳統(tǒng)上,云服務提供商提供3類服務模式[6,7]:基礎設施即服務(IaaS)、平臺即服務(PaaS)和軟件即服務(SaaS)。

      在IaaS模式中,云服務提供商提供虛擬機、存儲、網(wǎng)絡等服務。在PaaS模式中,云服務提供商提供計算平臺和解決方案。通常包括操作系統(tǒng)、編程語言執(zhí)行環(huán)境、數(shù)據(jù)庫和Web服務器。應用程序開發(fā)人員無需購買和管理底層硬件和軟件層,即可在云平臺上開發(fā)和運行他們的軟件解決方案。在SaaS模式中,云服務提供商提供應用軟件服務,云用戶通過網(wǎng)絡、虛擬桌面或移動終端訪問應用軟件。

      然而,隨著在云資源池中虛擬機數(shù)量的快速增加,很多問題出現(xiàn)在存儲領域,如容量不足、數(shù)據(jù)安全、吞吐量限制和啟動風暴。

      Meyer D等[8]提供了一個精心設計的單一存儲服務。在這個設計中,存儲虛擬機和通用虛擬機被部署在每一個應用程序節(jié)點。存儲服務遵循POSIX I/O接口,由虛擬化提供的封裝,通用虛擬機可以訪問不同的存儲服務和使用本地磁盤。對于一個小型虛擬機集群,這種存儲系統(tǒng)能在共享存儲設備和廉價商用本地磁盤上表現(xiàn)出良好的性能,然而,當虛擬機數(shù)量超過單個的存儲容量時,它甚至不能滿足正常的虛擬機I/O存取操作,此外,它不允許用戶之間合作共享。

      LiaoX F等[9]設計了一個分布式的存儲系統(tǒng)VM Store。VM Store采用直接塊索引結構來做虛擬機快照,能顯著改善虛擬機的啟動性能,并通過動態(tài)更改存儲節(jié)點的數(shù)量,提供分布式存儲的可伸縮性I/O帶寬。VM Store還提出了一種智能對象的分區(qū)技術的數(shù)據(jù)預處理策略,這將更有效地消除重復數(shù)據(jù),然而,實驗結果表明VM Store不適合大規(guī)模的VM鏡像存儲。

      Dickens P M和Logan J[10]提出一種新的數(shù)據(jù)再分配模型,采用“多對多”通信模型能夠有效地減少OST(對象存儲目標)存儲資源的競爭訪問,缺點是降低了I/O并行性。

      Casale G等[11]提出一種簡單性能模型來預測虛擬化應用程序的存儲I/O性能整合的影響,并且還定義了對吞吐量、響應時間和混合的讀/寫請求的簡單線性預測模型,但是預測模型的信息來源僅僅基于個人虛擬機隔離實驗的信息收集。

      為了減輕啟動風暴問題,一些虛擬機系統(tǒng)部署在SAN或其他昂貴的存儲陣列上,例如VMFS[12]。然而,隨著用戶的增多,即使使用先進的存儲系統(tǒng)降低啟動風暴的發(fā)生率,系統(tǒng)升級還是變得很困難而且代價也很高。

      因此,有必要建立一個專有的鏡像文件存儲系統(tǒng)。設計這樣一個鏡像文件存儲系統(tǒng)需要考慮3個基本問題。

      (1)高I/O吞吐量和高可擴展性

      在共享存儲中,虛擬機共享同一個物理存儲池。當虛擬機總訪問負載變得更高時,對I/O訪問的競爭量將影響虛擬機的性能。在這種情況下,鏡像文件存儲必須有高的I/O吞吐量。此外,為存儲和管理成千上萬的虛擬機鏡像,鏡像存儲池可以在不打斷任何操作的前提下通過添加新的存儲設備增加容量。

      (2)啟動優(yōu)化

      在云計算環(huán)境中,每個虛擬機將從數(shù)據(jù)中心主機或共享存儲本地文件系統(tǒng)中讀取引導信息。在參考文獻[9]中,提到在應用程序節(jié)點上啟動一個虛擬機至少需要10 Mbit/s的I/O帶寬,在企業(yè)中成百上千臺虛擬機并發(fā)啟動所需要的總帶寬將超過存儲服務器能力的幾倍。

      在大多數(shù)情況下,虛擬機被部署在企業(yè)環(huán)境中為企業(yè)員工提供相同的使用環(huán)境。員工將在上班開始時啟動虛擬機并在下班時關閉虛擬機。因此,虛擬機啟動或關閉很大程度上是并發(fā)操作。為了解決這個問題,結合隊列和緩存機制,并通過協(xié)調數(shù)據(jù)訪問順序提高I/O吞吐率和減輕啟動風暴,進一步通過使用固態(tài)硬盤(SSD)作為緩存隊列的存儲介質來提高讀寫性能。

      (3)容災備份

      在云計算環(huán)境中,失效是一種常見的事。2010年1月,Ruby-on-Rails應用程序托管公司在Amazon EC2托管的22臺虛擬機出現(xiàn)故障。據(jù)報道由于這次路由器故障所引起的中斷影響了托管在該公司的44 000個應用程序的使用[13]。因此,對于存儲和管理成千上萬的虛擬機鏡像的存儲系統(tǒng),容災備份是一個重要的考慮因素,包括訪問控制、災難恢復工具和冗余的數(shù)據(jù)存儲。所以,分布式存儲系統(tǒng)是一個合適的選擇。

      3 IFSpool設計和實現(xiàn)

      本節(jié)將描述專有鏡像文件存儲系統(tǒng)IFSpool的設計和實現(xiàn),并給出對提高I/O吞吐量和減輕啟動風暴的重要改進內容。

      3.1 IFSpool的架構

      圖1展示了IFSpool的高層體系結構。每個部件的詳細討論如下。

      圖1 IFSpool體系結構

      鏡像服務器是客戶端與Lustre之間的通信橋梁。鏡像服務器提供虛擬機鏡像的發(fā)現(xiàn)、登記和交付服務。在本文中,采用OpenStack Glance[14]作為IFSpool的鏡像服務器。Glance允許上傳多種格式的私有和公有的鏡像,包括VHD(Hyper-V)、VDI、qcow2(Qemu/KVM)和VMDK(VMware)。

      Lustre[5]是一個構建在廉價商用機器上的存儲系統(tǒng)。如圖2所示,元數(shù)據(jù)服務器(MDS)存儲著每個文件的布局、大小和位置,客戶端從MDS獲得文件布局,對象存儲服務器(OSS)為一個或多個本地對象存儲目標(OST)提供文件I/O服務和網(wǎng)絡請求處理,OST把文件數(shù)據(jù)作為數(shù)據(jù)對象存儲在一個或多個OSS上,單個Lustre文件系統(tǒng)通常有多個OSS和OST,為了優(yōu)化性能,每個文件被分為幾個子文件并存儲到不同的OST。在Lustre中一個來自客戶端的數(shù)據(jù)訪問請求將被分解成幾個更小的子請求,然后存儲服務器并行訪問子請求的數(shù)據(jù)。

      圖2 Lustre的體系架構

      3.2 存儲適配器設計

      存儲適配器是IFSpool的主要部件,在IFSpool中,客戶端也有相對應的部件:元數(shù)據(jù)客戶端(MDC)、對象存儲客戶端(OSC)和邏輯對象卷(LOV)。MDC是一個客戶端接口模塊,可以通過它訪問MDS。

      OSC和OST的關系是一對一的。一組OSC被包裝成一個LOV,如圖3所示。

      圖3 Lustre文件系統(tǒng)的文件打開、讀取、寫入過程

      當一個客戶端創(chuàng)建、打開或讀取一個鏡像文件時,它首先獲取存儲在MDS的元數(shù)據(jù)信息。在MDS返回鏡像文件的位置后,客戶端會直接向相關的OST設備發(fā)出I/O訪問請求。例如,在讀取文件之前,客戶端將通過MDC向MDS發(fā)出查詢請求。MDS告訴客戶端從設備讀取文件。然后客戶端直接訪問設備。

      假設有4個虛擬機,為了簡單起見,假設每個虛擬機鏡像存儲在4個OST設備上。圖4顯示了這些虛擬機存儲在4個不同的OST上的布局。

      圖4 OST的鏡像文件視圖

      假設在某個特定時間這4個虛擬機同時讀取鏡像文件,這樣虛擬機將會同時與每個OST通信,因此會產(chǎn)生相當大的通信開銷,而隨著虛擬機數(shù)量的增加,性能會大幅下降。主要因為虛擬機的隨機磁盤訪問,而且虛擬機本身也不執(zhí)行一系列連續(xù)的磁盤I/O操作,這將導致隨機、無序磁盤查找操作,從而產(chǎn)生額外的磁盤開銷和降低了文件訪問的并行操作效率。

      存儲適配器的基本原理是對于每個OST維護一個緩存隊列,稱為OST隊列。這些緩存隊列存儲于存儲適配器服務器上并且維護一個全局散列表,其中散列鍵也稱為OST_ID(每個OST在Lustre集群里有一個對應的身份證號碼)。因為適配器服務器的存儲介質是SSD,所以緩存隊列擁有高速的讀寫速度。

      在IFSpool中,鏡像文件是以條帶方式存儲在幾個OST上,并且在OST上一個文件的所有數(shù)據(jù)被視為一個對象,該對象使用128 bit的標識作為對象ID。與傳統(tǒng)的UNIX文件系統(tǒng)不同,MDS的索引節(jié)點并不指向數(shù)據(jù)塊,相反它指向一個或多個與對象相關的文件,所以客戶端可以通過對象ID并行地讀寫文件,換句話說,客戶機可以通過對象ID直接和OST交換數(shù)據(jù)。

      假設這4個虛擬機同時與這4個OST交換數(shù)據(jù)。存儲適配器首先從虛擬機接收所有數(shù)據(jù),然后依據(jù)對象ID分派這些數(shù)據(jù)到相應的OST隊列。當已使用空間達到一個閾值時,OST隊列中的數(shù)據(jù)將按序被寫回到相應的OST,同樣。當從OST上讀取數(shù)據(jù)時,對象首先被分派到相應的OST隊列中,然后每個虛擬機依據(jù)OST_ID從OST隊列取回對象。圖5顯示了存儲適配器模型。

      存儲適配器的優(yōu)點是通過結合隊列和緩存機制將隨機訪問變成順序訪問。存儲適配器的緩存機制實現(xiàn)是不同于傳統(tǒng)的緩存機制,具體地說,存儲適配器沒有使用替換算法,相反適配器采用有一個閾值來決定什么時候回寫數(shù)據(jù)。對于一個寫操作,緩存的功能是將隨機寫入變成順序寫入,并且把小的數(shù)據(jù)塊合并成大的數(shù)據(jù)塊。對于讀操作,依據(jù)對象ID將相同的請求合并到一個特定的OST上,讀操作的I/O吞吐量可以有效地改善,并且可以以大數(shù)據(jù)塊形式順序讀取這些數(shù)據(jù)到相應的OST隊列上。

      存儲適配器算法描述如下。

      Queue(i)表示存儲OST_ID為i的數(shù)據(jù)對象的隊列,隊列的范圍從0到n-1,n是OST的最大數(shù)。存儲適配器使用時間片輪轉方法為每個隊列提供服務。Read_object(p,ost)表示從ost中讀取對象p。Insert_object(p,i)表示將數(shù)據(jù)對象p加入隊列i中。Dispatch_object(p,i)表示將隊列i中的數(shù)據(jù)對象p發(fā)送到本地驅動程序。

      Begin

      Writing:on arrival of data object p

      Queue(i)=hash(object p);

      if(there is nothis object exist in this queue)

      {if(no free buffers left Queue(i))

      {Queue(i)=must_queue;return-1;}

      else{Insert_objcet(p,i);return 1;}}

      圖5 存儲適配器模型

      return 0;

      Reading:on arrival of several object requests

      m_Object_ID=merge requests by Object ID;

      Read_objcet(m_Objcet_ID,OST_ID);

      wait for VMs read.

      Dispatch:

      While(true)do{

      if((threshold value==ture)||(Queue(i)==must))

      {if(Queue(i)is not empty)

      {get a data object from OST_queue;

      Dispatch(p,i);}

      else if(there is enough slice left to wait for one requests)

      {do{wait for data object p;

      Dispatch(p,i);}

      While(time slice for Queue(i)is enough)}

      else{get next queue for service;}}

      End

      4 實驗結果

      4.1 實驗環(huán)境

      計算服務器采用兩臺聯(lián)想Think Server TS430 S1280服務 器,Intel Xeon E3-1200 8核處理器,32 GB內存,兩塊BroadcomNetXtremeⅡ57091Gbit/s以太網(wǎng)卡,6TBSAS6硬盤。

      鏡像服務器配備一臺戴爾電腦,Intel Xeon E7550 4核處理器,8 GB內存,380 GB SATA硬盤。

      Lustre集群由4臺戴爾電腦組成。每臺電腦配置Intel Xeon E7550 4核處理器、4 GB內存、2塊500 GB SATA西部數(shù)據(jù)硬盤。

      存儲適配服務器配備一臺戴爾電腦、一塊OCZ Vertex3 60 GB的SSD、一塊Highpoint RocketRAID 4320 RAID控制器。

      4.2 實驗分析

      圖6和圖7分別顯示了在使用HDFS、MooseFS、Lustre和IFSpool作為鏡像存儲池時指定數(shù)量的虛擬機平均隨機讀寫速率。從圖6和圖7看到IFSpool具有更好的I/O吞吐量。Lustre和IFSpool結果進一步確認存儲適配器提高了讀寫速率,這證實了存儲適配器能夠提高并行數(shù)據(jù)訪問速度和降低通信開銷。

      圖6 平均讀取速率比較

      圖7 平均寫入速率比較

      筆者還測試了不同記錄大小的I/O性能。在測試環(huán)境中有30個虛擬機同時針對IFSpool作隨機讀寫操作。從圖8和圖9看到存儲適配器能提高讀寫速率,尤其是小的記錄,這也證實了存儲適配器能提高數(shù)據(jù)訪問速度并行度和有效地減少通信開銷。

      在圖10和圖11中,比較了同時啟動或關閉特定數(shù)量虛擬機所消耗的時間。在實驗中,每臺虛擬機配置2個VCPU、1 024 MB內存、20 GB磁盤映像和Windows XP,所有虛擬機都是VHD格式,并且都運行在同一臺主機服務器上。當?shù)卿浗缑娉霈F(xiàn)時,虛擬機啟動完成;當電源關閉時,虛擬機關閉完成。

      圖8 不同大小記錄的寫入速率比較

      圖9 不同大小記錄的讀取速率比較

      圖10 多臺虛擬機同時啟動的時間消耗

      圖11 多臺虛擬機同時關閉的時間消耗

      從圖10和圖11可以看到當啟動或關閉多臺虛擬機時,IFSpool能比本地磁盤消耗更少的時間,這是由于IFSpool存在并行訪問和緩存機制。

      5 結束語

      鏡像文件存儲是云計算的關鍵部分。如果實現(xiàn)一個高容量、高可伸縮性和高吞吐量的鏡像文件存儲系統(tǒng),可以很容易地在不同主機或不同數(shù)據(jù)中心之間遷移虛擬機以達到負載平衡和節(jié)省電能,同時可以通過高I/O吞吐量和高容量存儲池來解決啟動風暴。在本文中,筆者設計并實現(xiàn)一個基于Lustre的存儲系統(tǒng)IFSpool,它可以在無須中斷數(shù)據(jù)訪問的前提下,通過添加存儲設備來增加存儲容量和I/O帶寬。IFSpool結合隊列和緩存機制,并通過協(xié)調數(shù)據(jù)訪問順序提高I/O吞吐率和減輕啟動風暴。實驗結果也表明IFSpool是有效的鏡像文件存儲系統(tǒng)。

      此外,當有成千上萬的用戶時,數(shù)據(jù)中心會存在大量的冗余數(shù)據(jù)。未來的工作,將在IFSpool中增加對重復數(shù)據(jù)刪除的支持。

      1 Foster I,Zhao Y,Raicu I,et al.Cloud computing and grid computing 360-degree compared.Proceedings of IEEE Grid Computing Environments Workshop,Austin,TX,USA,2008:1~10

      2 Wood T,Shenoy P,Venkataramaniand A,et al.Black-box and gray-box strategies for virtual machine migration.Proceedings of the 4th USENIX Conference on Networked Systems Design&Implementation,Cambridge,MA,2007:1~14

      3 Shafer J.I/O virtualization bottlenecks in cloud computing today.Proceedings of the 2nd Conference on I/O Virtualization,USENIX Association Berkeley,CA,USA,2010

      4 Hansen J G,Jul E.Lithium:virtual machine storage for the cloud.Proceedings of the 1st ACM Symposium on Cloud Computing,New York,NY,USA,2010:15~26

      5 Wang F,Oral S,Shipman G,et al.Understanding Lustre file system internals.Technical Report ORNL/TM-2009/117,Oak Ridge National Lab,National Center for Computational Sciences,2009

      6 Mell P,Grance T.NIST definition of cloud computing.National Institute of Standards and Technology,2011

      7 Buyya R,Broberg J,Goscinski A.Cloud Computing:Principles and Paradigms.New York:Wiley Press,2011

      8 Meyer D,Aggarwal G,Cully B,et al.Parallax:virtual disks for virtual machines.Proceedings of the ACM SIGOPS/EuroSys European Conference on Computer Systems,Glasgow,Scotland,2008

      9 Liao X F,Li H,Jin H,et al.Vmstore:distributed storage system for multiple virtual machines.Science China Information Sciences,2011,54(6):1104~1118

      10 Dickens P M,Logan J.A high performance implementation of MPI-IO for a Lustre file system environment.Concurrency and Computation:Practice and Experience,2010

      11 C asale G,Kraft S,Krishnamurthy D.A model of storage I/O performance interference in virtualized systems.Proceedings of the 1st Int Workshop on Data Center Performance,Minneapolis,MN,2011

      12 Vaghani S B.Virtual machine file system.ACM SIGOPS Operating Systems Review,2010,44(4):57~70

      13 Rajagopalan S,Cully B,O’Connor R,et al.SecondSite:Disaster Tolerance as a Service.ACM 978-1-4503-1175-5/12/03,London,England,2012

      14 Openstack image-service.http://www.openstack.org/projects/imageservice/

      15 Gens F.Defining“Cloud Services”and“Cloud computing”.http://www.fiercetelecom.com/story/defining-cloud-computing-servicesbenefits-and-caveats/2012-03-12,2012

      猜你喜歡
      鏡像文件適配器存儲系統(tǒng)
      分布式存儲系統(tǒng)在企業(yè)檔案管理中的應用
      哈爾濱軸承(2020年2期)2020-11-06 09:22:36
      天河超算存儲系統(tǒng)在美創(chuàng)佳績
      沒光驅不要緊 裝個免費虛擬的
      適配器模式及其應用
      電子測試(2017年11期)2017-12-15 08:57:45
      新型水文測驗GPS適配器設計與應用
      用RamOS降低公用機的維護工作量
      基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
      地礦測繪(2015年3期)2015-12-22 06:27:26
      美國麥格普公司新型M—LOK相機三腳架適配器
      輕兵器(2015年20期)2015-09-10 07:22:44
      華為震撼發(fā)布新一代OceanStor 18000 V3系列高端存儲系統(tǒng)
      Win7升級Win10教程
      電腦迷(2015年9期)2015-05-30 22:08:35
      夏河县| 邯郸县| 晋宁县| 古丈县| 正定县| 大埔县| 阜平县| 峡江县| 类乌齐县| 吉林省| 惠州市| 许昌县| 定结县| 扎赉特旗| 文昌市| 定西市| 三江| 黄骅市| 安阳县| 深圳市| 黄龙县| 通道| 浠水县| 新化县| 唐山市| 名山县| 资中县| 达州市| 沙洋县| 长宁县| 邵东县| 扶沟县| 宜都市| 孙吴县| 阜平县| 靖安县| 大港区| 喜德县| 大田县| 中卫市| 临颍县|