System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請實施例涉及虛擬機,尤其涉及一種虛擬機遷移方法及系統、設備。
技術介紹
1、在云計算環境中,跨云平臺的虛擬機遷移技術對于企業至關重要,它使企業能夠基于成本效益、性能要求和地理位置等因素,在不同云服務提供商之間靈活轉移工作負載。
2、然而,現有的跨云虛擬機遷移方法在實施過程中通常會導致顯著的服務中斷。冷遷移作為一種傳統遷移技術,涉及在整個遷移過程中關閉虛擬機,結果是不可接受的長時間業務中斷。溫遷移技術,盡管其允許在虛擬機運行狀態下進行部分數據遷移,但在遷移最后階段仍然需要停機以完成增量數據的同步,這對于對服務連續性有嚴格要求的應用來說仍然構成問題。并且,在傳統遷移方法中目標平臺必須等待整個數據集被復制并驗證后才能啟動虛擬機,這樣會導致當遷移的數據量較大或者網絡帶寬受限時這個過程耗費的時間更長,業務的中斷時間更加不可控。
技術實現思路
1、本申請實施例提供了一種虛擬機遷移方法及系統、設備,能夠解決現有技術中虛擬機遷移導致的業務中斷時間長的問題。
2、為達到上述目的,本申請實施例采用如下技術方案:
3、第一方面,本申請實施例提供了一種虛擬機遷移方法,該方法包括:獲取遷移請求,所述遷移請求用于將源主機上運行的第一虛擬機遷移至目的主機,所述第一虛擬機掛載第一磁盤;基于所述遷移請求,創建第二虛擬機,并建立目的主機與所述第一磁盤的映射關系,以使所述目的主機能訪問所述第一磁盤;基于所述第一磁盤在所述目的主機上創建所述第一磁盤的覆蓋層文件;將所述第一磁盤的覆蓋
4、基于本方案,通過在目的主機上創建第一磁盤的覆蓋層文件,使得第二虛擬機能夠掛載該覆蓋層文件進而在數據遷移之前實現第二虛擬機的開機操作。如此,能夠縮短目的主機接管虛擬機的等待時間,進而減小業務的中斷時長。
5、在一種可能的實現方式中,所述建立目的主機與所述第一磁盤的映射關系,包括:通過第一主機以及所述第二虛擬機所在的虛擬機平臺支持的訪問協議建立與所述第一磁盤的映射關系,所述第一主機用于通過所述第一虛擬機所在的虛擬機平臺支持的訪問協議建立與所述第一磁盤的映射關系并基于所述第二虛擬機所在的虛擬機平臺支持的訪問協議配置所述第一磁盤。
6、基于本方案,通過使用第一主機中的遷移代理作為中介,使得目的主機能夠掛載第一虛擬機的第一磁盤;如此,能夠提升數據中轉效率,且使得源端和目的端的兼容性得到增強。
7、在另一種可能的實現方式中,所述第二虛擬機所在的虛擬機平臺支持的訪問協議為iscsi協議。
8、基于本方案,通過使用標準的iscsi協議實現第一磁盤的訪問掛載。
9、在又一種可能的實現方式中,所述基于所述第一磁盤在所述目的主機上創建所述第一磁盤的覆蓋層文件,包括:以所述第一磁盤為基礎鏡像文件,在所述目的主機上創建qcow2格式的文件;將所述qcow2格式的文件作為所述第一磁盤的覆蓋層文件。
10、基于本方案,通過以掛載在目的主機上的第一磁盤為基礎鏡像,創建qcow2格式的文件作為覆蓋層文件;如此,能夠實現在基礎鏡像上創建overlay層這一動作,從而方便快捷地實現覆蓋層的創建。
11、在又一種可能的實現方式中,所述合并所述第二磁盤和所述覆蓋層文件,包括:將所述第二磁盤中的數據寫入所述覆蓋層文件;或,將所述覆蓋層文件中的數據寫入所述第二磁盤;或,將所述覆蓋層文件引用的基礎鏡像文件重定向至所述第二磁盤。
12、基于本方案,通過將第二磁盤和覆蓋層文件進行互相寫入的方式,或者將覆蓋層文件引用的基礎鏡像重定向至第二磁盤的方式,使得遷移后的原始數據和新增數據能夠合并從而達到遷移完成的效果。
13、在又一種可能的實現方式中,所述對所述第二虛擬機執行開機操作之后,所述方法還包括:如果所述第二虛擬機存在數據寫操作請求,將所述數據寫操作請求對應的數據寫入所述覆蓋層文件;和/或,如果所述第二虛擬機存在數據讀操作請求,在所述覆蓋層文件中存在所述數據讀操作請求對應的目標數據的情況下,從所述覆蓋層文件中讀取所述目標數據;在所述覆蓋層文件中不存在所述目標數據的情況下,從所述第一磁盤中讀取所述目標數據。
14、基于本方案,通過在第二虛擬機存在數據寫操作請求的情況下,將數據寫操作請求對應的數據寫入至覆蓋層文件,從而避免對第一磁盤的修改。
15、第二個方面,本申請實施例提供了另一種虛擬機遷移方法,該方法包括:獲取遷移請求,所述遷移請求用于將源主機上運行的第一虛擬機遷移至目的主機,所述第一虛擬機掛載第一磁盤;基于所述遷移請求,指示所述目的主機,以使所述目的主機:創建第二虛擬機,并建立與所述第一磁盤的映射關系,以使所述目的主機能訪問所述第一磁盤;基于所述第一磁盤創建所述第一磁盤的覆蓋層文件;將所述第一磁盤的覆蓋層文件掛載在所述第二虛擬機,并對所述第二虛擬機執行開機操作;在所述第一磁盤的數據遷移到所述目的主機的第二磁盤后,合并所述第二磁盤和所述覆蓋層文件。
16、基于本方案,通過在目的主機上創建第一磁盤的覆蓋層文件,使得第二虛擬機能夠掛載該覆蓋層文件進而在數據遷移之前實現第二虛擬機的開機操作。如此,能夠縮短目的主機接管虛擬機的等待時間,進而減小業務的中斷時長。
17、在一種可能的實現方式中,所述指示所述目的主機建立與所述第一磁盤的映射關系,包括:通過所述第一虛擬機所在的虛擬機平臺支持的訪問協議建立第一主機與所述第一磁盤的映射關系;基于所述第二虛擬機所在的虛擬機平臺支持的訪問協議配置所述第一磁盤;指示所述目的主機通過所述第二虛擬機所在的虛擬機平臺支持的訪問協議建立與所述第一磁盤的映射關系。
18、基于本方案,通過使用第一主機中的遷移代理作為中介,使得目的主機能夠掛載第一虛擬機的第一磁盤;如此,能夠提升數據中轉效率,且使得源端和目的端的兼容性得到增強。
19、在另一種可能的實現方式中,所述通過所述第一虛擬機所在的虛擬機平臺支持的訪問協議建立第一主機與所述第一磁盤的映射關系,包括:獲取所述第一虛擬機所在的虛擬機平臺對應的平臺類型,以及所述第一磁盤對應的存儲類型;基于所述平臺類型和所述存儲類型,確定所述第一虛擬機所在的虛擬機平臺支持的訪問協議;基于所述訪問協議,建立第一主機與所述第一磁盤的映射關系。
20、基于本方案,通過根據第一虛擬機所在的虛擬機平臺的平臺類型和第一磁盤的存儲類型,將遷移代理作為中介與源主機建立連接,從而將源主機上的待遷移磁盤掛載在遷移代理,進而可通過遷移代理將該待遷移磁盤掛載在目的主機。
21、在又一種可能的實現方式中,所述第二虛擬機所在的虛擬機平臺支持的訪問協議為iscsi協議。
22、基于本方案,通過使用標準的iscsi協議實現第一磁盤的訪問掛載。
23、在又一種可能的實現方式中,所述指示所述目的本文檔來自技高網...
【技術保護點】
1.一種虛擬機遷移方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述建立目的主機與所述第一磁盤的映射關系,包括:
3.根據權利要求2所述的方法,其特征在于,所述第二虛擬機所在的虛擬機平臺支持的訪問協議為ISCSI協議。
4.根據權利要求1所述的方法,其特征在于,所述基于所述第一磁盤在所述目的主機上創建所述第一磁盤的覆蓋層文件,包括:
5.根據權利要求1所述的方法,其特征在于,所述合并所述第二磁盤和所述覆蓋層文件,包括:
6.根據權利要求1-5中任一項所述的方法,其特征在于,所述對所述第二虛擬機執行開機操作之后,所述方法還包括:
7.一種虛擬機遷移方法,其特征在于,所述方法包括:
8.根據權利要求7所述的方法,其特征在于,所述建立與所述第一磁盤的映射關系,包括:
9.根據權利要求8所述的方法,其特征在于,所述通過所述第一虛擬機所在的虛擬機平臺支持的訪問協議建立第一主機與所述第一磁盤的映射關系,包括:
10.根據權利要求8所述的方法,其特征在于,所
11.一種計算設備,其特征在于,所述計算設備包括:
12.根據權利要求11所述的計算設備,其特征在于,所述計算設備還用于:
13.一種虛擬機遷移系統,其特征在于,所述系統包括:
...【技術特征摘要】
1.一種虛擬機遷移方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,所述建立目的主機與所述第一磁盤的映射關系,包括:
3.根據權利要求2所述的方法,其特征在于,所述第二虛擬機所在的虛擬機平臺支持的訪問協議為iscsi協議。
4.根據權利要求1所述的方法,其特征在于,所述基于所述第一磁盤在所述目的主機上創建所述第一磁盤的覆蓋層文件,包括:
5.根據權利要求1所述的方法,其特征在于,所述合并所述第二磁盤和所述覆蓋層文件,包括:
6.根據權利要求1-5中任一項所述的方法,其特征在于,所述對所述第二虛擬機執行開機操作之后,所述方法還包括:
【專利技術屬性】
技術研發人員:王鵬飛,
申請(專利權)人:超聚變數字技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。