專利名稱:搜索虛擬資源的位置的方法、裝置和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種搜索資源的位置的方法和系統(tǒng),尤其涉及在大規(guī)模的計(jì)算系統(tǒng)環(huán) 境(例如,云計(jì)算環(huán)境)中搜索虛擬資源的位置的方法和系統(tǒng)。
背景技術(shù):
云計(jì)算是一種新的計(jì)算形式,其在互連網(wǎng)上提供動(dòng)態(tài)可擴(kuò)展的、往往是虛擬的資 源作為服務(wù)提供給用戶。用戶不需要知道、掌握或控制支持他們的“云”內(nèi)部的技術(shù)基礎(chǔ)結(jié) 構(gòu)。云計(jì)算的主要基礎(chǔ)是由數(shù)據(jù)中心提供的、使用不同層次的虛擬化技術(shù)建立在服務(wù)器上 的可靠服務(wù)構(gòu)成。所述服務(wù)可以在提供網(wǎng)絡(luò)接入的任何地方獲取。對于所有的用戶計(jì)算需 求而言,“云”常常可被看作單個(gè)接入點(diǎn)。圖1示出一個(gè)云計(jì)算中心的示例。在圖1的示例中,相互連接的多個(gè)服務(wù)器101 構(gòu)成一個(gè)云計(jì)算中心100。多個(gè)終端200可以接入云計(jì)算中心100,以得到“云”提供的計(jì) 算服務(wù)。這種云計(jì)算中心已經(jīng)在商業(yè)上有了廣泛應(yīng)用。例如,Amazon提供的亞馬遜彈性計(jì) 算云(Amazon Elastic Compute Cloud,也稱為EC2)是一種商業(yè)的云計(jì)算服務(wù),其允許用戶 租用計(jì)算機(jī)來運(yùn)行他們自己的計(jì)算機(jī)應(yīng)用程序。EC2允許可擴(kuò)展的應(yīng)用部署,用戶可以通過 EC2提供的網(wǎng)頁服務(wù)界面來自己創(chuàng)建虛擬機(jī),例如創(chuàng)建一個(gè)服務(wù)器實(shí)例,在服務(wù)器實(shí)例上用 戶可以加載任何選擇的軟件。用戶可以根據(jù)需要產(chǎn)生、啟動(dòng)、結(jié)束服務(wù)器實(shí)例,按小時(shí)為運(yùn) 行的服務(wù)器付費(fèi),由此稱之為“彈性”的。關(guān)于EC2的進(jìn)一步詳細(xì)內(nèi)容,可以參見Amazon, com 提供的 Amazon Web Services (AWS)。此夕卜,Microsoft 提供的 Azure Sevice Platform 也是一種云計(jì)算平臺(tái),其提供了廣泛的互聯(lián)網(wǎng)服務(wù)。MicroSoflSalesforce等也都提供各 自的云計(jì)算服務(wù)。云計(jì)算中心往往是通過集中部署在一個(gè)或者若干個(gè)數(shù)據(jù)中心中的通過網(wǎng)絡(luò)相互 連接的大量物理服務(wù)器來實(shí)現(xiàn)的。例如,提供云計(jì)算服務(wù)的某個(gè)供應(yīng)商可以在一個(gè)數(shù)據(jù)中 心內(nèi)部署幾千甚至幾萬臺(tái)物理服務(wù)器來實(shí)現(xiàn)一個(gè)云計(jì)算中心。在上述的大規(guī)模云計(jì)算中心中,常常需要尋找某個(gè)物理服務(wù)器或某個(gè)虛擬機(jī)的位 置。例如,當(dāng)為某個(gè)用戶提供云計(jì)算服務(wù)的虛擬機(jī)出現(xiàn)故障時(shí),管理員希望能夠知道該虛擬 機(jī)的具體位置在哪里。還例如,當(dāng)某個(gè)物理機(jī)因故障而宕機(jī)時(shí),管理員也希望能夠找到該物 理機(jī)的具體位置。然而,云計(jì)算中心的物理服務(wù)器常常被移動(dòng)以便重新部署,物理服務(wù)器以及其上 的虛擬機(jī)的位置也會(huì)被移動(dòng)。即使管理員忠實(shí)地記錄每一次移動(dòng)物理服務(wù)器之后的新位置 信息,當(dāng)移動(dòng)次數(shù)越來越多時(shí),管理員容易出錯(cuò)從而導(dǎo)致失去某個(gè)物理機(jī)的位置;此外,記 錄并更新每個(gè)物理服務(wù)器的位置對于管理員來說也是個(gè)很大的負(fù)擔(dān),尤其是數(shù)據(jù)中心的規(guī) 模很大時(shí),這個(gè)任務(wù)幾乎是不可完成的。例如,根據(jù)某個(gè)大型數(shù)據(jù)中心的報(bào)告,它的數(shù)據(jù)中 心中已經(jīng)有相當(dāng)比例的物理服務(wù)器無法被確定其精確位置,盡管整個(gè)云計(jì)算中心仍然在正 常工作。在云計(jì)算中心,不僅物理服務(wù)器的位置可以頻繁地移動(dòng),物理服務(wù)器上的虛擬機(jī)也可以動(dòng)態(tài)地建立、已遷移、整合等,因此物理機(jī)和虛擬機(jī)的位置都在變化,導(dǎo)致現(xiàn)有技術(shù) 難以令人滿意地提供所需的定位服務(wù)。例如,美國專利US7180422公開了一種資產(chǎn)管理方法和設(shè)備,其中通過把邏輯標(biāo) 簽(L-tag)和物理標(biāo)簽(P-tag)附加到目標(biāo)裝置上來管理目標(biāo)裝置,其中物理標(biāo)簽包括計(jì) 算機(jī)的物理地址信息等,邏輯標(biāo)簽包括諸如計(jì)算機(jī)的名稱、IP地址等,使用RFID作為標(biāo)簽。 但是,上述方法僅能夠跟蹤實(shí)體計(jì)算機(jī)的物理和邏輯屬性,并不適用于虛擬服務(wù)器,也無法 提供關(guān)于虛擬服務(wù)器的任何信息。此外,由于使用RFID作為標(biāo)簽,需要使用額外的RFID讀 取器,而且讀取器必須與RFID的距離不能太遠(yuǎn),因此工作范圍受到限制。還例如,美國專利US7436303描述了一種用來跟蹤硬件設(shè)備的機(jī)架傳感器控制器 設(shè)備。每一個(gè)機(jī)架傳感器控制器上都有一個(gè)內(nèi)存空間,用于存儲(chǔ)機(jī)架的位置,以及多個(gè)傳 感器的信息,這些傳感器上會(huì)安裝一個(gè)RFID的讀取器,可以用來讀取機(jī)架里每個(gè)設(shè)備上的 RFID標(biāo)識(shí)。機(jī)架傳感器控制器上還有一個(gè)處理器,用于歸總整個(gè)機(jī)架的設(shè)備信息,并附加 上機(jī)架的位置信息,用于轉(zhuǎn)發(fā)給外部應(yīng)用程序讀取。但是,上述專利中的傳感器安裝在機(jī)架 上,機(jī)架的位置相對固定,很少會(huì)出現(xiàn)移動(dòng)改變,因此難以適應(yīng)于服務(wù)器可以隨意移動(dòng)的動(dòng) 態(tài)數(shù)據(jù)中心機(jī)房環(huán)境(例如,云計(jì)算中心的物理服務(wù)器可以被移動(dòng))。此外,上述專利使用 RFID技術(shù),每個(gè)RFID是被動(dòng)的,不具備通信和計(jì)算能力,需要額外的RFID讀取器,并因此受 到RFID讀取器的通信范圍的限制。
發(fā)明內(nèi)容
本發(fā)明旨在提供一種在大規(guī)模計(jì)算環(huán)境(例如云計(jì)算環(huán)境)中搜索虛擬資源的位 置的方法和系統(tǒng),尤其涉及搜索虛擬機(jī)(VM)的位置的方法和系統(tǒng),以解決現(xiàn)有技術(shù)中存在 的技術(shù)問題。本發(fā)明提供一種用于搜索虛擬資源的位置的方法,所述虛擬資源部署在至少一個(gè) 服務(wù)器上,其中每個(gè)服務(wù)器都附有一個(gè)傳感器并與其通信,所述傳感器相互通信以組成通 信網(wǎng)絡(luò),每個(gè)傳感器存儲(chǔ)有與該傳感器連接的服務(wù)器中的虛擬資源的標(biāo)識(shí)符以及該傳感器 的位置信息,所述方法包括所述傳感器接收搜索請求,搜索請求包含目標(biāo)虛擬資源的標(biāo)識(shí) 符;在所述傳感器組成的通信網(wǎng)絡(luò)中傳輸所述搜索請求;存儲(chǔ)有所述目標(biāo)虛擬資源的標(biāo)識(shí) 符的傳感器返回自身的位置信息。本發(fā)明還提供有一種管理數(shù)據(jù)計(jì)算系統(tǒng)中的虛擬資源的位置的方法,其中數(shù)據(jù)計(jì) 算系統(tǒng)包括多個(gè)服務(wù)器,至少一個(gè)服務(wù)器上部署有虛擬資源,其中每個(gè)服務(wù)器上安裝有一 個(gè)傳感器,所述多個(gè)傳感器組成通信網(wǎng)絡(luò),所述方法包括在每個(gè)傳感器中存儲(chǔ)與該傳感器 連接的服務(wù)器中的虛擬資源的信息;在每個(gè)傳感器中存儲(chǔ)該傳感器的位置信息;基于每個(gè) 傳感器的位置信息和每個(gè)傳感器的虛擬資源信息,顯示每個(gè)虛擬資源的位置信息。本發(fā)明還提供有一種數(shù)據(jù)計(jì)算系統(tǒng),包括多個(gè)服務(wù)器,至少一個(gè)服務(wù)器上部署 有虛擬資源;多個(gè)傳感器,每個(gè)傳感器安裝到一個(gè)服務(wù)器上;其中每個(gè)傳感器包括通信單 元,用于與其它傳感器的通信單元通信以使所述多個(gè)傳感器組成傳感器網(wǎng)絡(luò),所述通信單 元還用于接收搜索請求,所述搜索請求包含目標(biāo)虛擬資源的標(biāo)識(shí)符;位置信息計(jì)算單元,用 于計(jì)算并存儲(chǔ)該傳感器的位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝的服 務(wù)器通信,以獲取該服務(wù)器上部署的虛擬資源的標(biāo)識(shí)符;虛擬資源信息存儲(chǔ)單元,用于存儲(chǔ)虛擬資源信息獲取單元獲取的虛擬資源信息;虛擬資源信息搜索單元,用于搜索所述虛擬 資源信息存儲(chǔ)單元以查找目標(biāo)虛擬資源的標(biāo)識(shí)符,如果搜索到目標(biāo)虛擬資源的標(biāo)識(shí)符,返 回所述位置信息計(jì)算單元計(jì)算的位置信息。本發(fā)明還提供一種傳感器,用于被安裝到服務(wù)器上,所述服務(wù)器上部署有虛擬資 源,所述傳感器包括通信單元,用于與其它傳感器的通信單元通信以使所述傳感器和其它 傳感器組成傳感器網(wǎng)絡(luò),所述通信單元還用于接收用于搜索所述虛擬資源的搜索請求,所 述搜索請求包含目標(biāo)虛擬資源的標(biāo)識(shí)符;位置信息計(jì)算單元,用于計(jì)算并存儲(chǔ)該傳感器的 位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝在的服務(wù)器通信,以獲取該服務(wù) 器上部署的虛擬資源的標(biāo)識(shí)符;虛擬資源信息存儲(chǔ)單元,用于存儲(chǔ)虛擬資源信息獲取單元 獲取的虛擬資源信息;虛擬資源信息搜索單元,用于搜索所述虛擬資源信息存儲(chǔ)單元以查 找目標(biāo)虛擬資源的標(biāo)識(shí)符,如果搜索到目標(biāo)虛擬資源的標(biāo)識(shí)符,返回所述位置信息計(jì)算單 元計(jì)算的位置信息。本發(fā)明還提供有一種用于搜索數(shù)據(jù)計(jì)算系統(tǒng)中的虛擬資源的位置的終端搜索裝 置,其中所述數(shù)據(jù)計(jì)算系統(tǒng)包括多個(gè)服務(wù)器,每個(gè)服務(wù)器與一個(gè)傳感器相連接,所述傳感器 組成通信網(wǎng)絡(luò),以及至少一個(gè)服務(wù)器上部署有所述虛擬資源,所述終端搜索裝置包括虛擬 資源搜索請求輸入單元,用于輸入對目標(biāo)虛擬資源的搜索請求,所述搜索請求包括目標(biāo)虛 擬資源的標(biāo)識(shí)符;通信單元,用于與所述多個(gè)傳感器中的至少一個(gè)傳感器通信,以把搜索請 求發(fā)送給該傳感器;位置信息計(jì)算單元,用于計(jì)算并存儲(chǔ)所述終端裝置的位置;路徑計(jì)算 單元,用于基于傳感器返回的目標(biāo)虛擬資源的位置信息,計(jì)算從終端裝置的位置到目標(biāo)虛 擬資源的路徑;顯示單元,用于顯示路徑計(jì)算單元所計(jì)算的路徑信息。優(yōu)選地,所述多個(gè)傳感器組成的是ad-hoc無線網(wǎng)絡(luò)。優(yōu)選地,每個(gè)傳感器存儲(chǔ)與該傳感器連接的服務(wù)器中的虛擬資源的信息包括,指 示虛擬資源的至少一個(gè)以下狀態(tài)的信息存活、不活躍。優(yōu)選地,在所述計(jì)算系統(tǒng)所在的建筑物內(nèi)部署多個(gè)基準(zhǔn)信號源,通過同基準(zhǔn)信號 源通信來計(jì)算臨近基準(zhǔn)信號源的傳感器的位置信息,其余傳感器節(jié)點(diǎn)的位置可以通過和已 經(jīng)獲取位置信息的傳感器節(jié)點(diǎn)進(jìn)行通訊獲取。
圖1示出一個(gè)云計(jì)算中心的示例。圖2示出物理服務(wù)器上部署的虛擬機(jī)。圖3示出部署虛擬機(jī)和本發(fā)明的傳感器的物理服務(wù)器的示例。圖4示出本發(fā)明的傳感器的基本結(jié)構(gòu)。圖5示出本發(fā)明的傳感器組成的傳感器網(wǎng)絡(luò)。圖6示出傳感器中的虛擬機(jī)信息列表的一個(gè)示例。圖7示出本發(fā)明的搜索虛擬機(jī)的方法的示例流程圖。圖8示出用于實(shí)現(xiàn)圖7所示的方法流程的示例系統(tǒng)。圖9示出本發(fā)明的搜索裝置的示例結(jié)構(gòu)。圖10出本發(fā)明的管理數(shù)據(jù)計(jì)算系統(tǒng)中的虛擬機(jī)位置的方法的示例流程圖。
具體實(shí)施例方式以下結(jié)合附圖來詳細(xì)說明本發(fā)明的具體實(shí)施例。圖2示出一個(gè)常規(guī)的物理服務(wù)器200以及部署在服務(wù)器上的虛擬機(jī)204-206。圖2所示的物理服務(wù)器200具有硬件201、操作系統(tǒng)202、管理程序203、以及多個(gè) 虛擬機(jī) 204、205、206。硬件201可以包括常規(guī)的中央處理器、存儲(chǔ)器、I/O接口、總線等。此外,硬件提供 商也開發(fā)了提供虛擬機(jī)支持的各種硬件,例如AMD-V、Alcatel-Lucent 3B20D/3B21D、IBM System/370, System/390, zSeries mainframes> Sun Microsystems。操作系統(tǒng)202可以是各種已有的操作系統(tǒng),例如Solaris Zones、Linux OS、 FreeBSD OS 等。管理程序(Hyperviser) 203是用于管理多個(gè)虛擬機(jī)(VM)的應(yīng)用程序。盡管在圖2 所示的示例中管理程序203和操作系統(tǒng)202是分離的,但在某些直接支持虛擬機(jī)的操作系 統(tǒng)中,管理程序203可以實(shí)現(xiàn)在操作系統(tǒng)202中。多個(gè)虛擬機(jī)204-206可以是系統(tǒng)虛擬機(jī)(system VM),其提供完整的系統(tǒng)平臺(tái)以 進(jìn)一步其上的操作系統(tǒng)的運(yùn)行。系統(tǒng)虛擬機(jī)的一個(gè)示例是Solaris Containers.替換地, 虛擬機(jī)204可以是處理虛擬機(jī)(process VM),其被設(shè)計(jì)為運(yùn)行單個(gè)程序,從而支持單個(gè)處 理。例如,處理虛擬機(jī)的一個(gè)示例是Java Virtual Machine。虛擬機(jī)的本質(zhì)特征在于其中 運(yùn)行的軟件被限制在虛擬機(jī)所提供的資源和抽象內(nèi),不能突破其虛擬邊界。虛擬機(jī)204-206 可以根據(jù)需要?jiǎng)討B(tài)地創(chuàng)建、消除、遷移、整合等等。應(yīng)當(dāng)指出,本發(fā)明說明書中的“虛擬機(jī)”應(yīng)當(dāng)被廣義理解為物理服務(wù)器上部署的任 何虛擬資源(即,軟資源),例如,在同一物理服務(wù)器上部署的多個(gè)操作系統(tǒng)或多個(gè)用戶空 間,在物理服務(wù)器上部署的web服務(wù)程序、ftp服務(wù)程序、email服務(wù)程序、提供其它服務(wù)或 代理的應(yīng)用程序等。管理程序203管理虛擬機(jī)204的創(chuàng)建、消除、遷移等,為虛擬機(jī)204分配資源、釋 放資源、并且跟蹤記錄每個(gè)虛擬機(jī)的狀態(tài)。例如,在創(chuàng)建一個(gè)虛擬機(jī)時(shí),管理程序203為虛 擬機(jī)分配一個(gè)唯一標(biāo)識(shí)符VMid,以用于標(biāo)識(shí)該虛擬機(jī)。根據(jù)用戶的需要,管理程序203還可 以為每個(gè)創(chuàng)建虛擬機(jī)分配資源,包括多大空間的存儲(chǔ)器、多少個(gè)計(jì)算單元、多少位的處理器 (例如32-bit或64bit)、1/0吞吐性能等。虛擬機(jī)204被消除時(shí),管理程序203釋放為其 分配的資源。當(dāng)虛擬機(jī)204從一個(gè)物理服務(wù)器遷移到另一個(gè)物理服務(wù)器時(shí),原始的物理服 務(wù)器釋放該虛擬機(jī)204的資源,新的物理服務(wù)器為該虛擬機(jī)204分配新的資源。根據(jù)本發(fā) 明的一個(gè)實(shí)施例,當(dāng)虛擬機(jī)204消除時(shí),為其分配的標(biāo)識(shí)符VMid被保留,不被其它重新創(chuàng)建 的虛擬機(jī)所使用。根據(jù)本發(fā)明的另一個(gè)實(shí)施例,當(dāng)虛擬機(jī)204從一個(gè)物理服務(wù)器遷移到另 一個(gè)物理服務(wù)器時(shí),新的物理服務(wù)器為虛擬機(jī)分配新的VMid,而不使用原始的VMid。這樣可 以保證VMid和虛擬機(jī)204之間的唯一的對應(yīng)關(guān)系。圖3示出部署了虛擬機(jī)和根據(jù)本發(fā)明的傳感器的服務(wù)器示例。圖3的服務(wù)器300包括硬件301、操作系統(tǒng)302、管理程序303、多個(gè)虛擬機(jī) 304-306、傳感器 310。圖3所示的硬件301、操作系統(tǒng)302、管理程序303、多個(gè)虛擬機(jī)304-306與圖2所 示的硬件201、操作系統(tǒng)202、管理程序203、多個(gè)虛擬機(jī)204-206基本相同,在此不再贅述。
圖3的傳感器310用于獲取服務(wù)器300中關(guān)于虛擬機(jī)304-306的信息。具體而言, 可以在管理程序303中設(shè)置代理程序(agent)307。代理程序307用于監(jiān)控并維護(hù)服務(wù)器 300上的虛擬機(jī)304-306的相關(guān)信息,并把與虛擬機(jī)304-306相關(guān)的存儲(chǔ)信息發(fā)送給傳感器 310。傳感器310可以與硬件301相互通信以得到代理程序307發(fā)送的與虛擬機(jī)304-306 相關(guān)的信息。根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施方式,傳感器310可以定期向代理程序307發(fā)送 請求,獲取當(dāng)前關(guān)于虛擬機(jī)的最新信息。根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施方式,傳感器310可以以無線通信方式與硬件301交 互??商鎿Q地,傳感器310也可以通過有線連接與硬件301交互。應(yīng)當(dāng)指出,盡管在圖3所示的實(shí)施例中,傳感器310被實(shí)現(xiàn)為服務(wù)器300的組成部 分。然而,本發(fā)明不限于此。在替換實(shí)施例中,傳感器310與服務(wù)器300各自獨(dú)立地實(shí)現(xiàn)。 傳感器310可以被固定到服務(wù)器300,并通過無線通信技術(shù)與服務(wù)器300交互。圖4示出傳感器310的基本結(jié)構(gòu)示圖。圖4所示的傳感器310包括通信單元4001、虛擬機(jī)信息搜索單元4002、存儲(chǔ)器 4003、虛擬機(jī)信息獲取單元4006、位置信息計(jì)算單元4007、電源4008。通信單元4001用于與其它傳感器通信。根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,多個(gè)傳 感器310能夠組成無線ad hoc通信網(wǎng)絡(luò)。無線ad hoc網(wǎng)絡(luò)是一種自組織的去中心化 (decentralized)無線網(wǎng)絡(luò)。每個(gè)節(jié)點(diǎn)的位置可以動(dòng)態(tài)改變,整個(gè)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)也隨之動(dòng) 態(tài)改變。無線ad hoc網(wǎng)絡(luò)中的每個(gè)節(jié)點(diǎn)都可以為其它節(jié)點(diǎn)轉(zhuǎn)發(fā)數(shù)據(jù),從而實(shí)現(xiàn)整個(gè)無線網(wǎng) 絡(luò)的連通性。應(yīng)當(dāng)指出,通過通信單元4001,多個(gè)傳感器310能夠組成一個(gè)獨(dú)立的網(wǎng)絡(luò)。即使傳 感器310所在的服務(wù)器300出現(xiàn)故障,也不影響傳感器310之間的相互通信。圖4所示的傳感器310及其組成的傳感器網(wǎng)絡(luò)可以利用已有的傳感器商業(yè)產(chǎn)品來 實(shí)現(xiàn)。例如,在Crossbow公司開發(fā)的傳感器產(chǎn)品MICA2 的基礎(chǔ)上實(shí)現(xiàn)本發(fā)明的傳感 器。此外,CAS(中科院)、HIT(哈工大)也已研發(fā)出相關(guān)的傳感器產(chǎn)品。當(dāng)然本領(lǐng)域技術(shù) 人員完全可以選用其它現(xiàn)有的適合本發(fā)明的傳感器產(chǎn)品。圖5示出傳感器310通過通信單元4001而組成的ad_hoc網(wǎng)絡(luò)500。圖5所示的傳感器網(wǎng)絡(luò)500包括傳感器1-6。所述網(wǎng)絡(luò)500是自適應(yīng)性的,即可以 適應(yīng)各個(gè)傳感器的移動(dòng)而重新組網(wǎng)。通過相鄰的一個(gè)或多個(gè)傳感器轉(zhuǎn)發(fā)消息,源傳感器可 以向任意目標(biāo)傳感器發(fā)送/接收消息。例如,傳感器2向傳感器5發(fā)送消息時(shí),路由路徑 傳感器2-傳感器3-傳感器4-傳感器5。Ad-hoc無線網(wǎng)絡(luò)支持各種路由算法以實(shí)現(xiàn)網(wǎng)絡(luò)內(nèi)各個(gè)節(jié)點(diǎn)之間的通信。例如,按 需路由(On-demand Routing)算法包括Multirate Ad-hoc On-demand Distance Vector Routing Protocol ;予頁 (Proactive routing) :AWDS(Ad-hoc Wireless Distribution Service)、HSR(Hierarchical State Routing protocol)等;還可以米用自 適應(yīng)(Adaptive)路由算法。優(yōu)選地,本發(fā)明采用的ad-hoc網(wǎng)絡(luò)可以為無線網(wǎng)狀網(wǎng)(wireless mesh network, WMN)。WMN是一種特殊的ad-hoc無線網(wǎng)絡(luò),其中各個(gè)節(jié)點(diǎn)以網(wǎng)狀拓?fù)涠M織為通信網(wǎng)絡(luò)。 WMN中的節(jié)點(diǎn)可以是筆記本、移動(dòng)電話或其它無線裝置,例如傳感器。WMN可以利用各種無 線通信協(xié)議實(shí)現(xiàn),例如包括802. 11,802. 16等或其組合。應(yīng)當(dāng)指出,本發(fā)明的傳感器網(wǎng)絡(luò)500并不限于任何一種特定網(wǎng)絡(luò),只要能夠?qū)崿F(xiàn)傳感器之間的相互通信即可。參見圖4,傳感器310包括的虛擬機(jī)信息獲取單元4006用于管理虛擬機(jī)信息。具 體而言,虛擬機(jī)信息獲取單元4006與服務(wù)器300中的代理程序307 (參見圖3)通信以得到 服務(wù)器300上的虛擬機(jī)304-306的信息。虛擬機(jī)信息獲取單元4006把獲取的虛擬機(jī)信息 存儲(chǔ)在存儲(chǔ)器4003。存儲(chǔ)器4003中保存虛擬機(jī)信息列表4004,其中存儲(chǔ)與傳感器310對 應(yīng)的服務(wù)器300中的所有虛擬機(jī)的相關(guān)信息。圖6示出虛擬機(jī)信息列表4004的一個(gè)示例。如圖6所示,VMid作為虛擬機(jī)信息列表4004的索弓丨。VMid可以由管理員定義。為 了簡化說明,在本發(fā)明的實(shí)施例中,在圖6示出標(biāo)識(shí)符為0001、0002、0003、0004、0005的5 個(gè)VMid。應(yīng)當(dāng)指出,VMid的組成并不限于十進(jìn)制數(shù)字,還可以包括十六進(jìn)制數(shù)字、或字母及 其它字符以及其組合。此外,VMid的長度也可以根據(jù)需要進(jìn)行調(diào)整。例如,根據(jù)數(shù)據(jù)中心所 包含的物理服務(wù)器的數(shù)量來設(shè)定VMid的長度,以便保證每個(gè)虛擬機(jī)能夠被分配唯一的標(biāo)識(shí) 符。此夕卜,當(dāng)VMid不能被循環(huán)使用時(shí),即,當(dāng)某個(gè)虛擬機(jī)被消除時(shí)其VMid也被保留,VMid的空 間應(yīng)該足夠大。圖6還示出與VMid對應(yīng)的屬性。例如,第一列ServerID是服務(wù)器標(biāo)識(shí)符(Srvl), 用于標(biāo)識(shí)與VMid對應(yīng)的服務(wù)器(Server 1)。第二列Status是狀態(tài)標(biāo)識(shí)符,用于標(biāo)識(shí)該虛擬 機(jī)當(dāng)前的狀態(tài)。例如,status可以包括至少如下狀態(tài)Live (存活)、Termintated (終結(jié)) 等。Live狀態(tài)表示該虛擬機(jī)當(dāng)前仍然駐留在該物理服務(wù)器上正常工作。Termintated狀態(tài) 表示該虛擬機(jī)已經(jīng)從該物理服務(wù)器上消除。以上僅為虛擬機(jī)信息列表4004的虛擬機(jī)狀態(tài)status的基本示例。本領(lǐng)域的技術(shù) 人員能夠理解,可以根據(jù)具體應(yīng)用的需要來定義虛擬機(jī)的其它狀態(tài)。例如,根據(jù)替換實(shí)施例,還可以定義Inactive(不活躍)狀態(tài),表示無法監(jiān)測到某 個(gè)虛擬機(jī)的狀態(tài)。Inactive狀態(tài)可以用于虛擬機(jī)或物理服務(wù)器故障的情況。假設(shè)傳感器 310定期地向服務(wù)器300發(fā)送請求來查詢各個(gè)虛擬機(jī)的最新狀態(tài)信息,如果物理服務(wù)器300 發(fā)生故障(例如物理服務(wù)器宕機(jī)),則傳感器310無法得到該物理服務(wù)器300上的任何虛擬 機(jī)的信息。經(jīng)過預(yù)定時(shí)間、或者經(jīng)過預(yù)定次數(shù)的查詢后,如果仍無法獲得虛擬機(jī)的信息,則 傳感器310把該物理服務(wù)器300的所有虛擬機(jī)的狀態(tài)設(shè)置為Inactive。類似地,當(dāng)某個(gè)虛 擬機(jī)出現(xiàn)故障(未正常地終結(jié))時(shí),傳感器310也把該虛擬機(jī)的狀態(tài)設(shè)置為Inactive。根據(jù)替換實(shí)施例,還可以在虛擬機(jī)信息列表4004中定義虛擬機(jī)的Moved (已遷移) 狀態(tài)。Moved狀態(tài)表示該虛擬機(jī)已經(jīng)從該物理服務(wù)器遷移到其它服務(wù)器。此外,可以進(jìn)一 步在虛擬機(jī)列表4004中保存該虛擬機(jī)所遷移到的目標(biāo)服務(wù)器的相關(guān)信息,例如,目標(biāo)服務(wù) 器的標(biāo)識(shí)符,遷移后為該虛擬機(jī)分配的新的標(biāo)識(shí)符VMid等。在實(shí)際應(yīng)用中,如果管理員對 已遷移(Moved)的虛擬機(jī)和終結(jié)(Terminated)的虛擬機(jī)的位置并不感興趣,狀態(tài)為已遷移 (Moved)的虛擬機(jī)和終結(jié)(Terminated)的虛擬機(jī)的信息可以從虛擬機(jī)信息列表4004中刪 除,以節(jié)省存儲(chǔ)空間。應(yīng)當(dāng)指出以上僅示例性地說明虛擬機(jī)信息列表4004。虛擬機(jī)信息列表4004是可 以擴(kuò)展的,用戶可以根據(jù)需要在虛擬機(jī)信息列表4004中保存虛擬機(jī)的更加詳細(xì)的信息,包 括虛擬機(jī)創(chuàng)建時(shí)間、虛擬機(jī)的用戶、虛擬機(jī)占用的資源、虛擬機(jī)的權(quán)限等級等。根據(jù)本發(fā)明的實(shí)施例,為了定位虛擬機(jī)的位置,虛擬機(jī)信息列表4004至少應(yīng)當(dāng)指示虛擬機(jī)是否駐留在相應(yīng)的物理服務(wù)器上。因此,僅需檢索虛擬機(jī)信息列表4004的索引 VMid,即可知曉某個(gè)虛擬機(jī)是否在該物理服務(wù)器上。再次參見圖4,傳感器310還包括虛擬機(jī)信息獲取單元4006。虛擬機(jī)信息獲取單元4006與傳感器310所連接的服務(wù)器300通信,從服務(wù)器300 接收關(guān)于服務(wù)器300上的虛擬機(jī)304-306的信息。優(yōu)選地,傳感器310的虛擬機(jī)信息獲取 單元4006和服務(wù)器300無線通信。虛擬機(jī)信息獲取單元4006可以被動(dòng)地接收服務(wù)器300中的代理程序307發(fā)送的 數(shù)據(jù)??商鎿Q地,虛擬機(jī)信息獲取單元4006可以主動(dòng)地向服務(wù)器300請求虛擬機(jī)的相關(guān)信 息。虛擬機(jī)信息獲取單元4006還可以周期性地向服務(wù)器300發(fā)送請求,并把服務(wù)器300返 回的虛擬機(jī)信息寫入到虛擬機(jī)信息列表4004,從而虛擬機(jī)信息列表4004能夠保持所有虛 擬機(jī)的更新信息,包括新虛擬機(jī)的創(chuàng)建、老虛擬機(jī)的消除、遷移等。參見圖4,傳感器310還包括位置信息計(jì)算單元4007。位置信息計(jì)算單元4007用 于計(jì)算并存儲(chǔ)傳感器310自身的位置,從而得到包含該傳感器的服務(wù)器300的位置。常規(guī)的GPS定位技術(shù)并不適合用于計(jì)算傳感器310的位置,這是因?yàn)楸景l(fā)明主要 應(yīng)用在大規(guī)模、高密度的數(shù)據(jù)中心。首先,GPS定位技術(shù)需要接收衛(wèi)星信號,而數(shù)據(jù)中心被 部署在建筑物內(nèi)部,建筑物內(nèi)部有些地方信號質(zhì)量不理想會(huì)導(dǎo)致GPS定位失效。此外,GPS 定位技術(shù)提供的精度不足以準(zhǔn)確地計(jì)算傳感器310的位置。在大規(guī)模數(shù)據(jù)中心內(nèi),單個(gè)機(jī) 架上往往可以安裝成百上千臺(tái)服務(wù)器300,因此相鄰服務(wù)器300之間的距離很小,需要能夠 提供更高精度的定位技術(shù)。位置信息計(jì)算單元4007可以采用各種方法來實(shí)現(xiàn)在建筑物內(nèi)部的高精度定位。 例如,定位方法的原理可以是三角測量法、單邊測量法、或多邊測量法。此外,根據(jù)是否有 “錨點(diǎn)”,可以大致地把定位方法分為兩類無錨點(diǎn)算法和有錨點(diǎn)算法。無錨點(diǎn)算法中,無需 預(yù)先設(shè)置的位置信息,僅根據(jù)局部距離值來定位。已公開的此類算法有例如AFL算法和ABC 算法。有錨點(diǎn)算法依賴于某些已知座標(biāo)位置的節(jié)點(diǎn)。這種定位算法需要預(yù)先定位多個(gè)錨點(diǎn)。 位置信息計(jì)算單元4007通過計(jì)算接收信號的強(qiáng)度、接收信號的到達(dá)時(shí)間差、或通過天線估 計(jì)接收信號的到達(dá)角度等,來計(jì)算自身的位置信息。根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施方式,在數(shù)據(jù)中心所在的建筑物內(nèi)提供多個(gè)錨點(diǎn)(基 準(zhǔn)信號源),其位置固定并且座標(biāo)已知。多個(gè)基準(zhǔn)信號源能夠覆蓋整個(gè)建筑物內(nèi)的傳感器節(jié) 點(diǎn),從而每個(gè)傳感器接收多個(gè)基準(zhǔn)信號源的信號,并利用基準(zhǔn)信號源的座標(biāo)來計(jì)算自己的 精確位置。在另一種替換實(shí)施方式中,基準(zhǔn)信號源不必覆蓋整個(gè)建筑物,從而降低對基準(zhǔn)信 號源的通信范圍的要求。然后,計(jì)算基準(zhǔn)信號源所覆蓋部分的傳感器的精確位置,再以此遞 推得到其它傳感器的位置。基準(zhǔn)信號源也可以由被固定位置且座標(biāo)已知的傳感器310來實(shí)現(xiàn)。應(yīng)當(dāng)指出,本發(fā)明并不局限于任何特定的方法來來定位傳感器310的精確位置。 例如,本發(fā)明可以采用無錨點(diǎn)的定位方法,即,不需要固定錨點(diǎn)。關(guān)于ad-hoc無線網(wǎng)絡(luò)中的 分布式定位方法的進(jìn)一步信息可以參見Distributed localization in wireless sensor networks :a quantitative comparison, Computer Networks 43(2003)499-518, Koen Langendoen,etc.盡管在圖4所示的示例中,每個(gè)傳感器310通過位置信息計(jì)算單元4007來計(jì)算自身位置信息的功能,即,傳感器310的位置信息計(jì)算是分布式進(jìn)行的,但是本發(fā)明不限于 此,傳感器310的位置信息可以在外部集中式進(jìn)行計(jì)算,然后把計(jì)算結(jié)果發(fā)送給各個(gè)傳感 器 310。在位置信息計(jì)算單元4007計(jì)算出傳感器310的位置之后,位置信息計(jì)算單元4007 把傳感器310的位置信息保存在存儲(chǔ)器4003中。存儲(chǔ)器4003在位置信息存儲(chǔ)單元4005 中保存位置信息計(jì)算單元4007輸入的位置信息。在服務(wù)器300頻繁移動(dòng)的情況下,位置信息計(jì)算單元4007可以周期性地計(jì)算位置 信息,這樣,即使傳感器310隨著服務(wù)器300移動(dòng),位置信息存儲(chǔ)單元4005也能夠保存?zhèn)鞲?器310和服務(wù)器300的更新位置信息。另一方面,如果服務(wù)器300不頻繁移動(dòng),則位置信息 計(jì)算單元可以僅在初始化時(shí)計(jì)算傳感器310的位置信息,或者在接收到指令(例如Reset 指令)時(shí)計(jì)算傳感器310的位置信息。盡管在圖4所示的示例中,位置信息存儲(chǔ)單元4005和虛擬機(jī)信息列表4004分離 地實(shí)現(xiàn),在替換實(shí)施方式中,位置信息存儲(chǔ)單元4005和虛擬機(jī)信息列表4004可以聯(lián)合地實(shí) 現(xiàn),即把傳感器310(即,服務(wù)器300)的位置信息與傳感器存儲(chǔ)的虛擬機(jī)信息記錄在一起。 例如,可以在圖6所示的虛擬機(jī)信息列表4004中增加一列以保存位置信息計(jì)算單元4007 計(jì)算的位置信息。參見圖4,傳感器310還包括電源4008。根據(jù)本發(fā)明的優(yōu)選實(shí)施例,所述電源4008 由電池實(shí)現(xiàn),從而傳感器310具有獨(dú)立的電源,即使服務(wù)器300宕機(jī),傳感器也能正常工作。 另一方面,傳感器310也可以具有外接電源插口,以從外部獲取電源。例如,某些安裝服務(wù) 器的機(jī)架上提供額外的電源接口,可以供傳感器310使用。參見圖4,傳感器310還包括虛擬機(jī)信息搜索單元4002。虛擬機(jī)信息搜索單元4002 與通信單元4001相連接,從通信單元4001接收對某個(gè)目標(biāo)虛擬機(jī)(VMtmget)的查詢。虛擬 機(jī)信息搜索單元4002還與存儲(chǔ)器4003相連接,并在虛擬機(jī)信息列表4004中搜索目標(biāo)虛擬 機(jī)VMtoget。如果在虛擬機(jī)信息列表4004中找到了目標(biāo)虛擬機(jī)VMtoget,則把搜索命中的結(jié)果 通知給通信單元4001。隨后,通信單元4001通知發(fā)出搜索請求的傳感器。圖7示出根據(jù)本發(fā)明實(shí)施例的搜索虛擬機(jī)的方法的示例流程圖700。如圖1、圖3、圖5所示,虛擬機(jī)被部署在至少一個(gè)服務(wù)器上,每個(gè)服務(wù)器都附有一 個(gè)傳感器并與其通信,所述傳感器相互通信以組成通信網(wǎng)絡(luò)。圖7所示的方法700包括如 下步驟步驟S705,傳感器獲取虛擬機(jī)信息。具體而言,每個(gè)傳感器310獲取并存儲(chǔ)與該傳感器連接的服務(wù)器300中的虛擬機(jī) 的信息。參見圖3-4可知,傳感器310通過虛擬機(jī)信息獲取單元4006與服務(wù)器300通信, 以獲取部署在服務(wù)器300上的虛擬機(jī)的相關(guān)信息。步驟S710,傳感器獲取位置信息。具體而言,每個(gè)傳感器310計(jì)算并存儲(chǔ)該傳感器的位置信息。在圖4的示例中,位 置信息計(jì)算單元4007計(jì)算傳感器310的位置信息,并存儲(chǔ)在位置信息存儲(chǔ)單元4005中???替換地,位置信息不是在各個(gè)傳感器310內(nèi)計(jì)算,而是在外部集中地計(jì)算并發(fā)送到傳感器 310。根據(jù)本發(fā)明的一個(gè)實(shí)施例,物理服務(wù)器的位置不被移動(dòng),虛擬機(jī)不被動(dòng)態(tài)創(chuàng)建、遷移等,則步驟S705、S710可以僅在初始化時(shí)執(zhí)行。這種情況下,搜索方法從以下步驟S715開 始。根據(jù)本發(fā)明的另一個(gè)實(shí)施例,物理服務(wù)器的位置被頻繁移動(dòng),并且虛擬機(jī)被動(dòng)態(tài)創(chuàng)建, 則步驟S705和步驟S710周期地執(zhí)行,以實(shí)時(shí)獲取最新的信息。步驟S715,傳感器接收搜索請求,其中搜索請求包含目標(biāo)虛擬機(jī)的標(biāo)識(shí)符
(VMtarget) 。根據(jù)本發(fā)明的優(yōu)選實(shí)施例,提供了一種搜索裝置(以下參見圖8-9進(jìn)一步描述)。 搜索裝置用于提供輸入搜索請求的界面,所述搜索裝置能夠與至少一個(gè)傳感器310通信, 以把搜索請求發(fā)送給傳感器310。所述搜索裝置可以具有固定位置,也可以是便攜式的。當(dāng) 搜索裝置是便攜式時(shí),優(yōu)選地,搜索裝置能夠計(jì)算并顯示自己的當(dāng)前位置。步驟S720,在所述多個(gè)傳感器310組成的傳感器網(wǎng)絡(luò)500中傳輸所述搜索請求??梢圆捎枚喾N方式來在傳感器網(wǎng)絡(luò)500中轉(zhuǎn)發(fā)(或傳播)搜索請求。例如,傳感器 網(wǎng)絡(luò)500是ad-hoc無線網(wǎng)絡(luò)時(shí),每個(gè)傳感器接收到搜索請求后,搜索自身的虛擬機(jī)列表信 息,如果沒有搜索到目標(biāo)虛擬機(jī)的標(biāo)識(shí)符,則以廣播方式向相鄰的傳感器轉(zhuǎn)發(fā)該搜索請求, 從而保證搜索請求能夠到達(dá)傳感器網(wǎng)絡(luò)中的每一個(gè)傳感器。以廣播方式轉(zhuǎn)發(fā)消息(即搜索 請求)比較簡單,而且適應(yīng)于傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)頻繁變化的情景,但是可能會(huì)導(dǎo)致網(wǎng) 絡(luò)流量過大而擁堵??商鎿Q地,在傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)比較穩(wěn)定時(shí),各個(gè)傳感器可以維護(hù) 通往相鄰傳感器的路由信息,根據(jù)路由表來向相鄰傳感器轉(zhuǎn)發(fā)搜索請求。步驟S725,存儲(chǔ)所述目標(biāo)虛擬機(jī)的標(biāo)識(shí)符的傳感器返回自身的位置信息。具體而言,當(dāng)傳感器310接收到搜索請求后,在步驟S705得到的虛擬機(jī)信息中進(jìn) 行搜索,當(dāng)搜索到目標(biāo)虛擬機(jī)時(shí),傳感器310返回步驟S710計(jì)算得到的位置信息。所述位置信息可以返回給最先接收到搜索請求的傳感器。所述位置信息還可以進(jìn) 一步返回到輸入搜索請求的搜索裝置。所述搜索裝置具有顯示器,用于顯示所述位置信息。圖8示出用于實(shí)現(xiàn)圖7所示的方法流程的系統(tǒng)800。圖8所示的系統(tǒng)800包括多個(gè)傳感器801a、802a、803a、804a、805a、806a以及多個(gè) 服務(wù)器801b、802b、803b、804b、805b、806b,每個(gè)服務(wù)器都有一個(gè)相應(yīng)的傳感器與其相連。圖 8的系統(tǒng)800還包括搜索裝置810。圖9顯示根據(jù)本發(fā)明的優(yōu)選實(shí)施例的搜索裝置810的基本結(jié)構(gòu)。搜索裝置810包括搜索請求輸入裝置9001、通信單元9002、位置信息計(jì)算單元 9003、路徑顯示單元9004、地圖存儲(chǔ)單元9005。搜索請求輸入裝置9001用于接收用戶(例如,管理員)的虛擬機(jī)位置搜索請求。 所述虛擬機(jī)位置搜索請求包含目標(biāo)虛擬機(jī)的標(biāo)識(shí)符。通信單元9002用于與傳感器通信。參見圖7的步驟S715,搜索請求輸入裝置9001接收用戶輸入的虛擬機(jī)位置搜索請 求后,通過通信單元9002轉(zhuǎn)發(fā)給傳感器。例如,參見圖8,把虛擬機(jī)位置搜索請求傳輸給相 鄰的傳感器804a。在圖8所示的示例中,目標(biāo)虛擬機(jī)例如為服務(wù)器806b上部署的虛擬機(jī) 806c。參見圖7的步驟S725,具有目標(biāo)虛擬機(jī)的傳感器806a的位置信息被返回到接收搜 索請求的傳感器804a,隨后傳感器804a把位置信息返回給搜索裝置810的通信單元9002。所述搜索裝置810的顯示單元9004可以顯示通信單元9002接收的位置信息。
根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,所述搜索裝置810還包括地圖存儲(chǔ)單元9005,用于 存儲(chǔ)整個(gè)數(shù)據(jù)中心的地圖。這樣,基于所述位置信息和地圖信息,顯示單元9004可以在整 個(gè)數(shù)據(jù)中心的地圖上顯示目標(biāo)虛擬機(jī)的位置。根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,所述搜索裝置810還包括位置信息計(jì)算單元9004。 當(dāng)搜索裝置810不具有固定位置,可以便攜移動(dòng)時(shí),位置信息計(jì)算單元9004計(jì)算搜索裝置 810的位置?;谒阉餮b置的位置信息、目標(biāo)虛擬機(jī)的位置信息、地圖存儲(chǔ)單元9005存儲(chǔ)的 地圖信息,顯示單元9004計(jì)算并顯示從當(dāng)前位置到目標(biāo)虛擬機(jī)的位置的路徑。優(yōu)選地,所述搜索裝置810還包括提示單元(圖9未示出),用于向返回所述目標(biāo) 虛擬機(jī)的位置信息的傳感器806a發(fā)送消息,使得該傳感器806a發(fā)出可聽信號或可視信號。 這是因?yàn)樵诟呙芏鹊臄?shù)據(jù)中心,單個(gè)服務(wù)器機(jī)架上可以安裝多達(dá)幾百臺(tái)服務(wù)器,即使獲得 了目標(biāo)虛擬機(jī)的精確位置信息(即,服務(wù)器806b的位置信息),也難以從相鄰放置的大量服 務(wù)器中迅速找到哪個(gè)服務(wù)器是目標(biāo)服務(wù)器。通過使所述傳感器806a發(fā)出聲音或其它可感 知信號,便于管理人員迅速地找到該目標(biāo)服務(wù)器806b。替換地,可以使目標(biāo)服務(wù)器806b發(fā) 出聲音或其它可感知信號。根據(jù)本發(fā)明的替換實(shí)施例,所述搜索裝置也可以由傳感器310實(shí)現(xiàn),S卩,在某個(gè)傳 感器310上增加輸入裝置以允許輸入搜索請求、顯示裝置以顯示位置信息。圖10示出根據(jù)本發(fā)明實(shí)施例的管理數(shù)據(jù)計(jì)算系統(tǒng)中的虛擬機(jī)位置的方法的示例 流程圖1000,其中數(shù)據(jù)計(jì)算系統(tǒng)包括多個(gè)服務(wù)器,至少一個(gè)服務(wù)器上部署有虛擬機(jī),以及每 個(gè)服務(wù)器上安裝有一個(gè)傳感器,所述多個(gè)傳感器組成傳感器網(wǎng)絡(luò),所述方法包括步驟S1005,傳感器獲取虛擬機(jī)信息。具體而言,每個(gè)傳感器獲取并存儲(chǔ)與該傳感器連接的服務(wù)器中的虛擬機(jī)的信息, 例如,通過圖4的虛擬機(jī)信息管理單元4006從服務(wù)器獲取虛擬機(jī)信息。步驟S1010,傳感器獲取位置信息。具體而言,每個(gè)傳感器計(jì)算并存儲(chǔ)該傳感器自己的位置信息。例如,通過圖4的位 置信息計(jì)算單元4007獲取位置信息。步驟S1015,顯示每個(gè)虛擬機(jī)的位置信息。具體而言,基于每個(gè)傳感器的位置信息和每個(gè)傳感器的虛擬機(jī)信息,顯示每個(gè)虛 擬機(jī)的位置信息。虛擬機(jī)的位置信息可以顯示在圖9所示的搜索裝置810的顯示單元9004上。當(dāng) 搜索裝置810包括地圖存儲(chǔ)單元9005時(shí),顯示單元9004可以在整個(gè)數(shù)據(jù)中心的地圖上顯 示所有虛擬機(jī)的位置。優(yōu)選地,每個(gè)傳感器存儲(chǔ)的與該傳感器連接的服務(wù)器中的虛擬機(jī)的信息還包括指 示虛擬機(jī)的至少一個(gè)以下狀態(tài)的信息存活、終結(jié)、已遷移、不活躍等,如圖6所示。這樣,在 搜索裝置810上顯示各個(gè)虛擬機(jī)的位置時(shí),還可以顯示各個(gè)虛擬機(jī)的各種狀態(tài)信息。以上參照圖1-10詳細(xì)描述了在大規(guī)模計(jì)算中心中搜索以及顯示虛擬機(jī)位置的方 法、裝置以及系統(tǒng)。應(yīng)當(dāng)指出,本發(fā)明的方法、裝置及系統(tǒng)不僅限于搜索虛擬機(jī)位置,還可以用于搜索 數(shù)據(jù)中心中的其它軟件、硬件資源。例如,如果在服務(wù)器上部署了其它應(yīng)用程序,可以利用 傳感器獲取應(yīng)用程序的相關(guān)信息,從而獲取該應(yīng)用程序的位置信息。因此,本發(fā)明說明書中的“虛擬機(jī)”應(yīng)當(dāng)被廣義理解為物理服務(wù)器上部署的任何虛擬資源,例如在物理服務(wù)器上 部署的web服務(wù)器、ftp服務(wù)器、email服務(wù)器、或其它提供服務(wù)或代理的應(yīng)用程序。例如, 傳感器可以獲取與之相連的物理服務(wù)器上部署的各種應(yīng)用程序(例如web服務(wù)、ftp服務(wù)、 email服務(wù)等)的標(biāo)識(shí)符,其中數(shù)據(jù)中心的管理員為各個(gè)應(yīng)用程序分配唯一的標(biāo)識(shí)符。此外,本發(fā)明還可以用于搜索某個(gè)物理服務(wù)器的位置信息,或者用于搜索與某個(gè) 服務(wù)器相連接的其它硬件設(shè)備(例如打印機(jī))的位置信息。應(yīng)當(dāng)指出,可以許多方式來實(shí)現(xiàn)本發(fā)明的方法和系統(tǒng)及裝置。例如,可通過軟件、 硬件、固件或者軟件、硬件、固件的任何組合來實(shí)現(xiàn)本發(fā)明的方法和裝置。用于所述方法的 步驟的上述順序僅是為了進(jìn)行說明,本發(fā)明的方法的步驟不限于以上具體描述的順序,除 非以其它方式特別說明。此外,在一些實(shí)施例中,還可將本發(fā)明實(shí)施為記錄在記錄介質(zhì)中的 程序,這些程序包括用于實(shí)現(xiàn)根據(jù)本發(fā)明的方法的機(jī)器可讀指令。因而,本發(fā)明還覆蓋存儲(chǔ) 用于執(zhí)行根據(jù)本發(fā)明的方法的程序的記錄介質(zhì)。雖然已經(jīng)通過示例對本發(fā)明的一些特定實(shí)施例進(jìn)行了詳細(xì)說明,但是本領(lǐng)域的技 術(shù)人員應(yīng)該理解,以上示例僅是為了進(jìn)行說明,而不是為了限制本發(fā)明的范圍。本領(lǐng)域的技 術(shù)人員應(yīng)該理解,可在不脫離本發(fā)明的范圍和精神的情況下,對以上實(shí)施例進(jìn)行修改。本發(fā) 明的范圍由所附權(quán)利要求來限定。
權(quán)利要求
1.一種用于搜索虛擬資源的位置的方法,所述虛擬資源部署在至少一個(gè)服務(wù)器上,其 中每個(gè)服務(wù)器都附有一個(gè)傳感器并與其通信,所述傳感器相互通信以組成通信網(wǎng)絡(luò),每個(gè) 傳感器存儲(chǔ)有與該傳感器連接的服務(wù)器中的虛擬資源的標(biāo)識(shí)符以及該傳感器的位置信息, 所述方法包括所述至少一個(gè)傳感器接收搜索虛擬資源的搜索請求,所述搜索請求包含該虛擬資源的 標(biāo)識(shí)符;在所述傳感器組成的通信網(wǎng)絡(luò)中傳輸所述搜索請求;存儲(chǔ)有該虛擬資源的標(biāo)識(shí)符的傳感器返回自身的位置信息。
2.根據(jù)權(quán)利要求1的方法,其中所述多個(gè)傳感器組成的是ad-hoc無線網(wǎng)絡(luò)。
3.根據(jù)權(quán)利要求1的方法,還包括每個(gè)傳感器獲取與該傳感器連接的服務(wù)器中的虛擬資源的信息,所述虛擬資源的信息 包括所述虛擬資源的標(biāo)識(shí)符。
4.根據(jù)權(quán)利要求3的方法,所述虛擬資源的信息還包括指示所述虛擬資源的至少一個(gè) 以下狀態(tài)的信息存活、不活躍。
5.根據(jù)權(quán)利要求1的方法,還包括每個(gè)傳感器獲取該傳感器的位置信息,所述每個(gè)傳 感器獲取該傳感器的位置信息進(jìn)一步包括每個(gè)傳感器通過接收多個(gè)基準(zhǔn)信號源的信號來計(jì)算自己的位置,其中所述多個(gè)基準(zhǔn)信 號源被固定在所述服務(wù)器周圍。
6.根據(jù)權(quán)利要求1的方法,還包括返回所述位置信息的傳感器接收要求發(fā)出可聽信號或可視信號的消息,并且根據(jù)所述 消息發(fā)出可聽信號或可視信號。
7.根據(jù)權(quán)利要求1的方法,還包括計(jì)算并顯示到達(dá)返回所述位置信息的所述傳感器的路徑。
8.一種數(shù)據(jù)計(jì)算系統(tǒng),包括多個(gè)服務(wù)器,至少一個(gè)服務(wù)器上部署有虛擬資源;多個(gè)傳感器,每個(gè)傳感器安裝到一個(gè)服務(wù)器上;其中每個(gè)傳感器包括通信單元,用于與其它傳感器的通信單元通信以使所述多個(gè)傳感器組成通信網(wǎng)絡(luò),所 述通信單元還用于接收用于搜索所述虛擬資源的搜索請求,所述搜索請求包含該虛擬資源 的標(biāo)識(shí)符;位置信息計(jì)算單元,用于計(jì)算并存儲(chǔ)該傳感器的位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝的服務(wù)器通信,以獲取該服務(wù)器上部 署的虛擬資源的標(biāo)識(shí)符;虛擬資源信息存儲(chǔ)單元,用于存儲(chǔ)虛擬資源信息獲取單元獲取的虛擬資源的標(biāo)識(shí)符;虛擬資源信息搜索單元,用于搜索所述虛擬資源信息存儲(chǔ)單元以查找該虛擬資源的標(biāo) 識(shí)符,如果搜索到該虛擬資源的標(biāo)識(shí)符,返回所述位置信息計(jì)算單元計(jì)算的位置信息。
9.根據(jù)權(quán)利要求8的數(shù)據(jù)計(jì)算系統(tǒng),所述多個(gè)傳感器組成ad-hoc無線網(wǎng)絡(luò)。
10.根據(jù)權(quán)利要求8的數(shù)據(jù)計(jì)算系統(tǒng),所述傳感器還包括電池單元。
11.根據(jù)權(quán)利要求8的數(shù)據(jù)計(jì)算系統(tǒng),所述虛擬資源信息存儲(chǔ)單元還存儲(chǔ)指示虛擬資源的至少一個(gè)以下狀態(tài)的信息存活、不活躍。
12.根據(jù)權(quán)利要求8的數(shù)據(jù)計(jì)算系統(tǒng),還包括多個(gè)基準(zhǔn)信號源,所述每個(gè)傳感器的位置信息計(jì)算單元通過接收基準(zhǔn)信號源的信號來 計(jì)算位置信息。
13.根據(jù)權(quán)利要求8的數(shù)據(jù)計(jì)算系統(tǒng),還包括搜索裝置,其中所述搜索裝置包括搜索請求輸入單元,用于輸入搜索請求,所述搜索請求包括該虛擬資源的標(biāo)識(shí)符,以及通信單元,用于與至少一個(gè)傳感器通信,以及用于接收搜索到所述該虛擬資源的傳感器所返回的位置信息。
14.根據(jù)權(quán)利要求13的數(shù)據(jù)計(jì)算系統(tǒng),所述搜索裝置還包括路徑計(jì)算及顯示單元,用于根據(jù)所述位置信息來計(jì)算并顯示到達(dá)發(fā)送所述位置信息的 傳感器的路徑。
15.一種傳感器,用于被安裝到服務(wù)器上,所述服務(wù)器上部署有虛擬資源,所述傳感器 包括通信單元,用于與其它傳感器的通信單元通信以使所述傳感器與其它傳感器組成通信 網(wǎng)絡(luò),所述通信單元還用于接收用于搜索所述虛擬資源的搜索請求,所述搜索請求包含該 虛擬資源的標(biāo)識(shí)符;位置信息計(jì)算單元,用于計(jì)算并存儲(chǔ)該傳感器的位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝在的服務(wù)器通信,以獲取該服務(wù)器上 部署的虛擬資源的標(biāo)識(shí)符;虛擬資源信息存儲(chǔ)單元,用于存儲(chǔ)虛擬資源信息獲取單元獲取的虛擬資源的標(biāo)識(shí)符;虛擬資源信息搜索單元,用于搜索所述虛擬資源信息存儲(chǔ)單元以查找該虛擬資源的標(biāo) 識(shí)符,如果搜索到該虛擬資源的標(biāo)識(shí)符,返回所述位置信息計(jì)算單元計(jì)算的位置信息。
16.根據(jù)權(quán)利要求15的傳感器,所述通信單元遵照ad-hoc無線通信協(xié)議進(jìn)行通信。
17.根據(jù)權(quán)利要求15的傳感器,還包括電源單元。
18.根據(jù)權(quán)利要求15的傳感器,所述虛擬資源信息存儲(chǔ)單元還存儲(chǔ)指示虛擬資源的至 少一個(gè)以下狀態(tài)的信息存活、不活躍。
19.根據(jù)權(quán)利要求15的傳感器,其中傳感器的位置信息計(jì)算單元通過接收多個(gè)基準(zhǔn)信 號源的信號來計(jì)算位置信息。
20.一種用于搜索數(shù)據(jù)計(jì)算系統(tǒng)中的虛擬資源的位置的終端裝置,其中所述數(shù)據(jù)計(jì)算 系統(tǒng)包括多個(gè)服務(wù)器,每個(gè)服務(wù)器與一個(gè)傳感器相連接,所述傳感器組成通信網(wǎng)絡(luò),以及至 少一個(gè)服務(wù)器上部署有所述虛擬資源,所述終端裝置包括虛擬資源搜索請求輸入單元,用于輸入對虛擬資源的搜索請求,所述搜索請求包括該 虛擬資源的標(biāo)識(shí)符;通信單元,用于與所述多個(gè)傳感器中的至少一個(gè)傳感器通信,以把搜索請求發(fā)送給該 傳感器;位置信息計(jì)算單元,用于計(jì)算所述終端裝置的位置;路徑計(jì)算單元,用于基于傳感器返回的該虛擬資源的位置信息,計(jì)算從終端裝置的位 置到該虛擬資源的路徑;顯示單元,用于顯示路徑計(jì)算單元所計(jì)算的路徑信息。
全文摘要
本發(fā)明涉及在大規(guī)模計(jì)算系統(tǒng)中搜索虛擬資源的位置的方法、裝置和系統(tǒng)。所述虛擬資源部署在至少一個(gè)服務(wù)器上,其中每個(gè)服務(wù)器都附有一個(gè)傳感器并與其通信,所述傳感器相互通信以組成通信網(wǎng)絡(luò),每個(gè)傳感器獲取與該傳感器連接的服務(wù)器中的虛擬資源的信息,每個(gè)傳感器獲取該傳感器的位置信息,所述方法包括任意一個(gè)傳感器接收搜索請求,搜索請求包含目標(biāo)虛擬資源的標(biāo)識(shí)符;在所述多個(gè)傳感器組成的網(wǎng)絡(luò)中發(fā)送所述搜索請求;存儲(chǔ)有所述目標(biāo)虛擬資源的標(biāo)識(shí)符的傳感器返回自身的位置信息。
文檔編號H04W64/00GK101998629SQ20091017102
公開日2011年3月30日 申請日期2009年8月28日 優(yōu)先權(quán)日2009年8月28日
發(fā)明者何樂, 吳玉會(huì), 王慶波, 趙陽, 鄒志樂, 金涬 申請人:國際商業(yè)機(jī)器公司