午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

搜索虛擬資源的位置的方法、裝置和系統(tǒng)的制作方法

文檔序號:3162546閱讀:188來源:國知局
專利名稱:搜索虛擬資源的位置的方法、裝置和系統(tǒng)的制作方法
技術領域
本發(fā)明涉及一種搜索資源的位置的方法和系統(tǒng),尤其涉及在大規(guī)模的計算系統(tǒng)環(huán) 境(例如,云計算環(huán)境)中搜索虛擬資源的位置的方法和系統(tǒng)。
背景技術
云計算是一種新的計算形式,其在互連網(wǎng)上提供動態(tài)可擴展的、往往是虛擬的資 源作為服務提供給用戶。用戶不需要知道、掌握或控制支持他們的“云”內(nèi)部的技術基礎結 構。云計算的主要基礎是由數(shù)據(jù)中心提供的、使用不同層次的虛擬化技術建立在服務器上 的可靠服務構成。所述服務可以在提供網(wǎng)絡接入的任何地方獲取。對于所有的用戶計算需 求而言,“云”常常可被看作單個接入點。圖1示出一個云計算中心的示例。在圖1的示例中,相互連接的多個服務器101 構成一個云計算中心100。多個終端200可以接入云計算中心100,以得到“云”提供的計 算服務。這種云計算中心已經(jīng)在商業(yè)上有了廣泛應用。例如,Amazon提供的亞馬遜彈性計 算云(Amazon Elastic Compute Cloud,也稱為EC2)是一種商業(yè)的云計算服務,其允許用戶 租用計算機來運行他們自己的計算機應用程序。EC2允許可擴展的應用部署,用戶可以通過 EC2提供的網(wǎng)頁服務界面來自己創(chuàng)建虛擬機,例如創(chuàng)建一個服務器實例,在服務器實例上用 戶可以加載任何選擇的軟件。用戶可以根據(jù)需要產(chǎn)生、啟動、結束服務器實例,按小時為運 行的服務器付費,由此稱之為“彈性”的。關于EC2的進一步詳細內(nèi)容,可以參見Amazon, com 提供的 Amazon Web Services (AWS)。此夕卜,Microsoft 提供的 Azure Sevice Platform 也是一種云計算平臺,其提供了廣泛的互聯(lián)網(wǎng)服務。MicroSoflSalesforce等也都提供各 自的云計算服務。云計算中心往往是通過集中部署在一個或者若干個數(shù)據(jù)中心中的通過網(wǎng)絡相互 連接的大量物理服務器來實現(xiàn)的。例如,提供云計算服務的某個供應商可以在一個數(shù)據(jù)中 心內(nèi)部署幾千甚至幾萬臺物理服務器來實現(xiàn)一個云計算中心。在上述的大規(guī)模云計算中心中,常常需要尋找某個物理服務器或某個虛擬機的位 置。例如,當為某個用戶提供云計算服務的虛擬機出現(xiàn)故障時,管理員希望能夠知道該虛擬 機的具體位置在哪里。還例如,當某個物理機因故障而宕機時,管理員也希望能夠找到該物 理機的具體位置。然而,云計算中心的物理服務器常常被移動以便重新部署,物理服務器以及其上 的虛擬機的位置也會被移動。即使管理員忠實地記錄每一次移動物理服務器之后的新位置 信息,當移動次數(shù)越來越多時,管理員容易出錯從而導致失去某個物理機的位置;此外,記 錄并更新每個物理服務器的位置對于管理員來說也是個很大的負擔,尤其是數(shù)據(jù)中心的規(guī) 模很大時,這個任務幾乎是不可完成的。例如,根據(jù)某個大型數(shù)據(jù)中心的報告,它的數(shù)據(jù)中 心中已經(jīng)有相當比例的物理服務器無法被確定其精確位置,盡管整個云計算中心仍然在正 常工作。在云計算中心,不僅物理服務器的位置可以頻繁地移動,物理服務器上的虛擬機也可以動態(tài)地建立、已遷移、整合等,因此物理機和虛擬機的位置都在變化,導致現(xiàn)有技術 難以令人滿意地提供所需的定位服務。例如,美國專利US7180422公開了一種資產(chǎn)管理方法和設備,其中通過把邏輯標 簽(L-tag)和物理標簽(P-tag)附加到目標裝置上來管理目標裝置,其中物理標簽包括計 算機的物理地址信息等,邏輯標簽包括諸如計算機的名稱、IP地址等,使用RFID作為標簽。 但是,上述方法僅能夠跟蹤實體計算機的物理和邏輯屬性,并不適用于虛擬服務器,也無法 提供關于虛擬服務器的任何信息。此外,由于使用RFID作為標簽,需要使用額外的RFID讀 取器,而且讀取器必須與RFID的距離不能太遠,因此工作范圍受到限制。還例如,美國專利US7436303描述了一種用來跟蹤硬件設備的機架傳感器控制器 設備。每一個機架傳感器控制器上都有一個內(nèi)存空間,用于存儲機架的位置,以及多個傳 感器的信息,這些傳感器上會安裝一個RFID的讀取器,可以用來讀取機架里每個設備上的 RFID標識。機架傳感器控制器上還有一個處理器,用于歸總整個機架的設備信息,并附加 上機架的位置信息,用于轉(zhuǎn)發(fā)給外部應用程序讀取。但是,上述專利中的傳感器安裝在機架 上,機架的位置相對固定,很少會出現(xiàn)移動改變,因此難以適應于服務器可以隨意移動的動 態(tài)數(shù)據(jù)中心機房環(huán)境(例如,云計算中心的物理服務器可以被移動)。此外,上述專利使用 RFID技術,每個RFID是被動的,不具備通信和計算能力,需要額外的RFID讀取器,并因此受 到RFID讀取器的通信范圍的限制。

發(fā)明內(nèi)容
本發(fā)明旨在提供一種在大規(guī)模計算環(huán)境(例如云計算環(huán)境)中搜索虛擬資源的位 置的方法和系統(tǒng),尤其涉及搜索虛擬機(VM)的位置的方法和系統(tǒng),以解決現(xiàn)有技術中存在 的技術問題。本發(fā)明提供一種用于搜索虛擬資源的位置的方法,所述虛擬資源部署在至少一個 服務器上,其中每個服務器都附有一個傳感器并與其通信,所述傳感器相互通信以組成通 信網(wǎng)絡,每個傳感器存儲有與該傳感器連接的服務器中的虛擬資源的標識符以及該傳感器 的位置信息,所述方法包括所述傳感器接收搜索請求,搜索請求包含目標虛擬資源的標識 符;在所述傳感器組成的通信網(wǎng)絡中傳輸所述搜索請求;存儲有所述目標虛擬資源的標識 符的傳感器返回自身的位置信息。本發(fā)明還提供有一種管理數(shù)據(jù)計算系統(tǒng)中的虛擬資源的位置的方法,其中數(shù)據(jù)計 算系統(tǒng)包括多個服務器,至少一個服務器上部署有虛擬資源,其中每個服務器上安裝有一 個傳感器,所述多個傳感器組成通信網(wǎng)絡,所述方法包括在每個傳感器中存儲與該傳感器 連接的服務器中的虛擬資源的信息;在每個傳感器中存儲該傳感器的位置信息;基于每個 傳感器的位置信息和每個傳感器的虛擬資源信息,顯示每個虛擬資源的位置信息。本發(fā)明還提供有一種數(shù)據(jù)計算系統(tǒng),包括多個服務器,至少一個服務器上部署 有虛擬資源;多個傳感器,每個傳感器安裝到一個服務器上;其中每個傳感器包括通信單 元,用于與其它傳感器的通信單元通信以使所述多個傳感器組成傳感器網(wǎng)絡,所述通信單 元還用于接收搜索請求,所述搜索請求包含目標虛擬資源的標識符;位置信息計算單元,用 于計算并存儲該傳感器的位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝的服 務器通信,以獲取該服務器上部署的虛擬資源的標識符;虛擬資源信息存儲單元,用于存儲虛擬資源信息獲取單元獲取的虛擬資源信息;虛擬資源信息搜索單元,用于搜索所述虛擬 資源信息存儲單元以查找目標虛擬資源的標識符,如果搜索到目標虛擬資源的標識符,返 回所述位置信息計算單元計算的位置信息。本發(fā)明還提供一種傳感器,用于被安裝到服務器上,所述服務器上部署有虛擬資 源,所述傳感器包括通信單元,用于與其它傳感器的通信單元通信以使所述傳感器和其它 傳感器組成傳感器網(wǎng)絡,所述通信單元還用于接收用于搜索所述虛擬資源的搜索請求,所 述搜索請求包含目標虛擬資源的標識符;位置信息計算單元,用于計算并存儲該傳感器的 位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝在的服務器通信,以獲取該服務 器上部署的虛擬資源的標識符;虛擬資源信息存儲單元,用于存儲虛擬資源信息獲取單元 獲取的虛擬資源信息;虛擬資源信息搜索單元,用于搜索所述虛擬資源信息存儲單元以查 找目標虛擬資源的標識符,如果搜索到目標虛擬資源的標識符,返回所述位置信息計算單 元計算的位置信息。本發(fā)明還提供有一種用于搜索數(shù)據(jù)計算系統(tǒng)中的虛擬資源的位置的終端搜索裝 置,其中所述數(shù)據(jù)計算系統(tǒng)包括多個服務器,每個服務器與一個傳感器相連接,所述傳感器 組成通信網(wǎng)絡,以及至少一個服務器上部署有所述虛擬資源,所述終端搜索裝置包括虛擬 資源搜索請求輸入單元,用于輸入對目標虛擬資源的搜索請求,所述搜索請求包括目標虛 擬資源的標識符;通信單元,用于與所述多個傳感器中的至少一個傳感器通信,以把搜索請 求發(fā)送給該傳感器;位置信息計算單元,用于計算并存儲所述終端裝置的位置;路徑計算 單元,用于基于傳感器返回的目標虛擬資源的位置信息,計算從終端裝置的位置到目標虛 擬資源的路徑;顯示單元,用于顯示路徑計算單元所計算的路徑信息。優(yōu)選地,所述多個傳感器組成的是ad-hoc無線網(wǎng)絡。優(yōu)選地,每個傳感器存儲與該傳感器連接的服務器中的虛擬資源的信息包括,指 示虛擬資源的至少一個以下狀態(tài)的信息存活、不活躍。優(yōu)選地,在所述計算系統(tǒng)所在的建筑物內(nèi)部署多個基準信號源,通過同基準信號 源通信來計算臨近基準信號源的傳感器的位置信息,其余傳感器節(jié)點的位置可以通過和已 經(jīng)獲取位置信息的傳感器節(jié)點進行通訊獲取。


圖1示出一個云計算中心的示例。圖2示出物理服務器上部署的虛擬機。圖3示出部署虛擬機和本發(fā)明的傳感器的物理服務器的示例。圖4示出本發(fā)明的傳感器的基本結構。圖5示出本發(fā)明的傳感器組成的傳感器網(wǎng)絡。圖6示出傳感器中的虛擬機信息列表的一個示例。圖7示出本發(fā)明的搜索虛擬機的方法的示例流程圖。圖8示出用于實現(xiàn)圖7所示的方法流程的示例系統(tǒng)。圖9示出本發(fā)明的搜索裝置的示例結構。圖10出本發(fā)明的管理數(shù)據(jù)計算系統(tǒng)中的虛擬機位置的方法的示例流程圖。
具體實施例方式以下結合附圖來詳細說明本發(fā)明的具體實施例。圖2示出一個常規(guī)的物理服務器200以及部署在服務器上的虛擬機204-206。圖2所示的物理服務器200具有硬件201、操作系統(tǒng)202、管理程序203、以及多個 虛擬機 204、205、206。硬件201可以包括常規(guī)的中央處理器、存儲器、I/O接口、總線等。此外,硬件提供 商也開發(fā)了提供虛擬機支持的各種硬件,例如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是用于管理多個虛擬機(VM)的應用程序。盡管在圖2 所示的示例中管理程序203和操作系統(tǒng)202是分離的,但在某些直接支持虛擬機的操作系 統(tǒng)中,管理程序203可以實現(xiàn)在操作系統(tǒng)202中。多個虛擬機204-206可以是系統(tǒng)虛擬機(system VM),其提供完整的系統(tǒng)平臺以 進一步其上的操作系統(tǒng)的運行。系統(tǒng)虛擬機的一個示例是Solaris Containers.替換地, 虛擬機204可以是處理虛擬機(process VM),其被設計為運行單個程序,從而支持單個處 理。例如,處理虛擬機的一個示例是Java Virtual Machine。虛擬機的本質(zhì)特征在于其中 運行的軟件被限制在虛擬機所提供的資源和抽象內(nèi),不能突破其虛擬邊界。虛擬機204-206 可以根據(jù)需要動態(tài)地創(chuàng)建、消除、遷移、整合等等。應當指出,本發(fā)明說明書中的“虛擬機”應當被廣義理解為物理服務器上部署的任 何虛擬資源(即,軟資源),例如,在同一物理服務器上部署的多個操作系統(tǒng)或多個用戶空 間,在物理服務器上部署的web服務程序、ftp服務程序、email服務程序、提供其它服務或 代理的應用程序等。管理程序203管理虛擬機204的創(chuàng)建、消除、遷移等,為虛擬機204分配資源、釋 放資源、并且跟蹤記錄每個虛擬機的狀態(tài)。例如,在創(chuàng)建一個虛擬機時,管理程序203為虛 擬機分配一個唯一標識符VMid,以用于標識該虛擬機。根據(jù)用戶的需要,管理程序203還可 以為每個創(chuàng)建虛擬機分配資源,包括多大空間的存儲器、多少個計算單元、多少位的處理器 (例如32-bit或64bit)、1/0吞吐性能等。虛擬機204被消除時,管理程序203釋放為其 分配的資源。當虛擬機204從一個物理服務器遷移到另一個物理服務器時,原始的物理服 務器釋放該虛擬機204的資源,新的物理服務器為該虛擬機204分配新的資源。根據(jù)本發(fā) 明的一個實施例,當虛擬機204消除時,為其分配的標識符VMid被保留,不被其它重新創(chuàng)建 的虛擬機所使用。根據(jù)本發(fā)明的另一個實施例,當虛擬機204從一個物理服務器遷移到另 一個物理服務器時,新的物理服務器為虛擬機分配新的VMid,而不使用原始的VMid。這樣可 以保證VMid和虛擬機204之間的唯一的對應關系。圖3示出部署了虛擬機和根據(jù)本發(fā)明的傳感器的服務器示例。圖3的服務器300包括硬件301、操作系統(tǒng)302、管理程序303、多個虛擬機 304-306、傳感器 310。圖3所示的硬件301、操作系統(tǒng)302、管理程序303、多個虛擬機304-306與圖2所 示的硬件201、操作系統(tǒng)202、管理程序203、多個虛擬機204-206基本相同,在此不再贅述。
圖3的傳感器310用于獲取服務器300中關于虛擬機304-306的信息。具體而言, 可以在管理程序303中設置代理程序(agent)307。代理程序307用于監(jiān)控并維護服務器 300上的虛擬機304-306的相關信息,并把與虛擬機304-306相關的存儲信息發(fā)送給傳感器 310。傳感器310可以與硬件301相互通信以得到代理程序307發(fā)送的與虛擬機304-306 相關的信息。根據(jù)本發(fā)明的一個優(yōu)選實施方式,傳感器310可以定期向代理程序307發(fā)送 請求,獲取當前關于虛擬機的最新信息。根據(jù)本發(fā)明的一個優(yōu)選實施方式,傳感器310可以以無線通信方式與硬件301交 互??商鎿Q地,傳感器310也可以通過有線連接與硬件301交互。應當指出,盡管在圖3所示的實施例中,傳感器310被實現(xiàn)為服務器300的組成部 分。然而,本發(fā)明不限于此。在替換實施例中,傳感器310與服務器300各自獨立地實現(xiàn)。 傳感器310可以被固定到服務器300,并通過無線通信技術與服務器300交互。圖4示出傳感器310的基本結構示圖。圖4所示的傳感器310包括通信單元4001、虛擬機信息搜索單元4002、存儲器 4003、虛擬機信息獲取單元4006、位置信息計算單元4007、電源4008。通信單元4001用于與其它傳感器通信。根據(jù)本發(fā)明的優(yōu)選實施方式,多個傳 感器310能夠組成無線ad hoc通信網(wǎng)絡。無線ad hoc網(wǎng)絡是一種自組織的去中心化 (decentralized)無線網(wǎng)絡。每個節(jié)點的位置可以動態(tài)改變,整個網(wǎng)絡的拓撲結構也隨之動 態(tài)改變。無線ad hoc網(wǎng)絡中的每個節(jié)點都可以為其它節(jié)點轉(zhuǎn)發(fā)數(shù)據(jù),從而實現(xiàn)整個無線網(wǎng) 絡的連通性。應當指出,通過通信單元4001,多個傳感器310能夠組成一個獨立的網(wǎng)絡。即使傳 感器310所在的服務器300出現(xiàn)故障,也不影響傳感器310之間的相互通信。圖4所示的傳感器310及其組成的傳感器網(wǎng)絡可以利用已有的傳感器商業(yè)產(chǎn)品來 實現(xiàn)。例如,在Crossbow公司開發(fā)的傳感器產(chǎn)品MICA2 的基礎上實現(xiàn)本發(fā)明的傳感 器。此外,CAS(中科院)、HIT(哈工大)也已研發(fā)出相關的傳感器產(chǎn)品。當然本領域技術 人員完全可以選用其它現(xiàn)有的適合本發(fā)明的傳感器產(chǎn)品。圖5示出傳感器310通過通信單元4001而組成的ad_hoc網(wǎng)絡500。圖5所示的傳感器網(wǎng)絡500包括傳感器1-6。所述網(wǎng)絡500是自適應性的,即可以 適應各個傳感器的移動而重新組網(wǎng)。通過相鄰的一個或多個傳感器轉(zhuǎn)發(fā)消息,源傳感器可 以向任意目標傳感器發(fā)送/接收消息。例如,傳感器2向傳感器5發(fā)送消息時,路由路徑 傳感器2-傳感器3-傳感器4-傳感器5。Ad-hoc無線網(wǎng)絡支持各種路由算法以實現(xiàn)網(wǎng)絡內(nèi)各個節(jié)點之間的通信。例如,按 需路由(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)等;還可以米用自 適應(Adaptive)路由算法。優(yōu)選地,本發(fā)明采用的ad-hoc網(wǎng)絡可以為無線網(wǎng)狀網(wǎng)(wireless mesh network, WMN)。WMN是一種特殊的ad-hoc無線網(wǎng)絡,其中各個節(jié)點以網(wǎng)狀拓撲而組織為通信網(wǎng)絡。 WMN中的節(jié)點可以是筆記本、移動電話或其它無線裝置,例如傳感器。WMN可以利用各種無 線通信協(xié)議實現(xiàn),例如包括802. 11,802. 16等或其組合。應當指出,本發(fā)明的傳感器網(wǎng)絡500并不限于任何一種特定網(wǎng)絡,只要能夠?qū)崿F(xiàn)傳感器之間的相互通信即可。參見圖4,傳感器310包括的虛擬機信息獲取單元4006用于管理虛擬機信息。具 體而言,虛擬機信息獲取單元4006與服務器300中的代理程序307 (參見圖3)通信以得到 服務器300上的虛擬機304-306的信息。虛擬機信息獲取單元4006把獲取的虛擬機信息 存儲在存儲器4003。存儲器4003中保存虛擬機信息列表4004,其中存儲與傳感器310對 應的服務器300中的所有虛擬機的相關信息。圖6示出虛擬機信息列表4004的一個示例。如圖6所示,VMid作為虛擬機信息列表4004的索弓丨。VMid可以由管理員定義。為 了簡化說明,在本發(fā)明的實施例中,在圖6示出標識符為0001、0002、0003、0004、0005的5 個VMid。應當指出,VMid的組成并不限于十進制數(shù)字,還可以包括十六進制數(shù)字、或字母及 其它字符以及其組合。此外,VMid的長度也可以根據(jù)需要進行調(diào)整。例如,根據(jù)數(shù)據(jù)中心所 包含的物理服務器的數(shù)量來設定VMid的長度,以便保證每個虛擬機能夠被分配唯一的標識 符。此夕卜,當VMid不能被循環(huán)使用時,即,當某個虛擬機被消除時其VMid也被保留,VMid的空 間應該足夠大。圖6還示出與VMid對應的屬性。例如,第一列ServerID是服務器標識符(Srvl), 用于標識與VMid對應的服務器(Server 1)。第二列Status是狀態(tài)標識符,用于標識該虛擬 機當前的狀態(tài)。例如,status可以包括至少如下狀態(tài)Live (存活)、Termintated (終結) 等。Live狀態(tài)表示該虛擬機當前仍然駐留在該物理服務器上正常工作。Termintated狀態(tài) 表示該虛擬機已經(jīng)從該物理服務器上消除。以上僅為虛擬機信息列表4004的虛擬機狀態(tài)status的基本示例。本領域的技術 人員能夠理解,可以根據(jù)具體應用的需要來定義虛擬機的其它狀態(tài)。例如,根據(jù)替換實施例,還可以定義Inactive(不活躍)狀態(tài),表示無法監(jiān)測到某 個虛擬機的狀態(tài)。Inactive狀態(tài)可以用于虛擬機或物理服務器故障的情況。假設傳感器 310定期地向服務器300發(fā)送請求來查詢各個虛擬機的最新狀態(tài)信息,如果物理服務器300 發(fā)生故障(例如物理服務器宕機),則傳感器310無法得到該物理服務器300上的任何虛擬 機的信息。經(jīng)過預定時間、或者經(jīng)過預定次數(shù)的查詢后,如果仍無法獲得虛擬機的信息,則 傳感器310把該物理服務器300的所有虛擬機的狀態(tài)設置為Inactive。類似地,當某個虛 擬機出現(xiàn)故障(未正常地終結)時,傳感器310也把該虛擬機的狀態(tài)設置為Inactive。根據(jù)替換實施例,還可以在虛擬機信息列表4004中定義虛擬機的Moved (已遷移) 狀態(tài)。Moved狀態(tài)表示該虛擬機已經(jīng)從該物理服務器遷移到其它服務器。此外,可以進一 步在虛擬機列表4004中保存該虛擬機所遷移到的目標服務器的相關信息,例如,目標服務 器的標識符,遷移后為該虛擬機分配的新的標識符VMid等。在實際應用中,如果管理員對 已遷移(Moved)的虛擬機和終結(Terminated)的虛擬機的位置并不感興趣,狀態(tài)為已遷移 (Moved)的虛擬機和終結(Terminated)的虛擬機的信息可以從虛擬機信息列表4004中刪 除,以節(jié)省存儲空間。應當指出以上僅示例性地說明虛擬機信息列表4004。虛擬機信息列表4004是可 以擴展的,用戶可以根據(jù)需要在虛擬機信息列表4004中保存虛擬機的更加詳細的信息,包 括虛擬機創(chuàng)建時間、虛擬機的用戶、虛擬機占用的資源、虛擬機的權限等級等。根據(jù)本發(fā)明的實施例,為了定位虛擬機的位置,虛擬機信息列表4004至少應當指示虛擬機是否駐留在相應的物理服務器上。因此,僅需檢索虛擬機信息列表4004的索引 VMid,即可知曉某個虛擬機是否在該物理服務器上。再次參見圖4,傳感器310還包括虛擬機信息獲取單元4006。虛擬機信息獲取單元4006與傳感器310所連接的服務器300通信,從服務器300 接收關于服務器300上的虛擬機304-306的信息。優(yōu)選地,傳感器310的虛擬機信息獲取 單元4006和服務器300無線通信。虛擬機信息獲取單元4006可以被動地接收服務器300中的代理程序307發(fā)送的 數(shù)據(jù)??商鎿Q地,虛擬機信息獲取單元4006可以主動地向服務器300請求虛擬機的相關信 息。虛擬機信息獲取單元4006還可以周期性地向服務器300發(fā)送請求,并把服務器300返 回的虛擬機信息寫入到虛擬機信息列表4004,從而虛擬機信息列表4004能夠保持所有虛 擬機的更新信息,包括新虛擬機的創(chuàng)建、老虛擬機的消除、遷移等。參見圖4,傳感器310還包括位置信息計算單元4007。位置信息計算單元4007用 于計算并存儲傳感器310自身的位置,從而得到包含該傳感器的服務器300的位置。常規(guī)的GPS定位技術并不適合用于計算傳感器310的位置,這是因為本發(fā)明主要 應用在大規(guī)模、高密度的數(shù)據(jù)中心。首先,GPS定位技術需要接收衛(wèi)星信號,而數(shù)據(jù)中心被 部署在建筑物內(nèi)部,建筑物內(nèi)部有些地方信號質(zhì)量不理想會導致GPS定位失效。此外,GPS 定位技術提供的精度不足以準確地計算傳感器310的位置。在大規(guī)模數(shù)據(jù)中心內(nèi),單個機 架上往往可以安裝成百上千臺服務器300,因此相鄰服務器300之間的距離很小,需要能夠 提供更高精度的定位技術。位置信息計算單元4007可以采用各種方法來實現(xiàn)在建筑物內(nèi)部的高精度定位。 例如,定位方法的原理可以是三角測量法、單邊測量法、或多邊測量法。此外,根據(jù)是否有 “錨點”,可以大致地把定位方法分為兩類無錨點算法和有錨點算法。無錨點算法中,無需 預先設置的位置信息,僅根據(jù)局部距離值來定位。已公開的此類算法有例如AFL算法和ABC 算法。有錨點算法依賴于某些已知座標位置的節(jié)點。這種定位算法需要預先定位多個錨點。 位置信息計算單元4007通過計算接收信號的強度、接收信號的到達時間差、或通過天線估 計接收信號的到達角度等,來計算自身的位置信息。根據(jù)本發(fā)明的一個優(yōu)選實施方式,在數(shù)據(jù)中心所在的建筑物內(nèi)提供多個錨點(基 準信號源),其位置固定并且座標已知。多個基準信號源能夠覆蓋整個建筑物內(nèi)的傳感器節(jié) 點,從而每個傳感器接收多個基準信號源的信號,并利用基準信號源的座標來計算自己的 精確位置。在另一種替換實施方式中,基準信號源不必覆蓋整個建筑物,從而降低對基準信 號源的通信范圍的要求。然后,計算基準信號源所覆蓋部分的傳感器的精確位置,再以此遞 推得到其它傳感器的位置?;鶞市盘栐匆部梢杂杀还潭ㄎ恢们易鶚艘阎膫鞲衅?10來實現(xiàn)。應當指出,本發(fā)明并不局限于任何特定的方法來來定位傳感器310的精確位置。 例如,本發(fā)明可以采用無錨點的定位方法,即,不需要固定錨點。關于ad-hoc無線網(wǎng)絡中的 分布式定位方法的進一步信息可以參見Distributed localization in wireless sensor networks :a quantitative comparison, Computer Networks 43(2003)499-518, Koen Langendoen,etc.盡管在圖4所示的示例中,每個傳感器310通過位置信息計算單元4007來計算自身位置信息的功能,即,傳感器310的位置信息計算是分布式進行的,但是本發(fā)明不限于 此,傳感器310的位置信息可以在外部集中式進行計算,然后把計算結果發(fā)送給各個傳感 器 310。在位置信息計算單元4007計算出傳感器310的位置之后,位置信息計算單元4007 把傳感器310的位置信息保存在存儲器4003中。存儲器4003在位置信息存儲單元4005 中保存位置信息計算單元4007輸入的位置信息。在服務器300頻繁移動的情況下,位置信息計算單元4007可以周期性地計算位置 信息,這樣,即使傳感器310隨著服務器300移動,位置信息存儲單元4005也能夠保存?zhèn)鞲?器310和服務器300的更新位置信息。另一方面,如果服務器300不頻繁移動,則位置信息 計算單元可以僅在初始化時計算傳感器310的位置信息,或者在接收到指令(例如Reset 指令)時計算傳感器310的位置信息。盡管在圖4所示的示例中,位置信息存儲單元4005和虛擬機信息列表4004分離 地實現(xiàn),在替換實施方式中,位置信息存儲單元4005和虛擬機信息列表4004可以聯(lián)合地實 現(xiàn),即把傳感器310(即,服務器300)的位置信息與傳感器存儲的虛擬機信息記錄在一起。 例如,可以在圖6所示的虛擬機信息列表4004中增加一列以保存位置信息計算單元4007 計算的位置信息。參見圖4,傳感器310還包括電源4008。根據(jù)本發(fā)明的優(yōu)選實施例,所述電源4008 由電池實現(xiàn),從而傳感器310具有獨立的電源,即使服務器300宕機,傳感器也能正常工作。 另一方面,傳感器310也可以具有外接電源插口,以從外部獲取電源。例如,某些安裝服務 器的機架上提供額外的電源接口,可以供傳感器310使用。參見圖4,傳感器310還包括虛擬機信息搜索單元4002。虛擬機信息搜索單元4002 與通信單元4001相連接,從通信單元4001接收對某個目標虛擬機(VMtmget)的查詢。虛擬 機信息搜索單元4002還與存儲器4003相連接,并在虛擬機信息列表4004中搜索目標虛擬 機VMtoget。如果在虛擬機信息列表4004中找到了目標虛擬機VMtoget,則把搜索命中的結果 通知給通信單元4001。隨后,通信單元4001通知發(fā)出搜索請求的傳感器。圖7示出根據(jù)本發(fā)明實施例的搜索虛擬機的方法的示例流程圖700。如圖1、圖3、圖5所示,虛擬機被部署在至少一個服務器上,每個服務器都附有一 個傳感器并與其通信,所述傳感器相互通信以組成通信網(wǎng)絡。圖7所示的方法700包括如 下步驟步驟S705,傳感器獲取虛擬機信息。具體而言,每個傳感器310獲取并存儲與該傳感器連接的服務器300中的虛擬機 的信息。參見圖3-4可知,傳感器310通過虛擬機信息獲取單元4006與服務器300通信, 以獲取部署在服務器300上的虛擬機的相關信息。步驟S710,傳感器獲取位置信息。具體而言,每個傳感器310計算并存儲該傳感器的位置信息。在圖4的示例中,位 置信息計算單元4007計算傳感器310的位置信息,并存儲在位置信息存儲單元4005中???替換地,位置信息不是在各個傳感器310內(nèi)計算,而是在外部集中地計算并發(fā)送到傳感器 310。根據(jù)本發(fā)明的一個實施例,物理服務器的位置不被移動,虛擬機不被動態(tài)創(chuàng)建、遷移等,則步驟S705、S710可以僅在初始化時執(zhí)行。這種情況下,搜索方法從以下步驟S715開 始。根據(jù)本發(fā)明的另一個實施例,物理服務器的位置被頻繁移動,并且虛擬機被動態(tài)創(chuàng)建, 則步驟S705和步驟S710周期地執(zhí)行,以實時獲取最新的信息。步驟S715,傳感器接收搜索請求,其中搜索請求包含目標虛擬機的標識符
(VMtarget) 。根據(jù)本發(fā)明的優(yōu)選實施例,提供了一種搜索裝置(以下參見圖8-9進一步描述)。 搜索裝置用于提供輸入搜索請求的界面,所述搜索裝置能夠與至少一個傳感器310通信, 以把搜索請求發(fā)送給傳感器310。所述搜索裝置可以具有固定位置,也可以是便攜式的。當 搜索裝置是便攜式時,優(yōu)選地,搜索裝置能夠計算并顯示自己的當前位置。步驟S720,在所述多個傳感器310組成的傳感器網(wǎng)絡500中傳輸所述搜索請求??梢圆捎枚喾N方式來在傳感器網(wǎng)絡500中轉(zhuǎn)發(fā)(或傳播)搜索請求。例如,傳感器 網(wǎng)絡500是ad-hoc無線網(wǎng)絡時,每個傳感器接收到搜索請求后,搜索自身的虛擬機列表信 息,如果沒有搜索到目標虛擬機的標識符,則以廣播方式向相鄰的傳感器轉(zhuǎn)發(fā)該搜索請求, 從而保證搜索請求能夠到達傳感器網(wǎng)絡中的每一個傳感器。以廣播方式轉(zhuǎn)發(fā)消息(即搜索 請求)比較簡單,而且適應于傳感器網(wǎng)絡的拓撲結構頻繁變化的情景,但是可能會導致網(wǎng) 絡流量過大而擁堵??商鎿Q地,在傳感器網(wǎng)絡的拓撲結構比較穩(wěn)定時,各個傳感器可以維護 通往相鄰傳感器的路由信息,根據(jù)路由表來向相鄰傳感器轉(zhuǎn)發(fā)搜索請求。步驟S725,存儲所述目標虛擬機的標識符的傳感器返回自身的位置信息。具體而言,當傳感器310接收到搜索請求后,在步驟S705得到的虛擬機信息中進 行搜索,當搜索到目標虛擬機時,傳感器310返回步驟S710計算得到的位置信息。所述位置信息可以返回給最先接收到搜索請求的傳感器。所述位置信息還可以進 一步返回到輸入搜索請求的搜索裝置。所述搜索裝置具有顯示器,用于顯示所述位置信息。圖8示出用于實現(xiàn)圖7所示的方法流程的系統(tǒng)800。圖8所示的系統(tǒng)800包括多個傳感器801a、802a、803a、804a、805a、806a以及多個 服務器801b、802b、803b、804b、805b、806b,每個服務器都有一個相應的傳感器與其相連。圖 8的系統(tǒng)800還包括搜索裝置810。圖9顯示根據(jù)本發(fā)明的優(yōu)選實施例的搜索裝置810的基本結構。搜索裝置810包括搜索請求輸入裝置9001、通信單元9002、位置信息計算單元 9003、路徑顯示單元9004、地圖存儲單元9005。搜索請求輸入裝置9001用于接收用戶(例如,管理員)的虛擬機位置搜索請求。 所述虛擬機位置搜索請求包含目標虛擬機的標識符。通信單元9002用于與傳感器通信。參見圖7的步驟S715,搜索請求輸入裝置9001接收用戶輸入的虛擬機位置搜索請 求后,通過通信單元9002轉(zhuǎn)發(fā)給傳感器。例如,參見圖8,把虛擬機位置搜索請求傳輸給相 鄰的傳感器804a。在圖8所示的示例中,目標虛擬機例如為服務器806b上部署的虛擬機 806c。參見圖7的步驟S725,具有目標虛擬機的傳感器806a的位置信息被返回到接收搜 索請求的傳感器804a,隨后傳感器804a把位置信息返回給搜索裝置810的通信單元9002。所述搜索裝置810的顯示單元9004可以顯示通信單元9002接收的位置信息。
根據(jù)本發(fā)明的優(yōu)選實施方式,所述搜索裝置810還包括地圖存儲單元9005,用于 存儲整個數(shù)據(jù)中心的地圖。這樣,基于所述位置信息和地圖信息,顯示單元9004可以在整 個數(shù)據(jù)中心的地圖上顯示目標虛擬機的位置。根據(jù)本發(fā)明的優(yōu)選實施方式,所述搜索裝置810還包括位置信息計算單元9004。 當搜索裝置810不具有固定位置,可以便攜移動時,位置信息計算單元9004計算搜索裝置 810的位置?;谒阉餮b置的位置信息、目標虛擬機的位置信息、地圖存儲單元9005存儲的 地圖信息,顯示單元9004計算并顯示從當前位置到目標虛擬機的位置的路徑。優(yōu)選地,所述搜索裝置810還包括提示單元(圖9未示出),用于向返回所述目標 虛擬機的位置信息的傳感器806a發(fā)送消息,使得該傳感器806a發(fā)出可聽信號或可視信號。 這是因為在高密度的數(shù)據(jù)中心,單個服務器機架上可以安裝多達幾百臺服務器,即使獲得 了目標虛擬機的精確位置信息(即,服務器806b的位置信息),也難以從相鄰放置的大量服 務器中迅速找到哪個服務器是目標服務器。通過使所述傳感器806a發(fā)出聲音或其它可感 知信號,便于管理人員迅速地找到該目標服務器806b。替換地,可以使目標服務器806b發(fā) 出聲音或其它可感知信號。根據(jù)本發(fā)明的替換實施例,所述搜索裝置也可以由傳感器310實現(xiàn),S卩,在某個傳 感器310上增加輸入裝置以允許輸入搜索請求、顯示裝置以顯示位置信息。圖10示出根據(jù)本發(fā)明實施例的管理數(shù)據(jù)計算系統(tǒng)中的虛擬機位置的方法的示例 流程圖1000,其中數(shù)據(jù)計算系統(tǒng)包括多個服務器,至少一個服務器上部署有虛擬機,以及每 個服務器上安裝有一個傳感器,所述多個傳感器組成傳感器網(wǎng)絡,所述方法包括步驟S1005,傳感器獲取虛擬機信息。具體而言,每個傳感器獲取并存儲與該傳感器連接的服務器中的虛擬機的信息, 例如,通過圖4的虛擬機信息管理單元4006從服務器獲取虛擬機信息。步驟S1010,傳感器獲取位置信息。具體而言,每個傳感器計算并存儲該傳感器自己的位置信息。例如,通過圖4的位 置信息計算單元4007獲取位置信息。步驟S1015,顯示每個虛擬機的位置信息。具體而言,基于每個傳感器的位置信息和每個傳感器的虛擬機信息,顯示每個虛 擬機的位置信息。虛擬機的位置信息可以顯示在圖9所示的搜索裝置810的顯示單元9004上。當 搜索裝置810包括地圖存儲單元9005時,顯示單元9004可以在整個數(shù)據(jù)中心的地圖上顯 示所有虛擬機的位置。優(yōu)選地,每個傳感器存儲的與該傳感器連接的服務器中的虛擬機的信息還包括指 示虛擬機的至少一個以下狀態(tài)的信息存活、終結、已遷移、不活躍等,如圖6所示。這樣,在 搜索裝置810上顯示各個虛擬機的位置時,還可以顯示各個虛擬機的各種狀態(tài)信息。以上參照圖1-10詳細描述了在大規(guī)模計算中心中搜索以及顯示虛擬機位置的方 法、裝置以及系統(tǒng)。應當指出,本發(fā)明的方法、裝置及系統(tǒng)不僅限于搜索虛擬機位置,還可以用于搜索 數(shù)據(jù)中心中的其它軟件、硬件資源。例如,如果在服務器上部署了其它應用程序,可以利用 傳感器獲取應用程序的相關信息,從而獲取該應用程序的位置信息。因此,本發(fā)明說明書中的“虛擬機”應當被廣義理解為物理服務器上部署的任何虛擬資源,例如在物理服務器上 部署的web服務器、ftp服務器、email服務器、或其它提供服務或代理的應用程序。例如, 傳感器可以獲取與之相連的物理服務器上部署的各種應用程序(例如web服務、ftp服務、 email服務等)的標識符,其中數(shù)據(jù)中心的管理員為各個應用程序分配唯一的標識符。此外,本發(fā)明還可以用于搜索某個物理服務器的位置信息,或者用于搜索與某個 服務器相連接的其它硬件設備(例如打印機)的位置信息。應當指出,可以許多方式來實現(xiàn)本發(fā)明的方法和系統(tǒng)及裝置。例如,可通過軟件、 硬件、固件或者軟件、硬件、固件的任何組合來實現(xiàn)本發(fā)明的方法和裝置。用于所述方法的 步驟的上述順序僅是為了進行說明,本發(fā)明的方法的步驟不限于以上具體描述的順序,除 非以其它方式特別說明。此外,在一些實施例中,還可將本發(fā)明實施為記錄在記錄介質(zhì)中的 程序,這些程序包括用于實現(xiàn)根據(jù)本發(fā)明的方法的機器可讀指令。因而,本發(fā)明還覆蓋存儲 用于執(zhí)行根據(jù)本發(fā)明的方法的程序的記錄介質(zhì)。雖然已經(jīng)通過示例對本發(fā)明的一些特定實施例進行了詳細說明,但是本領域的技 術人員應該理解,以上示例僅是為了進行說明,而不是為了限制本發(fā)明的范圍。本領域的技 術人員應該理解,可在不脫離本發(fā)明的范圍和精神的情況下,對以上實施例進行修改。本發(fā) 明的范圍由所附權利要求來限定。
權利要求
1.一種用于搜索虛擬資源的位置的方法,所述虛擬資源部署在至少一個服務器上,其 中每個服務器都附有一個傳感器并與其通信,所述傳感器相互通信以組成通信網(wǎng)絡,每個 傳感器存儲有與該傳感器連接的服務器中的虛擬資源的標識符以及該傳感器的位置信息, 所述方法包括所述至少一個傳感器接收搜索虛擬資源的搜索請求,所述搜索請求包含該虛擬資源的 標識符;在所述傳感器組成的通信網(wǎng)絡中傳輸所述搜索請求;存儲有該虛擬資源的標識符的傳感器返回自身的位置信息。
2.根據(jù)權利要求1的方法,其中所述多個傳感器組成的是ad-hoc無線網(wǎng)絡。
3.根據(jù)權利要求1的方法,還包括每個傳感器獲取與該傳感器連接的服務器中的虛擬資源的信息,所述虛擬資源的信息 包括所述虛擬資源的標識符。
4.根據(jù)權利要求3的方法,所述虛擬資源的信息還包括指示所述虛擬資源的至少一個 以下狀態(tài)的信息存活、不活躍。
5.根據(jù)權利要求1的方法,還包括每個傳感器獲取該傳感器的位置信息,所述每個傳 感器獲取該傳感器的位置信息進一步包括每個傳感器通過接收多個基準信號源的信號來計算自己的位置,其中所述多個基準信 號源被固定在所述服務器周圍。
6.根據(jù)權利要求1的方法,還包括返回所述位置信息的傳感器接收要求發(fā)出可聽信號或可視信號的消息,并且根據(jù)所述 消息發(fā)出可聽信號或可視信號。
7.根據(jù)權利要求1的方法,還包括計算并顯示到達返回所述位置信息的所述傳感器的路徑。
8.一種數(shù)據(jù)計算系統(tǒng),包括多個服務器,至少一個服務器上部署有虛擬資源;多個傳感器,每個傳感器安裝到一個服務器上;其中每個傳感器包括通信單元,用于與其它傳感器的通信單元通信以使所述多個傳感器組成通信網(wǎng)絡,所 述通信單元還用于接收用于搜索所述虛擬資源的搜索請求,所述搜索請求包含該虛擬資源 的標識符;位置信息計算單元,用于計算并存儲該傳感器的位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝的服務器通信,以獲取該服務器上部 署的虛擬資源的標識符;虛擬資源信息存儲單元,用于存儲虛擬資源信息獲取單元獲取的虛擬資源的標識符;虛擬資源信息搜索單元,用于搜索所述虛擬資源信息存儲單元以查找該虛擬資源的標 識符,如果搜索到該虛擬資源的標識符,返回所述位置信息計算單元計算的位置信息。
9.根據(jù)權利要求8的數(shù)據(jù)計算系統(tǒng),所述多個傳感器組成ad-hoc無線網(wǎng)絡。
10.根據(jù)權利要求8的數(shù)據(jù)計算系統(tǒng),所述傳感器還包括電池單元。
11.根據(jù)權利要求8的數(shù)據(jù)計算系統(tǒng),所述虛擬資源信息存儲單元還存儲指示虛擬資源的至少一個以下狀態(tài)的信息存活、不活躍。
12.根據(jù)權利要求8的數(shù)據(jù)計算系統(tǒng),還包括多個基準信號源,所述每個傳感器的位置信息計算單元通過接收基準信號源的信號來 計算位置信息。
13.根據(jù)權利要求8的數(shù)據(jù)計算系統(tǒng),還包括搜索裝置,其中所述搜索裝置包括搜索請求輸入單元,用于輸入搜索請求,所述搜索請求包括該虛擬資源的標識符,以及通信單元,用于與至少一個傳感器通信,以及用于接收搜索到所述該虛擬資源的傳感器所返回的位置信息。
14.根據(jù)權利要求13的數(shù)據(jù)計算系統(tǒng),所述搜索裝置還包括路徑計算及顯示單元,用于根據(jù)所述位置信息來計算并顯示到達發(fā)送所述位置信息的 傳感器的路徑。
15.一種傳感器,用于被安裝到服務器上,所述服務器上部署有虛擬資源,所述傳感器 包括通信單元,用于與其它傳感器的通信單元通信以使所述傳感器與其它傳感器組成通信 網(wǎng)絡,所述通信單元還用于接收用于搜索所述虛擬資源的搜索請求,所述搜索請求包含該 虛擬資源的標識符;位置信息計算單元,用于計算并存儲該傳感器的位置信息;虛擬資源信息獲取單元,用于與該傳感器所安裝在的服務器通信,以獲取該服務器上 部署的虛擬資源的標識符;虛擬資源信息存儲單元,用于存儲虛擬資源信息獲取單元獲取的虛擬資源的標識符;虛擬資源信息搜索單元,用于搜索所述虛擬資源信息存儲單元以查找該虛擬資源的標 識符,如果搜索到該虛擬資源的標識符,返回所述位置信息計算單元計算的位置信息。
16.根據(jù)權利要求15的傳感器,所述通信單元遵照ad-hoc無線通信協(xié)議進行通信。
17.根據(jù)權利要求15的傳感器,還包括電源單元。
18.根據(jù)權利要求15的傳感器,所述虛擬資源信息存儲單元還存儲指示虛擬資源的至 少一個以下狀態(tài)的信息存活、不活躍。
19.根據(jù)權利要求15的傳感器,其中傳感器的位置信息計算單元通過接收多個基準信 號源的信號來計算位置信息。
20.一種用于搜索數(shù)據(jù)計算系統(tǒng)中的虛擬資源的位置的終端裝置,其中所述數(shù)據(jù)計算 系統(tǒng)包括多個服務器,每個服務器與一個傳感器相連接,所述傳感器組成通信網(wǎng)絡,以及至 少一個服務器上部署有所述虛擬資源,所述終端裝置包括虛擬資源搜索請求輸入單元,用于輸入對虛擬資源的搜索請求,所述搜索請求包括該 虛擬資源的標識符;通信單元,用于與所述多個傳感器中的至少一個傳感器通信,以把搜索請求發(fā)送給該 傳感器;位置信息計算單元,用于計算所述終端裝置的位置;路徑計算單元,用于基于傳感器返回的該虛擬資源的位置信息,計算從終端裝置的位 置到該虛擬資源的路徑;顯示單元,用于顯示路徑計算單元所計算的路徑信息。
全文摘要
本發(fā)明涉及在大規(guī)模計算系統(tǒng)中搜索虛擬資源的位置的方法、裝置和系統(tǒng)。所述虛擬資源部署在至少一個服務器上,其中每個服務器都附有一個傳感器并與其通信,所述傳感器相互通信以組成通信網(wǎng)絡,每個傳感器獲取與該傳感器連接的服務器中的虛擬資源的信息,每個傳感器獲取該傳感器的位置信息,所述方法包括任意一個傳感器接收搜索請求,搜索請求包含目標虛擬資源的標識符;在所述多個傳感器組成的網(wǎng)絡中發(fā)送所述搜索請求;存儲有所述目標虛擬資源的標識符的傳感器返回自身的位置信息。
文檔編號H04W64/00GK101998629SQ20091017102
公開日2011年3月30日 申請日期2009年8月28日 優(yōu)先權日2009年8月28日
發(fā)明者何樂, 吳玉會, 王慶波, 趙陽, 鄒志樂, 金涬 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1