背景技術:
1、云計算是在遠程位置可用并可通過網絡(諸如互聯網)進行訪問的計算資源(硬件和軟件)的使用。用戶能夠按需使用這些計算資源(包括存儲和計算能力)作為效用。云計算將用戶的數據、軟件和計算委托給遠程服務。使用虛擬計算資源可以提供許多優勢,包括成本優勢和/或快速適應變化的計算資源需求的能力。
2、在云計算環境中,虛擬機映像包含操作系統(例如,linux)和在虛擬環境中啟動虛擬機所需的其他數據。虛擬機映像類似于物理計算機的磁盤卷,并且可以包括文件系統、操作系統和作為機器啟動所需的其他組件。為了啟動虛擬機,需要選擇硬件。硬件選擇是通過實例類型來完成的,所述實例類型允許有各種不同大小的存儲器、cpu容量、i/o性能等。虛擬機映像和實例類型的組合可以用于創建“實例”或虛擬機。
3、i/o性能與和虛擬機相關聯的網絡接口有關。網絡接口可以具有許多傳輸隊列和接收隊列,所述傳輸隊列和接收隊列允許通過網絡傳送數據。通常,具有更多cpu的較大型虛擬機擁有更大數量的隊列。然而,一些虛擬機可能被分配給較低數據吞吐量的操作,諸如主要提供管理功能的虛擬機。在此類情況下,虛擬機可能不需要分配給它的隊列數量。其他虛擬機可能專注于數據傳輸,并且隊列數量不足。當前的云環境中需要更好的隊列利用率。
技術實現思路
1.一種方法,其包括:
2.如權利要求1所述的方法,其中在所述服務器計算機上執行的超級管理程序將所述隊列從可用隊列池分配給所述一個或多個接口,其中所述隊列池的第一部分被分配給用于網絡的所述一個或多個接口,并且所述隊列池的第二部分被分配給用于存儲的所述一個或多個接口。
3.如權利要求1至2所述的方法,其中所述用戶請求是包括虛擬機映像標識符的應用程序編程接口(api)請求。
4.如權利要求1至3所述的方法,其中所述隊列是傳輸隊列和接收隊列。
5.如權利要求1至4所述的方法,其還包括接收附加用戶請求以動態地修改所述隊列分配。
6.如權利要求1至5所述的方法,其中所述虛擬機包括多個處理器,并且所述多個處理器中的至少一些具有所述隊列中分配給它以用于分組處理的所述隊列中的至少一個。
7.如權利要求1至6所述的方法,其中所述用戶請求允許計算服務提供商之外的用戶定制多少個隊列與每個接口相關聯。
8.如權利要求1至7所述的方法,其還包括從服務器計算機池中選擇要在其上啟動所述虛擬機的所述服務器計算機。
9.如權利要求1至8所述的方法,其中所述隊列分配作為元數據存儲在虛擬機注冊記錄中。
10.如權利要求1至9所述的方法,其中所述隊列是從用于網絡的第一隊列池和用于存儲的第二隊列池中分配的。
11.一種啟動虛擬機的方法,所述方法包括:
12.如權利要求11所述的方法,其中所述api請求包括用于識別所述虛擬機的虛擬機標識符。
13.如權利要求11至12所述的方法,其中所述隊列包括用于傳輸和接收網絡分組的傳輸隊列和接收隊列。
14.如權利要求11至13所述的方法,其中所述api請求至少包括與第一虛擬網絡接口相關聯的第一數量的隊列和與第二虛擬網絡接口相關聯的第二數量的隊列,其中所述第一數量的隊列和所述第二數量的隊列的組合數量小于所述隊列池中的隊列數量。
15.如權利要求11至14所述的方法,其中在所述服務器計算機上執行的超級管理程序將所述隊列池的第一部分分配給作為虛擬網絡接口的所述虛擬接口,并且將所述隊列池的第二部分分配給用于存儲的虛擬接口。