高性能計(jì)算與云計(jì)算混合計(jì)算系統(tǒng)及其資源管理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算技術(shù),更具體地說(shuō),涉及一種高性能計(jì)算與云計(jì)算混合計(jì)算系統(tǒng)及其資源管理方法。
【背景技術(shù)】
[0002]高性能計(jì)算(high performance computing,縮寫(xiě)HPC)在工程計(jì)算、科學(xué)研究、遺傳基因以及金融風(fēng)險(xiǎn)分析中已經(jīng)取得了巨大的成就。高性能計(jì)算歷經(jīng)幾十年的發(fā)展,如今不僅是作為實(shí)驗(yàn)和理論以外的第三大科學(xué)研究手段,而且可以被當(dāng)作是一個(gè)國(guó)家綜合國(guó)力的主要評(píng)價(jià)標(biāo)準(zhǔn)。云計(jì)算是基于互聯(lián)網(wǎng)的相關(guān)服務(wù)的增加、使用和交付模式,通常涉及通過(guò)互聯(lián)網(wǎng)來(lái)提供動(dòng)態(tài)易擴(kuò)展且經(jīng)常是虛擬化的資源。
[0003]目前的中國(guó)對(duì)于云計(jì)算和高性能計(jì)算的支持力度非常大,建立了不少超級(jí)計(jì)算中心,組成大規(guī)模的計(jì)算集群。云計(jì)算采用的關(guān)鍵技術(shù)是虛擬化,這樣可以使資源按需調(diào)度,但也勢(shì)必導(dǎo)致一部分的性能損失,而高性能計(jì)算以計(jì)算速度為第一追求,因而在性能方面與云計(jì)算會(huì)有一定的沖突。各個(gè)超級(jí)計(jì)算中心一般都會(huì)根據(jù)業(yè)務(wù)、服務(wù)的不同將計(jì)算集群分為云計(jì)算分區(qū)和高性能計(jì)算分區(qū),云計(jì)算分區(qū)運(yùn)行云操作系統(tǒng),應(yīng)用于云計(jì)算服務(wù),而高性能計(jì)算分區(qū)則運(yùn)行高性能作業(yè)調(diào)度系統(tǒng),應(yīng)用于高性能計(jì)算服務(wù)。當(dāng)高性能計(jì)算業(yè)務(wù)不忙而云計(jì)算業(yè)務(wù)比較緊張的時(shí)候,如果按照以往計(jì)算中心常規(guī)的分區(qū)劃分方式,那么將會(huì)出現(xiàn)高性能計(jì)算資源閑置的情況,因此需要找到一個(gè)更好的合理分配使用超級(jí)計(jì)算中心計(jì)算資源的技術(shù)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明要解決的技術(shù)問(wèn)題在于,針對(duì)傳統(tǒng)的計(jì)算中心資源分配存在的上述不足之處,提供一種高性能計(jì)算與云計(jì)算混合計(jì)算系統(tǒng)及其資源管理方法。
[0005]本發(fā)明在第一方面為解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:提出一種高性能計(jì)算與云計(jì)算混合計(jì)算系統(tǒng),包括高性能計(jì)算資源池和云計(jì)算資源池,所述高性能計(jì)算資源池包括高性能計(jì)算調(diào)度系統(tǒng)和由其管理的多個(gè)計(jì)算節(jié)點(diǎn),所述云計(jì)算資源池包括云計(jì)算管理系統(tǒng)和由其管理的多個(gè)計(jì)算節(jié)點(diǎn),所述高性能計(jì)算資源池中的計(jì)算節(jié)點(diǎn)均設(shè)有云計(jì)算代理服務(wù)模塊,所述云計(jì)算代理服務(wù)模塊同時(shí)與高性能計(jì)算調(diào)度系統(tǒng)和云計(jì)算管理系統(tǒng)連接;
[0006]所述云計(jì)算管理系統(tǒng)在監(jiān)控到資源不足時(shí)向高性能計(jì)算調(diào)度系統(tǒng)發(fā)送節(jié)點(diǎn)資源申請(qǐng),并根據(jù)高性能計(jì)算調(diào)度系統(tǒng)通知的空閑的計(jì)算節(jié)點(diǎn)信息向該空閑的計(jì)算節(jié)點(diǎn)的云計(jì)算代理服務(wù)模塊發(fā)送第一清理命令以由所述云計(jì)算代理服務(wù)模塊清理該空閑的計(jì)算節(jié)點(diǎn)并將其加入到云計(jì)算資源池,以及在監(jiān)控到資源冗余時(shí)釋放從高性能計(jì)算資源池申請(qǐng)到的一部分計(jì)算節(jié)點(diǎn),并向待釋放的計(jì)算節(jié)點(diǎn)的云計(jì)算代理服務(wù)模塊發(fā)送第二清理命令以由所述云計(jì)算代理服務(wù)模塊清理待釋放的計(jì)算節(jié)點(diǎn);
[0007]所述高性能計(jì)算調(diào)度系統(tǒng)基于云計(jì)算管理系統(tǒng)發(fā)送的節(jié)點(diǎn)資源申請(qǐng)調(diào)度空閑的計(jì)算節(jié)點(diǎn)并通知給云計(jì)算管理系統(tǒng),以及根據(jù)所述云計(jì)算代理服務(wù)模塊基于所述第二清理命令清理相應(yīng)的計(jì)算節(jié)點(diǎn)后返回的信息將該清理后的計(jì)算節(jié)點(diǎn)回收到高性能計(jì)算資源池。
[0008]根據(jù)本發(fā)明第一方面的一個(gè)實(shí)施例中,所述高性能計(jì)算調(diào)度系統(tǒng)基于云計(jì)算管理系統(tǒng)發(fā)送的節(jié)點(diǎn)資源申請(qǐng)調(diào)度空閑的計(jì)算節(jié)點(diǎn)并通知給云計(jì)算管理系統(tǒng),進(jìn)一步包括:將所述節(jié)點(diǎn)資源申請(qǐng)?jiān)O(shè)置為最高優(yōu)先級(jí),當(dāng)出現(xiàn)空閑的計(jì)算節(jié)點(diǎn)時(shí),鎖定該空閑的計(jì)算節(jié)點(diǎn),并將該空閑的計(jì)算節(jié)點(diǎn)信息通知給云計(jì)算管理系統(tǒng)。
[0009]根據(jù)本發(fā)明第一方面的一個(gè)實(shí)施例中,所述云計(jì)算代理服務(wù)模塊基于所述第一清理命令清理空閑的計(jì)算節(jié)點(diǎn)包括:
[0010]結(jié)束所有的高性能計(jì)算作業(yè)進(jìn)程;
[0011]卸載高性能計(jì)算作業(yè)使用的分布式文件系統(tǒng);
[0012]設(shè)置防火墻策略,設(shè)置cgroup資源策略,以禁止高性能計(jì)算用戶訪問(wèn)該空閑的計(jì)算節(jié)點(diǎn);
[0013]將該空閑的計(jì)算節(jié)點(diǎn)從高性能計(jì)算環(huán)境需要的服務(wù)切換到云計(jì)算環(huán)境需要的服務(wù);
[0014]從云計(jì)算管理系統(tǒng)獲取云計(jì)算需要使用的分布式文件系統(tǒng)或存儲(chǔ)資源的連接數(shù)據(jù),掛載對(duì)應(yīng)的文件系統(tǒng)或存儲(chǔ)資源,并將連接信息反饋給云計(jì)算管理系統(tǒng);
[0015]創(chuàng)建虛擬交換機(jī),并將該虛擬交換機(jī)信息返回給云計(jì)算管理系統(tǒng)。
[0016]根據(jù)本發(fā)明第一方面的一個(gè)實(shí)施例中,所述云計(jì)算代理服務(wù)模塊基于所述第二清理命令清理相應(yīng)的計(jì)算節(jié)點(diǎn)包括:
[0017]卸載云計(jì)算使用的分布式文件系統(tǒng)或存儲(chǔ)資源;
[0018]將該計(jì)算節(jié)點(diǎn)從云計(jì)算環(huán)境需要的服務(wù)切換到高性能計(jì)算環(huán)境需要的服務(wù),并在成功后通知云計(jì)算管理系統(tǒng)以便云計(jì)算管理系統(tǒng)將該計(jì)算節(jié)點(diǎn)從云計(jì)算資源池中刪除;
[0019]掛載高性能計(jì)算需要的分布式文件系統(tǒng);
[0020]設(shè)置防火墻和cgroup資源策略,以允許高性能計(jì)算用戶訪問(wèn)該計(jì)算節(jié)點(diǎn);
[0021]返回相應(yīng)的信息給高性能計(jì)算調(diào)度系統(tǒng)以將該計(jì)算節(jié)點(diǎn)回收到高性能計(jì)算資源池中。
[0022]本發(fā)明在第二方面為解決其技術(shù)問(wèn)題所采用的技術(shù)方案是:提出一種高性能計(jì)算與云計(jì)算混合計(jì)算系統(tǒng)的資源管理方法,其中所述系統(tǒng)包括高性能計(jì)算資源池和云計(jì)算資源池,所述高性能計(jì)算資源池包括高性能計(jì)算調(diào)度系統(tǒng)和由其管理的多個(gè)計(jì)算節(jié)點(diǎn),所述云計(jì)算資源池包括云計(jì)算管理系統(tǒng)和由其管理的多個(gè)計(jì)算節(jié)點(diǎn),所述方法包括如下步驟:
[0023]S1、在所述高性能計(jì)算資源池的每一個(gè)計(jì)算節(jié)點(diǎn)中設(shè)置云計(jì)算代理服務(wù)模塊,所述云計(jì)算代理服務(wù)模塊同時(shí)與高性能計(jì)算調(diào)度系統(tǒng)和云計(jì)算管理系統(tǒng)連接;
[0024]S2、在云計(jì)算管理系統(tǒng)監(jiān)控到云計(jì)算資源池的資源不足時(shí),由所述云計(jì)算管理系統(tǒng)向高性能計(jì)算調(diào)度系統(tǒng)發(fā)送節(jié)點(diǎn)資源申請(qǐng),并根據(jù)高性能計(jì)算調(diào)度系統(tǒng)通知的空閑的計(jì)算節(jié)點(diǎn)信息向該空閑的計(jì)算節(jié)點(diǎn)的云計(jì)算代理服務(wù)模塊發(fā)送第一清理命令以由所述云計(jì)算代理服務(wù)模塊清理該空閑的計(jì)算節(jié)點(diǎn)并將其加入到云計(jì)算資源池;
[0025]S3、在云計(jì)算管理系統(tǒng)監(jiān)控到云計(jì)算資源池的資源冗余時(shí),由所述云計(jì)算管理系統(tǒng)釋放從高性能計(jì)算資源池申請(qǐng)到的一部分計(jì)算節(jié)點(diǎn),并向待釋放的計(jì)算節(jié)點(diǎn)的云計(jì)算代理服務(wù)模塊發(fā)送第二清理命令以由所述云計(jì)算代理服務(wù)模塊清理待釋放的計(jì)算節(jié)點(diǎn),然后由所述高性能計(jì)算調(diào)度系統(tǒng)根據(jù)所述云計(jì)算代理服務(wù)模塊清理相應(yīng)的計(jì)算節(jié)點(diǎn)后返回的信息將該清理后的計(jì)算節(jié)點(diǎn)回收到高性能計(jì)算資源池。
[0026]根據(jù)本發(fā)明第二方面的一個(gè)實(shí)施例中,所述步驟S2進(jìn)一步包括:
[0027]由所述高性能計(jì)算調(diào)度系統(tǒng)將所述云計(jì)算管理系統(tǒng)發(fā)送的節(jié)點(diǎn)資源申請(qǐng)?jiān)O(shè)置為最高優(yōu)先級(jí),當(dāng)出現(xiàn)空閑的計(jì)算節(jié)點(diǎn)時(shí),鎖定該空閑的計(jì)算節(jié)點(diǎn),并將該空閑的計(jì)算節(jié)點(diǎn)信息通知給云計(jì)算管理系統(tǒng)。
[0028]根據(jù)本發(fā)明第二方面的一個(gè)實(shí)施例中,所述步驟S2中由所述云計(jì)算代理服務(wù)模塊清理該空閑的計(jì)算節(jié)點(diǎn)進(jìn)一步包括:
[0029]結(jié)束所有的高性能計(jì)算作業(yè)進(jìn)程;
[0030]卸載高性能計(jì)算作業(yè)使用的分布式文件系統(tǒng);
[0031]設(shè)置防火墻策略,設(shè)置cgroup資源策略,以禁止高性能計(jì)算用戶訪問(wèn)該空閑的計(jì)算節(jié)點(diǎn);
[0032]將該空閑的計(jì)算節(jié)點(diǎn)從高性能計(jì)算環(huán)境需要的服務(wù)切換到云計(jì)算環(huán)境需要的服務(wù);
[0033]從云計(jì)算管理系統(tǒng)獲取云計(jì)算需要使用的分布式文件系統(tǒng)或存儲(chǔ)資源的連接數(shù)據(jù),掛載對(duì)應(yīng)的文件系統(tǒng)或存儲(chǔ)資源,并將連接信息反饋給云計(jì)算管理系統(tǒng);
[0034]創(chuàng)建虛擬交換機(jī),并將該虛擬交換機(jī)信息返回給