近年來因為雲端運算(Cloud Computing)概念的興起,因此網際網路服務的應用,已透過雲端運算擴大其服務層面的廣度及服務內容的深度。而由於雲端運算的特性,使得現今企業在網際網路上提供的服務越來越多元化,也使得雲端環境的使用者快速的增加,改變了現有的商業模式。然而,一般中小型企業在人力及資源有限的狀況下,無法花費大量的預算建構雲端運算平台。隨著雲端運算技術的進步,開放原始碼的雲端運算平台紛紛出現,其中OpenStack是許多廠商支持的開放原始碼雲端運算平台。 為提供更符合商業應用的OpenStack使用環境,因此在本研究中提出一套以服務為導向架構在OpenStack的雲端運算平台(Service oriented Architecture based OpenStack;SoAOpenStack)。SoAOpenStack為一個三層式的服務模式,可做為服務需求及資源配置的中介層。SoAOpenStack首先使用服務水準協議(Service Level Agreement),藉以區隔不同等級的服務需求。接著,在虛擬機器配置策略,分別利用優先權(Priority)排班演算法、先到先服務(First Come First Served;FCFS)排班演算法及最先合適(First Fit)資源配置演算法,將使用者的服務需求配置至符合其需求的虛擬機器以進行服務。透過本研究所提出的SoAOpenStack,除了可以提高使用者的服務品質外,更可以達到服務需求與虛擬資源的有效配置,且可降低實體與虛擬資源的浪費。
With cloud computing technologies continue to progress, the open source cloud computing platforms have been emerged. Therefore, the application of Internet services has expanded operations depth and breadth of its service-level services through the cloud. Due to the characteristics of cloud computing, the existing business model can be changed to cloud environment quickly. The human and resources of small and medium-sized enterprises are limited, hence cannot spend a lot of budget to construct the private cloud of enterprise. With the advancement of cloud computing technology, open source cloud computing platform have emerged. However, OpenStack is one of the popular open source cloud computing platform. To provide more suitable OpenStack environment for business applications, a Service oriented Architecture based OpenStack (SoAOpenStack) is proposed in this study. SoAOpenStack is a three-tiered service model that can be used as an intermediary layer for resource allocation. Firstly, the Service Level Agreement (SLA) is used in SoAOpenStack, in order to differentiate the different levels of service requests. Then, the Priority scheduling algorithm, First Come First Served (FCFS) scheduling algorithm and First Fit resource allocation algorithm are used to configure the appropriate virtual machine. By using the proposed SoAOpenStack, the quality of service for users can be improved, the allocation of service requests and virtual resources can be achieved efficiently, and the waste of physical and virtual resources can be reduced.