專利名稱:一種遷移計(jì)算節(jié)點(diǎn)的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種遷移計(jì)算節(jié)點(diǎn)的方法及裝置。
背景技術(shù):
通信網(wǎng)絡(luò)技術(shù)領(lǐng)域中的云計(jì)算,是一種通過(guò)Internet以服務(wù)的方式提供動(dòng)態(tài)可伸縮的虛擬化的資源的計(jì)算模式。對(duì)云計(jì)算系統(tǒng)進(jìn)行升級(jí)或者修復(fù)時(shí)需要先遷空計(jì)算節(jié)點(diǎn)中的虛擬機(jī),即將計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)遷移到其它計(jì)算節(jié)點(diǎn)上,在本計(jì)算節(jié)點(diǎn)負(fù)載為零的情況下對(duì)本計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù),例如升級(jí)或者修復(fù)等工作。計(jì)算節(jié)點(diǎn)的維護(hù)可以采用以下兩種技術(shù)方案:方案一,在一個(gè)計(jì)算集群內(nèi),逐一將計(jì)算集群內(nèi)的計(jì)算節(jié)點(diǎn)進(jìn)行遷空,然后對(duì)遷空后的每一個(gè)計(jì)算節(jié)點(diǎn)逐一進(jìn)行升級(jí)或者修復(fù);方案二,在一個(gè)計(jì)算集群內(nèi),通過(guò)人工設(shè)置一個(gè)并發(fā)遷移計(jì)算節(jié)點(diǎn)的數(shù)目,對(duì)設(shè)置的該數(shù)目對(duì)應(yīng)的計(jì)算節(jié)點(diǎn)進(jìn)行遷移,并對(duì)遷空后的計(jì)算節(jié)點(diǎn)并行升級(jí)或者修復(fù)。然而,由于逐一對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行遷移時(shí),導(dǎo)致維護(hù)時(shí)間長(zhǎng);方法二雖然進(jìn)行了并發(fā)遷移后的分批次維護(hù),但一次遷移的計(jì)算節(jié)點(diǎn)的數(shù)目是由人工設(shè)置的一個(gè)固定值,不夠靈活且遷移效率還有進(jìn)一步提升的空間。
發(fā)明內(nèi)容
本發(fā)明的實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的方法及裝置,可以根據(jù)計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的負(fù)載量情況對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行靈活的并發(fā)遷移。一方面,本發(fā)明的實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的方法,包括:步驟A:獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;步驟B:確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);步驟C:將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn);當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,返回執(zhí)行步驟A ;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行步驟D ;步驟D:確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);步 驟E:將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。在本發(fā)明的另一實(shí)施例中,所述獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序包括:
獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。在本發(fā)明的另一實(shí)施例中,所述將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述待進(jìn)行第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn),包括:將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的節(jié)點(diǎn)負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。在本發(fā)明的另一實(shí)施例中,所述將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移之后,還包括:步驟C’記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn);所述將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行并發(fā)遷移包括:根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。在將所述第一批 待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移之后,還包括:步驟F:對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。在本發(fā)明的另一實(shí)施例中,當(dāng)對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)之后,還包括:步驟G:將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。在本發(fā)明的另一實(shí)施例中,所述將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移包括:步驟H:獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);步驟1:確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn);步驟J:將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),執(zhí)行步驟K,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行步驟H ;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行步驟L ;步驟K:確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行步驟M ;步驟L:確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行步驟L ;步驟M:將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。在將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移之后,還包括:步驟N:對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。在本發(fā)明的另一實(shí)施例中,當(dāng)對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)之后,還包括:步驟0:按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移。每個(gè)所述計(jì)算節(jié)點(diǎn)的管理的虛擬機(jī)負(fù)載包括:所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的中央處理器CPU之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬中的至少一個(gè)。另一方面,本發(fā)明的實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的裝置,包括:獲得模塊,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;第一確定模塊,用于確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);第一模擬遷移模塊,用于將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn);第二確定模塊,用于當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,返回執(zhí)行所述獲得模塊;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行第三確定模塊;所述第三確定模塊,用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);并發(fā)遷移模塊,將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。在本發(fā)明的另一實(shí)施例中,所述獲得模塊用于:獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。所述第一模擬遷移模塊包括:第一模擬遷移單元,用于將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述 計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的節(jié)點(diǎn)負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。所述第一模擬遷移模塊,還包括:記錄單元,用于記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)。所述并發(fā)遷移模塊用于:根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。在本發(fā)明的另一實(shí)施例中,所述裝置,還包括:維護(hù)模塊 ,用于對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。在本發(fā)明的另一實(shí)施例中,所述裝置,還包括:處理模塊,用于將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。所述處理模塊包括:獲得單元,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);第一確定單元,用于確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn);模擬遷移單元,用于將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);第二確定單元,用于當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),執(zhí)行第三確定單元,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行所述獲得單元;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行第四確定單元;所述第三確定單元,用于確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行并發(fā)遷移單元;所述第四確定單元,用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行并發(fā)遷移單元;所述并發(fā)遷移單元,用于將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。在本發(fā)明的另一實(shí)施例中,所述第二模擬遷移模塊,還用于,對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
所述處理模塊,還用于按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移。每個(gè)所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載包括:所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的中央處理器CPU之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬中的至少一個(gè)。另一方面,本發(fā)明實(shí)施例提供另一種遷移計(jì)算節(jié)點(diǎn)的裝置,包括:處理器,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;存儲(chǔ)器,用于所述計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的存儲(chǔ)所述當(dāng)前負(fù)載排序;所述處理器,還用于確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);以及將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn);以及當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空;處理器,還用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);以及將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。在本發(fā)明的另一實(shí)施例中,所述處理器還用于:獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。在本發(fā)明的另一實(shí)施例中,所述處理器還用于,將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。在本發(fā)明的另一實(shí)施例中,所述存儲(chǔ)器,還用于記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn);所述處理器,還用于根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。所述處理器,還用于對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。所述處理器,還用于將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確 定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。
在本發(fā)明的另一實(shí)施例中,所述處理器:還用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);以及確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn);所述處理器,還用于將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);所述處理器,還用于當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),執(zhí)行確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行對(duì)計(jì)算節(jié)點(diǎn)的負(fù)載排序;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);所述處理器,還用于確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);
所述處理器,還用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);以及將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。在本發(fā)明的另一實(shí)施例中,所述處理器,還用于對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。所述處理器,還用于按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移。一種計(jì)算機(jī)可讀介質(zhì),其特征在于,包括:所述計(jì)算機(jī)可讀介質(zhì)包含計(jì)算機(jī)執(zhí)行指令,當(dāng)計(jì)算機(jī)的中央處理器執(zhí)行所述計(jì)算機(jī)執(zhí)行指令時(shí),所述計(jì)算機(jī)執(zhí)行遷移計(jì)算節(jié)點(diǎn)的方法。本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的方法及裝置,通過(guò)獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn),以及將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn),然后確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。與現(xiàn)有技術(shù)相比,本發(fā)明實(shí)施例可以根據(jù)計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的負(fù)載情況對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行靈活的并發(fā)遷移,從而進(jìn)一步提升計(jì)算節(jié)點(diǎn)遷移的靈活性和效率。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例1提供的一種遷移計(jì)算節(jié)點(diǎn)的方法的流程圖;圖2為本發(fā)明實(shí)施例1提供的一種對(duì)虛擬機(jī)的負(fù)載量進(jìn)行排序的示意圖;圖3為本發(fā)明實(shí)施例1提供的另一種遷移計(jì)算節(jié)點(diǎn)的方法的流程圖;圖4為本發(fā)明實(shí)施例1提供的確定第一批進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)時(shí)的數(shù)據(jù)分析示意圖;圖5為本發(fā)明實(shí)施例1提供的確定第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法的流程圖;圖6為本發(fā)明實(shí)施例1提供的確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法的流程圖;圖1為本發(fā)明實(shí)施例1提供的確定第二批進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)時(shí)的數(shù)據(jù)分析示意圖;圖8為本發(fā)明實(shí)施例1提供的確定第三批進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)時(shí)的數(shù)據(jù)分析示意
圖9為本發(fā)明實(shí)施例2提供的一種遷移計(jì)算節(jié)點(diǎn)的裝置的框圖;圖10為本發(fā)明實(shí)施例2提供的另一種遷移計(jì)算節(jié)點(diǎn)的裝置的框圖;圖11為本發(fā)明實(shí)施例2提供的另一種遷移計(jì)算節(jié)點(diǎn)的裝置的框圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。實(shí)施例1如圖1所示,本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的方法的流程圖,該方法的執(zhí)行主體為計(jì)算集群內(nèi)的管理節(jié)點(diǎn),該方法包括以下步驟:步驟101,獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;計(jì)算集群用于管理多個(gè)計(jì)算節(jié)點(diǎn),計(jì)算集群由一個(gè)管理節(jié)點(diǎn)和若干個(gè)計(jì)算節(jié)點(diǎn)組成。其中,管理節(jié)點(diǎn)用于管理該若干個(gè)計(jì)算節(jié)點(diǎn),以及按照某種負(fù)載均衡策略將接收到的任務(wù)請(qǐng)求分配給相對(duì)空閑的計(jì)算節(jié)點(diǎn),任務(wù)請(qǐng)求為管理節(jié)點(diǎn)發(fā)送給計(jì)算節(jié)點(diǎn)的,以便該計(jì)算節(jié)點(diǎn)處理此任務(wù)請(qǐng)求。計(jì)算節(jié)點(diǎn)也可以稱為主機(jī),在云計(jì)算環(huán)境中計(jì)算節(jié)點(diǎn)為其管理的虛擬機(jī)分配虛擬計(jì)算資源的節(jié)點(diǎn),其用于任務(wù)請(qǐng)求的處理執(zhí)行。在本步驟中,獲得計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序??蛇x的,可以根據(jù)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量按照從小到大進(jìn)行排序,或者根據(jù)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量按照從大到小進(jìn)行排序。在本實(shí)施例中,可以按照當(dāng)前負(fù)載量從小到大進(jìn)行排序。其中,每個(gè)計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載量包括以下因素之一或其任意組合:計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和、計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、或者計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬。例如,可以按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和為主對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行排序,當(dāng)然也可以按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行排序,或者,按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行排序。步驟102,確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);其中,在計(jì)算集群中可能出現(xiàn)負(fù)載量為零的計(jì)算節(jié)點(diǎn),例如根據(jù)實(shí)際需要,可以確定一個(gè)計(jì)算集群內(nèi)進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為5個(gè),對(duì)這5個(gè)計(jì)算節(jié)點(diǎn)按照其管理的虛擬機(jī)的負(fù)載量進(jìn)行排序,例如按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和從小到大的順序進(jìn)行排列。計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)的CPU之和為0,即計(jì)算節(jié)點(diǎn)I的負(fù)載量0 ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為10% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為40% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75%,則當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)2?;蛘撸谟?jì)算集群中可能出現(xiàn)負(fù)載量相同的計(jì)算節(jié)點(diǎn),例如根據(jù)實(shí)際需要,可以確定另一個(gè)計(jì)算集群內(nèi)進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為6個(gè),對(duì)這6個(gè)計(jì)算節(jié)點(diǎn)按照其管理的虛擬機(jī)的負(fù)載進(jìn)行排序,且按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和從小到大的順序進(jìn)行排列。計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)的CPU之和為0,即計(jì)算節(jié)點(diǎn)I的負(fù)載量0 ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為10% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為10% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為90%,則當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)2。在本實(shí)施例中,在該計(jì)算集群進(jìn)行負(fù)載排序時(shí),出現(xiàn)負(fù)載相同的計(jì)算節(jié)點(diǎn)時(shí),例如上述計(jì)算節(jié)點(diǎn)2與計(jì)算節(jié)點(diǎn)3的負(fù)載量都為10%,此時(shí)當(dāng)前負(fù)載排序還要對(duì)負(fù)載相同的計(jì)算節(jié)點(diǎn)的其它運(yùn)行情況進(jìn)行了解和比較,其他運(yùn)行情況可以是計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、或者計(jì)算節(jié)點(diǎn)管理的虛 擬機(jī)的帶寬。原則上,可以對(duì)所有計(jì)算節(jié)點(diǎn)的負(fù)載情況進(jìn)行嚴(yán)格地大小關(guān)系的區(qū)分,當(dāng)然,也可以不進(jìn)一步區(qū)分負(fù)載相同的計(jì)算節(jié)點(diǎn)的負(fù)載和運(yùn)行情況,可以隨機(jī)地對(duì)負(fù)載相同的計(jì)算節(jié)點(diǎn)進(jìn)行排序,無(wú)論如何排序,初始負(fù)載排序的順序用于后續(xù)的模擬計(jì)算,若相同負(fù)載計(jì)算節(jié)點(diǎn)在負(fù)載排序時(shí)被區(qū)分了大小,后續(xù)模擬計(jì)算則以初始排序的大小關(guān)系為準(zhǔn)。步驟103,將當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,該第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為計(jì)算集群中負(fù)載未滿且負(fù)載量大于當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn);在本步驟中,當(dāng)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于該第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,返回執(zhí)行步驟101 ;當(dāng)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于該第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行步驟104 ;舉例而言,如圖2所示,根據(jù)實(shí)際需要,可以確定一個(gè)計(jì)算集群內(nèi)進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為7個(gè),對(duì)這7個(gè)計(jì)算節(jié)點(diǎn)按照其管理的虛擬機(jī)的負(fù)載進(jìn)行排序,例如按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和從小到大的順序進(jìn)行排列。計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)的CPU之和為O,即計(jì)算節(jié)點(diǎn)I的負(fù)載量O ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為10% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為40% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為90% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%,確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn),即當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)2。該第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)可以為計(jì)算節(jié)點(diǎn)3、計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5或者計(jì)算節(jié)點(diǎn)6,所有第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和為245%,其大于計(jì)算節(jié)點(diǎn)2的負(fù)載量,所以計(jì)算節(jié)點(diǎn)2能夠被模擬遷空,需要說(shuō)明的是,第一次模擬遷移時(shí)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)3,當(dāng)然,對(duì)第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的確定不限于此,還可以為計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5或者計(jì)算節(jié)點(diǎn)6。即將計(jì)算節(jié)點(diǎn)2上10%的負(fù)載量模擬遷移到第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)3上,計(jì)算節(jié)點(diǎn)3的負(fù)載量為40%,計(jì)算節(jié)點(diǎn)2上的負(fù)載量為O。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)2上10%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)3上。然后返回執(zhí)行步驟101,即獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;當(dāng)前負(fù)載排序?yàn)?計(jì)算節(jié)點(diǎn)I的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為40% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為40% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為90% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100% ;根據(jù)當(dāng)前負(fù)載排序確定當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)3,所有第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和為90%,大于計(jì)算節(jié)點(diǎn)3的負(fù)載量40%,所以計(jì)算節(jié)點(diǎn)3能夠被模擬遷空,即將計(jì)算節(jié)點(diǎn)3上40%的負(fù)載量模擬遷移到第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)4上,計(jì)算節(jié)點(diǎn)4的負(fù)載量為80%,計(jì)算節(jié)點(diǎn)3上的負(fù)載量為O。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)3上40%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)4上。返回執(zhí)行步驟101,即獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;當(dāng)前負(fù)載排序?yàn)橛?jì)算節(jié)點(diǎn)I的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為80% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為90% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100% ;根據(jù)當(dāng)前負(fù)載排序確定當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)4,所有第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和為35%,小于計(jì)算節(jié)點(diǎn)4的負(fù)載量80%,確定當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行步驟104,即確定初始負(fù)載量小于當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);步驟104,確定初始負(fù)載量小于當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);通過(guò)計(jì)算,第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)1,計(jì)算節(jié)點(diǎn)2,計(jì)算節(jié)點(diǎn)3。步驟105,將第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。根據(jù)上述計(jì)算結(jié)果,得出將第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移,SP將計(jì)算節(jié)點(diǎn)1,計(jì)算節(jié)點(diǎn)2,計(jì)算節(jié)點(diǎn)3進(jìn)行第一并發(fā)遷移。本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的方法,通過(guò)確定一個(gè)計(jì)算集群的計(jì)算中可以進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn),并對(duì)確定的計(jì)算節(jié)點(diǎn)進(jìn)行并發(fā)遷移,使得本實(shí)施例可以自動(dòng)確定進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)的數(shù)目,并進(jìn) 行并行遷移。如圖3所示,本發(fā)明實(shí)施例提供另一種遷移計(jì)算節(jié)點(diǎn)的方法,該方法包括:
步驟301,管理節(jié)點(diǎn)獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;可選的,在確定一個(gè)計(jì)算集群內(nèi)待并發(fā)遷移的計(jì)算節(jié)點(diǎn)之后,管理節(jié)點(diǎn)按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載對(duì)所有計(jì)算節(jié)點(diǎn)從小到大排序;或者,在確定一個(gè)計(jì)算集群內(nèi)待并發(fā)遷移的計(jì)算節(jié)點(diǎn)之后,按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載對(duì)所述計(jì)算節(jié)點(diǎn)從大到小排序。以便根據(jù)計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載情況對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行遷移計(jì)算。其中,每個(gè)計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載包括以下因素之一或其任意組合:所有計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和、所有計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、或者所有計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬。例如,可以按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和為主對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行排序,當(dāng)然也可以按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行排序,或者,按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行排序。舉例而言,根據(jù)實(shí)際需要,可以確定一個(gè)計(jì)算集群內(nèi)進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為7個(gè),對(duì)這7個(gè)計(jì)算節(jié)點(diǎn)按照其管理的虛擬機(jī)的負(fù)載進(jìn)行排序,例如按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和從小到大的順序進(jìn)行排列。如圖4所示,計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)的CPU之和為20%,即計(jì)算節(jié)點(diǎn)I的負(fù)載量為20% ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為20% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為90% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為90%。如果有負(fù)載相同的計(jì)算節(jié)點(diǎn),所述負(fù)載排序還對(duì)負(fù)載相同的計(jì)算節(jié)點(diǎn)的其它運(yùn)行情況進(jìn)行了解和比較,原則上,可以對(duì)所有計(jì)算節(jié)點(diǎn)的負(fù)載情況進(jìn)行嚴(yán)格地大小關(guān)系的區(qū)分,當(dāng)然,也可以不進(jìn)一步區(qū)分負(fù)載相同的計(jì)算節(jié)點(diǎn)的負(fù)載和運(yùn)行情況,可以隨機(jī)地對(duì)負(fù)載相同的計(jì)算節(jié)點(diǎn)進(jìn)行排序,無(wú)論如何排序,初始負(fù)載排序的順序用于后續(xù)的模擬計(jì)算,若相同負(fù)載計(jì)算節(jié)點(diǎn)在負(fù)載排序時(shí)被區(qū)分了大小,后續(xù)模擬計(jì)算則以初始排序的大小關(guān)系為準(zhǔn),例如計(jì)算節(jié)點(diǎn)I和2的初始負(fù)載均為20%,在排序的時(shí)候,將計(jì)算節(jié)點(diǎn)I排位于計(jì)算節(jié)點(diǎn)2之前,則在 后續(xù)模擬計(jì)算時(shí),則可認(rèn)為計(jì)算節(jié)點(diǎn)2的負(fù)載大于計(jì)算節(jié)點(diǎn)I。步驟302,管理節(jié)點(diǎn)按照第一模擬遷移計(jì)算模型計(jì)算出第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);所述第一模擬遷移計(jì)算模型為:將當(dāng)前負(fù)載排序中負(fù)載不為零且負(fù)載最小的計(jì)算節(jié)點(diǎn)設(shè)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn),將所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載大于所有所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被遷空。所述遷空意指計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)可以被全部遷移到其它計(jì)算節(jié)點(diǎn)上,以致所述計(jì)算節(jié)點(diǎn)的負(fù)載為零。具體地,如果計(jì)算集群中初始即存在負(fù)載為零的計(jì)算節(jié)點(diǎn),則該計(jì)算節(jié)點(diǎn)被直接納入第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)中;另外,按照負(fù)載從小到大的原則依次對(duì)負(fù)載不為零的計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移計(jì)算,每遷空一個(gè)計(jì)算節(jié)點(diǎn)重新更新各計(jì)算節(jié)點(diǎn)的負(fù)載情況的排序,再循環(huán)執(zhí)行下一個(gè)負(fù)載最小的計(jì)算節(jié)點(diǎn)的模擬遷移計(jì)算,直至某計(jì)算節(jié)點(diǎn)無(wú)法遷空的時(shí)候,則確定初始負(fù)載小于該不能遷空的計(jì)算節(jié)點(diǎn)的計(jì)算節(jié)點(diǎn)為能夠被遷空的計(jì)算節(jié)點(diǎn),并將這些節(jié)點(diǎn)納入第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)中。需要說(shuō)明的是,上述模擬遷移計(jì)算并不實(shí)際進(jìn)行并發(fā)遷移動(dòng)作。
如圖5所示,按照第一模擬遷移計(jì)算模型計(jì)算出第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),可以具體包括以下步驟(實(shí)施方式之一):步驟501,確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A ;其中,當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A為上述所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)中的一個(gè)具體的計(jì)算節(jié)點(diǎn)。舉例而言,根據(jù)實(shí)際需要,可以確定一個(gè)計(jì)算集群內(nèi)進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為7個(gè),對(duì)這7個(gè)計(jì)算節(jié)點(diǎn)按照其管理的虛擬機(jī)的負(fù)載進(jìn)行排序,例如按照計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的CPU之和從小到大的順序進(jìn)行排列。如圖4所示,計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)的CPU之和為20%,即計(jì)算節(jié)點(diǎn)I的負(fù)載量為20% ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為20% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為90% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為90%。則當(dāng)前帶進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)I。步驟502,將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A管理的虛擬機(jī)逐個(gè)模擬遷移到負(fù)載未滿且負(fù)載最大的計(jì)算節(jié)點(diǎn)上;需要說(shuō)明的是,在模擬遷移計(jì)算節(jié)點(diǎn)時(shí),可以將當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述待進(jìn)行第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A的負(fù)載量的計(jì)算節(jié)點(diǎn),即計(jì)算節(jié)點(diǎn)2、計(jì)算節(jié)點(diǎn)3、計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)
5、計(jì)算節(jié)點(diǎn)6或者計(jì)算節(jié)點(diǎn)7。本實(shí)施例為了最大程序避免多次遷移,可將當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A管理的虛擬機(jī)逐個(gè)模擬遷移到負(fù)載未滿且負(fù)載最大的計(jì)算節(jié)點(diǎn)上。例如,當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)1,負(fù)載最大的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)7。先判斷計(jì)算節(jié)點(diǎn) I是否能夠被遷空。負(fù)載排序大于計(jì)算節(jié)點(diǎn)I的計(jì)算節(jié)點(diǎn)2、計(jì)算節(jié)點(diǎn)3、計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5、計(jì)算節(jié)點(diǎn)6、計(jì)算節(jié)點(diǎn)7的負(fù)載余量之和為265%,遠(yuǎn)大于計(jì)算節(jié)點(diǎn)I的負(fù)載量20%,因此計(jì)算節(jié)點(diǎn)I能夠被遷空。進(jìn)一步可選的,可以將計(jì)算節(jié)點(diǎn)I上管理的虛擬機(jī)逐個(gè)按計(jì)算節(jié)點(diǎn)I上管理的各個(gè)虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)7上。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)I上10%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)7上。其中,具體地可以將計(jì)算節(jié)點(diǎn)I上管理的各個(gè)虛擬機(jī)的CPU負(fù)載量從大到小的順序模擬遷移到計(jì)算節(jié)點(diǎn)7中,以便最大程序避免多次遷移。例如,計(jì)算節(jié)點(diǎn)I上管理3個(gè)虛擬機(jī),各個(gè)虛擬機(jī)的CPU負(fù)載量為1%,9%,10%,則優(yōu)先將CPU負(fù)載量為10%的虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)7上,然后再將CPU負(fù)載量為9%的虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)7上,最后將CPU負(fù)載量為1%的虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)7上。需要說(shuō)明的是,在實(shí)際計(jì)算并發(fā)遷移的計(jì)算節(jié)點(diǎn)時(shí),需要具體考慮負(fù)載最大的計(jì)算節(jié)點(diǎn)的負(fù)載量,以避免增加遷移次數(shù)。例如,計(jì)算節(jié)點(diǎn)7的負(fù)載量為99%,計(jì)算節(jié)點(diǎn)I上管理3個(gè)虛擬機(jī),各個(gè)虛擬機(jī)的CPU負(fù)載量為1%,9%,10%,則此時(shí),需要直接將CPU負(fù)載量為1%的虛擬機(jī)添加到計(jì)算節(jié)點(diǎn)7上。若負(fù)載最大的計(jì)算節(jié)點(diǎn)的負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿且負(fù)載最大的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)A管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上,直到所述負(fù)載最小的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)完全遷空;
例如,計(jì)算節(jié)點(diǎn)I不能完全遷空,此時(shí)需要將計(jì)算節(jié)點(diǎn)I剩余的虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)6上,依次類推直到計(jì)算節(jié)點(diǎn)2。若計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)可以遷空則繼續(xù)將計(jì)算節(jié)點(diǎn)2管理的虛擬機(jī)進(jìn)行模擬遷移計(jì)算。需要說(shuō)明的是,可對(duì)計(jì)算集群內(nèi)的計(jì)算節(jié)點(diǎn)設(shè)置負(fù)載量已滿的比例,例如,設(shè)定計(jì)算節(jié)點(diǎn)1-7的負(fù)載量已滿的比例為100%,或者也可以設(shè)定計(jì)算節(jié)點(diǎn)1-7的負(fù)載量已滿的比例為90%等。本實(shí)施例中以計(jì)算節(jié)點(diǎn)的負(fù)載量已滿的比例為100%為例進(jìn)行詳細(xì)描述。如圖4所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為20%,計(jì)算節(jié)點(diǎn)7的負(fù)載量為90%,此時(shí),將計(jì)算節(jié)點(diǎn)I上10%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)7上,計(jì)算節(jié)點(diǎn)7的負(fù)載量達(dá)到100%,計(jì)算節(jié)點(diǎn)I上剩余10%的負(fù)載量。計(jì)算節(jié)點(diǎn)6的負(fù)載量為90%,然后將計(jì)算節(jié)點(diǎn)I上剩余10%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)6上,此時(shí),計(jì)算節(jié)點(diǎn)I的負(fù)載量為0,計(jì)算節(jié)點(diǎn)6的負(fù)載量達(dá)到100%。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)I上剩余10%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)6上。步驟503,每遷空一個(gè)計(jì)算節(jié)點(diǎn)或者一個(gè)計(jì)算節(jié)點(diǎn)的負(fù)載飽和時(shí),記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),并更新各計(jì)算節(jié)點(diǎn)的負(fù)載排序,獲得當(dāng)前的負(fù)載排序;記錄遷移路徑:將計(jì)算節(jié)點(diǎn)I上10%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)7上,將計(jì)算節(jié)點(diǎn)I上剩余10%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)6上??蛇x的,在將計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)模擬遷移計(jì)算完成后,管理節(jié)點(diǎn)將計(jì)算節(jié)點(diǎn)1-7中負(fù)載量進(jìn)行更新。如圖4所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為20% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量 為30% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為75% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。步驟504,確定當(dāng)前負(fù)載排序中負(fù)載不為零且負(fù)載最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B,將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B管理的虛擬機(jī)逐個(gè)模擬遷移到當(dāng)前負(fù)載未滿且負(fù)載最大的計(jì)算節(jié)點(diǎn)上;根據(jù)步驟503中對(duì)計(jì)算節(jié)點(diǎn)的重新排序之后的負(fù)載排序,確定當(dāng)前負(fù)載量不為零且負(fù)載量最小的計(jì)算節(jié)點(diǎn)B為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)2,以及確定當(dāng)前負(fù)載量未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn),如圖4所示,當(dāng)前負(fù)載量未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)3、計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5。步驟505,若所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B的負(fù)載量小于所述計(jì)算集群中當(dāng)前負(fù)載排序大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B的所有計(jì)算節(jié)點(diǎn)的負(fù)載余量之和,即當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B能夠被遷空時(shí),返回執(zhí)行步驟503 ;若所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B的負(fù)載大于所述計(jì)算集群中當(dāng)前負(fù)載排序大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B的所有計(jì)算節(jié)點(diǎn)的負(fù)載余量之和,確定當(dāng)前負(fù)載不零且負(fù)載最小的計(jì)算節(jié)點(diǎn)不能被遷空,則初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)模擬遷移計(jì)算完成后,繼續(xù)將計(jì)算節(jié)點(diǎn)2管理的虛擬機(jī)進(jìn)行模擬遷移計(jì)算,計(jì)算節(jié)點(diǎn)2設(shè)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)B。如圖4所示,計(jì)算節(jié)點(diǎn)2的負(fù)載量為20%,計(jì)算節(jié)點(diǎn)7與計(jì)算節(jié)點(diǎn)6的負(fù)載量已滿,根據(jù)當(dāng)前負(fù)載排序,負(fù)載量未滿且負(fù)載大于計(jì)算節(jié)點(diǎn)2的計(jì)算節(jié)點(diǎn)3、4、5的負(fù)載余量之和為165%,遠(yuǎn)大于計(jì)算節(jié)點(diǎn)2的負(fù)載量20%,因此計(jì)算節(jié)點(diǎn)2能夠被遷空。此時(shí)需要將計(jì)算節(jié)點(diǎn)2管理的虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)5上。具體的,計(jì)算節(jié)點(diǎn)5的負(fù)載量為75%,則可以直接將計(jì)算節(jié)點(diǎn)2上管理的虛擬機(jī)全部模擬遷移到計(jì)算節(jié)點(diǎn)5中,則計(jì)算節(jié)點(diǎn)2的負(fù)載量為O,計(jì)算節(jié)點(diǎn)5的負(fù)載量為95%。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)2上20%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)5上。計(jì)算節(jié)點(diǎn)2管理的虛擬機(jī)模擬遷移計(jì)算完成后,管理節(jié)點(diǎn)將計(jì)算節(jié)點(diǎn)1-7中負(fù)載量進(jìn)行更新。如圖4所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為30% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為95% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。此時(shí),繼續(xù)對(duì)計(jì)算節(jié)點(diǎn)3管理的虛擬機(jī)進(jìn)行模擬遷移計(jì)算,計(jì)算節(jié)點(diǎn)3設(shè)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)C。如圖4所示,計(jì)算節(jié)點(diǎn)3的負(fù)載量為30%,根據(jù)當(dāng)前負(fù)載排序,負(fù)載量未滿且負(fù)載大于計(jì)算節(jié)點(diǎn)3的計(jì)算節(jié)點(diǎn)4、5的負(fù)載余量之和為75%,遠(yuǎn)大于計(jì)算節(jié)點(diǎn)3的負(fù)載量30%,將計(jì)算節(jié)點(diǎn)3上管理的虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)5中,此時(shí)計(jì)算節(jié)點(diǎn)3上5%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)5中,計(jì)算節(jié)點(diǎn)5的負(fù)載量達(dá)到100%,而計(jì)算節(jié)點(diǎn)3的負(fù)載量剩余25%。然后將計(jì)算節(jié)點(diǎn)3上剩余25%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)4上,計(jì)算節(jié)點(diǎn)4的負(fù)載量為30%。此時(shí),計(jì)算節(jié)點(diǎn)3的負(fù)載量為0,計(jì)算節(jié)點(diǎn)4的負(fù)載量達(dá)到55%。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)3上5%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)5上,將計(jì)算節(jié)點(diǎn)3上剩余25%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)4上。計(jì)算節(jié)點(diǎn)3管理的虛擬機(jī)模擬遷移計(jì)算完成后,管理節(jié)點(diǎn)將計(jì)算節(jié)點(diǎn)1-7中負(fù)載量進(jìn)行更新。如圖4所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為55% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。此時(shí),需要對(duì)計(jì)算節(jié)點(diǎn)4進(jìn)行模擬遷移計(jì)算,計(jì)算節(jié)點(diǎn)4設(shè)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)D,發(fā)現(xiàn)計(jì)算節(jié)點(diǎn)5、6、7的節(jié)點(diǎn)負(fù)載量都為100%,根據(jù)當(dāng)前負(fù)載排序,負(fù)載量未滿且負(fù)載排序大于計(jì)算節(jié)點(diǎn)4的計(jì)算節(jié)點(diǎn)不存在,計(jì)算節(jié)點(diǎn)4的負(fù)載量55%無(wú)法被遷移,因此計(jì)算節(jié)點(diǎn)4上的虛擬機(jī)不能被遷空,此時(shí)結(jié)束第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的模擬遷移計(jì)算。 本實(shí)施例中,根據(jù)上述模擬遷移計(jì)算確定負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)D的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)。即第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)為1、計(jì)算節(jié)點(diǎn)2以及計(jì)算節(jié)點(diǎn)3。在確定完第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)之后,繼續(xù)執(zhí)行下述步驟。步驟303,根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上;在本步驟中,根據(jù)步驟302確定進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)時(shí)采用的模擬并發(fā)遷移的方式進(jìn)行實(shí)際遷移,具體的,將計(jì)算節(jié)點(diǎn)I管理的虛擬機(jī)模擬遷移到計(jì)算節(jié)點(diǎn)7和計(jì)算節(jié)點(diǎn)6上,將計(jì)算節(jié)點(diǎn)2管理的虛擬機(jī)遷移到計(jì)算節(jié)點(diǎn)5上,將計(jì)算節(jié)點(diǎn)3管理的虛擬機(jī)遷移到計(jì)算節(jié)點(diǎn)5和計(jì)算節(jié)點(diǎn)4上。步驟304,管理節(jié)點(diǎn)對(duì)所述第一批并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù),所述維護(hù)包括升級(jí)或者修復(fù);在本步驟中,對(duì)計(jì)算節(jié)點(diǎn)1、計(jì)算節(jié)點(diǎn)2以及計(jì)算節(jié)點(diǎn)3進(jìn)行維護(hù)時(shí),首先進(jìn)行維護(hù)前的環(huán)境搭建,然后獲取計(jì)算節(jié)點(diǎn)進(jìn)行升級(jí)的版本軟件包或者獲取計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)的版本的補(bǔ)丁包,并且獲取計(jì)算節(jié)點(diǎn)的設(shè)備信息,最后根據(jù)計(jì)算節(jié)點(diǎn)的設(shè)備信息對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。步驟305,管理節(jié)點(diǎn)按照第二模擬遷移計(jì)算模型計(jì)算出第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);第二模擬遷移計(jì)算模型為:將當(dāng)前負(fù)載排序中負(fù)載不為零且負(fù)載最小的計(jì)算節(jié)點(diǎn)設(shè)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn),將所述待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向所有所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);當(dāng)所述待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載大于所有所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被遷空。如圖6所示,按照第二模擬遷移計(jì)算模型計(jì)算出第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),具體包括以下步驟:步驟601,獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);其中,如圖7所示,計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序?yàn)?計(jì)算節(jié)點(diǎn)1-3為維護(hù)完成之后的計(jì)算節(jié)點(diǎn),其負(fù)載量之和為0 ;計(jì)算節(jié)點(diǎn)4-7中為未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),其負(fù)載量分別為:計(jì)算節(jié)點(diǎn)4的負(fù)載量為55% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。步驟602,確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A ;根據(jù)圖7所示,計(jì)算節(jié)點(diǎn)4的負(fù)載量為55%,即本實(shí)施例中的當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A。
`
步驟603,將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A管理的虛擬機(jī)依次模擬遷移到第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);其中,已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)1-3。具體的,在模擬遷移計(jì)算節(jié)點(diǎn)時(shí),當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A的負(fù)載量小于所有所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A能夠被模擬遷空;例如,在本步驟中,所有第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和為300%,則當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A能夠被模擬遷空。此時(shí),將計(jì)算節(jié)點(diǎn)4上55%的負(fù)載量模擬遷移到已經(jīng)進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)I上,即已維護(hù)的計(jì)算節(jié)點(diǎn)I為第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)。此時(shí)已經(jīng)進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)I的負(fù)載量為55%,計(jì)算節(jié)點(diǎn)4的負(fù)載量為
O。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)4上55%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)I上。進(jìn)一步的,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),則返回執(zhí)行步驟601。具體的,如圖7所示,當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)A不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)還包括計(jì)算節(jié)點(diǎn)5、計(jì)算節(jié)點(diǎn)6以及計(jì)算節(jié)點(diǎn)7。因此在將計(jì)算節(jié)點(diǎn)4管理的虛擬機(jī)模擬遷移計(jì)算完成后,管理節(jié)點(diǎn)將計(jì)算節(jié)點(diǎn)1-7中負(fù)載量進(jìn)行更新。如圖7所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為55% ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為O ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為O ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為O ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。獲得當(dāng)前負(fù)載排序之后,確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)B,如圖7所示,當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)B為計(jì)算節(jié)點(diǎn)5。此時(shí),需要繼續(xù)將計(jì)算節(jié)點(diǎn)5管理的虛擬機(jī)進(jìn)行模擬遷移計(jì)算。如圖7所示,已維護(hù)的計(jì)算節(jié)點(diǎn)1、計(jì)算節(jié)點(diǎn)2、計(jì)算節(jié)點(diǎn)3的負(fù)載余量之和為245%,大于計(jì)算節(jié)點(diǎn)5的負(fù)載量,所以計(jì)算節(jié)點(diǎn)5可以能夠被遷空??蛇x的,將計(jì)算節(jié)點(diǎn)5上的45%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)I中,計(jì)算節(jié)點(diǎn)I的負(fù)載量達(dá)到100%,而計(jì)算節(jié)點(diǎn)5的負(fù)載量剩余55%,然后將計(jì)算節(jié)點(diǎn)5上剩余55%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)2上,此時(shí),計(jì)算節(jié)點(diǎn)5的負(fù)載量為0,計(jì)算節(jié)點(diǎn)2的負(fù)載量達(dá)到55%。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)5上45%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)I上。,將計(jì)算節(jié)點(diǎn)2上剩余55%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)2上。進(jìn)一步的,在將計(jì)算節(jié)點(diǎn)5管理的虛擬機(jī)遷移計(jì)算完成后,當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)B不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)還包括計(jì)算節(jié)點(diǎn)6以及計(jì)算節(jié)點(diǎn)7。因此返回執(zhí)行步驟601。具體的,管理節(jié)點(diǎn)將計(jì)算節(jié)點(diǎn)1-7中負(fù)載量進(jìn)行更新。如圖7所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為55% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。獲得當(dāng)前負(fù)載排序之后,確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)C,如圖7所示,當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)C為計(jì)算節(jié)點(diǎn)6。此時(shí),需要繼續(xù)將計(jì)算節(jié)點(diǎn)6管理的虛擬機(jī)進(jìn)行遷移計(jì)算。如圖7所示,計(jì)算節(jié)點(diǎn)6的負(fù)載量為100%,已維護(hù)的計(jì)算節(jié)點(diǎn)1、2、3的負(fù)載余量之和為145%,大于計(jì)算節(jié)點(diǎn)6的負(fù)載量,所以計(jì)算節(jié)點(diǎn)6可以模擬遷移??蛇x的,用計(jì)算節(jié)點(diǎn)2和計(jì)算節(jié)點(diǎn)3作為第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),即將計(jì)算節(jié)點(diǎn)6上45%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)2中,計(jì)算節(jié)點(diǎn)2的負(fù)載量達(dá)到100%,而計(jì)算節(jié)點(diǎn)6的負(fù)載量剩余55%,然后將計(jì)算節(jié)點(diǎn)6上剩余55%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)3上,此時(shí),計(jì)算節(jié)點(diǎn)6的節(jié)點(diǎn)負(fù)載量為0,計(jì)算節(jié)點(diǎn)3的負(fù)載量達(dá)到55%。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)6上45%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)2上,將計(jì)算節(jié)點(diǎn)2上剩余55%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)3上。進(jìn)一步的,在將計(jì)算節(jié)點(diǎn)6管理的虛擬機(jī)遷移計(jì)算完成后,當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)C不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)還包括計(jì)算節(jié)點(diǎn)7。因此返回執(zhí)行步驟601。具體的,管理節(jié)點(diǎn)將計(jì)算節(jié)點(diǎn)1-7中負(fù)載量進(jìn)行更新。如圖7所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為45% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。獲得當(dāng)前負(fù)載排序之后,確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D,如圖7所示,當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D為計(jì)算節(jié) 點(diǎn)7。此時(shí),需要繼續(xù)將計(jì)算節(jié)點(diǎn)7管理的虛擬機(jī)進(jìn)行遷移計(jì)算。如圖7所示,計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%,此時(shí),已維護(hù)的計(jì)算節(jié)點(diǎn)的負(fù)載余量之和為55%,小于計(jì)算節(jié)點(diǎn)7的負(fù)載量。當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,此時(shí)執(zhí)行步驟604。即計(jì)算節(jié)點(diǎn)7不能模擬遷移,結(jié)束第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的計(jì)算。進(jìn)一步可選的,當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D不能遷移至第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)時(shí),可以判斷未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)中是否還存在節(jié)點(diǎn)負(fù)載量未滿的情況時(shí)。當(dāng)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)中還存在負(fù)載量未滿并且大于當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D的計(jì)算節(jié)點(diǎn)8時(shí),并且當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D的節(jié)點(diǎn)負(fù)載小于計(jì)算節(jié)點(diǎn)8的負(fù)載余量時(shí),則可以將當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D剩余的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)8上;當(dāng)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)中還存在負(fù)載量未滿并且大于當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D的計(jì)算節(jié)點(diǎn)8時(shí),并且當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D的負(fù)載量大于計(jì)算節(jié)點(diǎn)8的負(fù)載量時(shí),則當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D不能夠被模擬遷空,此時(shí)執(zhí)行步驟604。進(jìn)一步可選的,當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)C的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如 果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)C為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),則將當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)C管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,之后,執(zhí)行步驟605。步驟604,確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)D的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);如圖7所示,第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5以計(jì)算節(jié)點(diǎn)6。在確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)之后,對(duì)第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行實(shí)際并發(fā)遷移,具體操作參照步驟306。步驟605,確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);由于當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)C為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),即不存在計(jì)算節(jié)點(diǎn)7,此時(shí)第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5以計(jì)算節(jié)點(diǎn)6。在確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)之后,對(duì)第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行實(shí)際并發(fā)遷移,具體操作參照步驟306。步驟306,根據(jù)記錄的每個(gè)待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。如圖7所示,即將確定進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5、計(jì)算節(jié)點(diǎn)6。進(jìn)一步的,在確定進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)之后,按照確定進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)時(shí)采用的并發(fā)遷移的方式,管理節(jié)點(diǎn)對(duì)所述計(jì)算節(jié)點(diǎn)進(jìn)行并發(fā)遷移,并對(duì)管理節(jié)點(diǎn)對(duì)所述并發(fā)遷移后的計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。具體的,根據(jù)步驟601-步驟605確定進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)時(shí)采用的并發(fā)遷移的方式進(jìn)行遷移,具體的,將計(jì)算節(jié)點(diǎn)4管理的虛擬機(jī)遷移至已經(jīng)維護(hù)的計(jì)算節(jié)點(diǎn)I上,將計(jì)算節(jié)點(diǎn)5管理的虛擬機(jī)遷移至已經(jīng)維護(hù)的計(jì)算節(jié)點(diǎn)I和已經(jīng)維護(hù)的計(jì)算節(jié)點(diǎn)2上,將計(jì)算節(jié)點(diǎn)6管理的虛擬機(jī)遷移至已經(jīng)維護(hù)的計(jì)算節(jié)點(diǎn)2和已經(jīng)維護(hù)的計(jì)算節(jié)點(diǎn)3上。步驟307,管理節(jié)點(diǎn)對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù);其中對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行的升級(jí)或者修復(fù)的操作與附圖3中步驟304相同,在此不--贅述。步驟308,管理節(jié)點(diǎn)按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移;在本步驟中,管理節(jié)點(diǎn)按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,繼續(xù)確定第三批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)??蛇x的,當(dāng)計(jì)算集群內(nèi)還存在未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)時(shí),則繼續(xù)進(jìn)行第三批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的確定;當(dāng)計(jì)算集群內(nèi)不存在未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)時(shí),則結(jié)束操作。進(jìn)一步的,如圖8所示,未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)僅剩下計(jì)算節(jié)點(diǎn)7,則此時(shí)僅需要對(duì)計(jì)算節(jié)點(diǎn)7進(jìn)行模擬遷移計(jì)算,計(jì)算節(jié)點(diǎn)7即為當(dāng)前待進(jìn)行第三模擬遷移的計(jì)算節(jié)點(diǎn)。將所述當(dāng)前待進(jìn)行第三模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)依次模擬遷移到第三模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第三模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)并且負(fù)載量未滿的計(jì)算節(jié)點(diǎn)。即第三模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為計(jì)算節(jié)點(diǎn)3、計(jì)算節(jié)點(diǎn)4、計(jì)算節(jié)點(diǎn)5以及計(jì)算節(jié)點(diǎn)6。其中,計(jì)算節(jié)點(diǎn)7的負(fù)載量為100%。所有第三模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和為245%,遠(yuǎn)大于當(dāng)前待進(jìn)行第三模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量,則可以將當(dāng)前待進(jìn)行第三模擬遷移的計(jì)算節(jié)點(diǎn)遷空。此時(shí)將計(jì)算節(jié)點(diǎn)7上管理的虛擬機(jī)模擬遷移到所述計(jì)算節(jié)點(diǎn)3上,此時(shí)計(jì)算節(jié)點(diǎn)3的負(fù)載量為100%,計(jì)算節(jié)點(diǎn)7上剩余的負(fù)載量為55%,然后將計(jì)算節(jié)點(diǎn)7上剩余55%的負(fù)載量模擬遷移到已經(jīng)進(jìn)行維護(hù)的所述計(jì)算節(jié)點(diǎn)4上,此時(shí)已經(jīng)進(jìn)行維護(hù)的所述計(jì)算節(jié)點(diǎn)4的負(fù)載量為55%,計(jì)算節(jié)點(diǎn)7上的負(fù)載量為O。然后記錄遷移路徑:將計(jì)算節(jié)點(diǎn)7上45%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)3上,將計(jì)算節(jié)點(diǎn)7上剩余55%的負(fù)載量模擬遷移到計(jì)算節(jié)點(diǎn)4上。進(jìn)一步的,在將計(jì)算節(jié)點(diǎn)7管理的虛擬機(jī)模擬遷移計(jì)算完成后,管理節(jié)點(diǎn)將計(jì)算節(jié)點(diǎn)1-7中負(fù)載量進(jìn)行更新。如圖8所示,計(jì)算節(jié)點(diǎn)I的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)2的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)3的負(fù)載量為100% ;計(jì)算節(jié)點(diǎn)4的負(fù)載量為55% ;計(jì)算節(jié)點(diǎn)5的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)6的負(fù)載量為0 ;計(jì)算節(jié)點(diǎn)7的負(fù)載量為O。由于當(dāng)所述當(dāng)前待進(jìn)行第三模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第三模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和,則當(dāng)前待進(jìn)行第三模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,并且當(dāng)前待進(jìn)行第三模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),則可以確定未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)7為第三批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)。步驟309,管理節(jié)點(diǎn)將所述第三批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第三并發(fā)遷移;按照確定第三批模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)時(shí)采用的并發(fā)遷移的方式,管理節(jié)點(diǎn)對(duì)計(jì)算節(jié)點(diǎn)7進(jìn)行遷移;具體的,將計(jì)算節(jié)點(diǎn)7管理的虛擬機(jī)模擬遷移至已經(jīng)維護(hù)的計(jì)算節(jié)點(diǎn)3和已經(jīng)維護(hù)的計(jì)算節(jié)點(diǎn)4上。步驟310,管理節(jié) 點(diǎn)對(duì)第三并發(fā)遷移后的所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
在對(duì)所述并發(fā)遷移后的計(jì)算節(jié)點(diǎn)7進(jìn)行維護(hù)時(shí),可參照附圖3中步驟304,在此不
--贅述。本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的方法,通過(guò)自動(dòng)確定一個(gè)計(jì)算集群的所有計(jì)算節(jié)點(diǎn)中并發(fā)遷移的計(jì)算節(jié)點(diǎn),然后對(duì)確定的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,可以自動(dòng)確定進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)的數(shù)目,并進(jìn)行并行遷移,從而縮短維護(hù)計(jì)算集群中計(jì)算節(jié)點(diǎn)的時(shí)間。實(shí)施例2本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的裝置,該裝置可以為一個(gè)計(jì)算集群中的管理節(jié)點(diǎn),如圖9所示,該裝置包括:獲得模塊901,第一確定模塊902,第一模擬遷移模塊903,第二確定模塊904,第三確定模塊905,并發(fā)遷移模塊906。獲得模塊901,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;其中,所述獲得模塊901具體用于:獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。計(jì)算節(jié)點(diǎn)的負(fù)載量即為計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載。每個(gè)所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載包括:所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的中央處理器CPU之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬中的至少一個(gè)。第一確定模塊902,用于確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);
第一模擬遷移模塊903,用于將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn);第二確定模塊904,用于當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,返回執(zhí)行所述獲得模塊901 ;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行第三確定模塊905 ;所述第三確定模塊905,用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);并發(fā)遷移模塊906,將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。進(jìn)一步的,如圖10所示,該裝置中的所述第一模擬遷移模塊903包括:第一模擬遷移單元9031,記錄單元9032 ;第一模擬遷移單元9031,用于將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。在將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上時(shí),第一模擬遷移模塊903中的記錄單元9032需要記錄模擬遷移的方式,所述記錄單元9032,用于記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)。在記錄單元9032記錄模擬遷移的方式之后,所述并發(fā)遷移模塊906根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。進(jìn)一步的,如圖10所示,所述裝置還包括:維護(hù)模塊907,處理模塊908 ;在所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上之后,維護(hù)模塊907,用于對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。在對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)之后,處理模塊908,用于將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。其中,所述處理模塊908包括:獲得單元9081,第一確定單元9082,模擬遷移單元9083,第二確定單元9084,第三確定單元9085,第四確定單元9086,并發(fā)遷移單元9087 ;管理節(jié)點(diǎn)在對(duì)各計(jì)算節(jié)點(diǎn)的進(jìn)行當(dāng)前負(fù)載排序之后,獲得單元9081,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);進(jìn)一步的,第一確定單元9082,用于確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn);在確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)之后,模擬遷移單元9083,用于將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),第二確定單元9084,用于確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),執(zhí)行第三確定單元9085,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行所述獲得單元9081 ;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行第四確定單元9086 ;進(jìn)一步的,所述第三確定單元9085,用于確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行并發(fā)遷移單元9087 ;進(jìn)一步的,所述第四確定單元9086,用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行并發(fā)遷移單元9087 ;在確定第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)之后,所述并發(fā)遷移單元9087,用于將所述第二批待并發(fā)遷移的 計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。并由模擬遷移模塊9083對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
進(jìn)一步的,所述處理模塊908,還用于按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移。本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的裝置,通過(guò)第三確定模塊自動(dòng)確定一個(gè)計(jì)算集群內(nèi)待并發(fā)遷移的計(jì)算節(jié)點(diǎn)中進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn),并發(fā)遷移模塊對(duì)確定的所述計(jì)算節(jié)點(diǎn)進(jìn)行并發(fā)遷移,然后維護(hù)模塊對(duì)進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。使得可以自動(dòng)確定進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)的數(shù)目,從而縮短維護(hù)計(jì)算集群中計(jì)算節(jié)點(diǎn)的時(shí)間。本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的裝置,該裝置的執(zhí)行主體可以為計(jì)算集群中的管理節(jié)點(diǎn),如圖11所示,該裝置包括:處理器1101,存儲(chǔ)器1102 ;處理器1101,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序;存儲(chǔ)器1102,用于存儲(chǔ)所述計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的所述當(dāng)前負(fù)載排序;所述處理器1101,還用于確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);以及將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載量未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn);以及當(dāng)所 述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空;進(jìn)一步的,處理器1101,還用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);以及將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。在對(duì)計(jì)算集群中的計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移之前,需要對(duì)所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行負(fù)載排序,所以所述處理器1101,還用于獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。在獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序之后,存儲(chǔ)器1102,存儲(chǔ)所述計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。所述處理器1101,還用于:將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的節(jié)點(diǎn)負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。進(jìn)一步的,所述存儲(chǔ)器1102,還用于記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn);記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)用于后續(xù)在對(duì)計(jì)算集群中的各個(gè)計(jì)算節(jié)點(diǎn)進(jìn)行并發(fā)遷移時(shí)的具體方式。在記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)之后,所述處理器1102,還用于將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。在將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上之后,所述處理器1101,還用于對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。進(jìn)一步的,所述處理器1101,還用于將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。在將進(jìn)行第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移之前,所述處理器1101,還用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);以及當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn);在確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)之后,所述處理器1101,還用于將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);所述處理器1101,還用于當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),繼續(xù)執(zhí)行確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行對(duì)計(jì)算節(jié)點(diǎn)的負(fù)載排序;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí) 行確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);進(jìn)一步的,所述處理器1101,還用于確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);所述處理器1101,還用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);以及將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。在對(duì)所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移之后,所述處理器1101,還用于對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。所述處理器1101,還用于按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移?!N計(jì)算機(jī)可讀介質(zhì),其特征在于,包括:所述計(jì)算機(jī)可讀介質(zhì)包含計(jì)算機(jī)執(zhí)行指令,當(dāng)計(jì)算機(jī)的中央處理器執(zhí)行所述計(jì)算機(jī)執(zhí)行指令時(shí),所述計(jì)算機(jī)執(zhí)行一種遷移計(jì)算節(jié)點(diǎn)的方法。本發(fā)明實(shí)施例提供一種遷移計(jì)算節(jié)點(diǎn)的裝置,主要通過(guò)處理器來(lái)確定一個(gè)計(jì)算集群內(nèi)待并發(fā)遷移的計(jì)算節(jié)點(diǎn)中進(jìn)行模擬遷移的計(jì)算節(jié)點(diǎn),并對(duì)確定的所述確定進(jìn)行模擬遷移的計(jì)算節(jié)點(diǎn)進(jìn)行并發(fā)遷移,在對(duì)進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。使得可以自動(dòng)確定進(jìn)行并發(fā)遷移的計(jì)算節(jié)點(diǎn)的數(shù)目,從而達(dá)到操作靈活、縮短升級(jí)或者修復(fù)計(jì)算節(jié)點(diǎn)時(shí)間的目的。需要說(shuō)明的是,以上所描述的裝置實(shí)施例僅僅是示意性的,其中所述作為分離部件說(shuō)明的單元可以是或者也可以不是物理上分開(kāi)的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上。可以根據(jù)實(shí)際的需要選擇其中的部分或者全部模塊來(lái)實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動(dòng)的情況下,即可以理解并實(shí)施。通過(guò)以上的實(shí)施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來(lái)實(shí)現(xiàn),當(dāng)然也可以通過(guò)專用硬件包括專用集成電路、專用CPU、專用存儲(chǔ)器、專用元器件等來(lái)實(shí)現(xiàn),但很多情況下前者是更佳的實(shí)施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說(shuō)對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來(lái),該計(jì)算機(jī)軟件產(chǎn)品存儲(chǔ)在可讀取的存儲(chǔ)介質(zhì)中,如計(jì)算機(jī)的軟盤(pán),U盤(pán)、移動(dòng)硬盤(pán)、只讀存儲(chǔ)器(ROM,Read-Only Memory)、隨機(jī)存取存儲(chǔ)器(RAM,Random Access Memory)>磁碟或者光盤(pán)等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述的方法。本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于裝置和系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述得比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。以上所述,僅為本發(fā)明的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍 之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種遷移計(jì)算節(jié)點(diǎn)的方法,其特征在于,包括: 步驟A:獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序; 步驟B:確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn); 步驟C:將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn); 當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所有所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,返回執(zhí)行步驟A ;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所有所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行步驟D ; 步驟D:確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn); 步驟E:將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序包括: 獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述待進(jìn)行第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn),包括: 將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的節(jié)點(diǎn)負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移之后,還包括:步驟C’記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn); 所述將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行并發(fā)遷移包括: 根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。
5.根據(jù)權(quán)利要求1-4任意一項(xiàng)所述的方法,其特征在于,在將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移之后,還包括: 步驟F:對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,當(dāng)對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)之后,還包括: 步驟G:將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移包括: 步驟H:獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn); 步驟1:確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn); 步驟J:將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn); 當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),執(zhí)行步驟K,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行步驟H ;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行步驟L ; 步驟K:確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行步驟M ; 步驟L:確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行步驟M ; 步驟M:將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,在將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移之后,還包括: 步驟N:對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,當(dāng)對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)之后,還包括: 步驟0:按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移。
10.根據(jù)權(quán)利要求1-9中任一項(xiàng)所述的方法,其特征在于,每個(gè)所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載包括:所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的中央處理器CPU之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬中的至少一個(gè)。
11.一種遷移計(jì)算節(jié)點(diǎn)的裝置,其特征在于,包括: 獲得模塊,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序; 第一確定模塊,用于確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn); 第一模擬遷移模塊,用于將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn); 第二確定模塊,用于當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,返回執(zhí)行所述獲得模塊;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行第三確定模塊; 所述第三確定模塊,用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn); 并發(fā)遷移模塊,將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述獲得模塊用于: 獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。
13.根據(jù)權(quán)利要求11或12所述的裝置,其特征在于,所述第一模擬遷移模塊包括: 第一模擬遷移單元,用于將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的節(jié)點(diǎn)負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)·算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述第一模擬遷移模塊,還包括: 記錄單元,用于記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述并發(fā)遷移模塊用于: 根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。
16.根據(jù)權(quán)利要求11-15任意一項(xiàng)所述的裝置,其特征在于,所述裝置,還包括: 維護(hù)模塊,用于對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
17.根據(jù)權(quán)利要求16所述的裝置,其特征在于,所述裝置,還包括: 處理模塊,用于將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。
18.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述處理模塊包括: 獲得單元,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn);第一確定單元,用于確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn); 模擬遷移單元,用于將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn); 第二確定單元,用于當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),執(zhí)行第三確定單元,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行所述獲得單元;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行第四確定單元; 所述第三確定單元,用于確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行并發(fā)遷移單元; 所述第四確定單元,用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),執(zhí)行并發(fā)遷移單元; 所述并發(fā)遷移單元,用于將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。
19.根據(jù)權(quán)利要求18所述的裝置,其特征在于,所述第二模擬遷移模塊,還用于,對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
20.根據(jù)權(quán)利要求19所述的裝置,其特征在于,所述處理模塊,還用于按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移。
21.根據(jù)權(quán)利要求11-20中任一項(xiàng)所述的裝置,其特征在于,每個(gè)所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的負(fù)載包括:所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的中央處理器CPU之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的內(nèi)存之和、所述計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)的帶寬中的至少一個(gè)。
22.一種遷移計(jì)算節(jié)點(diǎn)的裝置,其特征在于,包括: 處理器,用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序; 存儲(chǔ)器,用于所述計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的存儲(chǔ)所述當(dāng)前負(fù)載排序; 所述處理器,還用于確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);以及將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中負(fù)載未滿且負(fù)載量大于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn); 以及當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空;當(dāng)所述待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空;處理器,還用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì) 算節(jié)點(diǎn);以及將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。
23.根據(jù)權(quán)利要求22所述的裝置,其特征在于,所述處理器還用于: 獲得所述計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量,根據(jù)所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載量進(jìn)行排序,獲得所述各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序。
24.根據(jù)權(quán)利要求22或23所述的裝置,其特征在于,所述處理器,還用于:將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)模擬遷移到所述計(jì)算集群中負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)上;若所述負(fù)載未滿且負(fù)載量最大的計(jì)算節(jié)點(diǎn)的節(jié)點(diǎn)負(fù)載量已滿而所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)還未遷空,按照負(fù)載量依次遞減的順序,選擇所述計(jì)算集群中的其他負(fù)載未滿的計(jì)算節(jié)點(diǎn),并將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的剩余的虛擬機(jī)模擬遷移到所選擇的計(jì)算節(jié)點(diǎn)上。
25.根據(jù)權(quán)利要求24所述的裝置,其特征在于, 所述存儲(chǔ)器,還用于記錄每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn); 所述處理器,還用于根據(jù)記錄的每個(gè)待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn),將所述待并發(fā)遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)并發(fā)遷移到其對(duì)應(yīng)的第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)上。
26.根據(jù)權(quán)利要求22-25任意一項(xiàng)所述的裝置,其特征在于,所述處理器,還用于對(duì)第一并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
27.根據(jù)權(quán)利要求26所述的裝置,其特征在于,所述處理器, 還用于:將所述計(jì)算集群中沒(méi)有進(jìn)行第一并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移,確定第二批待并發(fā)遷移的 計(jì)算節(jié)點(diǎn),并將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。
28.根據(jù)權(quán)利要求27所述的裝置,其特征在于,所述處理器: 還用于獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,所述當(dāng)前負(fù)載排序區(qū)分已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)和未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn); 以及確定當(dāng)前負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn); 所述處理器,還用于將所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行遷移,所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)為所述計(jì)算集群中已進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn); 所述處理器,還用于當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量小于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)能夠被模擬遷空,如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)為最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),執(zhí)行確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);如果當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不是最后一個(gè)未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn),返回執(zhí)行對(duì)計(jì)算節(jié)點(diǎn)的負(fù)載排序;當(dāng)所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量大于所述第二模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)的負(fù)載余量之和時(shí),確定當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)不能夠被模擬遷空,執(zhí)行確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn);所述處理器,還用于確定所有未進(jìn)行維護(hù)的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)占.所述處理器,還用于確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第二模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn); 以及將所述第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第二并發(fā)遷移。
29.根據(jù)權(quán)利要求28所述的裝置,其特征在于,所述處理器, 還用于對(duì)第二并發(fā)遷移后的至少一個(gè)所述計(jì)算節(jié)點(diǎn)進(jìn)行維護(hù)。
30.根據(jù)權(quán)利要求29所述的裝置,其特征在于,所述處理器, 還用于按照確定第二批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)的方法,將所述計(jì)算集群中沒(méi)有進(jìn)行模擬并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行模擬并發(fā)遷移。
31.一種計(jì)算機(jī)可讀介質(zhì),其特征在于,包括:所述計(jì)算機(jī)可讀介質(zhì)包含計(jì)算機(jī)執(zhí)行指令,當(dāng)計(jì)算機(jī)的中央處理器執(zhí)行所述計(jì)算機(jī)執(zhí)行指令時(shí),所述計(jì)算機(jī)執(zhí)行權(quán)利要求1至10任一所述的方法。`
全文摘要
本發(fā)明公開(kāi)一種遷移計(jì)算節(jié)點(diǎn)的方法及裝置,涉及通信網(wǎng)絡(luò)技術(shù)領(lǐng)域,可以根據(jù)計(jì)算集群內(nèi)各計(jì)算節(jié)點(diǎn)的負(fù)載量情況對(duì)計(jì)算節(jié)點(diǎn)進(jìn)行靈活的并發(fā)遷移。本發(fā)明實(shí)施例通過(guò)獲得計(jì)算集群內(nèi)的各計(jì)算節(jié)點(diǎn)的當(dāng)前負(fù)載排序,以及確定所述負(fù)載排序中負(fù)載量不為零并且負(fù)載量最小的計(jì)算節(jié)點(diǎn)為當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn);將所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)管理的虛擬機(jī)向第一模擬遷移的目標(biāo)計(jì)算節(jié)點(diǎn)進(jìn)行模擬遷移,并確定初始負(fù)載量小于所述當(dāng)前待進(jìn)行第一模擬遷移的計(jì)算節(jié)點(diǎn)的負(fù)載量的計(jì)算節(jié)點(diǎn)為第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn),然后將所述第一批待并發(fā)遷移的計(jì)算節(jié)點(diǎn)進(jìn)行第一并發(fā)遷移。本發(fā)明實(shí)施例提供的方案適于進(jìn)行計(jì)算節(jié)點(diǎn)遷移時(shí)采用。
文檔編號(hào)G06F9/48GK103250139SQ201280002820
公開(kāi)日2013年8月14日 申請(qǐng)日期2012年11月7日 優(yōu)先權(quán)日2012年11月7日
發(fā)明者宋宇 申請(qǐng)人:華為技術(shù)有限公司