摘要註: |
由於近年來雲端系統以及虛擬化技術的蓬勃發展,為了能有效節省系統運作的能源消耗,已經有許多演算法被提出來解決虛擬機器的配置問題,但是大部分是屬於靜態配置方式。本篇論文主要是考量系統有連續抵達的虛擬機執行需求,我們希望能有效率地將虛擬機放置在合適的實體機上,已達成系統省電的目的。一台虛擬機只能執行在一台實體機上,而每台虛擬機都需要四種資源,這四種分別是處理器計算能力、記憶體空間、硬碟空間與網路頻寬,除此之外,每台實體機所擁有的這四種資源量都是有限的,不能無窮盡的提供資源給虛擬機使用。當虛擬機的壽命是未知的情況下,我們提出以資源需求為考量的最先配置演算法(Resource-based First Fit Algorithm)。相對的,如果虛擬機的執行壽命(Lifetime)在開始執行前為已知,我們提出以執行壽命為考量依據的最佳配置演算法(Lifetime-based Best Fit Algorithm),這個演算法主要是當一個新的虛擬機要被放置到實體機時,我們在選擇實體機時,是選擇實體機在被放置此虛擬機後,這台實體機擁有最小的額外增加執行壽命。因此,這些實體機即使有新的虛擬機擺入,也可以盡量在原先的時間點關掉,以最小化這些在執行中的實體機之執行時間。最後我們由一連串的實驗來驗證我們所提出來的演算法,當虛擬機的壽命是已知的情況下,無論是在哪個實驗設定中,以執行壽命為依據的最佳配置演算法都擁有最好的效能。 The purpose of this paper is to study the assignment problem of virtual machines (VMs) in a cloud compute system where the users continuously request for the VMs to run their applications. A requested VM must be hosted on a physical machine (PM) which has limited resource amounts for four kinds of resources, i.e., CPU, disk, memory, and network bandwidth. Besides, each PM also has limited capacities for each kind of resource. We propose two efficient VM assignment algorithms, the Resource-based First Fit Algorithm (RFFA) and the Lifetime-based Best Fit Algorithm (LTBFA), to assign VMs to PMs. The former is proper when the lifetimes of VMs are unknown. The latter considers the information of lifetimes and have better performance when the lifetimes of VMs are known. When a new VM is assigned to a PM, we intend to minimize the additional lifetime of the PM. Therefore, the number of running PMs can be minimized. A series of experiments were conducted to evaluate the proposed algorithms. The experimental results show that the LTBFA uses fewer running PMs than the First-Fit, Best-Fit, Worst-Fit algorithms and can achieve better energy savings. |