一種ip地址分配方法及云管理平臺的制作方法
【專利摘要】本發(fā)明提供了一種IP地址分配方法及云管理平臺,其中,所述方法應(yīng)用于云管理平臺,包括:S0:預(yù)先設(shè)置IP管理池,其中,所述IP管理池記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài);S1:接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令;S2:查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配;S3:將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定;S4:向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址。通過本發(fā)明的技術(shù)方案,可避免同一個IP地址被分配給多個云環(huán)境。
【專利說明】
一種IP地址分配方法及云管理平臺
技術(shù)領(lǐng)域
[0001 ] 本發(fā)明涉及計算機技術(shù)領(lǐng)域,特別涉及一種IP(Internet Protocol,網(wǎng)絡(luò)之間互連的協(xié)議)地址分配方法及云管理平臺。
【背景技術(shù)】
[0002]在云計算技術(shù)日益成熟的背景下,不同的業(yè)務(wù)應(yīng)用可以運行在不同類型的云環(huán)境中,云管理平臺則需要為不同類型的云環(huán)境分配不同的IP地址。
[0003]目前,云管理平臺為多個云環(huán)境分配IP地址時,主要通過IP管理池存儲多個IP地址,并記錄多個IP地址分別對應(yīng)的使用狀態(tài),在接收到對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求時,則根據(jù)IP管理池向目標(biāo)云環(huán)境分配一個未分配的目標(biāo)IP地址,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址;相應(yīng)的,在接收到目標(biāo)云環(huán)境反饋的綁定成功消息時,更新目標(biāo)IP地址的使用狀態(tài)為已分配。
[0004]可見,上述技術(shù)方案中,云管理平臺需要在接收到目標(biāo)云環(huán)境反饋的綁定成功消息時才將目標(biāo)IP地址的使用狀態(tài)更新為已分配,可能導(dǎo)致同一個IP地址被分配給多個云環(huán)境。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提供了一種IP地址分配方法及云管理平臺,可避免同一個IP地址被分配給多個云環(huán)境。
[0006]第一方面,本發(fā)明實施例提供了一種IP地址分配方法,應(yīng)用于云管理平臺,包括:
[0007]S0:預(yù)先設(shè)置IP管理池,其中,所述IP管理池記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài);
[0008]SI:接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令;
[0009]S2:查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配;
[0010]S3:將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定;
[0011 ] S4:向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址。
[0012]進(jìn)一步的,在所述向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令之后,還包括:
[0013]接收目標(biāo)云環(huán)境發(fā)送的綁定成功消息,其中,所述綁定成功消息攜帶目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息;
[0014]將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為已分配,并將目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息增加到所述IP管理池。
[0015]進(jìn)一步的,
[0016]所述預(yù)先設(shè)置IP管理池,包括:預(yù)先設(shè)置數(shù)據(jù)庫表,其中,所述數(shù)據(jù)庫表包括至少兩條數(shù)據(jù)庫記錄,每一條所述數(shù)據(jù)庫記錄記錄一個IP地址及當(dāng)前IP地址對應(yīng)的使用狀態(tài);
[0017]所述將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定,包括:鎖定目標(biāo)IP地址對應(yīng)的目標(biāo)數(shù)據(jù)庫記錄。
[0018]進(jìn)一步的,
[0019]所述預(yù)先設(shè)置數(shù)據(jù)庫表,進(jìn)一步包括:利用所述數(shù)據(jù)庫表中記錄的至少兩個IP地址構(gòu)建數(shù)據(jù)隊列;
[0020]所述查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址的使用狀態(tài)為未分配,包括:
[0021]根據(jù)所述數(shù)據(jù)隊列在所述數(shù)據(jù)庫表中查詢隊首IP地址對應(yīng)的使用狀態(tài),在當(dāng)前IP地址對應(yīng)的使用狀態(tài)為未分配時,將當(dāng)前IP地址確定為目標(biāo)IP地址,并將當(dāng)前IP地址移動到所述數(shù)據(jù)隊列的隊尾。
[0022]進(jìn)一步的,
[0023]所述預(yù)先設(shè)置IP管理池,進(jìn)一步包括:預(yù)先設(shè)置至少兩個云環(huán)境分別對應(yīng)的接口驅(qū)動程序;
[0024]所述向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,包括:根據(jù)目標(biāo)云環(huán)境對應(yīng)的目標(biāo)接口驅(qū)動程序向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令。
[0025]第二方面,本發(fā)明實施例提供了一種云管理平臺,包括:
[0026]設(shè)置模塊,用于預(yù)先設(shè)置IP管理池,其中,所述IP管理池記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài);
[0027]指令接收模塊,用于接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令;
[0028]處理模塊,用于查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配;
[0029]狀態(tài)更新模塊,用于將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定;
[0030]信息發(fā)送模塊,用于向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址。
[0031]進(jìn)一步的,還包括:
[0032]信息接收模塊,用于接收目標(biāo)云環(huán)境發(fā)送的綁定成功消息,其中,所述綁定成功消息攜帶目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息;
[0033]所述狀態(tài)更新模塊,進(jìn)一步用于將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為已分配,并將目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息增加到所述IP管理池。
[0034]進(jìn)一步的,
[0035]所述設(shè)置模塊,用于預(yù)先設(shè)置數(shù)據(jù)庫表,其中,所述數(shù)據(jù)庫表包括至少兩條數(shù)據(jù)庫記錄,每一條所述數(shù)據(jù)庫記錄記錄一個IP地址及當(dāng)前IP地址對應(yīng)的使用狀態(tài);
[0036]所述狀態(tài)更新模塊,用于鎖定目標(biāo)IP地址對應(yīng)的目標(biāo)數(shù)據(jù)庫記錄。
[0037]進(jìn)一步的,
[0038]所述設(shè)置模塊,進(jìn)一步用于利用所述數(shù)據(jù)庫表中記錄的至少兩個IP地址構(gòu)建數(shù)據(jù)隊列;
[0039]所述處理模塊,用于根據(jù)所述數(shù)據(jù)隊列在所述數(shù)據(jù)庫表中查詢隊首IP地址對應(yīng)的使用狀態(tài),在當(dāng)前IP地址對應(yīng)的使用狀態(tài)為未分配時,將當(dāng)前IP地址確定為目標(biāo)IP地址,并將當(dāng)前IP地址移動到所述數(shù)據(jù)隊列的隊尾。
[0040]進(jìn)一步的,
[0041]所述設(shè)置模塊,進(jìn)一步用于預(yù)先設(shè)置至少兩個云環(huán)境分別對應(yīng)的接口驅(qū)動程序;
[0042]所述信息發(fā)送模塊,用于根據(jù)目標(biāo)云環(huán)境對應(yīng)的目標(biāo)接口驅(qū)動程序向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令。
[0043]本發(fā)明實施例提供了一種IP地址分配方法及云管理平臺,通過在IP管理池中記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài),在接收到對應(yīng)目標(biāo)云環(huán)境的IP分配請求時,確定一個使用狀態(tài)為未分配的目標(biāo)IP地址,向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,同時,將目標(biāo)IP地址的使用狀態(tài)更新為鎖定,防止云管理中心在等待目標(biāo)云環(huán)境反饋的綁定成功消息期間,目標(biāo)IP地址被分配給其他云環(huán)境,即避免同一個IP地址被分配給多個云環(huán)境。
【附圖說明】
[0044]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0045]圖1是本發(fā)明一實施例提供的一種IP地址分配方法的流程圖;
[0046]圖2是本發(fā)明一實施例提供的另一種IP地址分配方法的流程圖;
[0047]圖3是本發(fā)明一實施例提供的一種云管理平臺的結(jié)構(gòu)圖;
[0048]圖4是本發(fā)明一實施例提供的另一種云管理平臺的結(jié)構(gòu)圖。
【具體實施方式】
[0049]為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例,基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。
[0050]如圖1所示,本發(fā)明實施例提供了一種IP地址分配方法,應(yīng)用于云管理平臺,包括:[0051 ] S0:預(yù)先設(shè)置IP管理池,其中,所述IP管理池記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài);
[0052]SI:接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令;
[0053]S2:查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配;
[0054]S3:將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定;
[0055]S4:向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址。
[0056]本發(fā)明上述實施例中,通過在IP管理池中記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài),在接收到對應(yīng)目標(biāo)云環(huán)境的IP分配請求時,確定一個使用狀態(tài)為未分配的目標(biāo)IP地址,向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,同時,將目標(biāo)IP地址的使用狀態(tài)更新為鎖定,防止云管理中心在等待目標(biāo)云環(huán)境反饋的綁定成功消息期間,目標(biāo)IP地址被分配給其他云環(huán)境,即避免同一個IP地址被分配給多個云環(huán)境。
[0057]進(jìn)一步的,為了方便云管理平臺針對其管理的多個云環(huán)境中IP地址與實際物理設(shè)備之間的綁定情況進(jìn)行集中管理,本發(fā)明一個優(yōu)選實施例中,在所述向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令之后,還包括:
[0058]接收目標(biāo)云環(huán)境發(fā)送的綁定成功消息,其中,所述綁定成功消息攜帶目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息;
[0059]將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為已分配,并將目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息增加到所述IP管理池。
[0060]應(yīng)當(dāng)理解的是,云環(huán)境是指能夠從虛擬化的資源池中向各種業(yè)務(wù)應(yīng)用提供計算、存儲或者虛擬機服務(wù)等功能的互聯(lián)網(wǎng)或者大數(shù)據(jù)環(huán)境,云環(huán)境綁定目標(biāo)IP地址的過程,即云環(huán)境將接收到的目標(biāo)IP地址與云環(huán)境下相應(yīng)硬件設(shè)備及端口進(jìn)行綁定,具體地說,即將目標(biāo)IP地址設(shè)置為相應(yīng)硬件設(shè)備及端口的網(wǎng)絡(luò)地址。
[0061]進(jìn)一步的,為了實現(xiàn)被鎖定的目標(biāo)IP地址不會被分配給其他云環(huán)境,本發(fā)明一個優(yōu)選實施例中,所述預(yù)先設(shè)置IP管理池,包括:預(yù)先設(shè)置數(shù)據(jù)庫表,其中,所述數(shù)據(jù)庫表包括至少兩條數(shù)據(jù)庫記錄,每一條所述數(shù)據(jù)庫記錄記錄一個IP地址及當(dāng)前IP地址對應(yīng)的使用狀態(tài);
[0062]所述將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定,包括:鎖定目標(biāo)IP地址對應(yīng)的目標(biāo)數(shù)據(jù)庫記錄。
[0063]本發(fā)明上述實施例中,利用數(shù)據(jù)庫表行鎖鎖定目標(biāo)IP地址對應(yīng)的數(shù)據(jù)庫記錄,被鎖定后的數(shù)據(jù)庫記錄則不會被其他IP地址分配進(jìn)程非配給其他云環(huán)境;應(yīng)當(dāng)理解的是,數(shù)據(jù)庫表中可以同時記錄目標(biāo)IP地址對應(yīng)的使用狀態(tài)為鎖定。
[0064]進(jìn)一步的,為了實現(xiàn)云管理平臺再下一次執(zhí)行IP地址分配業(yè)務(wù)時,可以快速確定對應(yīng)使用狀態(tài)為未分配的目標(biāo)IP地址,并自動向目標(biāo)云環(huán)境分配目標(biāo)IP地址,本發(fā)明一個優(yōu)選實施例中,所述預(yù)先設(shè)置數(shù)據(jù)庫表,進(jìn)一步包括:利用所述數(shù)據(jù)庫表中記錄的至少兩個IP地址構(gòu)建數(shù)據(jù)隊列;
[0065]所述查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址的使用狀態(tài)為未分配,包括:
[0066]根據(jù)所述數(shù)據(jù)隊列在所述數(shù)據(jù)庫表中查詢隊首IP地址對應(yīng)的使用狀態(tài),在當(dāng)前IP地址對應(yīng)的使用狀態(tài)為未分配時,將當(dāng)前IP地址確定為目標(biāo)IP地址,并將當(dāng)前IP地址移動到所述數(shù)據(jù)隊列的隊尾。
[0067]本發(fā)明上述實施例中,在接收到一個IP地址分配請求指令時,執(zhí)行一次查詢?nèi)蝿?wù),本次查詢?nèi)蝿?wù)中,根據(jù)數(shù)據(jù)隊列查詢數(shù)據(jù)庫表以確定在數(shù)據(jù)隊列隊首的IP地址對應(yīng)的使用狀態(tài)是否為已分配或鎖定,在其對應(yīng)的使用狀態(tài)為已分配時,將隊首的IP地址移動到隊尾,直到本次查詢?nèi)蝿?wù)中查詢到一個位于隊首的目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配時,將該目標(biāo)IP地址移動到隊尾后,結(jié)束本次查詢?nèi)蝿?wù);如此,可實現(xiàn)將對應(yīng)使用狀態(tài)為鎖定及已分配的IP地址排列到數(shù)據(jù)隊列中靠后的位置,在下一次分配IP地址的過程中,僅需要執(zhí)行較少次數(shù)的查詢即可確定出一個對應(yīng)使用狀態(tài)為未分配的目標(biāo)IP地址。
[0068]進(jìn)一步的,由于不同的云環(huán)境向云平臺提供的通信接口并不相同,為了實現(xiàn)云平臺可與多個云環(huán)境均進(jìn)行通信,本發(fā)明一個優(yōu)選實施例中,所述預(yù)先設(shè)置IP管理池,進(jìn)一步包括:預(yù)先設(shè)置至少兩個云環(huán)境分別對應(yīng)的接口驅(qū)動程序;
[0069]所述向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,包括:根據(jù)目標(biāo)云環(huán)境對應(yīng)的目標(biāo)接口驅(qū)動程序向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令。
[0070]本發(fā)明上述實施例中,通過在云管理平臺定義一個接口驅(qū)動程序?qū)?,在與不同的云環(huán)境進(jìn)行通信時,從接口驅(qū)動程序?qū)又姓{(diào)用不同的接口驅(qū)動程序以利用調(diào)用的接口驅(qū)動程序?qū)訉?yīng)的云環(huán)境。
[0071 ]舉例來說,在管理平臺與目標(biāo)云環(huán)境進(jìn)行通信時,如果目標(biāo)云環(huán)境向云管理平臺提供的IP操作接口為一個同步接口,即目標(biāo)云環(huán)境在執(zhí)行IP綁定操作、IP解綁操作是同步操作,云管理平臺則利用對應(yīng)的接口驅(qū)動程序?qū)⒃乒芾砥脚_形成的數(shù)據(jù)包裝到消息中,通過消息隊列發(fā)出;相反的,如果云環(huán)境向云管理平臺提供的IP操作接口為一個異步接口,則利用對應(yīng)的驅(qū)動程序?qū)崿F(xiàn)接收器異步事件,將云管理平臺形成的數(shù)據(jù)包裝到消息中,將消息體解析成對應(yīng)異步接口的數(shù)據(jù)格式后通過消息隊列發(fā)出。
[0072]如圖2所示,本發(fā)明實施例提供了一種IP地址分配方法,以通過數(shù)據(jù)庫表記錄IP地址、每一個IP地址分別對應(yīng)的使用狀態(tài)及分配情況為例,可以包括如下步驟。
[0073]步驟201,云管理平臺設(shè)置數(shù)據(jù)庫表。
[0074]這里,數(shù)據(jù)庫表包括至少兩條數(shù)據(jù)庫記錄,每一條數(shù)據(jù)庫記錄記錄一個IP地址及當(dāng)前IP地址對應(yīng)的使用狀態(tài),即數(shù)據(jù)庫表包括IP地址字段和使用狀態(tài)字段,IP地址字段對應(yīng)的數(shù)據(jù)列記錄至少兩個IP地址,使用狀態(tài)字段記錄每一個IP地址分別對應(yīng)的使用狀態(tài);使用狀態(tài)可以包括未分配、已分配及鎖定,當(dāng)然,在一種可能實現(xiàn)的方式中,可以通過相應(yīng)參數(shù)表征IP地址對應(yīng)的使用狀態(tài),比如,用參數(shù)O表征未分配,參數(shù)I表征鎖定,參數(shù)2表征已分配。
[0075]本發(fā)明實施例中,數(shù)據(jù)庫表還可以記錄每一個IP地址分別對應(yīng)的分配信息,具體地,數(shù)據(jù)庫表還可以包括子網(wǎng)字段、設(shè)備字段及端口字段,其中,子網(wǎng)字段對應(yīng)的數(shù)據(jù)列記錄IP地址對應(yīng)的子網(wǎng)掩碼,設(shè)備字段對應(yīng)的數(shù)據(jù)列記錄IP地址對應(yīng)的設(shè)備編號,端口字段記錄IP地址對應(yīng)的端口號。
[0076]步驟202,云管理平臺利用數(shù)據(jù)庫表中記錄的至少兩個IP地址構(gòu)建數(shù)據(jù)隊列。
[0077]本發(fā)明實施例中,以云管理平臺管理的多個云環(huán)境對應(yīng)C類IP地址為例,默認(rèn)子網(wǎng)掩碼為255.255.255.0,數(shù)據(jù)庫表記錄255個IP地址;相應(yīng)的,這里可利用255個IP地址,根據(jù)其順序關(guān)系進(jìn)行排列以構(gòu)建一個數(shù)據(jù)隊列。
[0078]步驟203,云管理平臺設(shè)置至少兩個云環(huán)境分別對應(yīng)的接口驅(qū)動程序。
[0079]步驟204,云管理平臺接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令。
[0080]步驟205,云管理平臺根據(jù)數(shù)據(jù)隊列在數(shù)據(jù)庫表中查詢數(shù)據(jù)隊列隊首的IP地址對應(yīng)的使用狀態(tài),判斷該使用狀態(tài)是否為未分配,當(dāng)判斷結(jié)果為是時,執(zhí)行步驟206,否則,執(zhí)行步驟207。
[0081]步驟206,云管理平臺確定數(shù)據(jù)隊列隊首的IP地址為目標(biāo)IP地址。
[0082]步驟207,云管理平臺將數(shù)據(jù)隊列中隊首的IP地址移動到隊尾。
[0083]步驟204至步驟207中,在接收到一個IP地址分配請求指令時,執(zhí)行一次查詢?nèi)蝿?wù),本次查詢?nèi)蝿?wù)中,根據(jù)數(shù)據(jù)隊列查詢數(shù)據(jù)庫表以確定在數(shù)據(jù)隊列隊首的IP地址對應(yīng)的使用狀態(tài)是否為已分配或鎖定,在其對應(yīng)的使用狀態(tài)為已分配或鎖定時,將隊首的IP地址移動到隊尾,直到本次查詢?nèi)蝿?wù)中查詢到一個位于隊首的目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配時,將該目標(biāo)IP地址移動到隊尾后,結(jié)束本次查詢?nèi)蝿?wù);如此,可實現(xiàn)將對應(yīng)使用狀態(tài)為鎖定及已分配的IP地址排列到數(shù)據(jù)隊列中靠后的位置,在下一次分配IP地址的過程中,僅需要執(zhí)行較少次數(shù)的查詢即可確定出一個對應(yīng)使用狀態(tài)為未分配的目標(biāo)IP地址。
[0084]步驟208,云管理平臺鎖定數(shù)據(jù)庫表中記錄的目標(biāo)IP地址。
[0085]本發(fā)明實施例中,可以利用數(shù)據(jù)庫表行鎖鎖定目標(biāo)IP地址對應(yīng)的數(shù)據(jù)庫記錄,被鎖定后的數(shù)據(jù)庫記錄則不會被其他IP地址分配進(jìn)程非配給其他云環(huán)境;應(yīng)當(dāng)理解的是,數(shù)據(jù)庫表中可以同時記錄目標(biāo)IP地址對應(yīng)的使用狀態(tài)為鎖定。
[0086]步驟209,云管理平臺利用對應(yīng)目標(biāo)云環(huán)境的目標(biāo)驅(qū)動程序向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令。
[0087]本發(fā)明實施例中,在管理平臺與目標(biāo)云環(huán)境進(jìn)行通信時,如果目標(biāo)云環(huán)境向云管理平臺提供的IP操作接口為一個同步接口,即目標(biāo)云環(huán)境在執(zhí)行IP綁定操作、IP解綁操作是同步操作,云管理平臺則利用對應(yīng)的接口驅(qū)動程序?qū)⒃乒芾砥脚_形成的數(shù)據(jù)包裝到消息中,通過消息隊列發(fā)出;相反的,如果云環(huán)境向云管理平臺提供的IP操作接口為一個異步接口,則利用對應(yīng)的驅(qū)動程序?qū)崿F(xiàn)接收器異步事件,將云管理平臺形成的數(shù)據(jù)包裝到消息中,將消息體解析成對應(yīng)異步接口的數(shù)據(jù)格式后通過消息隊列發(fā)出。
[0088]步驟210,目標(biāo)云環(huán)境將接收到的目標(biāo)IP地址與目標(biāo)設(shè)備及端口進(jìn)行綁定。
[0089]步驟211,云管理平臺接收目標(biāo)云環(huán)境發(fā)送的綁定成功消息。
[0090]這里,綁定成功消息攜帶目標(biāo)設(shè)備及端口的設(shè)備信息和端口信息。
[0091]步驟212,云管理平臺將數(shù)據(jù)庫表中對應(yīng)目標(biāo)IP地址的使用狀態(tài)更新為已分配,并將設(shè)備信息和端口信息更新到對應(yīng)的數(shù)據(jù)庫表中。
[0092]需要說明的是,步驟211至步驟212中,當(dāng)云管理平臺接收到目標(biāo)云環(huán)境發(fā)送的對應(yīng)目標(biāo)IP地址的綁定失敗消息或解綁成功消息時,應(yīng)在數(shù)據(jù)庫表中將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為未分配,同時刪除目標(biāo)IP地址對應(yīng)的設(shè)備信息及端口信息。
[0093]如圖3所示,本發(fā)明實施例提供了一種云管理平臺,包括:
[0094]設(shè)置模塊301,用于預(yù)先設(shè)置IP管理池,其中,所述IP管理池記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài);
[0095]指令接收模塊302,用于接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令;
[0096]處理模塊303,用于查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配;
[0097]狀態(tài)更新模塊304,用于將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定;
[0098]信息發(fā)送模塊305,用于向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址。
[0099]進(jìn)一步的,為了方便云管理平臺針對其管理的多個云環(huán)境中IP地址與實際物理設(shè)備之間的綁定情況進(jìn)行集中管理,如圖4所示,本發(fā)明一個優(yōu)選實施例中,還包括:
[0100]信息接收模塊401,用于接收目標(biāo)云環(huán)境發(fā)送的綁定成功消息,其中,所述綁定成功消息攜帶目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息;
[0101]所述狀態(tài)更新模塊304,進(jìn)一步用于將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為已分配,并將目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息增加到所述IP管理池。
[0102]進(jìn)一步的,為了實現(xiàn)被鎖定的目標(biāo)IP地址不會被分配給其他云環(huán)境,本發(fā)明一個優(yōu)選實施例中,
[0103]所述設(shè)置模塊301,用于預(yù)先設(shè)置數(shù)據(jù)庫表,其中,所述數(shù)據(jù)庫表包括至少兩條數(shù)據(jù)庫記錄,每一條所述數(shù)據(jù)庫記錄記錄一個IP地址及當(dāng)前IP地址對應(yīng)的使用狀態(tài);
[0104]所述狀態(tài)更新模塊304,用于鎖定目標(biāo)IP地址對應(yīng)的目標(biāo)數(shù)據(jù)庫記錄。
[0105]進(jìn)一步的,為了實現(xiàn)云管理平臺再下一次執(zhí)行IP地址分配業(yè)務(wù)時,可以快速確定對應(yīng)使用狀態(tài)為未分配的目標(biāo)IP地址,并自動向目標(biāo)云環(huán)境分配目標(biāo)IP地址,本發(fā)明一個優(yōu)選實施例中,所述設(shè)置模塊301,進(jìn)一步用于利用所述數(shù)據(jù)庫表中記錄的至少兩個IP地址構(gòu)建數(shù)據(jù)隊列;
[0106]所述處理模塊303,用于根據(jù)所述數(shù)據(jù)隊列在所述數(shù)據(jù)庫表中查詢隊首IP地址對應(yīng)的使用狀態(tài),在當(dāng)前IP地址對應(yīng)的使用狀態(tài)為未分配時,將當(dāng)前IP地址確定為目標(biāo)IP地址,并將當(dāng)前IP地址移動到所述數(shù)據(jù)隊列的隊尾。
[0107]進(jìn)一步的,由于不同的云環(huán)境向云平臺提供的通信接口并不相同,為了實現(xiàn)云平臺可與多個云環(huán)境均進(jìn)行通信,本發(fā)明一個優(yōu)選實施例中,所述設(shè)置模塊301,進(jìn)一步用于預(yù)先設(shè)置至少兩個云環(huán)境分別對應(yīng)的接口驅(qū)動程序;
[0108]所述信息發(fā)送模塊305,用于根據(jù)目標(biāo)云環(huán)境對應(yīng)的目標(biāo)接口驅(qū)動程序向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令。
[0109]上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實施例中的敘述,此處不再贅述。
[0110]本發(fā)明各個實施例至少具有如下有益效果:
[0111]1、通過在IP管理池中記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài),在接收到對應(yīng)目標(biāo)云環(huán)境的IP分配請求時,確定一個使用狀態(tài)為未分配的目標(biāo)IP地址,向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,同時,將目標(biāo)IP地址的使用狀態(tài)更新為鎖定,防止云管理中心在等待目標(biāo)云環(huán)境反饋的綁定成功消息期間,目標(biāo)IP地址被分配給其他云環(huán)境,即避免同一個IP地址被分配給多個云環(huán)境。
[0112]2、通過在云管理平臺中設(shè)置多個云環(huán)境分別對應(yīng)的接口驅(qū)動程序,使得云管理平臺可以通過調(diào)用不同的接口驅(qū)動程序與不同云環(huán)境分別提供的IP操作接口進(jìn)行對接,使得云管理平臺可以向不同類型的多個云環(huán)境分配IP地址。
[0113]3、在接收到一個IP地址分配請求指令時,執(zhí)行一次查詢?nèi)蝿?wù),本次查詢?nèi)蝿?wù)中,根據(jù)數(shù)據(jù)隊列查詢數(shù)據(jù)庫表以確定在數(shù)據(jù)隊列隊首的IP地址對應(yīng)的使用狀態(tài)是否為已分配或鎖定,在其對應(yīng)的使用狀態(tài)為已分配時,將隊首的IP地址移動到隊尾,直到本次查詢?nèi)蝿?wù)中查詢到一個位于隊首的目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配時,將該目標(biāo)IP地址移動到隊尾后,結(jié)束本次查詢?nèi)蝿?wù);如此,可實現(xiàn)將對應(yīng)使用狀態(tài)為鎖定及已分配的IP地址排列到數(shù)據(jù)隊列中靠后的位置,在下一次分配IP地址的過程中,僅需要執(zhí)行較少次數(shù)的查詢即可確定出一個對應(yīng)使用狀態(tài)為未分配的目標(biāo)IP地址。
[0114]需要說明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個〃.....”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同因素。
[0115]本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲在計算機可讀取的存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)中。
[0116]最后需要說明的是:以上所述僅為本發(fā)明的較佳實施例,僅用于說明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。
【主權(quán)項】
1.一種網(wǎng)絡(luò)之間互聯(lián)的協(xié)議IP地址分配方法,其特征在于,應(yīng)用于云管理平臺,包括: 預(yù)先設(shè)置IP管理池,其中,所述IP管理池記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài); 接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令; 查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配; 將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定; 向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址。2.根據(jù)權(quán)利要求1所述的IP地址分配方法,其特征在于,在所述向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令之后,還包括: 接收目標(biāo)云環(huán)境發(fā)送的綁定成功消息,其中,所述綁定成功消息攜帶目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息; 將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為已分配,并將目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息增加到所述IP管理池。3.根據(jù)權(quán)利要求1所述的IP地址分配方法,其特征在于, 所述預(yù)先設(shè)置IP管理池,包括:預(yù)先設(shè)置數(shù)據(jù)庫表,其中,所述數(shù)據(jù)庫表包括至少兩條數(shù)據(jù)庫記錄,每一條所述數(shù)據(jù)庫記錄記錄一個IP地址及當(dāng)前IP地址對應(yīng)的使用狀態(tài); 所述將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定,包括:鎖定目標(biāo)IP地址對應(yīng)的目標(biāo)數(shù)據(jù)庫記錄。4.根據(jù)權(quán)利要求3所述的IP地址分配方法,其特征在于, 所述預(yù)先設(shè)置數(shù)據(jù)庫表,進(jìn)一步包括:利用所述數(shù)據(jù)庫表中記錄的至少兩個IP地址構(gòu)建數(shù)據(jù)隊列; 所述查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址的使用狀態(tài)為未分配,包括: 根據(jù)所述數(shù)據(jù)隊列在所述數(shù)據(jù)庫表中查詢隊首IP地址對應(yīng)的使用狀態(tài),在當(dāng)前IP地址對應(yīng)的使用狀態(tài)為未分配時,將當(dāng)前IP地址確定為目標(biāo)IP地址,并將當(dāng)前IP地址移動到所述數(shù)據(jù)隊列的隊尾。5.根據(jù)權(quán)利要求1至4中任一所述的IP地址分配方法,其特征在于, 所述預(yù)先設(shè)置IP管理池,進(jìn)一步包括:預(yù)先設(shè)置至少兩個云環(huán)境分別對應(yīng)的接口驅(qū)動程序; 所述向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,包括:根據(jù)目標(biāo)云環(huán)境對應(yīng)的目標(biāo)接口驅(qū)動程序向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令。6.—種云管理平臺,其特征在于,包括: 設(shè)置模塊,用于預(yù)先設(shè)置IP管理池,其中,所述IP管理池記錄至少兩個IP地址及每一個IP地址分別對應(yīng)的使用狀態(tài); 指令接收模塊,用于接收對應(yīng)目標(biāo)云環(huán)境的IP地址分配請求指令; 處理模塊,用于查詢所述IP管理池,確定一個目標(biāo)IP地址,其中,所述目標(biāo)IP地址對應(yīng)的使用狀態(tài)為未分配; 狀態(tài)更新模塊,用于將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為鎖定; 信息發(fā)送模塊,用于向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令,以使目標(biāo)云環(huán)境綁定目標(biāo)IP地址。7.根據(jù)權(quán)利要求6所述的云管理平臺,其特征在于,還包括: 信息接收模塊,用于接收目標(biāo)云環(huán)境發(fā)送的綁定成功消息,其中,所述綁定成功消息攜帶目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息; 所述狀態(tài)更新模塊,進(jìn)一步用于將目標(biāo)IP地址對應(yīng)的使用狀態(tài)更新為已分配,并將目標(biāo)IP地址對應(yīng)的設(shè)備信息和端口信息增加到所述IP管理池。8.根據(jù)權(quán)利要求1所述的云管理平臺,其特征在于, 所述設(shè)置模塊,用于預(yù)先設(shè)置數(shù)據(jù)庫表,其中,所述數(shù)據(jù)庫表包括至少兩條數(shù)據(jù)庫記錄,每一條所述數(shù)據(jù)庫記錄記錄一個IP地址及當(dāng)前IP地址對應(yīng)的使用狀態(tài); 所述狀態(tài)更新模塊,用于鎖定目標(biāo)IP地址對應(yīng)的目標(biāo)數(shù)據(jù)庫記錄。9.根據(jù)權(quán)利要求8所述的云管理平臺,其特征在于, 所述設(shè)置模塊,進(jìn)一步用于利用所述數(shù)據(jù)庫表中記錄的至少兩個IP地址構(gòu)建數(shù)據(jù)隊列; 所述處理模塊,用于根據(jù)所述數(shù)據(jù)隊列在所述數(shù)據(jù)庫表中查詢隊首IP地址對應(yīng)的使用狀態(tài),在當(dāng)前IP地址對應(yīng)的使用狀態(tài)為未分配時,將當(dāng)前IP地址確定為目標(biāo)IP地址,并將當(dāng)前IP地址移動到所述數(shù)據(jù)隊列的隊尾。10.根據(jù)權(quán)利要求6至9中任一所述的云管理平臺,其特征在于, 所述設(shè)置模塊,進(jìn)一步用于預(yù)先設(shè)置至少兩個云環(huán)境分別對應(yīng)的接口驅(qū)動程序; 所述信息發(fā)送模塊,用于根據(jù)目標(biāo)云環(huán)境對應(yīng)的目標(biāo)接口驅(qū)動程序向目標(biāo)云環(huán)境發(fā)送攜帶目標(biāo)IP地址的分配指令。
【文檔編號】H04L29/12GK105872130SQ201610424541
【公開日】2016年8月17日
【申請日】2016年6月14日
【發(fā)明人】王剛
【申請人】浪潮電子信息產(chǎn)業(yè)股份有限公司