專利名稱:一種云計算平臺的虛擬機(jī)ip資源管理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及云技術(shù)領(lǐng)域,特別是涉及一種云計算平臺的虛擬機(jī)IP資源管理方法。
技術(shù)背景
云計算是一種將計算任務(wù)分布在大量計算機(jī)構(gòu)成的資源池上,使各種應(yīng)用系統(tǒng)能夠根據(jù)需要獲取計算力、存儲空間和信息服務(wù)。虛擬化實現(xiàn)了 IT資源的邏輯抽象和統(tǒng)一表示,在大規(guī)模數(shù)據(jù)中心管理和解決方案交付方面發(fā)揮著巨大的作用,是支撐云計算偉大構(gòu)想的最重要的技術(shù)基石。云平臺通過虛擬化技術(shù),可對物理資源進(jìn)行虛擬化,單臺物理機(jī)同時運(yùn)行多臺不同操作系統(tǒng)的虛擬機(jī)。為了讓用戶通過終端使用虛擬機(jī),云平臺需為每臺虛擬機(jī)分配IP地址,通過IP對虛擬機(jī)建立網(wǎng)絡(luò)連接。
現(xiàn)有的云平臺虛擬機(jī)IP管理方法是每個網(wǎng)段均設(shè)有一個DHCP服務(wù)器,由DHCP服務(wù)器為虛擬機(jī)分配IP地址,然后通過已知虛擬機(jī)MAC地址查找相應(yīng)的IP。目前,已有的由虛擬機(jī)MAC地址查找相應(yīng)IP方法包括(I).通過NMAP掃描IP段,得到IP與MAC的對應(yīng)關(guān)系。
(2).通過IPTABLE記錄DHCP分配IP地址的數(shù)據(jù)包信息,獲得IP與MAC的對應(yīng)關(guān)系。
(3).通過查找DHCP服務(wù)器上的數(shù)據(jù)庫記錄,獲得IP與MAC的對應(yīng)關(guān)系。
I.上述技術(shù)由于依賴DHCP統(tǒng)一分配IP,會導(dǎo)致存在以下缺點(diǎn)缺點(diǎn)a :當(dāng)有多個網(wǎng)段時,存在多個DHCP,虛擬機(jī)廣播DHCP discover數(shù)據(jù)包請求IP, 會獲得多個DHCP服務(wù)器offer響應(yīng)包,虛擬機(jī)選擇響應(yīng)最快的DHCP服務(wù)器數(shù)據(jù)包,因此可能出現(xiàn)同一個物理主機(jī)上的各虛擬機(jī)在不同網(wǎng)段,這樣會導(dǎo)致虛擬機(jī)之間或虛擬機(jī)與所在物理主機(jī)之間無法正常通信。
缺點(diǎn)b 由DHCP動態(tài)分配IP地址,不能確保虛擬機(jī)每次分配到的IP是固定不變的,導(dǎo)致虛擬機(jī)無法作為應(yīng)用服務(wù)器對外提供服務(wù)。
2. NMAP會引起網(wǎng)絡(luò)風(fēng)暴,浪費(fèi)網(wǎng)絡(luò)帶寬NMAP是通過使用ICMP協(xié)議的PING操作掃描所在網(wǎng)段的IP,從而獲得ARP緩存中MAC 與IP的對應(yīng)關(guān)系,這樣需每隔一段時間必須執(zhí)行一次整個網(wǎng)段的掃描才能獲取最新的虛擬機(jī)MAC-IP對應(yīng)關(guān)系,這樣容易引起網(wǎng)絡(luò)風(fēng)暴,浪費(fèi)網(wǎng)絡(luò)帶寬。
3.確定MAC與IP的關(guān)系時間開銷大IPTABLE通過指定的規(guī)則打印DHCP相應(yīng)端口的數(shù)據(jù)包記錄,從而獲得MAC-IP的對應(yīng)關(guān)系。而DHCP服務(wù)器數(shù)據(jù)庫則記錄著DHCP分配出去的MAC-IP租約信息。當(dāng)查詢某個虛擬機(jī)具體IP時,需遍歷整個IPTABLE記錄文件或DHCP數(shù)據(jù)庫信息文件,這樣搜索時間開銷過大。此外,記錄文件是持續(xù)增加的,會存在之前的舊數(shù)據(jù),當(dāng)查詢發(fā)生在記錄文件更新之前, 導(dǎo)致獲取的IP是舊數(shù)據(jù),使得無法正常使用虛擬機(jī)。
4.當(dāng)虛擬機(jī)個數(shù)比DHCP設(shè)置的IP數(shù)據(jù)多時,存在虛擬機(jī)獲取不到IP情況,由于沒有將IP作為資源管理,在CPU、存儲以及內(nèi)存足夠的情況下,用戶可以啟動比DHCP服務(wù)器中IP域個數(shù)多的虛擬機(jī),會有虛擬機(jī)分配不到IP地址,這些虛擬機(jī)會按一定的時間規(guī)則不停的廣播DHCP Discover數(shù)據(jù)包,加重云平臺內(nèi)網(wǎng)絡(luò)負(fù)擔(dān)。無IP的虛擬機(jī),用戶無法通過建立網(wǎng)絡(luò)鏈接來對虛擬機(jī)進(jìn)行操作,這些無法使用的虛擬機(jī)啟動后會浪費(fèi)云平臺CPU、存儲和內(nèi)存資源。發(fā)明內(nèi)容
為了克服現(xiàn)有技術(shù)的不足,本發(fā)明的一個技術(shù)目的是提供一種快速準(zhǔn)確的虛擬機(jī) MAC與IP對應(yīng)綁定、有效避免IP沖突、節(jié)約云平臺資源的云計算平臺的虛擬機(jī)IP資源管理方法。
為實現(xiàn)上述技術(shù)目的,本發(fā)明采用的技術(shù)方案如下一種云計算平臺的虛擬機(jī)IP資源管理方法,包括以下步驟;(1)虛擬機(jī)創(chuàng)建時進(jìn)行IP申請;(2)云平臺響應(yīng)虛擬機(jī)的IP申請,返回可選IP范圍信息;(3)根據(jù)返回的可選IP范圍信息進(jìn)行虛擬機(jī)IP選擇;(4)云平臺根據(jù)預(yù)設(shè)的映射規(guī)則采用被選擇的IP地址生成對應(yīng)虛擬機(jī)的物理地址并進(jìn)行綁定,并寫入虛擬機(jī)的配置文件中;(5)在虛擬機(jī)中根據(jù)被選擇的IP設(shè)置IP地址的映射調(diào)用,所述映射調(diào)用用于隨虛擬機(jī)啟動時根據(jù)選擇的IP進(jìn)行虛擬機(jī)IP設(shè)定。
優(yōu)選地,所述的步驟(3)中,還包括云平臺對被選擇的IP進(jìn)行檢測,檢測是否已被使用,用于對云平臺中IP資源進(jìn)行驗證,識別出該IP是否被使用,防止將相同的IP授予多個虛擬機(jī),經(jīng)過檢查驗證后,若是IP已被使用,則將該IP移出用戶可選范圍,提示出錯信息并讓用戶重新選擇IP ;否則將該IP授予該虛擬機(jī)。
優(yōu)選地,所述的步驟(3)中,還包括云平臺維護(hù)有已使用IP列表和未使用IP列表, 所述的已使用IP列表記錄有所有已經(jīng)被使用或者正在使用的IP地址,未使用IP列表記錄的是云平臺中可用卻未被使用的IP地址,通過已使用IP列表和未使用IP列表對云平臺中的有效IP地址進(jìn)行分類管理,使到在虛擬機(jī)進(jìn)行IP選擇時,無需對所有的IP地址進(jìn)行遍歷,極大的節(jié)約了云平臺管理IP資源的時間。所述云平臺根據(jù)已使用IP列表對被選擇IP 進(jìn)行檢測,若是,則提示出錯信息;若否,則將該IP授予該虛擬機(jī)并將該IP從未使用IP列表移至已使用IP列表。
優(yōu)選地,所述步驟(5)中,所述映射調(diào)用為先獲取虛擬機(jī)物理地址,然后根據(jù)映射規(guī)則解析出IP地址進(jìn)行虛擬機(jī)啟動時的IP設(shè)定。
優(yōu)選地,還包括虛擬機(jī)IP更換的步驟虛擬機(jī)向云平臺發(fā)送包含新IP地址信息的更換請求;云平臺響應(yīng)更換請求,檢測新IP是否已被使用,若是,則提示出錯信息,若否,則將該新IP從未使用IP列表移至已使用IP列表,并將該虛擬機(jī)的舊IP地址由已使用IP列表移動到未使用IP列表;云平臺根據(jù)預(yù)設(shè)的映射規(guī)則采用新IP地址生成對應(yīng)虛擬機(jī)的物理地址并進(jìn)行綁定, 并寫入虛擬機(jī)的配置文件中。
優(yōu)選地,所述的映射規(guī)則為將物理地址的任意16位設(shè)置為一個默認(rèn)值,而物理地址余下的32位直接等同于IP地址的32位。
與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)在于I.本發(fā)明屏蔽虛擬機(jī)修改IP功能,不能隨意修改IP,必須通過云平臺的相應(yīng)操作,這樣可避免錯誤設(shè)置引起IP沖突。
2.管理方便,由于對虛擬機(jī)建立了 IP與MAC地址的--對應(yīng)關(guān)系,因此對網(wǎng)絡(luò)情況進(jìn)行有效監(jiān)控和管理。此外,由于虛擬機(jī)的IP是固定的,可以作為應(yīng)用服務(wù)器提供對外服務(wù)。
3.減少網(wǎng)絡(luò)帶寬和時間消耗,虛擬機(jī)的IP是固定不變的,避免NMAP掃描整個網(wǎng)絡(luò)IP段操作,減少網(wǎng)絡(luò)帶寬占用量,此外不需搜索ARP緩存或者IPTABLE記錄文件來確定虛擬機(jī)所獲得的IP地址,減少程序時間消耗。
4. IP作為資源是虛擬機(jī)創(chuàng)建使用的前提條件,當(dāng)資源池內(nèi)沒有可使用的IP資源, 就無法創(chuàng)建使用虛擬機(jī),這樣可以避免啟動無法分配到IP的虛擬機(jī),避免無用虛擬機(jī)浪費(fèi)系統(tǒng)CPU、內(nèi)存以及存儲資源。
圖I為本發(fā)明中創(chuàng)建虛擬機(jī)時進(jìn)行IP綁定的流程圖;圖2為本發(fā)明中更換IP的流程圖。
具體實施方式
下面結(jié)合附圖和具體實施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用于解釋發(fā)明,并不用于限定實用新型。
如圖I所示,本發(fā)明提供一種云計算平臺的虛擬機(jī)IP資源管理方法,包括以下步驟;Si虛擬機(jī)創(chuàng)建時進(jìn)行IP申請的步驟;虛擬機(jī)的創(chuàng)建可以由用戶手動或者云平臺自動生成,當(dāng)虛擬機(jī)生成時,可以通過主動或者被動的方式向云平臺中對IP進(jìn)行管理的模塊進(jìn)行云平臺的內(nèi)部IP申請。
S2云平臺響應(yīng)虛擬機(jī)的IP申請,返回可選IP范圍信息的步驟;云平臺接收到對虛擬機(jī)的IP申請的請求后,根據(jù)預(yù)設(shè)的IP地址取值范圍給出該虛擬機(jī)可以選擇的IP地址范圍,并返回信息到虛擬機(jī)或用戶中以供選擇。
S3根據(jù)返回的可選IP范圍信息進(jìn)行虛擬機(jī)IP選擇的步驟;用戶手動或者虛擬機(jī)自動根據(jù)云平臺返回的信息進(jìn)行IP地址的選擇,或者輸入需要的IP地址信息,并發(fā)送到云平臺中,云平臺對被選擇的IP進(jìn)行檢測,檢測是否已被使用,用于對云平臺中IP資源進(jìn)行驗證,識別出該IP是否被使用,防止將相同的IP授予多個虛擬機(jī),經(jīng)過檢查驗證后若是,若是,則將該IP移出用戶可選范圍,提示出錯信息并讓用戶重新選擇IP ;若否,則將該IP授予該虛擬機(jī)。
其中,云平臺維護(hù)有已使用IP列表和未使用IP列表,所述的已使用IP列表記錄有所有已經(jīng)被使用或者正在使用的IP地址,未使用IP列表記錄的是云平臺中可用卻未被使用的IP地址,通過已使用IP列表和未使用IP列表對云平臺中的有效IP地址進(jìn)行分類管理,使到在虛擬機(jī)進(jìn)行IP選擇時,無需對所有的IP地址進(jìn)行遍歷,極大的節(jié)約了云平臺管理IP資源的時間,所述云平臺根據(jù)已使用IP列表對被選擇IP進(jìn)行檢測,若是,則提示出5錯信息;若否,則將該IP授予該虛擬機(jī)并將該IP從未使用IP列表移至已使用IP列表。
S4云平臺根據(jù)預(yù)設(shè)的映射規(guī)則采用被選擇的IP地址生成對應(yīng)虛擬機(jī)的物理地址并進(jìn)行綁定,并寫入虛擬機(jī)的配置文件中的步驟;S5在虛擬機(jī)中根據(jù)被選擇的IP設(shè)置IP地址的映射調(diào)用的步驟,所述映射調(diào)用用于隨虛擬機(jī)啟動時根據(jù)選擇的IP進(jìn)行虛擬機(jī)IP設(shè)定。
其中上述中的映射調(diào)用為先獲取虛擬機(jī)物理地址,然后根據(jù)映射規(guī)則解析出IP 地址進(jìn)行虛擬機(jī)啟動時的IP設(shè)定。
其中,在虛擬機(jī)鏡像內(nèi)部署MAC地址到IP地址的映射調(diào)用,該映射調(diào)用設(shè)置為虛擬機(jī)啟動時自動運(yùn)行。啟動虛擬機(jī)時,平臺根據(jù)虛擬機(jī)配置文件啟動虛擬機(jī)后,通過獲得虛擬機(jī)的MAC地址,根據(jù)預(yù)定的IP與MAC地址映射規(guī)則,解析出相應(yīng)的IP地址,并自動設(shè)置虛擬機(jī)的IP地址、網(wǎng)關(guān)、DNS等相關(guān)網(wǎng)絡(luò)信息。
所述的映射規(guī)則為將物理地址的任意16位設(shè)置為一個默認(rèn)值,而物理地址余下的32位直接等同于IP地址的32位。
本方案中IP地址與MAC地址是——對映關(guān)系,可以從IP地址映射到唯一的MAC 地址,同時也可以從MAC地址映射回IP地址。
在一個具體實施例中,IP地址由32位二進(jìn)制數(shù)組成,為便于使用,IP地址采用十進(jìn)制的書寫形式,中間使用符號”分開,如XXX. XXX. XXX. XXX,每組XXX代表小于或等于255的10進(jìn)制數(shù)。MAC地址共48位(6個字節(jié)),以十六進(jìn)制表示,中間使用””分開, XX:XX:XX:XX:XX:XX,每組XX代表小于或者等于255的十六進(jìn)制。
由32位的IP地址與48位的MAC地址映射規(guī)則可以是多樣的,如可將MAC地址的前16位設(shè)置為一個默認(rèn)值,而MAC地址后32位直接等同于IP地址的32位,例如這里前16 位默認(rèn)值為AA:AA,則IP地址為192. 168. I. I對應(yīng)的MAC地址為AA: AA: CO :A8:01:01。
進(jìn)一步地,在一個具體實施例中,云平臺中可供虛擬機(jī)使用的IP地址資源為在云平臺中預(yù)設(shè)設(shè)定的IP段或者任意的可以使用的IP段,具體為實際操作中,根據(jù)實際需要任意設(shè)定,根據(jù)該IP段形成IP資源池,云平臺提供給虛擬機(jī)進(jìn)行選擇的可選IP地址的范圍是根據(jù)該IP資源池設(shè)定的,并且IP資源池中所有IP均包含在已使用IP列表和未使用IP 列表中。
如圖2所示,在一個具體實施例中,發(fā)明提供一種云計算平臺的虛擬機(jī)IP資源管理方法還提供虛擬機(jī)IP更換的方法,為了防止任意修改IP導(dǎo)致的網(wǎng)絡(luò)問題,在云平臺中可以通過在虛擬機(jī)鏡像內(nèi)屏蔽用戶修改IP功能,用戶不能在虛擬機(jī)內(nèi)對IP進(jìn)行重新設(shè)置。目前可通過注銷動態(tài)鏈接庫文件法、修改組策略等方法來屏蔽虛擬機(jī)內(nèi)用戶IP設(shè)置功能。
本發(fā)明提供的虛擬機(jī)IP更換的方法包括以下步驟Al虛擬機(jī)向云平臺發(fā)送包含新IP地址信息的更換請求;當(dāng)虛擬機(jī)生成后,需要對綁定的IP地址進(jìn)行更改,可以通過主動或者被動的方式向云平臺中對IP進(jìn)行管理的模塊進(jìn)行云平臺的內(nèi)部IP的更換。
A2云平臺響應(yīng)更換請求,檢測新IP是否已被使用,若是,則提示出錯信息,若否, 則將該新IP從未使用IP列表移至已使用IP列表,并將該虛擬機(jī)的舊IP地址由已使用IP 列表移動到未使用IP列表;A3云平臺根據(jù)預(yù)設(shè)的映射規(guī)則采用新IP地址生成對應(yīng)虛擬機(jī)的物理地址并進(jìn)行綁定,并寫入虛擬機(jī)的配置文件中,并修云平臺中虛擬機(jī)的MAC地址記錄。
重啟虛擬機(jī)后,虛擬機(jī)內(nèi)MAC-IP自動映射程序根據(jù)的新MAC重新設(shè)置虛擬機(jī)內(nèi)的 IP、網(wǎng)關(guān)等網(wǎng)絡(luò)信息。
權(quán)利要求
1.一種云計算平臺的虛擬機(jī)IP資源管理方法,其特征在于,包括以下步驟; (1)虛擬機(jī)創(chuàng)建時進(jìn)行IP申請; (2)云平臺響應(yīng)虛擬機(jī)的IP申請,返回可選IP范圍信息; (3)根據(jù)返回的可選IP范圍信息進(jìn)行虛擬機(jī)IP選擇; (4)云平臺根據(jù)預(yù)設(shè)的映射規(guī)則采用被選擇的IP地址生成對應(yīng)虛擬機(jī)的物理地址且進(jìn)行綁定,并寫入虛擬機(jī)的配置文件中; (5)在虛擬機(jī)中根據(jù)被選擇的IP設(shè)置IP地址的映射調(diào)用,所述映射調(diào)用用于隨虛擬機(jī)啟動時根據(jù)選擇的IP進(jìn)行虛擬機(jī)IP設(shè)定。
2.根據(jù)權(quán)利要求I所述的云計算平臺的虛擬機(jī)IP資源管理方法,其特征在于,所述的步驟(3)中,還包括云平臺對被選擇的IP進(jìn)行檢測,檢測是否已被使用,若是,則將該IP移出用戶可選范圍,提示出錯信息并讓用戶重新選擇IP ;若否,則將該IP授予該虛擬機(jī)。
3.根據(jù)權(quán)利要求2所述的云計算平臺的虛擬機(jī)IP資源管理方法,其特征在于,所述的步驟(3)中,還包括云平臺維護(hù)有已使用IP列表和未使用IP列表,所述云平臺根據(jù)已使用IP列表對被選擇IP進(jìn)行檢測,若是,則提示出錯信息;若否,則將該IP授予該虛擬機(jī)并將該IP從未使用IP列表移至已使用IP列表。
4.根據(jù)權(quán)利要求I所述的云計算平臺的虛擬機(jī)IP資源管理方法,其特征在于,所述步驟(5)中,所述映射調(diào)用為先獲取虛擬機(jī)物理地址,然后根據(jù)映射規(guī)則解析出IP地址進(jìn)行虛擬機(jī)啟動時的IP設(shè)定。
5.根據(jù)權(quán)利要求3所述的云計算平臺的虛擬機(jī)IP資源管理方法,其特征在于,還包括虛擬機(jī)IP更換的步驟 虛擬機(jī)向云平臺發(fā)送包含新IP地址信息的更換請求; 云平臺響應(yīng)更換請求,檢測新IP是否已被使用,若是,則提示出錯信息,若否,則將該新IP從未使用IP列表移至已使用IP列表,并將該虛擬機(jī)的舊IP地址由已使用IP列表移動到未使用IP列表; 云平臺根據(jù)預(yù)設(shè)的映射規(guī)則采用新IP地址生成對應(yīng)虛擬機(jī)的物理地址并進(jìn)行綁定,并寫入虛擬機(jī)的配置文件中。
6.根據(jù)權(quán)利要求I 5任一所述的云計算平臺的虛擬機(jī)IP資源管理方法,其特征在于,所述的映射規(guī)則為將物理地址的任意16位設(shè)置為一個默認(rèn)值,而物理地址余下的32位直接等同于IP地址的32位。
全文摘要
本發(fā)明提供一種云計算平臺的虛擬機(jī)IP資源管理方法,包括以下步驟;(1)虛擬機(jī)創(chuàng)建時進(jìn)行IP申請;(2)云平臺響應(yīng)虛擬機(jī)的IP申請,返回可選IP范圍信息;(3)根據(jù)返回的可選IP范圍信息進(jìn)行虛擬機(jī)IP選擇;(4)云平臺根據(jù)預(yù)設(shè)的映射規(guī)則采用被選擇的IP地址生成對應(yīng)虛擬機(jī)的物理地址并進(jìn)行綁定,并寫入虛擬機(jī)的配置文件中;(5)在虛擬機(jī)中根據(jù)被選擇的IP設(shè)置IP地址的映射調(diào)用,所述映射調(diào)用用于隨虛擬機(jī)啟動時根據(jù)選擇的IP進(jìn)行虛擬機(jī)IP設(shè)定。減少網(wǎng)絡(luò)帶寬和時間消耗,虛擬機(jī)的IP是固定不變的,避免NMAP掃描整個網(wǎng)絡(luò)IP段操作,此外不需搜索ARP緩存或者IPTABLE記錄文件來確定虛擬機(jī)所獲得的IP地址,減少程序時間消耗。
文檔編號H04L29/12GK102932498SQ20121040931
公開日2013年2月13日 申請日期2012年10月24日 優(yōu)先權(quán)日2012年10月24日
發(fā)明者吳海玲, 張 浩, 鄧書芬, 吳文青 申請人:廣州杰賽科技股份有限公司