鏡像分析工具的制作方法
【專利摘要】可基于對虛擬機鏡像的評估來生成主鏡像。主鏡像包括虛擬機環(huán)境內(nèi)跨虛擬機鏡像共享的數(shù)據(jù)段的單個實例。主鏡像還可被構(gòu)建為同伴壓力技術(shù)的功能,包括對主鏡像內(nèi)的大部分虛擬機鏡像公共的數(shù)據(jù)段。主鏡像內(nèi)包括的數(shù)據(jù)段還可通過區(qū)分虛擬機鏡像內(nèi)的數(shù)據(jù)的優(yōu)先級以及用同伴壓力技術(shù)標(biāo)識有影響力的數(shù)據(jù)來定義。
【專利說明】鏡像分析工具
【背景技術(shù)】
[0001]虛擬機是諸如計算機的機器上的軟件仿真,在其中軟件的實現(xiàn)被限制在物理主機計算機的范圍內(nèi)。常規(guī)上,有系統(tǒng)虛擬機和進程虛擬機。系統(tǒng)虛擬機模擬包括操作系統(tǒng)的整個系統(tǒng)平臺機器,而進程虛擬機模擬特定進程。不考慮虛擬機的類型,所模擬的軟件被限制在由虛擬機提供的資源中。
[0002]通常,虛擬機允許主機計算機在同一計算機上同時運行多個應(yīng)用環(huán)境(例如,進程)或操作系統(tǒng)。主機計算機將特定量的主機資源分配給每個虛擬機,其中每個虛擬機使用這樣被分配的資源來執(zhí)行應(yīng)用和進程(包括操作系統(tǒng))。典型的虛擬機利用虛擬機鏡像文件(例如,虛擬機鏡像)來存儲希望的應(yīng)用環(huán)境、操作系統(tǒng),和相關(guān)聯(lián)的數(shù)據(jù)。虛擬機包括虛擬硬盤驅(qū)動器(VHD)作為典型的虛擬機鏡像。從主機的角度,VHD是非常類似于其它文件那樣不考慮與虛擬機相關(guān)聯(lián)所處理的大文件。但是,從虛擬機的角度,VHD是完整的硬盤驅(qū)動器,包括與操作系統(tǒng)、進程、用戶信息等相關(guān)的數(shù)據(jù)。
[0003]隨著虛擬機的越來越多的使用和變得越來越復(fù)雜,虛擬機鏡像的大小變得大了(例如,幾千兆字節(jié))。此外,虛擬機的環(huán)境和主機相對于所分配的資源和鏡像的存儲位置而言很少是靜態(tài)的。例如,虛擬機鏡像可以從網(wǎng)絡(luò)上的一個存儲位置移到網(wǎng)絡(luò)上的另一個存儲位置。換言之,單獨基于虛擬鏡像文件大小的虛擬機鏡像的存儲位置的重新定位可以是資源密集的事件。常規(guī)上,虛擬機鏡像文件以冗長且反復(fù)的轉(zhuǎn)移來移動,趨向于在系統(tǒng)資源等方面昂貴。
【發(fā)明內(nèi)容】
[0004]下面呈現(xiàn)了簡化的
【發(fā)明內(nèi)容】
,以便提供對所公開主題的某些方面的基本概念。本
【發(fā)明內(nèi)容】
不是廣泛性的概觀。它并不旨在標(biāo)識關(guān)鍵/重要元素,也不旨在劃定所要求保護主題的范圍。其唯一目的是以簡化形式呈現(xiàn)一些概念,作為稍后呈現(xiàn)的更具體描述的序言。
[0005]簡言之,本發(fā)明大致涉及虛擬機鏡像管理。虛擬機鏡像可被評估,以創(chuàng)建包括在虛擬機鏡像中找到的共享數(shù)據(jù)段的主鏡像??苫谕閴毫?peer pressure)技術(shù)、離線機器學(xué)習(xí)技術(shù)、運行時機器學(xué)習(xí)技術(shù)等來生成主鏡像。例如,同伴壓力技術(shù)可通過包括大部分虛擬機鏡像中找到的公共數(shù)據(jù)段來方便創(chuàng)建主鏡像。在另一個示例中,同伴壓力技術(shù)通過包括在虛擬機鏡像內(nèi)標(biāo)識的有影響力的數(shù)據(jù)段來增強主鏡像的生成。此外,主鏡像服務(wù)器可允許對主鏡像、創(chuàng)建主鏡像的模板,和附加虛擬機鏡像的訪問,用于同伴壓力技術(shù)的更大樣本集合。
[0006]為實現(xiàn)上述及相關(guān)目的,在此結(jié)合以下描述和附圖描述了所要求保護主題的某些說明性方面。這些方面指示可實踐本主題的各種方式,它們均落在所要求保護主題的范圍之內(nèi)。當(dāng)結(jié)合附圖閱讀以下詳細(xì)描述時,本發(fā)明的其他優(yōu)點和新穎特征將變得顯而易見。
【專利附圖】
【附圖說明】
[0007]圖1是虛擬機鏡像系統(tǒng)的框圖。[0008]圖2是利用同伴壓力技術(shù)來創(chuàng)建主鏡像的虛擬機鏡像系統(tǒng)的框圖。
[0009]圖3是由機器學(xué)習(xí)技術(shù)所增強的虛擬機鏡像系統(tǒng)的框圖。
[0010]圖4是用于區(qū)分主鏡像的數(shù)據(jù)段的優(yōu)先級的主鏡像系統(tǒng)的框圖。
[0011]圖5是便于主鏡像的創(chuàng)建和分配的系統(tǒng)的框圖。
[0012]圖6是基于所創(chuàng)建的主鏡像便于虛擬機鏡像轉(zhuǎn)移的系統(tǒng)的框圖。
[0013]圖7是從多個虛擬機鏡像生成主鏡像的方法的流程圖。
[0014]圖8是使用主鏡像來遷移虛擬機鏡像數(shù)據(jù)的方法的流程圖。
[0015]圖9是訪問服務(wù)器以從多個虛擬機鏡像創(chuàng)建主鏡像的方法的流程圖。
[0016]圖10是示出用于本公開各方面的合適操作環(huán)境的示意性框圖。
【具體實施方式】
[0017]以下細(xì)節(jié)一般涉及管理具有主鏡像(例如,金色鏡像)的虛擬機鏡像。虛擬機通常使用許多鏡像,趨向于需要大量的存儲空間,使得將數(shù)據(jù)從一個位置到另一個的轉(zhuǎn)移就系統(tǒng)資源而論是昂貴。管理這些虛擬機及各自的鏡像可包括鏡像遷移、虛擬機負(fù)載平衡,和虛擬機縮放。常規(guī)技術(shù)通常包括對每個虛擬機鏡像的基于其大的尺寸和數(shù)量的重復(fù)且冗長的轉(zhuǎn)移。上面的情況可通過虛擬機鏡像的主鏡像來解決。從所標(biāo)識的在虛擬機間公共的數(shù)據(jù)段中生成主鏡像。從這些所標(biāo)識的數(shù)據(jù)段,使用每個數(shù)據(jù)段的單個實例來為虛擬機創(chuàng)建主鏡像。在一個示例中,主鏡像包括在虛擬機鏡像間公共的大部分?jǐn)?shù)據(jù)段,以在鏡像的遷移、虛擬機負(fù)載平衡,和虛擬機縮放包括新虛擬機鏡像和/或虛擬機的創(chuàng)建時,優(yōu)化這樣的操作。
[0018]現(xiàn)在參考附圖更詳細(xì)地描述本發(fā)明的各個方面,在全部附圖中用相似的標(biāo)記來指示相似或相應(yīng)的元素。然而應(yīng)該理解,附圖及其相關(guān)詳細(xì)描述不旨在將所要求保護的主題限于所公開的具體形式。相反,其意圖是覆蓋落在所要求保護主題的精神和范圍之內(nèi)的所有修改、等價物和替換的方案。
[0019]首先參考圖1,示出了虛擬機鏡像系統(tǒng)100。虛擬機鏡像系統(tǒng)100創(chuàng)建包括在虛擬機鏡像間共享的數(shù)據(jù)段的主鏡像(例如,亦稱“金色鏡像”)。在一個示例中,主鏡像是從在虛擬機鏡像內(nèi)最常出現(xiàn)的數(shù)據(jù)段中生成的(以下更詳細(xì)地描述)。由于主鏡像是使用在虛擬機鏡像間公共的數(shù)據(jù)段來創(chuàng)建的,所以新的或更新的虛擬機和/或虛擬機鏡像的創(chuàng)建用主鏡像來優(yōu)化。一般而言,主鏡像可以是代表虛擬機鏡像的基于數(shù)據(jù)的最高公共共同點及各自數(shù)據(jù),其中主鏡像包括虛擬機鏡像可能的最共享的數(shù)據(jù)。換言之,主鏡像可以包括虛擬機鏡像間最大的可能的數(shù)據(jù)構(gòu)建塊。
[0020]虛擬機鏡像系統(tǒng)100包括將虛擬機鏡像進行比較以創(chuàng)建主鏡像的生成組件110。特別是,虛擬機鏡像系統(tǒng)100包括分析虛擬機(并且具體地,虛擬機鏡像)的評估組件120。評估組件120可從虛擬機環(huán)境(例如,包括或訪問虛擬機和虛擬機鏡像的機器環(huán)境)接收或收集虛擬機鏡像。例如,用戶可以選擇虛擬機鏡像的一個集合或子集來評估或者選擇可自動化。一旦手動或自動選擇虛擬機鏡像,評估組件120將來自每個虛擬機鏡像的數(shù)據(jù)進行比較,以標(biāo)識公共的或共享數(shù)據(jù)段。具體地,評估組件120分析虛擬機鏡像以從這樣的虛擬機鏡像中提取公共數(shù)據(jù)段。
[0021]此外,虛擬機鏡像系統(tǒng)100包括基于評估組件120的分析來創(chuàng)建主鏡像(例如,也被稱為“金色鏡像”)的主組件130。如在這里所使用的,術(shù)語“主鏡像”和“金色鏡像”指包括在虛擬機鏡像間公共的數(shù)據(jù)段的數(shù)據(jù)的集合。此外,主鏡像可包括代表可在虛擬機環(huán)境(且具體地,在虛擬機)內(nèi)執(zhí)行的軟件程序的數(shù)據(jù)??梢岳斫猓麋R像可以是任何大小(例如,字節(jié)、兆字節(jié)、千兆字節(jié)等)并可包括來自虛擬機環(huán)境內(nèi)的任何合適的源的任何類型的數(shù)據(jù)。如所述,主組件130通過包括由評估組件120所標(biāo)識的公共數(shù)據(jù)段的單個實例來生成主鏡像。換言之,主組件130可監(jiān)測所標(biāo)識的公共數(shù)據(jù)段并將每個數(shù)據(jù)段的單個副本結(jié)合到主鏡像中。具體地,生成組件110和所結(jié)合的組件(例如評估組件120、主組件130)可實現(xiàn)同伴壓力技術(shù)(以下更詳細(xì)討論),以標(biāo)識大部分虛擬機鏡像中的共享數(shù)據(jù)段。
[0022]如在此利用的,虛擬機鏡像包括與虛擬機相關(guān)的任何合適的數(shù)據(jù)。作為示例而非限制,虛擬機鏡像可包括虛擬機的操作系統(tǒng)、與虛擬機相關(guān)聯(lián)的進程、與虛擬機的操作系統(tǒng)相關(guān)的數(shù)據(jù)、與虛擬機相關(guān)聯(lián)的進程有關(guān)的數(shù)據(jù)等等。此外,虛擬機鏡像可包括客戶機的所有用戶需要的組件/數(shù)據(jù)(例如,客操作系統(tǒng)的安裝文件、web瀏覽器應(yīng)用、防病毒應(yīng)用、電子郵件應(yīng)用等)以及對于各用戶特定的組件(例如,簡檔、用戶特定應(yīng)用等)。此外,虛擬機鏡像可包含數(shù)據(jù),不管其是否存儲在遠(yuǎn)程虛擬機服務(wù)器、本地虛擬硬盤驅(qū)動器(VHD)、遠(yuǎn)程VHD、基于云的服務(wù)器、基于云的虛擬機、平臺即服務(wù)(PaaS)虛擬機、PaaSVHD, PaaS服務(wù)器
坐坐寸寸o
[0023]圖2示出了利用同伴壓力技術(shù)創(chuàng)建主鏡像的虛擬機鏡像系統(tǒng)200。虛擬機鏡像系統(tǒng)200包括基于來自評估組件120和/或主組件130的分析來創(chuàng)建虛擬機鏡像的集合的主鏡像的生成組件110。可以理解,生成組件110可以是獨立的組件、結(jié)合到虛擬機環(huán)境、結(jié)合到虛擬機、結(jié)合到虛擬機服務(wù)器,和/或任何合適的組合。
[0024]作為示例而非限制,虛擬機環(huán)境可包括第一組虛擬機和第二組虛擬機。第一組虛擬機可被選擇,其中相關(guān)的虛擬機鏡像被評估以標(biāo)識(對應(yīng)于所選的那組虛擬機的)虛擬機鏡像間共享的數(shù)據(jù)段。換言之,位于虛擬機鏡像上的公共數(shù)據(jù)段可被收集并使用,來創(chuàng)建主鏡像,其中主鏡像包括每個公共數(shù)據(jù)段的單個實例。一旦生成,主鏡像可被采用用于第一組(所選的那組虛擬機)內(nèi)的至少一個虛擬機和/或虛擬機鏡像的遷移。此外,在新的或更新的虛擬機和/或虛擬機鏡像的建立中可采用主鏡像。
[0025]虛擬機鏡像系統(tǒng)200還包括同伴壓力組件210,其結(jié)合同伴壓力技術(shù)來便于一組虛擬機鏡像的主鏡像的創(chuàng)建。如此處所利用的,同伴壓力技術(shù)與基于計算來自樣本集的主要部分和會聚到被標(biāo)識為主要部分的值或數(shù)據(jù)的任何統(tǒng)計分析相關(guān)。換言之,同伴壓力技術(shù)可提供“按數(shù)量的力量(power in numbers)”分析以標(biāo)識存在于主要或大部分虛擬機鏡像內(nèi)的共享數(shù)據(jù)段。在另一示例中,同伴壓力技術(shù)可與任何統(tǒng)計分析相關(guān)以標(biāo)識一組虛擬機鏡像內(nèi)的有影響力的數(shù)據(jù)段。換言之,同伴壓力技術(shù)可提供“欺負(fù)者心態(tài)(bullymentality)”分析以標(biāo)識存在于虛擬機鏡像內(nèi)的有影響力和高優(yōu)先級的數(shù)據(jù)段。通常,系統(tǒng)200可利用同伴壓力組件210采用任何合適的統(tǒng)計同伴壓力技術(shù),其中同伴壓力技術(shù)通過將在大部分虛擬機鏡像內(nèi)發(fā)現(xiàn)的公共數(shù)據(jù)段或被發(fā)現(xiàn)具有影響力的公共數(shù)據(jù)段包括在虛擬機鏡像內(nèi)來增強主鏡像。
[0026]圖3示出了用機器學(xué)習(xí)技術(shù)增強了的虛擬機鏡像系統(tǒng)300。虛擬機鏡像系統(tǒng)300包括生成組件110,其從一組已評估的虛擬機鏡像中構(gòu)建主鏡像,其中主鏡像包括存在于虛擬機鏡像中的數(shù)據(jù)段。如所討論的,評估組件120分析虛擬機鏡像以標(biāo)識一致的或存儲在虛擬機鏡像中的公共數(shù)據(jù)段。在采用同伴壓力技術(shù)的情況中,主鏡像包括一致的或存儲在高百分比(例如,大于一半)的虛擬機鏡像上的公共數(shù)據(jù)段。此外,主組件130收集公共數(shù)據(jù)段并構(gòu)造具有在虛擬機鏡像中被發(fā)現(xiàn)為公共的每個數(shù)據(jù)段的單個實例的主鏡像。
[0027]生成組件110還可包括趨勢組件310,其實現(xiàn)機器學(xué)習(xí)技術(shù)以查明要包括在主鏡像中的公共數(shù)據(jù)段。此外,趨勢組件310便于遷移和創(chuàng)建虛擬機和/或虛擬機鏡像(結(jié)合圖6更詳細(xì)討論遷移)。一般而言,趨勢組件310采用離線機器學(xué)習(xí)技術(shù)和/或運行時機器學(xué)習(xí)技術(shù)。作為示例而非限制,趨勢組件310可離線利用第一組機器學(xué)習(xí)技術(shù)并隨后在運行時利用第二組機器學(xué)習(xí)技術(shù),其中第二組運行時機器學(xué)習(xí)技術(shù)可更新、修改,和/或微調(diào)第一組機器學(xué)習(xí)技術(shù)。例如,除了離線分析,趨勢組件310可采用剖析信息的樣本組或小的信息片段。換言之,趨勢組件310提供雙層機器學(xué)習(xí)技術(shù),其中離線機器學(xué)習(xí)技術(shù)通過運行時機器學(xué)習(xí)技術(shù)來加強。
[0028]例如,趨勢組件310和所實施的(例如,離線/或在運行時)機器學(xué)習(xí)技術(shù)可標(biāo)識虛擬機和/或虛擬機鏡像的容量或大小?;谔摂M機的容量或大小和/或虛擬機鏡像,趨勢組件310可查明主鏡像的數(shù)據(jù)大小。作為示例而非限制,主鏡像大小可基于趨勢組件310分析(例如離線和/或在運行時)來標(biāo)識。在另一示例中,趨勢組件310可提供進程級分析,監(jiān)測操作系統(tǒng)(OSM)詳情,和應(yīng)用級設(shè)置(例如基于已知應(yīng)用細(xì)節(jié))。
[0029]在另一個示例中,趨勢組件310可采用機器學(xué)習(xí)來從存儲器中提取數(shù)據(jù)以便于在虛擬機鏡像中標(biāo)識公共數(shù)據(jù)段、遷移虛擬機鏡像,和創(chuàng)建新的或更新的虛擬機。從存儲器中,趨勢組件310可分析存儲對象來標(biāo)識安全漏洞。作為示例而非限制,所標(biāo)識的安全漏洞可以是遷移虛擬機和/或虛擬機鏡像的因素。此外,這樣的安全漏洞和相關(guān)數(shù)據(jù)段可被排除在包含在主鏡像中之外。此外,趨勢組件310還可采用時間系列分析、模型預(yù)測、虛擬機容量預(yù)測等。
[0030]圖4示出了用于區(qū)分主鏡像的數(shù)據(jù)段優(yōu)先級的主鏡像系統(tǒng)400。主鏡像系統(tǒng)400包括基于多個虛擬機鏡像的評估來創(chuàng)建主鏡像的生成組件110具體地,如所討論的,評估組件120分析一組虛擬機鏡像410,其中可以有任何合適數(shù)量的虛擬機鏡像,諸如虛擬機鏡像I到虛擬機鏡像N,N是正整數(shù)。與評估組件120組合,主組件130創(chuàng)建主鏡像來包括在該組虛擬機鏡像410中公共的數(shù)據(jù)段的單個實例。
[0031]主鏡像系統(tǒng)400可包括排名組件402,其允許區(qū)分已標(biāo)識的公共數(shù)據(jù)段的優(yōu)先級,其中更高優(yōu)先級可被轉(zhuǎn)化成包括到主鏡像的更高可能性。相反,更低優(yōu)先級可被轉(zhuǎn)化成排除到主鏡像之外的更高可能性。排名組件420可接收與其中可區(qū)分?jǐn)?shù)據(jù)的優(yōu)先級或降低數(shù)據(jù)的優(yōu)先級的特定的特點、特性和/或度量相關(guān)的優(yōu)先級數(shù)據(jù)。作為示例而非限制,與用戶簡檔相關(guān)聯(lián)的數(shù)據(jù)段可被設(shè)為比應(yīng)用數(shù)據(jù)段更高的優(yōu)先級。在這樣的示例中,虛擬機鏡像間公共的用戶簡檔數(shù)據(jù)段可被區(qū)分優(yōu)先級以被包括在主鏡像中在應(yīng)用公共數(shù)據(jù)段(以及其它比用戶簡檔數(shù)據(jù)段排名更低的數(shù)據(jù)段)之上。
[0032]排名組件420允許基于各種特性區(qū)分任何數(shù)據(jù)段的優(yōu)先級。數(shù)據(jù)段可被排名組件420基于諸如以下的特性(但不限于此)來區(qū)分優(yōu)先級:主虛擬機(例如,主存該數(shù)據(jù)段的虛擬機),虛擬機鏡像上的大小、VHD上的大小、共性的百分比(例如,數(shù)據(jù)段多久出現(xiàn)在虛擬機鏡像內(nèi)一次)、數(shù)據(jù)段類型(例如,操作系統(tǒng)數(shù)據(jù)、用戶簡檔數(shù)據(jù)、應(yīng)用數(shù)據(jù)等)、主虛擬機位置(例如,本地、遠(yuǎn)程、基于云、基于PaaS等)、基于進程(例如,應(yīng)用A數(shù)據(jù)段優(yōu)先于應(yīng)用B,因為應(yīng)用A是安全應(yīng)用)、操作系統(tǒng)的關(guān)聯(lián)(例如,將操作系統(tǒng)數(shù)據(jù)段排在優(yōu)先于其它數(shù)據(jù)段)、用戶偏好等等。可以理解,排名組件420可以是用數(shù)據(jù)段構(gòu)造主鏡像中的一個因素(例如,不是唯一因素)。換言之,作為示例而非限制,排名組件420允許要被包括在所生成的主鏡像中數(shù)據(jù)段的增長的可能性。然而,可以理解,排名組件420可被配置來允許區(qū)分一個數(shù)據(jù)段的優(yōu)先級,以自動被包括在一組虛擬機鏡像的主鏡像中。
[0033]圖5示出了便于主鏡像的創(chuàng)建和分配的系統(tǒng)500。系統(tǒng)500包括生成組件110,其構(gòu)造了具有在虛擬機鏡像中公共的數(shù)據(jù)段的主鏡像。例如,主鏡像被創(chuàng)建以包括來自虛擬機鏡像的盡可能多的共享數(shù)據(jù)。通過使用同伴壓力技術(shù),主鏡像包括在大部分虛擬機鏡像中公共的數(shù)據(jù)段或在虛擬機鏡像內(nèi)有影響力的數(shù)據(jù)段。換言之,主鏡像可被看成為虛擬機鏡像的數(shù)據(jù)的最高公共的共同點。
[0034]系統(tǒng)500包括構(gòu)造如上所述的主鏡像的生成組件110。此外,系統(tǒng)500包括主鏡像服務(wù)器510 (亦稱MI服務(wù)器510)。主鏡像服務(wù)器510可以是本地服務(wù)器或遠(yuǎn)程服務(wù)器,其中客戶機可訪問主鏡像540和/或虛擬機鏡像。一般而言,主鏡像服務(wù)器510可被本地客戶機和/或遠(yuǎn)程客戶機訪問以上傳、下載、存儲,或查看主鏡像540和/或虛擬機鏡像。作為示例而非限制,主鏡像服務(wù)器510可以是基于云的和/或基于PaaS的。此外,主鏡像服務(wù)器510允許來自各個用戶、客戶機、企業(yè),等對主鏡像540和/或虛擬機鏡像的訪問(通過來自擁有者的已表達的許可)。此外,可以理解,為了簡略的目的,系統(tǒng)500中描述了單個生成組件110和/或主鏡像,但是多個主鏡像、生成組件,和/或客戶機(未示出)可以訪問主鏡像服務(wù)器510。
[0035]生成組件110創(chuàng)建的主鏡像可被上傳并存儲到主鏡像服務(wù)器510??梢岳斫?,主鏡像服務(wù)器510可以是選擇進入或選擇退出服務(wù)。在訪問主鏡像服務(wù)器510之前,授權(quán)組件520采用安全和授權(quán)技術(shù)。授權(quán)組件520可利用用戶名、口令、安全問題、密碼術(shù)、人類交互證明(HIP)等等。一般而言,授權(quán)組件520提供數(shù)據(jù)通信的被確認(rèn)且安全連接。授權(quán)組件520還可請求允許分配和共享任何被上傳的主鏡像和/或虛擬機信息。
[0036]主鏡像服務(wù)器510還包括全局同伴壓力組件530。全局同伴壓力組件530通過包括附加樣本集(例如虛擬機鏡像)以標(biāo)識大部分虛擬機鏡像中的公共數(shù)據(jù)段,來擴展圖2中討論的同伴壓力技術(shù)。此外,全局同伴壓力技術(shù)可擴展虛擬鏡像的樣本集,以標(biāo)識虛擬機鏡像中有影響力的公共數(shù)據(jù)段。因此,可以有采用使用本地虛擬機鏡像作為樣本集的同伴壓力技術(shù)的本地同伴壓力技術(shù)。此外,可以有采用使用本地虛擬機鏡像和來自主鏡像服務(wù)器510的虛擬機鏡像作為樣本集的同伴壓力技術(shù)的全局同伴壓力技術(shù)??梢岳斫?,系統(tǒng)500可提供全局同伴壓力技術(shù)和本地同伴壓力技術(shù)之間的選擇,而不考慮主鏡像服務(wù)器510的選擇進入或選擇退出。在一個示例中,全局同伴壓力組件430可評估主鏡像要針對其被創(chuàng)建的本地虛擬機鏡像。基于這樣的評估,來自主鏡像服務(wù)器510的附加虛擬機鏡像可被標(biāo)識,以被包括在全局同伴壓力分析中,其中附加虛擬機鏡像可包括共享度量、特性等。在另一個示例中,附加虛擬機鏡像可被用戶、客戶機,或管理員在主鏡像服務(wù)器510內(nèi)選擇或標(biāo)識。
[0037]如前簡單討論的,主鏡像服務(wù)器510可存儲從許多虛擬機鏡像中創(chuàng)建的和從許多虛擬機環(huán)境中創(chuàng)建的主鏡像540。主鏡像540可被查看、轉(zhuǎn)移、下載等。作為示例而非限制,主鏡像可被下載并在虛擬機環(huán)境中采用。具體地,主鏡像可被調(diào)用,用于新的或更新了的虛擬機。在另一示例中,公司A可為第一組虛擬機鏡像創(chuàng)建主鏡像I而為第二組機器創(chuàng)建主鏡像2,其中主鏡像I和主鏡像2被存儲在主鏡像服務(wù)器510中。此外,公司B可為一組虛擬機鏡像創(chuàng)建主鏡像3,其中主鏡像3被存儲在主鏡像服務(wù)器510中。接著上述示例,公司B可利用主鏡像I和/或主鏡像2以創(chuàng)建主鏡像4。此外,公司B可調(diào)用包括公司B本地虛擬機鏡像和公司A虛擬機鏡像(例如第一組虛擬機鏡像和第二組虛擬機鏡像)的全局同伴壓力技術(shù)。
[0038] 此外,通過主鏡像模板550 (亦稱模板550)的采用,主鏡像服務(wù)器510便于主鏡像的創(chuàng)建。模板550可以是從中創(chuàng)建虛擬機鏡像的主鏡像的框架。模板550可基于特定虛擬機和/或虛擬機環(huán)境的標(biāo)準(zhǔn)化特性。例如,主鏡像的模板可以是基于商務(wù)的、基于公司的、或基于工業(yè)的,其中商務(wù)、公司和/或工業(yè)的特性被標(biāo)識并被利用以標(biāo)識并包括存儲在主鏡像中的特定公共數(shù)據(jù)段。在另一個示例中,模板可基于虛擬機所采用的操作系統(tǒng)和/或進程的類型。模板550可以是基于功能的,其中特定功能包括幫助標(biāo)識數(shù)據(jù)段以被包括在主鏡像中的特性。例如,與會計相關(guān)的虛擬機環(huán)境可基于從主鏡像服務(wù)器510中接收的模板來為本地虛擬機鏡像創(chuàng)建主鏡像,其中模板是基于會計的模板。
[0039]參見圖6,示出了基于所創(chuàng)建的主鏡像方便虛擬機鏡像轉(zhuǎn)移的虛擬機鏡像系統(tǒng)600。虛擬機鏡像系統(tǒng)600利用創(chuàng)建主鏡像的生成組件110來精簡虛擬機鏡像轉(zhuǎn)移、遷移、存儲等。虛擬機鏡像系統(tǒng)600還可包括遷移組件610,其利用主鏡像以便于虛擬機鏡像410的遷移以創(chuàng)建新的或更新了的虛擬機。作為示例而非限制,遷移組件610利用主鏡像來在虛擬機環(huán)境中創(chuàng)建新的虛擬機。例如,基于離線和運行時機器學(xué)習(xí)技術(shù),新虛擬機可以是基于附加虛擬機的需求。此外,遷移組件610可采用主鏡像來升級或更新虛擬機,其中更新或升級可包括已更新的主鏡像、一部分軟件等等。此外,遷移組件610可利用主鏡像來用于虛擬機環(huán)境內(nèi)的負(fù)載平衡、縮放虛擬機環(huán)境(例如,放大一添加虛擬機/圖像,縮小一減小虛擬機/圖像等)、對一組虛擬機鏡像進行故障查找,和/或主機計算機負(fù)載平衡。
[0040]參考若干組件之間的交互已經(jīng)描述了上述系統(tǒng)、架構(gòu)、環(huán)境等。應(yīng)該理解,這樣的系統(tǒng)和組件可以包括其中指定的那些組件或子組件,某些指定的組件或子組件,和/或附加的組件。子組件也可以被實現(xiàn)為在通信上被耦合到其他組件而不是被包括在父組件中的組件。此外,一個或多個組件和/或子組件可以組合成提供聚集功能的單個組件。組件也可以與一個或多個其他組件進行交互,出于簡要考慮在此未具體描述其他組件,但本領(lǐng)域的技術(shù)人員均已知。
[0041]此外,應(yīng)該理解以上所公開的系統(tǒng)及以下方法的各部分可以包括或包含人工智能、機器學(xué)習(xí)或基于知識或規(guī)則的組件、子組件、進程、手段、方法或機制(例如,支持向量機、神經(jīng)網(wǎng)絡(luò)、專家系統(tǒng)、貝葉斯信任網(wǎng)絡(luò)、模糊邏輯、數(shù)據(jù)融合引擎、分類器…)。這樣的組件和其它組件可以自動化其執(zhí)行的某些機制或過程,由此使得系統(tǒng)和方法的各部分更為自適應(yīng)以及高效及智能。作為示例而非限制,生成組件110或其一個或多個子組件可采用這樣的機制來有效確定或以其他方式推斷虛擬機鏡像中的一組公共數(shù)據(jù)段以創(chuàng)建主鏡像。
[0042]考慮到以上描述的示例性系統(tǒng),參考圖7-9的流程圖將可以更好地理解依照所公開的主題實現(xiàn)的方法。盡管為了說明簡潔起見,按照一系列框示出和描述了方法,但是,應(yīng)該理解和知道,所要求保護的主題不限于框的次序,因為一些框可以按與此處所描繪和描述的不同的次序進行和/或與其他框并發(fā)地進行。此外,并非全部所示出的框都是實現(xiàn)下面所描述的方法所必需的。[0043]圖7示出了一種用于從多個虛擬機鏡像生成主鏡像的方法700。在附圖標(biāo)記710,標(biāo)識多個虛擬機鏡像中公共的一段數(shù)據(jù)。例如,兩個或多個虛擬機鏡像間的數(shù)據(jù)段可被標(biāo)識。在另一示例中,同伴壓力技術(shù)(例如全局同伴壓力技術(shù)、本地同伴壓力技術(shù)等)可被利用來查明多個虛擬機鏡像中的大部分中的公共數(shù)據(jù)段。在附圖標(biāo)記720,包括數(shù)據(jù)段的單個實例的主鏡像被生成。在附圖標(biāo)記730,用主鏡像將虛擬機遷移到主機計算機內(nèi)的更新了的存儲位置??梢岳斫?,遷移可包括對虛擬機的更新或新虛擬機的創(chuàng)建。
[0044]圖8是使用主鏡像來遷移虛擬機鏡像數(shù)據(jù)的方法800的流程圖。在附圖標(biāo)記810,機器學(xué)習(xí)技術(shù)被用于具有各自的虛擬機鏡像的多個虛擬機以標(biāo)識這樣的虛擬機鏡像中的公共數(shù)據(jù)段。在附圖標(biāo)記820,在所標(biāo)識的公共數(shù)據(jù)段上執(zhí)行同伴壓力技術(shù)。可以理解,同伴壓力技術(shù)可標(biāo)識大部分虛擬機鏡像中的公共數(shù)據(jù)段,其中大部分中的公共數(shù)據(jù)段被包括在主鏡像中。此外,同伴壓力技術(shù)可標(biāo)識在虛擬機鏡像中有影響力的數(shù)據(jù)段,其中有影響力的數(shù)據(jù)段被包括在主鏡像中。在附圖標(biāo)記830,基于同伴壓力技術(shù)創(chuàng)建主鏡像。在附圖標(biāo)記840,主鏡像被復(fù)制到新虛擬機或已更新虛擬機的至少一個的已更新位置。在附圖標(biāo)記850,新虛擬機或已更新虛擬機的至少一個被建立。
[0045]圖9是用于訪問服務(wù)器來為多個虛擬機鏡像創(chuàng)建主鏡像的方法900的流程圖。在附圖標(biāo)記910,作出是否連接到主鏡像(MI)服務(wù)器的判定。如果判定不連接到MI服務(wù)器(例如,“否”),方法900繼續(xù)到附圖標(biāo)記920。在附圖標(biāo)記920,多個虛擬機鏡像的主鏡像被創(chuàng)建??梢岳斫猓麋R像可基于上面討論的技術(shù)來創(chuàng)建,諸如但不限于,同伴壓力技術(shù)、離線機器學(xué)習(xí)、運行時機器學(xué)習(xí)、優(yōu)先級技術(shù)等等。在附圖標(biāo)記930,主鏡像被本地地存儲。
[0046]如果判定連接到MI服務(wù)器(例如,“是”),方法900繼續(xù)到附圖標(biāo)記940。在附圖標(biāo)記940,作出是否采用模板的判定。如果不實施模板(例如“否”),方法900繼續(xù)到附圖標(biāo)記950,其中為多個虛擬機鏡像創(chuàng)建主鏡像??梢岳斫猓麋R像可用全局同伴壓力技術(shù)(例如,全局同伴壓力技術(shù)包括利用MI服務(wù)器內(nèi)包含的虛擬機鏡像的大部分公共數(shù)據(jù))或本地同伴壓力技術(shù)(例如本地同伴壓力技術(shù)包括利用包含在本地一而不是MI服務(wù)器內(nèi)的虛擬機鏡像的大部分公共數(shù)據(jù))來創(chuàng)建。繼續(xù)到附圖標(biāo)記960,主鏡像被存儲在MI服務(wù)器上。作為示例而非限制,所存儲的主鏡像可被用作潛在模板、模板的源,被另一公司/用戶使用等等。
[0047]如果判定是采用模板(例如,“是”),方法900繼續(xù)到附圖標(biāo)記970。在附圖標(biāo)記970,基于匹配的環(huán)境來從MI服務(wù)器選擇模板。例如,所匹配的環(huán)境可以是用戶選擇、機器匹配、基于工業(yè),和/或其任何組合。模板可提供與潛在公共數(shù)據(jù)段相關(guān)的度量和特性以進行收集,從而生成主鏡像。在附圖標(biāo)記980,基于所選擇的模板為虛擬機鏡像創(chuàng)建主鏡像。如上面討論的,主鏡像可用全局同伴壓力技術(shù)或本地同伴壓力技術(shù)來創(chuàng)建。在另一個示例中,用戶定義的組合可在全局同伴壓力技術(shù)和本地同伴壓力技術(shù)之間實現(xiàn),其中一部分全局虛擬機鏡像被選擇以被包含在混合同伴壓力技術(shù)中。在到附圖標(biāo)記990,主鏡像被存儲在MI服務(wù)器上。作為示例而非限制,所存儲的主鏡像可被用作潛在模板、模板的源,被另一公司/用戶重新使用等等。
[0048]此處使用的術(shù)語“組件”和“系統(tǒng)”及其各種形式旨在表示與計算機相關(guān)的實體,其可以是硬件、硬件和軟件的組合、軟件、或執(zhí)行中的軟件。例如,組件可以是但不限于是,在處理器上運行的進程、處理器、對象、實例、可執(zhí)行程序、執(zhí)行的線程、程序和/或計算機。作為說明,在計算機上運行的應(yīng)用和計算機兩者都可以是組件。一個或多個組件可以駐留在進程和/或執(zhí)行的線程中,并且組件可以位于一個計算機內(nèi)和/或分布在兩個或更多計算機之間。[0049]在本文中使用的詞語“示例性”或其各種形式意味著用作示例、實例或說明。在此被描述為“示例性”的任何方面或設(shè)計并不一定要被解釋為相比其它方面或設(shè)計更優(yōu)選或有利。此外,各示例只是出于清楚和理解的目的來提供的并且并不意味著以任何方式限制或約束所要求保護主題或本發(fā)明的相關(guān)部分??梢岳斫?,本來可呈現(xiàn)不同范圍的多個附加或替換示例,但出于簡明的目的已被省略。
[0050]如此處所使用,術(shù)語“推論”或“推斷”通常指的是從經(jīng)由事件和/或數(shù)據(jù)捕捉的一組觀察結(jié)果來推理或推斷系統(tǒng)、環(huán)境、和/或用戶的狀態(tài)的過程??梢允褂猛茢鄟順?biāo)識特定上下文或動作,也可以生成例如狀態(tài)上的概率分布。推斷可以是概率性的,即,基于對數(shù)據(jù)和事件的考慮,計算在感興趣狀態(tài)上的概率分布。推斷也可以是指用于從一組事件和/或數(shù)據(jù)構(gòu)成較高級別的事件的技術(shù)。這樣的推斷導(dǎo)致從一組觀察到的事件和/或存儲的事件數(shù)據(jù)構(gòu)建新的事件或動作,不管事件在時間上是否緊密相關(guān),以及事件和數(shù)據(jù)來自一個還是多個事件和數(shù)據(jù)源。可采用各種分類方案和/或系統(tǒng)(例如,支持向量機、神經(jīng)網(wǎng)絡(luò)、專家系統(tǒng)、貝葉斯置信網(wǎng)絡(luò)、模糊邏輯、數(shù)據(jù)融合引擎……)來執(zhí)行關(guān)于所要求保護主題的自動化和/或推斷的動作。
[0051]而且,對于在詳細(xì)描述或權(quán)利要求書中使用術(shù)語“包括”、“包含”、“具有”、“含有”或其它形式的變型而言,這樣的術(shù)語旨在以類似于術(shù)語“包括”的方式體現(xiàn)包含性,如同“包括”在用作權(quán)利要求書中的過渡詞時所解釋的那樣。
[0052]為了為所要求保護主題提供上下文,圖10以及以下討論旨在提供對其中可以實現(xiàn)本主題的各方面的合適環(huán)境的簡要、概括描述。然而,合適的環(huán)境只是示例并且并非旨在對使用范圍或功能提出任何限制。
[0053]盡管能夠在可以在一臺或多臺計算機上運行的程序的計算機可執(zhí)行指令的一般上下文中描述以上公開的系統(tǒng)和方法,但是,本領(lǐng)域的技術(shù)人員將認(rèn)識到,各方面也可以與其他程序模塊等相結(jié)合地實現(xiàn)。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、組件和數(shù)據(jù)結(jié)構(gòu)等。此外,本領(lǐng)域技術(shù)人員可以理解,上述系統(tǒng)和方法可用各種計算機系統(tǒng)配置實現(xiàn),包括單處理器、多處理器或多核處理器計算機系統(tǒng)、小型計算設(shè)備、大型計算機、以及個人計算機、手持式計算設(shè)備(例如,個人數(shù)字助理(PDA)、電話、手表)、基于微處理器或可編程消費或工業(yè)電子設(shè)備等。各方面也可以在其中任務(wù)由通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行的分布式計算環(huán)境中實現(xiàn)。然而,所要求保護主題的某些方面,如果不是所有方面的話,可以在獨立計算機上實施。在分布式計算環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程存儲器存儲設(shè)備中的一個或兩者中。
[0054]參考圖10,示出了示例通用計算機1010或計算設(shè)備(例如,臺式機、膝上型計算機、服務(wù)器、手持式設(shè)備、可編程消費或工業(yè)電子產(chǎn)品、機頂盒、游戲系統(tǒng)…)。計算機1010包括一個或多個處理器1020、存儲器1030、系統(tǒng)總線1040、大容量存儲1050、以及一個或多個接口組件1070。系統(tǒng)總線1040與至少上述系統(tǒng)組件通信地耦合。然而,可以理解,在其最簡單的形式中,計算機1010可包括耦合到存儲器1030的一個或多個處理器1020,該一個或多個處理器1020執(zhí)行各種計算機可執(zhí)行動作、指令和或組件。
[0055]處理器1020可以用通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)JI場可編程門陣列(FPGA)或其它可編程邏輯器件、分立門或晶體管邏輯、分立硬件組件或被設(shè)計為執(zhí)行此處描述的功能的其任意組合來實現(xiàn)。通用處理器可以是微處理器,但在替換方案中,處理器可以是任何處理器、控制器、微控制器、或狀態(tài)機。處理器1020還可被實現(xiàn)為計算設(shè)備的組合,例如DSP和微處理器的組合、多個微處理器、多核處理器、結(jié)合DSP核的一個或多個微處理器、或任何其它這種配置。
[0056]計算機1010可包括各種計算機可讀介質(zhì)或以其他方式與各種計算機可讀介質(zhì)交互以便于控制計算機1010來實現(xiàn)所要求保護主題的一個或多個方面。計算機可讀介質(zhì)可以是能由計算機1010訪問的任何可用介質(zhì),并包含易失性和非易失性介質(zhì)以及可移動、不可移動介質(zhì)。作為示例而非限制,計算機可讀介質(zhì)可包括計算機存儲介質(zhì)和通信介質(zhì)。
[0057]計算機存儲介質(zhì)包括以用于存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)這樣的信息的任意方法或技術(shù)來實現(xiàn)的易失性和非易失性、可移動和不可移動介質(zhì)。計算機存儲介質(zhì)包括,但不限于,存儲器設(shè)備(例如,隨機存取存儲器(RAM)、只讀存儲器(ROM),電可擦除可編程只讀存儲器(EEPROM)……)、磁存儲設(shè)備(例如,硬盤、軟盤、磁帶盒、磁帶……)、光盤(例如,緊致盤(⑶)、數(shù)字多功能盤(DVD)……)、以及固態(tài)設(shè)備(例如,固態(tài)驅(qū)動器(SSD)、閃存驅(qū)動器(例如,卡、棒、鍵驅(qū)動器……)……)、或者可用于存儲所需信息并且可由計算機1010訪問的任何其他介質(zhì)。
[0058]通信介質(zhì)通常以諸如載波或其他傳輸機制等已調(diào)制數(shù)據(jù)信號來體現(xiàn)計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù),并包括任何信息傳送介質(zhì)。術(shù)語“已調(diào)制數(shù)據(jù)信號”是指使得以在信號中編碼信息的方式來設(shè)定或改變其一個或多個特征的信號。作為示例而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線連接之類的有線介質(zhì),以及諸如聲學(xué)、RF、紅外及其他無線介質(zhì)之類的無線介質(zhì)。上述的任意組合也應(yīng)包含在計算機可讀介質(zhì)的范圍內(nèi)。
[0059]存儲器1030和大容量存儲1050是計算機可讀存儲介質(zhì)的示例。取決于計算設(shè)備的確切配置和類型,存儲器1030可以是易失性的(例如RAM)、非易失性的(例如ROM、閃存)或是兩者的某種組合。作為示例,包括諸如在啟動期間在計算機1010內(nèi)的元件之間傳輸信息的基本例程的基本輸入/輸出系統(tǒng)(BIOS)可被存儲在非易失性存儲器中,而易失性存儲器可擔(dān)當(dāng)外部高速緩存存儲器以便于處理器1020的處理等。
[0060]大容量存儲1050包括相對于存儲器1030用于存儲大量數(shù)據(jù)的可移動/不可移動、易失性/非易失性計算機存儲介質(zhì)。例如,大容量存儲1050包括但不限于,諸如磁盤或光盤驅(qū)動器、軟盤驅(qū)動器、閃存存儲器、固態(tài)驅(qū)動器、或記憶棒等一個或多個設(shè)備。
[0061]存儲器1030和大容量存儲1050可包括或其中存儲有操作系統(tǒng)1060、一個或多個應(yīng)用1062、一個或多個程序模塊1064和數(shù)據(jù)1066。操作系統(tǒng)1060用于控制和分配計算機1010的資源。應(yīng)用1062包括系統(tǒng)和應(yīng)用軟件之一或兩者,并且可利用操作系統(tǒng)1060對資源的管理通過存儲在存儲器1030和/或大容量存儲1050中的程序模塊1064和數(shù)據(jù)1066來執(zhí)行一個或多個動作。因此,應(yīng)用1062可根據(jù)由此提供的邏輯來將通用計算機1010變成專用機器。
[0062]所要求保護主題的全部或各部分可以使用產(chǎn)生控制計算機以實現(xiàn)所公開功能的軟件、固件、硬件或其任意組合的標(biāo)準(zhǔn)編程和/或工程技術(shù)來實現(xiàn)。作為示例而非限制,生成組件110可以是應(yīng)用程序1062或形成應(yīng)用程序1062的一部分,并且包括存儲在存儲器和/或大容量存儲1050中的一個或多個模塊1064和數(shù)據(jù)1066,其功能可以在由所示的一個或多個處理器1020執(zhí)行時實現(xiàn)。
[0063]根據(jù)一個特定實施例,處理器1020可與片上系統(tǒng)(SOC)或在單個集成電路基座上包括(或換言之集成)硬件和軟件的類似體系結(jié)構(gòu)相對應(yīng)。此處,處理器1020可包括至少與處理器1020和存儲器1030相似的一個或多個處理器以及存儲器等。常規(guī)處理器包括最少量的硬件和軟件并且廣泛依賴于外部硬件和軟件。作為對比,處理器的SOC實現(xiàn)更強大,因為它將硬件和軟件嵌入其中以能夠用最少的硬件和軟件或不依賴于外部硬件和軟件來啟用特定功能。例如,生成組件110和/或相關(guān)聯(lián)的功能可被嵌入到SOC體系結(jié)構(gòu)中的硬件內(nèi)。
[0064]計算機1010還包括通信地耦合到系統(tǒng)總線1040并便于與計算機1010的交互的一個或多個接口組件1070。作為示例,接口組件1070可以是端口(例如,串行、并行、PCMCIA、USB、火線…)或接口卡(例如,聲音、視頻…)等等。在一個示例實現(xiàn)中,接口組件1070可被具體化為用戶輸入/輸出接口,該用戶輸入/輸出接口使得用戶能夠通過一個或多個輸入設(shè)備(例如,諸如鼠標(biāo)的定點設(shè)備、跟蹤球、指示筆、觸摸墊、鍵盤、話筒、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀、相機、其他計算機……)來將命令和信息輸入到計算機1010中。在另一示例實現(xiàn)中,接口組件1070可被具體化為輸出外圍接口,該輸出外圍接口向顯示器(例如,CRT、LCD、等離子……)、揚聲器、打印機和/或其他計算機等提供輸出。此外,接口組件1070可被具體化為網(wǎng)絡(luò)接口,該網(wǎng)絡(luò)接口使得能夠諸如通過有線或無線通信鏈路與其它計算設(shè)備(未示出)通信。
[0065]以上所已經(jīng)描述 的內(nèi)容包括所要求保護主題的各方面的示例。當(dāng)然,出于描繪所要求保護主題的目的而描述每一個可以想到的組件或方法的組合是不可能的,但本領(lǐng)域內(nèi)的普通技術(shù)人員應(yīng)該認(rèn)識到,所要求保護主題的許多進一步的組合和排列都是可能的。從而,所公開的主題旨在涵蓋落入所附權(quán)利要求書的精神和范圍內(nèi)的所有這樣的變更、修改和變化。
【權(quán)利要求】
1.一種便于虛擬機鏡像管理的方法,包括: 采用被配置成執(zhí)行存儲在存儲器中的計算機可執(zhí)行指令的至少一個處理器來執(zhí)行以下動作: 標(biāo)識多個虛擬機鏡像間公共的數(shù)據(jù)段;以及 創(chuàng)建包括所述數(shù)據(jù)段的單個實例的主鏡像。
2.如權(quán)利要求1所述的方法,其特征在于,基于所述主鏡像來遷移所述多個虛擬機鏡像的至少一個。
3.如權(quán)利要求1所述的方法,其特征在于,用所述主鏡像將對應(yīng)于所述多個虛擬機鏡像的至少一個的虛擬機遷移到已更新的存儲位置。
4.如權(quán)利要求1所述的方法,其特征在于,對所述多個虛擬機鏡像的至少一個或與所述多個虛擬機鏡像相關(guān)聯(lián)的至少一個虛擬機采用機器學(xué)習(xí)技術(shù)。
5.如權(quán)利要求4所述的方法,其特征在于,還包括: 在與所述多個虛擬機鏡像相關(guān)聯(lián)的至少一個虛擬機離線時調(diào)用第一機器學(xué)習(xí)技術(shù);以及 在與所述多個虛擬機鏡像相關(guān)聯(lián)的至少一個虛擬機的運行時調(diào)用第二機器學(xué)習(xí)技術(shù)。
6.如權(quán)利要求4所述的方法,其特征在于,采用所述機器學(xué)習(xí)技術(shù)以標(biāo)識所述多個虛擬機鏡像間公共的數(shù)據(jù)段。
7.如權(quán)利要求1所述的方法,其特征在于,執(zhí)行同伴壓力技術(shù)來將在所述多個虛擬機鏡像的大部分中發(fā)現(xiàn)的公共數(shù)據(jù)段包括在所述主鏡像中。
8.—種便于創(chuàng)建主鏡像的系統(tǒng),包括: 耦合到存儲器的處理器,所述處理器被配置成執(zhí)行以下存儲在所述存儲器中的計算機可執(zhí)行組件: 第一組件,配置用于從多個虛擬機鏡像生成主鏡像,所述主鏡像包括駐留在所述多個虛擬機鏡像內(nèi)的公共數(shù)據(jù)段的單個實例。
9.如權(quán)利要求8所述的系統(tǒng),其特征在于,還包括第二組件,配置用于評估所述多個虛擬機鏡像以標(biāo)識在所述虛擬機鏡像間共享的數(shù)據(jù)段。
10.如權(quán)利要求8所述的系統(tǒng),其特征在于,還包括: 第三組件,配置用于執(zhí)行同伴壓力技術(shù)以查明哪個公共數(shù)據(jù)段在所述多個虛擬機鏡像的大部分內(nèi);以及 第四組件,配置用于采用機器學(xué)習(xí)技術(shù)以標(biāo)識在所述多個虛擬機鏡像內(nèi)公共數(shù)據(jù)段。
【文檔編號】G06F9/06GK103493008SQ201280016723
【公開日】2014年1月1日 申請日期:2012年4月6日 優(yōu)先權(quán)日:2011年4月7日
【發(fā)明者】A·薩格維, S·巴拉克里什南, V·庫巴利姆特, A·溫貝格, S·帕塔薩拉蒂, J·芬尼根 申請人:微軟公司