两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

PaaS平臺中實現(xiàn)應用遷移的方法和裝置制造方法

文檔序號:7821251閱讀:325來源:國知局
PaaS平臺中實現(xiàn)應用遷移的方法和裝置制造方法
【專利摘要】本發(fā)明提供了一種PaaS平臺中實現(xiàn)應用遷移的方法和裝置,包括:確定遷移應用的目標承載節(jié)點;將遷移應用在源承載節(jié)點中的服務功能數(shù)據遷移到目標承載節(jié)點,在遷移應用的服務功能數(shù)據遷移完成后,目標承載節(jié)點接收對所述遷移應用的服務請求,并將服務請求轉發(fā)給源承載節(jié)點進行處理;將遷移應用在源承載節(jié)點中的底層服務數(shù)據遷移到目標承載節(jié)點,在遷移應用的底層服務數(shù)據遷移完成后,目標承載節(jié)點接收對遷移應用的服務請求并對服務請求進行處理;刪除遷移應用在源承載節(jié)點上的底層服務數(shù)據。本發(fā)明能夠在不宕機的情況下完成遷移。
【專利說明】PaaS平臺中實現(xiàn)應用遷移的方法和裝置

【技術領域】
[0001]本發(fā)明涉及數(shù)據傳輸【技術領域】,尤其涉及一種平臺即服務(PaaS,Platform-as-a-Service)平臺中實現(xiàn)應用迀移的方法和裝置。

【背景技術】
[0002]隨著電信市場競爭的激烈,運營商紛紛拓展新業(yè)務,云計算是拓展的新業(yè)務之一,其中,PaaS是面向開發(fā)者服務,提供彈性伸縮的中間件服務和應用部署的平臺。近年來,基于輕量級Linux容器構建PaaS平臺逐漸成為主流,如開源平臺Cloud Foundry和Red Hat公司的OpenShift均采用這種方式。Linux容器可以很好地封裝各種中間件系統(tǒng)和用戶的應用,用戶不需要再搭建消息中間件、數(shù)據庫、應用容器等中間件系統(tǒng),只需要簡單的需求文件中說明,PaaS平臺就會自動為之適配。因此,PaaS平臺集合眾多底層平臺、中間件和應用開發(fā)工具,轉變傳統(tǒng)一對一的產品交付方式為云端分享型的服務交付方式,從而為企業(yè)傳統(tǒng)IT和應用開發(fā)者把整個開發(fā)、部署與客戶服務的生命周期搬到云上創(chuàng)造了條件。
[0003]多個應用被封裝在輕量級Linux容器中,在PaaS的各個承載節(jié)點體現(xiàn)為一個運行中的進程。同時,應用還會使用承載節(jié)點所提供的中間件服務,如數(shù)據庫,因此,一個應用由封裝在輕量級Linux容器中的業(yè)務邏輯處理模塊和源承載節(jié)點提供的數(shù)據庫等中間件服務組成,業(yè)務邏輯處理模塊處理當前業(yè)務相關的數(shù)據,消耗CPU和內存較多,中間件如數(shù)據庫等存儲應用的歷史和狀態(tài)信息,消耗磁盤空間等資源較多。
[0004]很多情況下需要迀移用戶的應用,如源承載節(jié)點CPU和內存負載過高,為了保障用戶的應用具備彈性伸縮能力,需要將其迀移到低負載的節(jié)點上去;或者PaaS平臺新增了應用承載節(jié)點,為了負載均衡的考慮,需要迀移用戶應用以實現(xiàn)新的負載平衡狀態(tài)。
[0005]迀移用戶應用不僅需要迀移封裝在輕量級Linux容器中的業(yè)務邏輯處理模塊,還需要迀移底層數(shù)據庫的歷史數(shù)據等狀態(tài)信息,通常稱為應用狀態(tài)與痕跡數(shù)據。由于一個用狀態(tài)與痕跡數(shù)據可能較大,現(xiàn)在一般采用宕機迀移,即將用戶的應用的狀態(tài)快照,同時停止應用服務,靜態(tài)地迀移封裝在輕量級Linux容器中的業(yè)務邏輯處理模塊以及底層的數(shù)據庫數(shù)據,而且這種底層數(shù)據庫數(shù)據的迀移需要用戶應用自定義完成。
[0006]但是,用戶希望能夠在不宕機的情況下完成迀移,即迀移過程中需要應用持續(xù)對外提供服務并能夠讀寫底層PaaS提供的數(shù)據庫服務,目前的宕機迀移方式顯然不能滿足需求。此外,在迀移過程中,需要用戶自定義完成底層服務狀態(tài),大大增加了用戶使用PaaS的復雜度。


【發(fā)明內容】

[0007]為了解決上述技術問題,本發(fā)明提供了一種PaaS平臺中實現(xiàn)應用迀移的方法和裝置,能夠在不宕機的情況下完成迀移,且降低了用戶的操作復雜度。
[0008]為了達到本發(fā)明目的,本發(fā)明提供了一種PaaS平臺中實現(xiàn)應用迀移的方法,包括:確定迀移應用的目標承載節(jié)點;將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點,在所述迀移應用的服務功能數(shù)據迀移完成后,所述目標承載節(jié)點接收對所述迀移應用的服務請求,并將所述服務請求轉發(fā)給所述源承載節(jié)點進行處理;將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點,在所述迀移應用的底層服務數(shù)據迀移完成后,所述目標承載節(jié)點接收對所述迀移應用的服務請求并對所述服務請求進行處理;刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據。
[0009]進一步地,所述將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點包括:將所述迀移應用在源承載節(jié)點中對應的業(yè)務邏輯處理模塊中的數(shù)據迀移到所述目標承載節(jié)點的業(yè)務邏輯處理模塊中。
[0010]進一步地,所述確定迀移應用的目標承載節(jié)點之后,還包括:在目標承載節(jié)點創(chuàng)建與源承載節(jié)點的底層服務對應的虛擬服務;所述將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點包括:在所述迀移應用的服務功能數(shù)據迀移完成后,將所述迀移應用在源承載節(jié)點中的迀移應用對應的應用痕跡與狀態(tài)數(shù)據迀移到所述目標承載節(jié)點的虛擬服務中;所述迀移應用的底層服務數(shù)據迀移完成后,還包括:將所述目標承載節(jié)點的虛擬服務轉換為底層服務。
[0011]進一步地,所述確定迀移應用的目標承載節(jié)點之前,還包括:預先設置接受迀移閥值;所述確定迀移應用的目標承載節(jié)點包括:獲取負載小于或等于所述接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬,將網絡帶寬最大值對應的節(jié)點作為目標承載節(jié)點。
[0012]進一步地,所述確定迀移應用的目標承載節(jié)點之前,還包括:預先設置拒絕迀移閥值;所述獲取負載小于或等于所述接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬之前,還包括:獲取和所述源承載節(jié)點同一自治域的其他節(jié)點的負載,如果在同一自治域中不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,獲取其它自治域節(jié)點的負載,如果遍歷PaaS平臺中所有自治域的所有節(jié)點都不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,則結束本流程。
[0013]進一步地,所述刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據還包括:在所述迀移應用的底層服務數(shù)據迀移完成后,所述目標承載節(jié)點向所述源承載節(jié)點發(fā)送刪除數(shù)據請求,所述源承載節(jié)點接收到所述刪除數(shù)據請求后,刪除所述迀移應用在源承載節(jié)點上的應用痕跡和狀態(tài)數(shù)據。
[0014]一種PaaS平臺中實現(xiàn)應用迀移的裝置,包括:確定模塊,用于確定迀移應用的目標承載節(jié)點;業(yè)務邏輯處理模塊,用于將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點;迀移代理模塊,用于在所述業(yè)務邏輯處理模塊對服務功能數(shù)據迀移完成后,將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點;刪除模塊,用于在所述迀移代理模塊對底層服務數(shù)據迀移完成后,刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據。。
[0015]進一步地,所述目標承載節(jié)點的迀移代理模塊,還用于創(chuàng)建與源承載節(jié)點的底層服務對應的虛擬服務;所述迀移應用的底層服務數(shù)據迀移完成后,將所述目標承載節(jié)點的虛擬服務轉換為底層服務。
[0016]進一步地,所述目標承載節(jié)點的迀移代理模塊,還用于所述迀移應用的服務功能數(shù)據迀移完成后,若虛擬服務接收對所述迀移應用的服務請求,轉發(fā)給所述目標承載節(jié)點的迀移代理模塊,所述目標承載節(jié)點的迀移代理模塊轉發(fā)給所述源承載節(jié)點的迀移代理模塊,所述源承載節(jié)點的迀移代理模塊轉發(fā)給底層服務進行訪問請求的處理;所述迀移應用的底層服務數(shù)據迀移完成后,向所述源承載節(jié)點的迀移代理模塊發(fā)送刪除數(shù)據請求,所述源承載節(jié)點的迀移代理模塊接收到所述刪除數(shù)據請求后,刪除所述迀移應用在源承載節(jié)點上的應用痕跡和狀態(tài)數(shù)據。
[0017]進一步地,所述裝置還包括:設置模塊,用于預先設置接受迀移閥值和拒絕迀移閥值;所述確定模塊,具體用于獲取負載小于或等于所述接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬,將網絡帶寬最大值對應的節(jié)點作為目標承載節(jié)點;如果在同一自治域中不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,獲取其它自治域節(jié)點的負載,如果遍歷PaaS平臺中所有自治域的所有節(jié)點都不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,則結束迀移。
[0018]與現(xiàn)有技術相比,本發(fā)明包括:確定迀移應用的目標承載節(jié)點;將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點,在所述迀移應用的服務功能數(shù)據迀移完成后,所述目標承載節(jié)點接收對所述迀移應用的服務請求,并將所述服務請求轉發(fā)給所述源承載節(jié)點進行處理;將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點,在所述迀移應用的底層服務數(shù)據迀移完成后,所述目標承載節(jié)點接收對所述迀移應用的服務請求并對所述服務請求進行處理;刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據。本發(fā)明通過選取負載小于或等于接受迀移閥值且和源承載節(jié)點網絡帶寬最大的節(jié)點作為迀移的目標承載節(jié)點,將應用迀移到目標承載節(jié)點上,實現(xiàn)了負載均衡,提升了系統(tǒng)的穩(wěn)定性和資源利用率。此外,在應用迀移的過程中,將源承載節(jié)點中迀移應用的業(yè)務邏輯處理模塊中的數(shù)據迀移和應用痕跡與狀態(tài)數(shù)據分開迀移,從而實現(xiàn)了能夠在不宕機的情況下完成迀移。用戶無須管理迀移應用的應用痕跡與狀態(tài)數(shù)據的迀移,而由迀移代理模塊完成,降低了用戶的操作復雜度。

【專利附圖】

【附圖說明】
[0019]圖1是本發(fā)明PaaS平臺的架構示意圖。
[0020]圖2是本發(fā)明PaaS平臺中實現(xiàn)應用迀移的方法的流程示意圖。
[0021]圖3是本發(fā)明PaaS平臺中實現(xiàn)應用迀移的裝置的結構示意圖。

【具體實施方式】
[0022]下面結合附圖對本發(fā)明進行進一步的詳細說明。通過足夠詳細的描述這些實施示例,使得本領域技術人員能夠實踐本發(fā)明。在不脫離本發(fā)明的主旨和范圍的情況下,可以對實施做出邏輯的、實現(xiàn)的和其他的改變。
[0023]圖1是本發(fā)明PaaS平臺的架構示意圖,如圖1所示,在PaaS平臺中,將資源池劃分為多個區(qū)域,該多個區(qū)域稱為不同的自治域(AZ,Availablity Zone),因此,同一 AZ內部的網絡連通性相對較好,AZ之間的網絡連通性相對較差。每個AZ由若干的承載節(jié)點(Node)組成,每個承載節(jié)點基于輕量級Linux容器提供表中的中間件服務和應用容器服務等,以滿足用戶將應用部署到應用承載節(jié)點上。此外,承載節(jié)點還運行底層服務S,為用戶提供底層數(shù)據庫數(shù)據。
[0024]圖2是本發(fā)明PaaS平臺中實現(xiàn)應用迀移的方法的流程示意圖,如圖2所示,具體包括:
[0025]步驟21,預先設置接受迀移閥值和拒絕迀移閥值。
[0026]如果源承載節(jié)點CPU和內存負載過高,為了保障用戶的應用具備彈性伸縮能力,需要將源承載節(jié)點的應用迀移到低負載的節(jié)點上去。
[0027]在本步驟中,預先設置接受迀移閥值(Threshold for Accepting Incoming)和拒絕迀移閥值(Threshold for Rejecting Incoming),其中接受迀移閥值用threshold.(node)表示,拒絕迀移閥值用 thresholdraj (node)表示。
[0028]如果節(jié)點的負載小于或等于接受迀移閥值,該節(jié)點可接受應用迀移;如果節(jié)點的負載高于拒絕迀移閥值,該節(jié)點拒絕應用迀移。
[0029]步驟22,獲取負載小于或等于接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬,將網絡帶寬最大值對應的節(jié)點作為目標承載節(jié)點。
[0030]在本步驟之前,還包括:獲取和源承載節(jié)點同一自治域的其他節(jié)點的負載,選取負載小于或等于接受迀移閥值的節(jié)點;如果在同一自治域中不存在負載小于或等于接受迀移閥值的節(jié)點且都大于拒絕迀移的閥值,獲取其它自治域節(jié)點的負載,選取負載小于或等于接受迀移閥值的節(jié)點;如果遍歷PaaS平臺中所有自治域的所有節(jié)點都不存在負載小于或等于接受迀移閥值的節(jié)點且都大于拒絕迀移的閥值,則無法進行應用迀移,結束本流程。
[0031]在本步驟中,將負載小于或等于接受迀移閥值且和源承載節(jié)點網絡帶寬最大的節(jié)點作為迀移的目標承載節(jié)點,因此,這種迀移并不會給系統(tǒng)帶來負載不均,而是以盡力而為的邏輯實現(xiàn)負載均衡,提升了系統(tǒng)的穩(wěn)定性和資源利用率。
[0032]步驟23,將迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點,在迀移應用的服務功能數(shù)據迀移完成后目標承載節(jié)點接收對迀移應用的服務請求,并將服務請求轉發(fā)給源承載節(jié)點進行處理。
[0033]在本步驟中,PaaS平臺中的節(jié)點包括業(yè)務邏輯處理模塊,該業(yè)務邏輯處理模塊用于處理服務功能相關的數(shù)據。在應用迀移時,首先需要進行業(yè)務邏輯處理模塊數(shù)據的迀移。
[0034]具體地,啟動目標承載節(jié)點的業(yè)務邏輯處理模塊,將源承載節(jié)點中迀移應用對應的業(yè)務邏輯處理模塊中的數(shù)據迀移到目標承載節(jié)點的業(yè)務邏輯處理模塊中,停止運行源承載節(jié)點的業(yè)務邏輯處理模塊,但不停止源承載節(jié)點上迀移應用對應的底層服務。
[0035]業(yè)務邏輯處理模塊自身是無狀態(tài)的,狀態(tài)數(shù)據由底層服務維護,所以停止運行源承載節(jié)點的業(yè)務邏輯處理模塊,并不停止源承載節(jié)點上運行的底層服務。PaaS平臺中的各節(jié)點具有用戶應用的業(yè)務邏輯處理模塊的鏡像文件,因此業(yè)務邏輯處理模塊中數(shù)據的迀移可以迅速完成。此外,目標承載節(jié)點上的業(yè)務邏輯處理模塊還可以進行能力擴張,從而提升用戶應用的服務響應能力。
[0036]步驟24,將迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到目標承載節(jié)點,在迀移應用的底層服務數(shù)據迀移完成后,目標承載節(jié)點接收對迀移應用的服務請求并對服務請求進行處理。
[0037]應用在承載節(jié)點上會使用本地存儲和數(shù)據庫數(shù)據來存儲特定配置、中間結果以及應用的當前狀態(tài)數(shù)據等底層服務數(shù)據,將用于應用的本地存儲和數(shù)據庫數(shù)據定義為應用在該承載節(jié)點上的應用痕跡與狀態(tài)數(shù)據,用footprint (app,node)表示。
[0038]相比較現(xiàn)有技術,本發(fā)明在PaaS平臺中的各節(jié)點上增加了迀移代理(Migrat1nAgent)模塊,該迀移代理模塊用于在源承載節(jié)點和目標承載節(jié)點間進行迀移應用的應用痕跡與狀態(tài)數(shù)據的拷貝和迀移過程中對迀移應用的應用痕跡與狀態(tài)數(shù)據訪問請求的轉發(fā)。
[0039]在本步驟中,目標承載節(jié)點的迀移代理模塊為應用創(chuàng)建一個與源承載節(jié)點的底層服務S對應的虛擬服務S’。如果在將源承載節(jié)點中應用痕跡與狀態(tài)數(shù)據迀移到目標承載節(jié)點過程中,若需要訪問迀移應用的應用痕跡與狀態(tài)數(shù)據,虛擬服務接收對迀移應用的訪問請求,并將該訪問請求轉發(fā)給目標承載節(jié)點上的迀移代理模塊,該目標承載節(jié)點上的迀移代理模塊將訪問請求轉發(fā)給源承載節(jié)點的迀移代理模塊,源承載節(jié)點的迀移代理模塊轉發(fā)給依舊在源承載節(jié)點上運行的底層服務S,源承載節(jié)點的底層服務S對該應用請求響應,并將響應信息原路返回。因此,在將源承載節(jié)點中應用痕跡與狀態(tài)數(shù)據迀移到目標承載節(jié)點的底層服務的過程中,目標承載節(jié)點上的應用依舊能夠保持正確的狀態(tài)。
[0040]在本步驟之后,還包括:在源承載節(jié)點中的底層服務數(shù)據迀移完成后,將目標承載節(jié)點的虛擬服務S’轉換為底層服務S,即停止轉發(fā)對應用的應用痕跡與狀態(tài)數(shù)據訪問請求而是直接處理。
[0041]步驟25,刪除迀移應用在源承載節(jié)點上的底層服務數(shù)據。
[0042]因為還需要保證對應用痕跡與狀態(tài)數(shù)據的訪問,所以在源承載節(jié)點中應用痕跡與狀態(tài)數(shù)據迀移到目標承載節(jié)點時,以拷貝的方式進行而不刪除迀移應用的應用痕跡與狀態(tài)數(shù)據。
[0043]在本步驟中,在源承載節(jié)點中應用痕跡與狀態(tài)數(shù)據迀移到目標承載節(jié)點的底層服務完成后,目標承載節(jié)點上的迀移代理模塊向源承載節(jié)點上的迀移代理模塊發(fā)送刪除數(shù)據請求,源承載節(jié)點上的迀移代理模塊收到請求后,刪除源承載節(jié)點上迀移的應用痕跡和和狀態(tài)數(shù)據。至此,源承載節(jié)點上沒有任何與迀移應用相關的數(shù)據。
[0044]本發(fā)明通過選取負載小于或等于接受迀移閥值且和源承載節(jié)點網絡帶寬最大的節(jié)點作為迀移的目標承載節(jié)點,將應用迀移到目標承載節(jié)點上,實現(xiàn)了負載均衡,提升了系統(tǒng)的穩(wěn)定性和資源利用率。此外,在應用迀移的過程中,將源承載節(jié)點中迀移應用的業(yè)務邏輯處理模塊中的數(shù)據迀移和應用痕跡與狀態(tài)數(shù)據分開迀移,從而實現(xiàn)了能夠在不宕機的情況下完成迀移。用戶無須管理迀移應用的應用痕跡與狀態(tài)數(shù)據的迀移,而由迀移代理模塊完成,降低了用戶的操作復雜度。
[0045]圖3是本發(fā)明PaaS平臺中實現(xiàn)應用迀移的裝置的結構示意圖,如圖3所示,具體可以包括:
[0046]確定模塊,用于確定迀移應用的目標承載節(jié)點。
[0047]業(yè)務邏輯處理模塊,用于將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點。
[0048]迀移代理模塊,用于在所述業(yè)務邏輯處理模塊對服務功能數(shù)據迀移完成后,將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點。
[0049]刪除模塊,用于在所述迀移代理模塊對底層服務數(shù)據迀移完成后,刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據。
[0050]此外,目標承載節(jié)點的迀移代理模塊,還用于創(chuàng)建與源承載節(jié)點的底層服務對應的虛擬服務;在迀移應用的底層服務數(shù)據迀移完成后,將目標承載節(jié)點的虛擬服務轉換為底層服務。
[0051]目標承載節(jié)點的迀移代理模塊,還用于所述迀移應用的服務功能數(shù)據迀移完成后,若虛擬服務接收對所述迀移應用的服務請求,轉發(fā)給所述目標承載節(jié)點的迀移代理模塊,所述目標承載節(jié)點的迀移代理模塊轉發(fā)給所述源承載節(jié)點的迀移代理模塊,所述源承載節(jié)點的迀移代理模塊轉發(fā)給底層服務進行訪問請求的處理;所述迀移應用的底層服務數(shù)據迀移完成后,向所述源承載節(jié)點的迀移代理模塊發(fā)送刪除數(shù)據請求,所述源承載節(jié)點的迀移代理模塊接收到所述刪除數(shù)據請求后,刪除所述迀移應用在源承載節(jié)點上的應用痕跡和狀態(tài)數(shù)據。
[0052]該裝置還包括:設置模塊,用于預先設置接受迀移閥值和拒絕迀移閥值。
[0053]確定模塊,具體用于獲取負載小于或等于所述接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬,將網絡帶寬最大值對應的節(jié)點作為目標承載節(jié)點;如果在同一自治域中不存在負載小于或等于接受迀移閥值的節(jié)點且都大于拒絕迀移的閥值,獲取其它自治域節(jié)點的負載,如果遍歷PaaS平臺中所有自治域的所有節(jié)點都不存在負載小于或等于接受迀移閥值的節(jié)點且都大于拒絕迀移的閥值,則結束迀移。
[0054]本發(fā)明PaaS平臺中實現(xiàn)應用迀移的裝置是和PaaS平臺中實現(xiàn)應用迀移的方法對應的,因此,本發(fā)明PaaS平臺中實現(xiàn)應用迀移的裝置具體的實現(xiàn)細節(jié)可參看PaaS平臺中實現(xiàn)應用迀移的方法,在此不贅述。
[0055]本發(fā)明通過選取負載小于或等于接受迀移閥值且和源承載節(jié)點網絡帶寬最大的節(jié)點作為迀移的目標承載節(jié)點,將應用迀移到目標承載節(jié)點上,實現(xiàn)了負載均衡,提升了系統(tǒng)的穩(wěn)定性和資源利用率。此外,在應用迀移的過程中,將源承載節(jié)點中迀移應用的業(yè)務邏輯處理模塊中的數(shù)據迀移和應用痕跡與狀態(tài)數(shù)據分開迀移,從而實現(xiàn)了能夠在不宕機的情況下完成迀移。用戶無須管理迀移應用的應用痕跡與狀態(tài)數(shù)據的迀移,而由迀移代理模塊完成,降低了用戶的操作復雜度。
[0056]應當理解,上文所列出的一系列的詳細說明僅僅是針對本發(fā)明的可行性實施方式的具體說明,它們并非用于限制本發(fā)明的保護范圍,凡未脫離本發(fā)明技藝精神所作的等效實施方式或變更均應包含在本發(fā)明的保護范圍之內。
【權利要求】
1.一種PaaS平臺中實現(xiàn)應用迀移的方法,其特征在于,包括: 確定迀移應用的目標承載節(jié)點; 將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點,在所述迀移應用的服務功能數(shù)據迀移完成后,所述目標承載節(jié)點接收對所述迀移應用的服務請求,并將所述服務請求轉發(fā)給所述源承載節(jié)點進行處理; 將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點,在所述迀移應用的底層服務數(shù)據迀移完成后,所述目標承載節(jié)點接收對所述迀移應用的服務請求并對所述服務請求進行處理; 刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據。
2.根據權利要求1所述的方法,其特征在于,所述將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點包括: 將所述迀移應用在源承載節(jié)點中對應的業(yè)務邏輯處理模塊中的數(shù)據迀移到所述目標承載節(jié)點的業(yè)務邏輯處理模塊中。
3.根據權利要求1所述的方法,其特征在于,所述確定迀移應用的目標承載節(jié)點之后,還包括:在目標承載節(jié)點創(chuàng)建與源承載節(jié)點的底層服務對應的虛擬服務; 所述將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點包括:在所述迀移應用的服務功能數(shù)據迀移完成后,將所述迀移應用在源承載節(jié)點中的迀移應用對應的應用痕跡與狀態(tài)數(shù)據迀移到所述目標承載節(jié)點的虛擬服務中; 所述迀移應用的底層服務數(shù)據迀移完成后,還包括:將所述目標承載節(jié)點的虛擬服務轉換為底層服務。
4.根據權利要求2或3所述的方法,其特征在于,所述確定迀移應用的目標承載節(jié)點之前,還包括:預先設置接受迀移閥值; 所述確定迀移應用的目標承載節(jié)點包括:獲取負載小于或等于所述接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬,將網絡帶寬最大值對應的節(jié)點作為目標承載節(jié)點。
5.根據權利要求4所述的方法,其特征在于,所述確定迀移應用的目標承載節(jié)點之前,還包括:預先設置拒絕迀移閥值; 所述獲取負載小于或等于所述接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬之前,還包括: 獲取和所述源承載節(jié)點同一自治域的其他節(jié)點的負載,如果在同一自治域中不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,獲取其它自治域節(jié)點的負載,如果遍歷PaaS平臺中所有自治域的所有節(jié)點都不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,則結束本流程。
6.根據權利要求1所述的方法,其特征在于,所述刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據還包括: 在所述迀移應用的底層服務數(shù)據迀移完成后,所述目標承載節(jié)點向所述源承載節(jié)點發(fā)送刪除數(shù)據請求,所述源承載節(jié)點接收到所述刪除數(shù)據請求后,刪除所述迀移應用在源承載節(jié)點上的應用痕跡和狀態(tài)數(shù)據。
7.—種PaaS平臺中實現(xiàn)應用迀移的裝置,其特征在于,包括: 確定模塊,用于確定迀移應用的目標承載節(jié)點; 業(yè)務邏輯處理模塊,用于將所述迀移應用在源承載節(jié)點中的服務功能數(shù)據迀移到目標承載節(jié)點; 迀移代理模塊,用于在所述業(yè)務邏輯處理模塊對服務功能數(shù)據迀移完成后,將所述迀移應用在源承載節(jié)點中的底層服務數(shù)據迀移到所述目標承載節(jié)點; 刪除模塊,用于在所述迀移代理模塊對底層服務數(shù)據迀移完成后,刪除所述迀移應用在源承載節(jié)點上的底層服務數(shù)據。
8.根據權利要求7所述的裝置,其特征在于,所述目標承載節(jié)點的迀移代理模塊,還用于創(chuàng)建與源承載節(jié)點的底層服務對應的虛擬服務;所述迀移應用的底層服務數(shù)據迀移完成后,將所述目標承載節(jié)點的虛擬服務轉換為底層服務。
9.根據權利要求8所述的裝置,其特征在于,所述目標承載節(jié)點的迀移代理模塊,還用于所述迀移應用的服務功能數(shù)據迀移完成后,若虛擬服務接收對所述迀移應用的服務請求,轉發(fā)給所述目標承載節(jié)點的迀移代理模塊,所述目標承載節(jié)點的迀移代理模塊轉發(fā)給所述源承載節(jié)點的迀移代理模塊,所述源承載節(jié)點的迀移代理模塊轉發(fā)給底層服務進行訪問請求的處理; 所述迀移應用的底層服務數(shù)據迀移完成后,向所述源承載節(jié)點的迀移代理模塊發(fā)送刪除數(shù)據請求,所述源承載節(jié)點的迀移代理模塊接收到所述刪除數(shù)據請求后,刪除所述迀移應用在源承載節(jié)點上的應用痕跡和狀態(tài)數(shù)據。
10.根據權利要求7?9中任一項所述的裝置,其特征在于,所述裝置還包括:設置模塊,用于預先設置接受迀移閥值和拒絕迀移閥值; 所述確定模塊,具體用于獲取負載小于或等于所述接受迀移閥值的節(jié)點和源承載節(jié)點間的網絡帶寬,將網絡帶寬最大值對應的節(jié)點作為目標承載節(jié)點;如果在同一自治域中不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,獲取其它自治域節(jié)點的負載,如果遍歷PaaS平臺中所有自治域的所有節(jié)點都不存在負載小于或等于所述接受迀移閥值的節(jié)點且都大于所述拒絕迀移的閥值,則結束迀移。
【文檔編號】H04L29/08GK104468759SQ201410709204
【公開日】2015年3月25日 申請日期:2014年11月27日 優(yōu)先權日:2014年11月27日
【發(fā)明者】雷磊, 王志軍, 房秉毅 申請人:中國聯(lián)合網絡通信集團有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
垫江县| 莲花县| 五家渠市| 望都县| 阜新| 任丘市| 平阳县| 额尔古纳市| 辰溪县| 长泰县| 通辽市| 松江区| 双城市| 靖边县| 游戏| 鄂托克前旗| 墨竹工卡县| 德保县| 大丰市| 墨江| 泰和县| 诸城市| 南通市| 商丘市| 枞阳县| 沅陵县| 偏关县| 岑溪市| 格尔木市| 乌拉特后旗| 九龙城区| 梅河口市| 汝南县| 大足县| 巍山| 邯郸县| 花莲县| 平塘县| 抚州市| 伊吾县| 巴东县|