專利名稱:虛擬機ip地址的控制方法及裝置的制作方法
技術領域:
本發(fā)明涉及計算機技術領域,特別是涉及ー種虛擬機IP地址的控制方法及裝置。
背景技術:
隨著計算機硬件處理能力的提高和虛擬化技術的發(fā)展,構建以虛擬化技術為基礎的服務平臺,特別是融合了虛擬化技術的云計算平臺,可以有效地擴大硬件的容量,提高資源利用率,簡化軟件配置過程,進而降低企業(yè)運行和維護計算機軟硬件的成本。在應用了虛擬化技術的系統(tǒng)里,可以將計算機的物理資源抽象和模擬為邏輯資源,計算機硬件如中央處理器、內(nèi)存、磁盤等物理資源,被看作是可以動態(tài)管理的邏輯資源池。以這些邏輯資源為基礎,通過虛擬化技木,從硬件角度上講,可以將一臺服務器或一個服務集群虛擬為若干個 服務器或服務集群;從系統(tǒng)角度上,通過對邏輯資源的管理和利用,可以在ー個虛擬化平臺上虛擬出若干相互隔離的服務系統(tǒng)或操作系統(tǒng)。虛擬化技術的應用在極大的提升了資源利用率的同時,也因其能夠在同一平臺同時實現(xiàn)不同的服務系統(tǒng),使得服務平臺能夠同時為多種不同系統(tǒng)需求的應用提供服務。虛擬化技術適應了計算機技術發(fā)展過程中服務需求多元化的需要,是云計算平臺最重要的支撐技術之一。在以虛擬化技術為基礎的云計算平臺中,為不同系統(tǒng)需求的應用提供服務的單元通常是虛擬機。虛擬機是在云計算平臺上,利用邏輯資源模擬出的、具有完整硬件功能和系統(tǒng)功能的、獨立運行的計算機系統(tǒng)。在云計算平臺中通常同時運行有多個虛擬機,并在多個虛擬機上運行不同的操作系統(tǒng),以滿足不同系統(tǒng)需求的應用需要。對于虛擬機的管理功能,通常是由運行于云計算平臺上的管理層軟件實現(xiàn)的,實現(xiàn)具體管理功能的軟件,可以稱之為平臺管理模塊。由于云計算平臺提供服務通常都是基于互聯(lián)網(wǎng)的,其內(nèi)部運行的提供具體服務的虛擬機就需要使用一定的協(xié)議與互聯(lián)網(wǎng)進行通訊,比如IP協(xié)議(Internet Protocol,網(wǎng)絡互連協(xié)議)。運行于云計算平臺的若干虛擬機通常也需要組成網(wǎng)絡,以便于進行作業(yè)分配等管理,此時,虛擬機網(wǎng)絡地址分配就成了云計算平臺管理的ー個重要方面??焖?、準確、可控地為虛擬機分配網(wǎng)絡地址(IP地址),為實現(xiàn)快速、大規(guī)模、自動化地部署和配置虛擬機提供了必要條件。然而在現(xiàn)有技術中,為虛擬機分配網(wǎng)絡地址通常采用固定IP地址分配,或者基于DHCP (動態(tài)主機設置協(xié)議,Dynamic Host Configuration Protocol)協(xié)議的動態(tài)地址分配兩種方式。其中,固定IP地址分配的方式通常需要人工配置,耗費人力成本并且效率低下;基于DHCP協(xié)議的動態(tài)地址分配方式雖然可以實現(xiàn)為虛擬機分配IP地址的自動化,減少了相對效率低下的人工操作,但是這種分配方式在虛擬機啟動前不能預知IP地址與虛擬機的映射關系,不能滿足云計算平臺某些應用對于需要預先指定IP地址和虛擬機映射關系的需求。因此,迫切需要本領域技術人員解決的技術問題就在于,如何能夠可預測地自動分配虛擬機的IP地址,既可以達到I P地址的可預測性分配,以滿足云計算平臺中需要對虛擬機IP地址分配有預知性的應用的需要,同時又能夠實現(xiàn)虛擬機IP地址的自動分配以減少人工干預和提高平臺管理和運行效率。
發(fā)明內(nèi)容
本發(fā)明提供了虛擬機IP地址的控制方法及裝置,能夠可預測地分配虛擬機的IP地址,同時又兼顧了自動分配,減少了人工干預,提高了云計算平臺的管理和運行效率。本發(fā)明提供了如下方案一種虛擬機IP地址的控制方法,包括當接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設所述虛擬機的IP地址;向位于虛擬化層的代理發(fā)送所述創(chuàng)建指令,以便所述位于虛擬化層的代理按照所 述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址;根據(jù)所述虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系;以便在虛擬機啟動時,所述DHCP服務器根據(jù)所述靜態(tài)地址分配關系為所述MAC地址對應的虛擬機分配所述IP地址??蛇x的,在平臺管理模塊中維護ー全局虛擬機信息列表,用于保存已創(chuàng)建虛擬機的MAC地址及其IP地址之間的對應關系,所述方法還包括將所述被創(chuàng)建虛擬機的IP地址以及所述被創(chuàng)建虛擬機的MAC地址之間的對應關系加入到所述全局虛擬機信息列表??蛇x的,所述預設所述虛擬機的IP地址,包括接收手動指定的IP地址,將所述手動指定的IP地址預設為所述虛擬機的IP地址;或者,根據(jù)所述全局虛擬機信息列表,自動選取空閑的IP地址,將所述空閑的IP地址預設為所述虛擬機的IP地址??蛇x的,還包括當接收到刪除虛擬機的刪除指令時,向所述位于虛擬化層的代理發(fā)送所述刪除指令,以便所述位于虛擬化層的代理按照所述刪除指令刪除虛擬機;在虛擬機被刪除后,刪除所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并刪除所述DHCP服務器中被刪除虛擬機對應的所述靜態(tài)地址分配關系??蛇x的,還包括當接收到變更虛擬機IP地址的變更指令吋,預設所述虛擬機的變更后IP地址;根據(jù)被變更虛擬機的MAC地址以及所述變更后IP地址,變更所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并變更DHCP服務器的靜態(tài)地址分配關系;以便在該虛擬機重新獲取IP地址時,所述DHCP服務器根據(jù)所述更新后的靜態(tài)地址分配關系為該虛擬機分配所述變更后IP地址。一種虛擬機IP地址的控制裝置,包括預設單元,用于當接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設所述虛擬機的IP地址;指令發(fā)送單元,用于向位于虛擬化層的代理發(fā)送所述創(chuàng)建指令,以便所述位于虛擬化層的代理按照所述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址;關系更新単元,用于根據(jù)所述虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系;以便在虛擬機啟動時,所述DHCP服務器根據(jù)所述靜態(tài)地址分配關系為所述MAC地址對應的虛擬機分配所述IP地址。可選的,在平臺管理模塊中維護ー全局虛擬機信息列表,用于保存已創(chuàng)建虛擬機的MAC地址及其IP地址之間的對應關系,所述裝置還包括列表變更單元,用于將所述被創(chuàng)建虛擬機的IP地址以及所述被創(chuàng)建虛擬機的MAC地址之間的對應關系加入到所述全局虛擬機信息列表??蛇x的,所述預設単元,包括
第一預設子単元,用于接收手動指定的IP地址,將所述手動指定的IP地址預設為所述虛擬機的IP地址;或者,第二預設子単元,用于根據(jù)所述全局虛擬機信息列表,自動選取空閑的IP地址,將所述空閑的IP地址預設為所述虛擬機的IP地址??蛇x的,還包括刪除指令收發(fā)單元,用于當接收到刪除虛擬機的刪除指令時,向所述位于虛擬化層的代理發(fā)送所述刪除指令,以便所述位于虛擬化層的代理按照所述刪除指令刪除虛擬機;關系刪除単元,用于在虛擬機被刪除后,刪除所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并刪除所述DHCP服務器中被刪除虛擬機對應的所述靜態(tài)地址分配關系??蛇x的,還包括預設變更地址單元,用于當接收到變更虛擬機IP地址的變更指令時,預設所述虛擬機的變更后IP地址;關系變更單元,用于根據(jù)被變更虛擬機的MAC地址以及所述變更后IP地址,變更所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并變更DHCP服務器的靜態(tài)地址分配關系;以便在該虛擬機重新獲取IP地址時,所述DHCP服務器根據(jù)所述更新后的靜態(tài)地址分配關系為該虛擬機分配所述變更后IP地址。根據(jù)本發(fā)明提供的具體實施例,本發(fā)明公開了以下技術效果通過本發(fā)明,可以在接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設虛擬機的IP地址;進而向位于虛擬化層的代理發(fā)送創(chuàng)建指令,以便位于虛擬化層的代理按照所述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址;然后,根據(jù)虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系,以便在虛擬機啟動吋,DHCP服務器根據(jù)其靜態(tài)地址分配關系為該MAC地址對應的虛擬機分配所述IP地址。通過以上的步驟,實現(xiàn)了可預測地為新創(chuàng)建虛擬機的IP地址,滿足了云計算平臺中對新創(chuàng)建虛擬機的IP地址分配的預知性,同時又能夠兼顧虛擬機IP地址的自動分配,減少了人工干預,提高了平臺的管理和運行效率。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I是本發(fā)明實施例提供的方法的流程圖;圖2是本發(fā)明實施例提供的預設虛擬機IP地址的流程圖;圖3是本發(fā)明實施例提供的刪除虛擬機時IP地址控制方法的流程
圖4是本發(fā)明實施例提供的變更虛擬機時IP地址控制方法的流程圖;圖5是本發(fā)明實施例提供的裝置的示意圖。
具體實施例方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。為了便于理解本發(fā)明實施例提供的方案,首先需要說明的是,ー個典型的云計算平臺模型,通常自下而上地由以下幾個層次構成宿主機、虛擬化層、云管理平臺、服務層。其中,宿主機通常指服務器的物理硬件資源;虛擬化層主要利用虛擬化軟件實現(xiàn)將物理資源抽象為邏輯資源;云管理平臺主要指負責對虛擬機的管理以及向用戶或管理者提供操作接ロ的軟件或服務,其中具體實現(xiàn)某個或某些具體管理功能的軟件可以稱為平臺管理模塊;而服務層主要指以邏輯資源為基礎創(chuàng)建并運行的向外提供服務的若干虛擬機。運行于云計算平臺上的若干虛擬機通常通過網(wǎng)絡提供服務,當虛擬機需要進行網(wǎng)絡通信吋,通常需要為虛擬機分配IP地址。在已有的技術中,為虛擬機分配IP地址主要有兩種方式I、固定IP地址分配。以這種方式為虛擬機分配IP地址,在已有的技術中有以下幾種常見的實現(xiàn)手段在虛擬機啟動后,通過云管理平臺的虛擬桌面或者虛擬機控制臺登錄到虛擬機中,手動設置虛擬機系統(tǒng)的IP地址;或在虛擬機啟動前,預先將虛擬機鏡像掛載到本地系統(tǒng),然后查找和修改虛擬機的網(wǎng)絡配置文件或者置入網(wǎng)絡配置腳本,然后保存鏡像文件,使虛擬機在啟動后獲得預期的IP地址;以及通過提供修改虛擬機鏡像文件功能及API的第三方工具來修改虛擬機鏡像文件,以達到使虛擬機啟動后獲得預期的IP地址的目的。2、基于DHCP的動態(tài)IP地址分配。以這種方式通過在云計算平臺上搭建的DHCP服務器為虛擬機自動分配IP地址,虛擬機只需要將自己的網(wǎng)絡配置方式設置為自動獲取IP地址,就可以在啟動后通過DHCP服務器獲取到IP地址,進而實現(xiàn)網(wǎng)絡通信并提供服務。由于在云計算平臺的某些應用的部署過程中,存在對虛擬機的IP地址分配有預知性的需求,即需要在虛擬機被創(chuàng)建時,或者虛擬機啟動前,為虛擬機分配預設的IP地址。已有的固定IP地址分配方式,雖然能夠實現(xiàn)虛擬機IP地址的預知性,但由于需要大量的手エ操作,效率低下且沒有很高的可靠性,不適應大規(guī)模部署和靈活管理的需求;基于DHCP的動態(tài)IP地址分配方式,是在虛擬機啟動后,由DHCP服務器從空閑的地址池中選取IP地址分配給虛擬機,不能在虛擬機啟動前預知虛擬機與其IP地址的映射關系。本發(fā)明實施例提供了一種虛擬機IP地址的控制方法及裝置,能夠在高效地實現(xiàn)虛擬機IP地址的自動分配和管理的同時,滿足虛擬機IP地址分配的可預測性需求。下面就對本發(fā)明實施例提供的虛擬機IP地址的控制方法進行詳細的介紹。
參見圖1,該方法可以包括以下步驟SlOl 當接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設所述虛擬機的IP地址;當需要在云計算平臺中部署ー個新增的虛擬機時,可以由用戶通過云管理平臺提供的服務或軟件操作接ロ,如網(wǎng)頁形式的用戶交互接ロ(Webn ),發(fā)送創(chuàng)建虛擬機的創(chuàng)建指令。云管理平臺,具體的可以是位于云管理平臺中的平臺管理模塊,接收到創(chuàng)建虛擬機的創(chuàng)建指令,并預設虛擬機的IP地址。在具體實現(xiàn)預設虛擬機的IP地址時,待創(chuàng)建虛擬機的IP地址可以由用戶根據(jù)具體需求手動指定,由平臺管理模塊接收并將用戶手動指定的IP地址預設為虛擬機的IP地址;也可以由平臺管理模塊從未被使用的空閑IP地址中選取一個空閑IP,預設為被創(chuàng)建虛擬機的IP地址。在具體應用過程中,也可以結合實際情況,綜合應用上述兩種預設虛擬機IP的方法,以實現(xiàn)更科學的預設虛擬機IP地址的流程,參見圖2。在接收到創(chuàng)建虛擬機的創(chuàng)建指令時,可以先檢測用戶是否已經(jīng)手動指定虛擬機IP地址,若未指定,則從未被使用的空閑IP地址中選取一個空閑IP地址,預設為被創(chuàng)建虛擬機的IP地址并執(zhí)行下一歩流程;若用戶指定了創(chuàng)建虛擬機的IP地址,則檢測用戶指定的IP地址是否合法(如是否與已分配IP地址沖突,是否合乎IP地址規(guī)則等),若合法則將用戶指定的IP地址預設為被創(chuàng)建虛擬機的IP地址,若不合法,則給予用戶相應的提示,并由用戶重新指定IP地址或者由系統(tǒng)分配IP地址預設為虛擬機的IP地址并執(zhí)行下一歩流程。此外,還可以由云管理平臺,具體的可以由平臺管理模塊維護ー個全局虛擬機信息列表,全局虛擬機信息列表中保存的信息,可以包括已存在的虛擬機標識信息,當前運行狀態(tài),虛擬機MAC地址與以及對應的IP地址等信息,利用全局虛擬機信息列表,可以更加方便的對云計算平臺的虛擬機實施管理。在創(chuàng)建ー個虛擬機時,如果用戶沒有為待創(chuàng)建虛擬機指定IP地址,可以利用全局虛擬機信息列表中的已分配的IP地址信息來確定可用的空閑IP地址,從可用的空閑IP地址中自動選取ー個IP地址,分配給被創(chuàng)建的虛擬機。在用戶指定了虛擬機的IP地址時,還可以根據(jù)全局虛擬機信息列表中的已分配的IP地址信息來檢測用戶為被創(chuàng)建的虛擬機指定的IP地址是否合法,例如檢測用戶指定的虛擬機IP是否與已分配的IP地址相沖突等。S102 :向位于虛擬化層的代理發(fā)送所述創(chuàng)建指令,以便所述位于虛擬化層的代理按照所述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址;例如,在某一云計算平臺,可以通過POST指令創(chuàng)建ー個虛擬機,具體的虛擬機創(chuàng)建指令可以包含如下用于指定虛擬機相關信息的參數(shù)name (string,必需)虛擬機名字disk_template (string,必需)虛擬機磁盤類型disks (list,必需)虛擬機磁盤描述,例如:[{"size": 100},{"size": 5}]os (string,必需)虛擬機操作系統(tǒng)類型pnode (string,可選)物理節(jié)點名稱
snode (string,可選)備用物理節(jié)點start (bool,可選)創(chuàng)建成功后是否啟動虛擬機ip_check(bool,可選)是否檢查虛擬機ip的有效性file_storage_dir(string,可選)存儲虛擬機磁盤文件路徑file_driver (string,可選)虛擬磁盤后端驅動ial locator (string,可選)調(diào)度器hypervisor (string,可選)虛擬機虛擬化類型hvparams (diet,可選)hypervisor 參數(shù) beparams (diet,可選)后端參數(shù),memory, vcpu 等template_name (string,必需)模板名稱user (string,必需)虛擬機 ownerip (string,必需)虛擬機ip地址netmask (string,必需)虛擬機 netmaskgw (string,必需)虛擬機網(wǎng)關bridge (string,必需)虛擬機對應的橋rate (string,必需)虛擬機對外限速inrate (string,必需)虛擬機流入流量限速generate_password (bool,必需)是否修改虛擬機密碼password (string,可選)虛擬機密碼vg (string,可選)虛擬機創(chuàng)建于那個Vguse_snapshot (bool,可選)是采用snapshot方式創(chuàng)建虛擬機use_dhcp (bool,可選)虛擬機是否采用dhcp模式skip_memory_check (bool,可選)創(chuàng)建虛擬機時是否做內(nèi)存數(shù)檢查需要說明的是,以上所述的各個參數(shù)是否為必需或可選,可以根據(jù)實際需要而定,在其他的云計算平臺中,可能會有不同的定義,甚至還可以有其他的參數(shù),等等。總之,以上這種定義方式僅僅是眾多方式中的ー種,用于舉例說明,并不應看作是對本發(fā)明保護范圍的限制。虛擬化層的代理是駐留在云計算平臺虛擬化層的程序或服務,對來自于上層(如云管理平臺)的對虛擬機的上述操作指令做出響應,并調(diào)動和組織相應的資源執(zhí)行操作指令。虛擬化層的代理實現(xiàn)了與云管理平臺的交互接ロ,同時也是云管理平臺對虛擬機的操作指令的執(zhí)行主體。當用戶創(chuàng)建虛擬機時,云管理平臺可以通過平臺管理模塊向位于虛擬化層的代理發(fā)送創(chuàng)建虛擬機的指令,虛擬化層的代理按照創(chuàng)建指令,調(diào)動和組織邏輯硬件資源來創(chuàng)建虛擬機。由于云計算平臺的虛擬機通常需要通過網(wǎng)絡向外提供服務,在虛擬化層的代理組織邏輯硬件資源創(chuàng)建虛擬機時,通常需要在虛擬機的邏輯硬件中加入至少一塊虛擬的網(wǎng)卡,同真實的網(wǎng)卡硬件一祥,虛擬的網(wǎng)卡同樣有自己的MAC地址。MAC地址用來定義網(wǎng)絡設備在網(wǎng)絡中的位置,通常具有全球唯一性,即每個網(wǎng)絡位置有它專屬的MAC地址,每個網(wǎng)卡設備對應ー個唯一的MAC地址。MAC地址由48比特長,12位的16進制數(shù)字組成,例如44-45-53-54-DD-0B就是ー個典型的MAC地址表達形式的示例。在網(wǎng)絡通信的底層物理傳輸中,是通過MAC地址來識別主機位置的,而在實現(xiàn)網(wǎng)絡通信的過程中,MAC地址通常與IP地址存在對應關系。在虛擬化層的代理創(chuàng)建虛擬機時,所使用的虛擬網(wǎng)卡也同樣有自己的MAC地址,虛擬化層的代理組織創(chuàng)建虛擬機所需的邏輯硬件并創(chuàng)建虛擬機時,可以將所使用的虛擬網(wǎng)卡的MAC地址返回給云管理平臺,具體的,可以返回給云管理平臺的平臺管理模塊。S103 :根據(jù)所述虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系;以便在虛擬機啟動時,所述DHCP服務器根據(jù)所述靜態(tài)地址分配關系為所述MAC地址對應的虛擬機分配所述IP地址。
DHCP是ー個網(wǎng)絡通信協(xié)議,為網(wǎng)絡中的主機分配IP是DHCP服務的主要用途之一。DHCP通常分為服務器端和客戶端兩個部分,使用DHCP服務時,可以將服務器端部署在用于提供DHCP服務的計算機上,位于同一網(wǎng)絡上的其他計算機通過DHCP客戶端與DHCP服務器端進行的一系列的通信,獲取DHCP服務器端分配的IP地址并部署客戶端的網(wǎng)絡通信環(huán)境,進而實現(xiàn)網(wǎng)絡通信。DHCP服務實現(xiàn)了 IP地址的集中管理和自動動態(tài)分配,節(jié)約了 IP地址資源,提高了 IP地址分配效率。DHCP服務的IP地址分配通常有以下幾種形式 靜態(tài)地址分配,為網(wǎng)絡中的特定計算機綁定固定的IP地址,被綁定的IP地址不會過期,通常靜態(tài)地址分配由網(wǎng)絡管理員人工實現(xiàn);靜態(tài)地址分配不適宜大規(guī)模使用,因其需要手工操作,且易造成IP地址浪費;·自動分配,這種方式下的DHCP客戶端將第一次從DHCP服務器端獲取的IP地址作為永久使用的IP地址,容易造成IP地址的浪費。 動態(tài)分配,這種分配方式下,DHCP服務器端IP地址池中選擇空閑IP地址分配給客戶端,同時與客戶端約定一定時長的IP地址租約期,租約期一到,DHCP服務器端可以重新為客戶端分配IP地址,或將不活躍的IP地址回收再利用,從而達到了節(jié)約IP地址資源,提高分配效率的目的,是DHCP服務最常使用的IP地址分配方式。在云計算平臺中,通常同時存在若干提供不同服務的虛擬機,為了實現(xiàn)高效的IP地址分配,通常需要部署DHCP服務,為平臺中的虛擬機分配IP地址。在本發(fā)明實施例提供的方法中,可以利用DHCP服務中的靜態(tài)地址分配方式,來實現(xiàn)在虛擬機創(chuàng)建時或者在虛擬機啟動前,對虛擬機IP地址的預知性。支持靜態(tài)地址分配方式的DHCP服務器端,通常會維護網(wǎng)絡中的客戶機的靜態(tài)地址分配關系,這種靜態(tài)地址分配關系可以是ー個靜態(tài)地址分配列表,列表中保存了靜態(tài)地址分配方式下客戶機的MAC地址與將要分配給客戶機的IP地址的映射關系。靜態(tài)地址分配列表可以以文件的形式存在,也可以嵌入在DHCP服務程序中并由DHCP服務器端提供相應的操作接ロ以實現(xiàn)諸如上述映射關系的插入、修改、刪除等操作。在接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設虛擬機的IP地址。然后將創(chuàng)建指令發(fā)送給虛擬化層的代理,在虛擬化層的代理根據(jù)指令創(chuàng)建虛擬機并返回被創(chuàng)建虛擬機的MAC地址后,可以根據(jù)預設的IP地址以及被創(chuàng)建虛擬機的MAC地址,來更新DHCP服務器中的靜態(tài)地址分配關系,即將預設的IP地址與被創(chuàng)建虛擬機的MAC的映射關系插入到DHCP服務器的靜態(tài)地址分配列表中。這樣,在新建的虛擬機啟動時,通過內(nèi)置的DHCP客戶端,就可以獲得預期的預設IP地址,從而在不必人工在虛擬機啟動后為其配置固定IP地址的同時,又利用了 DHCP服務器實現(xiàn)了為新創(chuàng)建的虛擬機自動分配預設的IP地址,實現(xiàn)了在虛擬機啟動前對齊IP地址的預知性,為以此為基礎的虛擬機高效管理打下了基礎。在一些常見的操作系統(tǒng)中,DHCP服務器端有的以網(wǎng)絡組件的形式提供給用戶,用戶只需安裝這些網(wǎng)絡組件就可以實現(xiàn)DHCP服務器的架設,另外也有ー些可以實現(xiàn)DHCP服務的第三方軟件,具體在實現(xiàn)本發(fā)明實施例提供的方法的過程中,可以根據(jù)DHCP服務器運行機制的不同,使用不同的方式來實現(xiàn)對DHCP服務器的靜態(tài)地址分配關系的更新。例如,有的DHCP服務器將靜態(tài)地址分配列表保存為文件,這種情況下,可以將新建虛擬機的預設IP地址與MAC地址的映射關系按照靜態(tài)地址分配列表文件的特定映射關系格式插入到該文件中,然后由DHCP服務器端重新加載靜態(tài)地址分配列表文件,從而實現(xiàn)了 DHCP服務器的靜態(tài)地址分配關系的更新。而對于有的DHCP服務器將靜態(tài)地址分配列表嵌入在DHCP服務 程序中并由DHCP服務器端提供相應的操作接ロ,此時,可以通過DHCP服務器端提供相應的操作接ロ,將新建虛擬機的預設IP地址與MAC地址的映射關系插入到嵌入在DHCP服務程序中靜態(tài)地址分配列表中,以實現(xiàn)了 DHCP服務器的靜態(tài)地址分配關系的更新。具體的,生成新建虛擬機的預設IP地址與MAC地址的映射關系,以及根據(jù)新建虛擬機的預設IP地址與MAC地址的映射關系更新DHCP服務器的靜態(tài)地址分配關系,可以由云管理平臺的平臺控制來實現(xiàn)。下面以ー款提供DHCP服務的軟件“Dnsmasq”為例,來說明ー下更新DHCP服務器中的靜態(tài)地址分配關系的過程。Dnsmasq是ー款可實現(xiàn)DHCP服務器端的軟件,可以實現(xiàn)IP地址的靜態(tài)分配,在云計算平臺中可以部署在作為DHCP服務器的某個虛擬機中,來為其他虛擬機提供DHCP服務。Dnsmasq以配置文件的方式保存軟件配置信息,在創(chuàng)建新的虛擬機,需要將其預設IP地址與虛擬機MAC地址的映射關系插入到DHCP服務器端的靜態(tài)地址分配關系中時,可以由平臺管理模塊將新建虛擬機的預設IP地址與其MAC地址的映射關系寫入到Dnsmasq的軟件配置文件中,在更新配置文件后,只需要向DHCP Server的進程發(fā)送ー個SIGHUP信號,既可以Dnsmasq重新加載配置文件,使更新后的地址綁定映射關系生效,使得新建的虛擬機在啟動后,通過Dnsmasq獲取到預設的IP地址。由于云計算平臺常常由多臺計算機組成服務集群,在每個服務器(或宿主機)上又運行有若干個虛擬機,具體在部署DHCP服務器時,可以在每個宿主機上創(chuàng)建單獨DHCP服務器端,也可以創(chuàng)建若干全局DHCP服務器端,或者根據(jù)服務功能等因素將不同的服務器,或不同的虛擬機劃分為不同的區(qū)域,在不同的區(qū)域上創(chuàng)建DHCP服務端來提供DHCP服務。云管理平臺,具體的可以是平臺管理模塊通過與DHCP Server所在的服務器上的代理程序進行通訊,來實現(xiàn)對DHCP服務器端的控制,如進行配置文件修改、發(fā)送控制信號等。此外,還可以由云管理平臺,具體的可以由平臺管理模塊維護ー個全局虛擬機信息列表,以便于管理平臺中的虛擬機信息。全局虛擬機信息列表中保存的信息,可以包括已存在的虛擬機標識信息,當前運行狀態(tài),虛擬機MAC地址與以及對應的IP地址等信息,ー個典型的全局虛擬機信息列表中保存的MAC地址與IP地址的映射關系示例如下所示{aa: 00:00:18: ea: d8:10. 108. 33. 120aa: 00:00: 7f: ca: 30:10. 108. 33. 172aa:00:00: 2a:9a: Ie: 10. 108. 33. 199
aa:00:00:30:79:6f: 10. 108. 33. 195aa: 00:00: 8e: d9: Oa: 10. 108. 33. 221aa:00:00:e 9:ee:8b: 10. 108. 33. 227aa:00:00:8a:be:b3:10. 108. 33. 61......}在新建虛擬機時,可以在全局虛擬機信息列表中加入被創(chuàng)建虛擬機的IP地址與其MAC地址的對應關系,以在創(chuàng)建虛擬機時更新全局虛擬機信息列表,使云管理平臺能夠根據(jù)更新后的全局虛擬機信息列表,實現(xiàn)對新建的虛擬機的管理操作。另外,在創(chuàng)建了新的虛擬機需要更新DHCP服務器中的靜態(tài)地址分配關系時,可以由云管理平臺,具體的可以是 平臺管理模塊,將更新后的全局虛擬機信息列表中虛擬機的IP地址與其MAC地址的對應關系數(shù)據(jù)發(fā)送給DHCP服務器,由DHCP服務器根據(jù)更新的虛擬機的IP地址與其MAC地址的對應關系數(shù)據(jù)更新靜態(tài)地址分配關系,使新建的虛擬機在啟動時通過DHCP服務器獲得預置的IP地址。以上所述的對本發(fā)明實施例提供的創(chuàng)建虛擬機過程中的虛擬機IP地址控制方法進行了詳細的介紹,應用本發(fā)明實施例提供的以上在創(chuàng)建虛擬機過程中的虛擬機IP地址控制方法,能夠有效的實現(xiàn)創(chuàng)建虛擬機時對其IP地址的預知,同時減少了人工干預,提供了平臺運行效率。在實際應用中,對虛擬機的操作除了創(chuàng)建虛擬機之外,還有可能因為某些原因,t匕如當不再需要某個虛擬機向外提供服務時,需要對虛擬機進行刪除操作,同時還應該將之前分配給該虛擬機的IP地址資源釋放出來,供其他虛擬機使用,以實現(xiàn)對有限的IP地址資源的重復利用。因此,對虛擬機IP地址的控制,還可以包括刪除虛擬機時的對IP地址的控制方法。而在本發(fā)明實施例中,在前述創(chuàng)建虛擬機過程中對其IP地址的控制方法基礎上,還提供了在刪除虛擬機時對IP地址的控制方法,參見圖3,該方法可以包括S301 :當接收到刪除虛擬機的刪除指令吋,向所述位于虛擬化層的代理發(fā)送所述刪除指令,以便所述位于虛擬化層的代理按照所述刪除指令刪除虛擬機;當需要在云計算平臺中刪除ー個虛擬機時,可以由用戶通過云管理平臺提供的操作接ロ,如網(wǎng)頁形式的用戶交互接ロ,發(fā)送刪除虛擬機的刪除指令。云管理平臺,具體的可以是位于云管理平臺中的平臺管理模塊,接收到刪除指令后,向虛擬化層的代理發(fā)送刪除指令,然后由虛擬化層的代理執(zhí)行虛擬機刪除操作。具體在刪除虛擬機時,可以根據(jù)用戶指令,在平臺管理模塊中維護的全局虛擬機信息列表中查找需要刪除的虛擬機的標識信息,在向虛擬化層的代理發(fā)送刪除指令的同時,將該標識信息也發(fā)送給虛擬化層的代理,以便虛擬化層的代理根據(jù)標識信息確定目標虛擬機并刪除。例如,通過DELETE命令可以實現(xiàn)從機群中刪除虛擬機。S302:在虛擬機被刪除后,刪除所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并刪除所述DHCP服務器中被刪除虛擬機對應的所述靜態(tài)地址分配關系。虛擬機被刪除后,其使用的IP地址可以被回收以便在需要時重新加以利用,在本發(fā)明實施例中創(chuàng)建虛擬機的過程中的IP控制方法的基礎上,當刪除ー個虛擬機后,可以將DHCP服務器中被刪除虛擬機對應的IP地址與MAC地址的靜態(tài)分配關系刪除,以及將全局虛擬機信息列表中記錄的被刪除虛擬機對應的IP地址與MAC地址之間的映射關系刪除。具體在刪除過程中,可以有不同的實現(xiàn)方式例如,可以在云管理平臺接收到刪除指令后,根據(jù)指令在全局虛擬機信息列表中查找目標虛擬機的標識信息,以及其IP地址和MAC地址的映射關系,然后基于這些信息,通過DHCP服務器端提供的操作接ロ將DHCP服務器中目標虛擬機對應的I P地址與MAC地址的靜態(tài)分配關系刪除,然后再刪除全局虛擬機信息列表中目標虛擬機的相關信息;也可以在云管理平臺接收到刪除指令后,根據(jù)指令在全局虛擬機信息列表中查找目標虛擬機的標識信息,并刪除其對應的IP地址和MAC地址的映射關系,然后根據(jù)刪除了目標虛擬機的IP地址和MAC地址對應關系的全局虛擬機信息列表,更新DHCP服務器中靜態(tài)地址分配列表,使DHCP服務器根據(jù)刪除了目標虛擬機的IP地址與MAC地址映射關系的靜態(tài)地址分配列表工作等。這樣,在刪除虛擬機后,更新了全局虛擬機信息列表中被刪除虛擬機的相關信息,以及刪除了 DHCP服務器中被刪除虛擬機對應的靜態(tài)地址分配關系,從而回收了被刪除虛擬機使用的IP地址。另外,在實際應用中,對虛擬機IP地址的操作還可以包括對虛擬機IP地址的變更。在需要對某個虛擬機的IP地址進行變更時,簡單的刪除和新建組合實施雖然其最終效果也可以達到虛擬機IP地址的變更,但這種方法系統(tǒng)開銷大,有時還需要重新部署虛擬機的服務,顯然缺乏科學性。而在本發(fā)明實施例中,在前述的創(chuàng)建虛擬機過程中對其IP地址的控制方法基礎上,還提供了在變更虛擬機時對IP地址的控制方法,參見圖4,該方法可以包括S401 :當接收到變更虛擬機IP地址的變更指令時,預設所述虛擬機的變更后IP地址;當需要變更云計算平臺中虛擬機的IP地址時,可以由用戶通過云管理平臺提供的操作接ロ,如網(wǎng)頁形式的用戶交互接ロ,發(fā)送變更虛擬機IP地址的變更指令。云管理平臺,具體的可以是位于云管理平臺中的平臺管理模塊,接收變更虛擬機IP地址的變更指令,并預設虛擬機的變更后IP地址。在具體實現(xiàn)預設虛擬機的變更后IP地址時,目標虛擬機的變更后IP地址可以由用戶根據(jù)具體需求手動指定,由平臺管理模塊接收并將用戶手動指定的IP地址預設為虛擬機的變更后IP地址;也可以由平臺管理模塊從未被使用的空閑IP地址中選取一個空閑IP,預設為被目標虛擬機的變更后IP地址。具體選擇何種方式,可以由用戶根據(jù)實際情況確定當需要對目標虛擬機IP地址進行有目的的變更時,可以由用戶根據(jù)需求手動為目標虛擬機指定所要變更的目標IP地址;而在某些情況下,僅僅是需要將目標虛擬機的IP地址另行分配,用戶則可以不指定而是由云管理平臺選取ー個空閑的IP地址作為目標虛擬機的變更后IP地址。S402 :根據(jù)被變更虛擬機的MAC地址以及所述變更后IP地址,變更所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并變更DHCP服務器的靜態(tài)地址分配關系;以便在該虛擬機重新獲取IP地址時,所述DHCP服務器根據(jù)所述更新后的靜態(tài)地址分配關系為該虛擬機分配所述變更后IP地址。 在接收到變更虛擬機IP地址的變更指令并預設了目標虛擬機的變更后IP地址后,云管理平臺,具體的可以是位于云管理平臺中的平臺管理模塊,可以在全局虛擬機信息列表中查找目標虛擬機的相關信息,以便更新全局虛擬機信息列表中記錄的目標虛擬機對應的MAC地址與IP地址之間的映射關系,即將全局虛擬機信息列表中記錄的目標虛擬機的MAC地址與原IP地址之間的映射關系,修改為MAC地址與變更后IP地址之間的映射關系。同時,還需要更新DHCP服務器中目標虛擬機對應的MAC地址與IP地址的靜態(tài)分配關系,即將DHCP服務器中目標虛擬機對應的MAC地址與原IP地址的靜態(tài)分配關系,變更為目標虛擬機的MAC地址與變更后IP地址向對應的靜態(tài)分配關系。然后可以通過由DHCP客戶端向所在網(wǎng)絡發(fā)送DHCPDISCOVER信息,啟動DHCP客戶端從DHCP服務器端獲取DHCP服務的過程,以便虛擬機從DHCP服務器重新獲得IP地址;或者通過重新啟動虛擬機的方式,也可以使虛擬機重新從DHCP服務器獲取IP地址。當然在實際應用中,還有其他使DHCP客戶端重新獲取IP地址的方法,在此不再贅述。此時,由于DHCP服務器中的靜態(tài)分配關系列表已經(jīng)保存了該虛擬機的MAC地址與變更后IP地址的靜態(tài)分配關系,這就使得虛擬機重新獲取的IP地址變更為預設的變更后IP地址。與本發(fā)明實施例提供的虛擬機IP地址的控制方法相對應,本發(fā)明實施例還提供 了一種虛擬機IP地址的控制裝置,參見圖5,該裝置具體可以包括預設單元501,用于當接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設所述虛擬機的IP地址;指令發(fā)送單元502,用于向位于虛擬化層的代理發(fā)送所述創(chuàng)建指令,以便所述位于虛擬化層的代理按照所述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址;關系更新単元503,用于根據(jù)所述虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系;以便在虛擬機啟動時,所述DHCP服務器根據(jù)所述靜態(tài)地址分配關系為所述MAC地址對應的虛擬機分配所述IP地址。另外,可以在平臺管理模塊中維護ー全局虛擬機信息列表,用于保存已創(chuàng)建虛擬機的MAC地址及其IP地址之間的對應關系,所述裝置還可以包括列表變更單元,用于將所述被創(chuàng)建虛擬機的IP地址以及所述被創(chuàng)建虛擬機的MAC地址之間的對應關系加入到所述全局虛擬機信息列表。在創(chuàng)建虛擬機時,可以由用戶指定待創(chuàng)建虛擬機的IP地址,也可以由系統(tǒng)為待創(chuàng)建虛擬機自動選取空閑的IP地址,所述預設単元,可以包括第一預設子単元,用于接收手動指定的IP地址,將所述手動指定的IP地址預設為所述虛擬機的IP地址;第二預設子単元,用于根據(jù)所述全局虛擬機信息列表,自動選取空閑的IP地址,將所述空閑的IP地址預設為所述虛擬機的IP地址。在實際應用中,對虛擬機的管理除了創(chuàng)建虛擬機之外,還可能在某些應用場合中需要對虛擬機進行刪除操作,同時還應該將之前分配給該虛擬機的IP地址資源釋放出來,供其他虛擬機使用。所述裝置還可以包括刪除指令收發(fā)單元,用于當接收到刪除虛擬機的刪除指令時,向所述位于虛擬化層的代理發(fā)送所述刪除指令,以便所述位于虛擬化層的代理按照所述刪除指令刪除虛擬機;關系刪除単元,用于在虛擬機被刪除后,刪除所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并刪除所述DHCP服務器中被刪除虛擬機對應的所述靜態(tài)地址分配關系。另外,在實際應用中,對虛擬機IP地址的控制還可以包括對虛擬機IP地址的變更,所述裝置還可以包括預設變更地址單元,用于當接收到變更虛擬機IP地址的變更指令時,預設所述虛擬機的變更后IP地址;關系變更單元,用于根據(jù)被變更虛擬機的MAC地址以及所述變更后IP地址,變更所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并變更DHCP服務器的靜態(tài)地址分配關系;以便在該虛擬機重新獲取IP地址時,所述DHCP服務器根據(jù)所述更新后的靜態(tài)地址分配關系為該虛擬機分配所述變更后IP地址。綜上所述,在云計算平臺中創(chuàng)建虛擬機時,通過確定預設IP地址與創(chuàng)建虛擬機時 虛擬機MAC地址的映射關系,并利用為虛擬機提供地址分配服務的DHCP服務器提供的靜態(tài)地址分配方式,將預設IP地址與虛擬機MAC地址的映射關系插入到DHCP服務器的靜態(tài)地址分配列表中,使得新建的虛擬機在啟動時能夠通過DHCP服務器獲得預設的IP地址。同時,基于這種創(chuàng)建虛擬機時對IP地址的控制方法,還提供了刪除虛擬機以及變更虛擬機IP地址時相應的操作方法。通過本發(fā)明實施例中提供的方法及裝置,實現(xiàn)了可預測地分配虛擬機的IP地址,同時又兼顧了自動分配,減少了人工干預,提高了云計算平臺的管理和運行效率。通過以上的實施方式的描述可知,本領域的技術人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)?;谶@樣的理解,本發(fā)明的技術方案本質(zhì)上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置或系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。以上所描述的裝置及系統(tǒng)實施例僅僅是示意性的,其中所述作為分離部件說明的単元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理単元,即可以位于ー個地方,或者也可以分布到多個網(wǎng)絡単元上。可以根據(jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。以上對本發(fā)明所提供的虛擬機IP地址的控制方法及裝置,進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應用范圍上均會有改變之處。綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。
權利要求
1.一種虛擬機IP地址的控制方法,其特征在于,包括 當接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設所述虛擬機的IP地址; 向位于虛擬化層的代理發(fā)送所述創(chuàng)建指令,以便所述位于虛擬化層的代理按照所述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址; 根據(jù)所述虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系;以便在虛擬機啟動時,所述DHCP服務器根據(jù)所述靜態(tài)地址分配關系為所述MAC地址對應的虛擬機分配所述IP地址。
2.根據(jù)權利要求I所述的方法,其特征在于,在平臺管理模塊中維護一全局虛擬機信息列表,用于保存已創(chuàng)建虛擬機的MAC地址及其IP地址之間的對應關系,所述方法還包括 將所述被創(chuàng)建虛擬機的IP地址以及所述被創(chuàng)建虛擬機的MAC地址之間的對應關系加入到所述全局虛擬機信息列表。
3.根據(jù)權利要求2所述的方法,其特征在于,所述預設所述虛擬機的IP地址,包括 接收手動指定的IP地址,將所述手動指定的IP地址預設為所述虛擬機的IP地址; 或者, 根據(jù)所述全局虛擬機信息列表,自動選取空閑的IP地址,將所述空閑的IP地址預設為所述虛擬機的IP地址。
4.根據(jù)權利要求2所述的方法,其特征在于,還包括 當接收到刪除虛擬機的刪除指令時,向所述位于虛擬化層的代理發(fā)送所述刪除指令,以便所述位于虛擬化層的代理按照所述刪除指令刪除虛擬機; 在虛擬機被刪除后,刪除所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并刪除所述DHCP服務器中被刪除虛擬機對應的所述靜態(tài)地址分配關系。
5.根據(jù)權利要求2所述的方法,其特征在于,還包括當接收到變更虛擬機IP地址的變更指令時,預設所述虛擬機的變更后IP地址;根據(jù)被變更虛擬機的MAC地址以及所述變更后IP地址,變更所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并變更DHCP服務器的靜態(tài)地址分配關系;以便在該虛擬機重新獲取IP地址時,所述DHCP服務器根據(jù)所述更新后的靜態(tài)地址分配關系為該虛擬機分配所述變更后IP地址。
6.一種虛擬機IP地址的控制裝置,其特征在于,包括預設單元,用于當接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設所述虛擬機的IP地址;指令發(fā)送單元,用于向位于虛擬化層的代理發(fā)送所述創(chuàng)建指令,以便所述位于虛擬化層的代理按照所述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址;關系更新單元,用于根據(jù)所述虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系;以便在虛擬機啟動時,所述DHCP服務器根據(jù)所述靜態(tài)地址分配關系為所述MAC地址對應的虛擬機分配所述IP地址。
7.根據(jù)權利要求6所述的裝置,其特征在于,在平臺管理模塊中維護一全局虛擬機信息列表,用于保存已創(chuàng)建虛擬機的MAC地址及其IP地址之間的對應關系,所述裝置還包括列表變更單元,用于將所述被創(chuàng)建虛擬機的IP地址以及所述被創(chuàng)建虛擬機的MAC地址之間的對應關系加入到所述全局虛擬機信息列表。
8.根據(jù)權利要求7所述的裝置,其特征在于,所述預設單元,包括 第一預設子單元,用于接收手動指定的IP地址,將所述手動指定的IP地址預設為所述虛擬機的IP地址; 或者, 第二預設子單元,用于根據(jù)所述全局虛擬機信息列表,自動選取空閑的IP地址,將所述空閑的IP地址預設為所述虛擬機的IP地址。
9.根據(jù)權利要求7所述的裝置,其特征在于,還包括 刪除指令收發(fā)單元,用于當接收到刪除虛擬機的刪除指令時,向所述位于虛擬化層的代理發(fā)送所述刪除指令,以便所述位于虛擬化層的代理按照所述刪除指令刪除虛擬機; 關系刪除單元,用于在虛擬機被刪除后,刪除所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并刪除所述DHCP服務器中被刪除虛擬機對應的所述靜態(tài)地址分配關系。
10.根據(jù)權利要求7所述的裝置,其特征在于,還包括 預設變更地址單元,用于當接收到變更虛擬機IP地址的變更指令時,預設所述虛擬機的變更后IP地址; 關系變更單元,用于根據(jù)被變更虛擬機的MAC地址以及所述變更后IP地址,變更所述全局虛擬機信息列表中記錄的該虛擬機的MAC地址與IP地址之間的對應關系,并變更DHCP服務器的靜態(tài)地址分配關系;以便在該虛擬機重新獲取IP地址時,所述DHCP服務器根據(jù)所述更新后的靜態(tài)地址分配關系為該虛擬機分配所述變更后IP地址。
全文摘要
本發(fā)明公開了虛擬機IP地址的控制方法及裝置,其中所述方法包括當接收到創(chuàng)建虛擬機的創(chuàng)建指令時,預設所述虛擬機的IP地址;向位于虛擬化層的代理發(fā)送所述創(chuàng)建指令,以便所述位于虛擬化層的代理按照所述創(chuàng)建指令創(chuàng)建虛擬機,并返回被創(chuàng)建虛擬機的介質(zhì)訪問控制MAC地址;根據(jù)所述虛擬機的IP地址以及所述虛擬機的MAC地址更新動態(tài)主機設置協(xié)議DHCP服務器的靜態(tài)地址分配關系;以便在虛擬機啟動時,所述DHCP服務器根據(jù)所述靜態(tài)地址分配關系為所述MAC地址對應的虛擬機分配所述IP地址。通過本發(fā)明,能夠可預測地分配虛擬機的IP地址,同時又兼顧了自動分配,減少了人工干預,提高了云計算平臺的管理和運行效率。
文檔編號G06F9/455GK102710814SQ20121021160
公開日2012年10月3日 申請日期2012年6月21日 優(yōu)先權日2012年6月21日
發(fā)明者唐會軍, 張玉放, 齊路 申請人:奇智軟件(北京)有限公司