本發明專利技術適用于虛擬機技術領域,提供了虛擬機集群的模擬輸入輸出方法、裝置及系統,包括:第一服務器接收第二服務器的模擬I/O處理指令,所述第二服務器中集成了所述VM集群中所有VM的設備模擬器DM,所述模擬I/O處理指令由所述DM生成;所述第一服務器根據所述模擬I/O處理指令對所述模擬I/O處理指令指示的VM進行虛擬化狀態更新。在本發明專利技術實施例中,通過將VM集群中所有VM的DM均集中運行在一臺服務器上,并利用PCIE的NTB機制或者RDMA機制實現各VM所在服務器與DM所在服務器之間的通信,以實現VM的模擬I/O,有效簡化了VM集群的軟件架構,提高了VM集群的資源利用率。
【技術實現步驟摘要】
本專利技術屬于虛擬機
,尤其涉及虛擬機(Virtual Machine,VM)集群的模擬輸入/輸出(Input/Output,I/O)方法、裝置及系統。
技術介紹
虛擬I/O服務器(Virtual I/O Server, V10S)是一種用在虛擬化系統中為VM提供共享I/o服務和模擬I/O服務的裝置,其作為當前流行的云計算平臺的底層重要支撐技術之一,直接影響著VM的I/O性能,且其實現架構的復雜度會直接影響整個虛擬化系統的復雜度。在例如云計算中心等大型數據處理環境下,運行著由多臺服務器、網絡設備及存儲設備組成的集群,且通過在服務器上部署虛擬化軟件,使得整個集群可以創建上千甚至上萬個VM。在上述場景下,每個VM的模擬I/O都是由其所在服務器上的VIOS提供的,這就意味著必須在每個服務器上構造一個設備模擬器(Device Model, DM),且每臺服務器都必須維護該DM運行產生的的軟件堆棧,這種架構需要每臺服務器均耗費資源來運行功能相同的模塊,增加了 VM集群的軟件復雜性,加大了 VM集群的資源開銷。
技術實現思路
本專利技術實施例的目的在于提供VM集群的模擬I/O方法及服務器,旨在解決現有的VM集群需要在其每臺服務器均構造一個DM,導致VM集群的軟件復雜性增加,資源開銷加大的問題。第一方面,所述VM集群的模擬I/O方法包括:第一服務器接收第二服務器的模擬I/o處理指令,所述第二服務器中集成了所述VM集群中所有VM的設備模擬器DM,所述模擬I/O處理指令由所述DM生成;所述第一服務器根據所述模擬I/O處理指令對所述模擬I/O處理指令指示的VM進行狀態更新。在第一方面的第一種可能的實現方式中,所述第一服務器和所述第二服務器通過快速外圍組件互連PCIE的非透明橋NTB通信,所述模擬I/O處理指令包括VM標識,在第一服務器接收第二服務器的模擬I/O處理指令之后,所述第一服務器根據所述模擬I/O處理指令對所述模擬I/O處理指令指示的VM進行狀態更新之前,所述方法還包括:所述第一服務器根據所述VM標識確定所述模擬I/O處理指令指示的VM。結合第一方面的第一種可能的實現方式,在第二種可能的實現方式中,在所述第一服務器接收第二服務器的模擬I/o處理指令之前,所述方法還包括:所述第一服務器將所述VM的模擬I/O訪問指令封裝成模擬I/O請求包,所述模擬I/O請求包包括所述VM標識;所述第一服務器將所述模擬I/O請求包發送至所述第二服務器,所述模擬I/O請求包被所述第二服務器用于根據所述VM標識傳送至所述VM對應的所述DM進行I/O處理。在第一方面的第三種可能的實現方式中,所述第一服務器和所述第二服務器通過遠程內存直接訪問RDMA通信,在第一服務器接收第二服務器的模擬I/O處理指令之后,在所述第一服務器根據所述模擬I/o處理指令對所述模擬I/O處理指令指示的VM進行狀態更新之前,所述方法還包括:所述第一服務器確定存儲所述模擬I/O處理指令的所述第一服務器的內存地址;所述第一服務器將所述第一服務器的內存地址轉換成VM的內存地址;所述第一服務器將所述VM的內存地址對應的VM確定為所述模擬I/O處理指令指示的VM。第二方面,所述VM集群的模擬I/O方法包括:第二服務器獲取設備模擬器DM生成的模擬I/o處理指令,所述第二服務器中集成了所述VM集群中所有VM的DM ;所述第二服務器發送所述模擬I/O處理指令,所述模擬I/O處理指令被第一服務器用于對所述模擬I/O處理指令指示的所述VM進行狀態更新。在第二方面的第一種可能的實現方式中,所述第一服務器和所述第二服務器通過快速外圍組件互連PCIE的非透明橋NTB通信,所述模擬I/O處理指令包括所述第一服務器的NTB端口標識和所述VM的VM標識,所述第二服務器發送所述模擬I/O處理指令包括:所述第二服務器根據所述NTB端口標識將所述模擬I/O處理指令發送至所述第一服務器;所述VM標識被所述第一服務器用于確定所述模擬I/O處理指令指示的所述VM。結合第二方面或者第二方面的第一種可能的實現方式,在第二種可能的實現方式中,在所述第二服務器獲取設備模擬器DM生成的模擬I/O處理指令之前,還包括:所述第二服務器接收所述第一服務器發送的模擬I/O請求包,所述模擬I/O請求包包括所述VM的VM標識;所述第二服務器根據所述VM標識,將所述模擬I/O請求包發送至所述VM對應的所述DM進行I/O處理。在第二方面的第三種可能的實現方式中,所述第一服務器和所述第二服務器通過遠程內存直接訪問RDMA通信,所述第二服務器發送所述模擬I/O處理指令包括:所述第二服務器將所述模擬I/O處理指令發送至所述第一服務器的內存地址,所述第一服務器的內存地址通過所述第一服務器將所述VM的內存地址轉換得到。第三方面,所述服務器包括:第一接收單元,用于接收第二服務器的模擬I/O處理指令,所述第二服務器中集成了所述VM集群中所有VM的設備模擬器DM,所述模擬I/O處理指令由所述DM生成;狀態更新單元,用于接收所述第一接收單元發送的所述模擬I/O處理指令,根據所述模擬I/O處理指令對所述模擬I/O處理指令指示的VM進行狀態更新。在第三方面的第一種可能的實現方式中,所述第一服務器和所述第二服務器通過快速外圍組件互連PCIE的非透明橋NTB通信,所述模擬I/O處理指令包括VM標識,所述服務器還包括:第一 VM確定單元,用于根據所述VM標識確定所述模擬I/O處理指令指示的VM。結合第三方面的第一種可能的實現方式,在第二種可能的實現方式中,所述服務器還包括:封裝單元,用于將所述VM的模擬I/O訪問指令封裝成模擬I/O請求包,所述模擬I/O請求包包括所述VM標識;第一發送單元,用于接收所述封裝單元發送的所述模擬I/O請求包,將所述模擬I/O請求包發送至所述第二服務器,所述模擬I/O請求包被所述第二服務器用于根據所述VM標識傳送至所述VM對應的所述DM進行I/O處理。在第三方面的第三種可能的實現方式中,所述第一服務器和所述第二服務器通過遠程內存直接訪問RDMA通信,所述服務器還包括:內存地址確定單元,用于所述第一服務器確定存儲所述模擬I/O處理指令的所述第一服務器的內存地址;轉換單元,用于接收所述內存地址確定單元發送的所述第一服務器的內存地址,將所述第一服務器的內存地址轉換成VM的內存地址;第二 VM確定單元,用于接收所述轉換單元發送的所述VM的內存地址,將所述VM的內存地址對應的VM確定為所述模擬I/O處理指令指示的VM。第四方面,所述服務器包括:獲取單元,用于獲取設備模擬器DM生成的模擬I/O處理指令,所述服務器中集成了所述VM集群中所有VM的DM ;第二發送單元,用于接收所述獲取單元,發送的所述模擬I/O處理指令,發送所述模擬I/O處理指令,所述模擬I/O處理指令被第一服務器用于對所述模擬I/O處理指令指示的所述VM進行狀態更新。在第四方面的第一種可能的實現方式中,所述服務器和所述第一服務器通過快速外圍組件互連PCIE的非透明橋NTB通信,所述模擬I/O處理指令包括所述第一服務器的NTB端口標識和所述VM的VM標識,所述第二發送單元具體用于:根據所述NTB端口標識將所述模擬I/O處理指令發送至所述第一服務器;所述VM標識被所述第一服務器本文檔來自技高網...
【技術保護點】
一種虛擬機VM集群的模擬輸入輸出I/O方法,其特征在于,包括:第一服務器接收第二服務器的模擬I/O處理指令,所述第二服務器中集成了所述VM集群中所有VM的設備模擬器DM,所述模擬I/O處理指令由所述DM生成;所述第一服務器根據所述模擬I/O處理指令對所述模擬I/O處理指令指示的VM進行狀態更新。
【技術特征摘要】
【專利技術屬性】
技術研發人員:邱軍,
申請(專利權)人:華為技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。