透過您的圖書館登入
IP:18.118.200.136
  • 學位論文

雲端服務之可規模化資源配置、概要分析與目標效能管理

Scalable Resource and Performance Management and Profiling for Cloud-enabled Applications

指導教授 : 孫雅麗

摘要


雲端技術所帶來的可規模化特性及彈性的資源配置,使得越來越多企業將原先運行於實體環境中的應用服務移轉至虛擬環境下,以期借助虛擬化技術能依應用運算所需資源的需求動態調整資源配置之優勢達到資源共有共享有效利用的效益。但虛擬化環境因為虛擬技術的設計一個應用在運作時所消耗的資源與傳統實體環境中的執行方式是相當不同的。因此在資源配置仍為一黑盒子,若企業欲達成與實體環境下相同負載情形及效能目標,虛擬機器需分配多少資源才可因應且不違反與企業所簽訂的SLA。本研究將重心放在負載、效能、資源需求的概要分析,針對當企業將原本的網路應用系統移植到雲端環境時,如何經由有效的初始資源配置以及動態雲端資源調配的方式,讓在多變的負載情況下仍能達到各應用的目標效能。 本研究以滿足應用服務之效能目標為前提,蒐集各種不同負載情形下運行於實體、虛擬環境中的資源使用行為,利用典型相關分析建立實體及虛擬資源使用量之間的多對多關聯性,並藉此推測新負載情形下,欲在虛擬環境中達成SLA規範之效能目標所需配置的虛擬資源。在資源使用參數的制定上,透過研究應用服務在不同環境下的運作流程,將一個應用在四種資源構面:CPU、Memory、Disk I/O及Network I/O挑選了一組能夠完全掌握運算系統資源使用參數集合。經由詳盡了解運作流程所制訂出的具代表性之資源使用參數集合,其預測結果可協助釐清在現階段的資源配置情形下,哪一資源構面可能成為效能瓶頸之所在。模型的使用上提出兩種不同的使用情境,一種為需先行測得欲預測的負載情形下,實體環境中的資源使用量,可使得模型預測時較為準確。另一種則只需提供負載情形或效能目標即可預測出虛擬資源使用量,著重於減少管理者在資源配置上所需花費的時間成本。 實驗結果顯示運用典型相關分析能準確地建立出不同環境下資源使用行為間的關聯性,當預測目標位於training set負載範圍內時,預測誤差率小於5%。若關聯性會隨著負載情形的範圍有所變動,則預測模型必須要重新建模以確保關聯性在預測新負載情形時仍然適用。本研究提出sliding window-based re-training set機制,藉由break-and-recap概念將training set更新以重建出新的預測模型,可在預測高負載情形時將預測錯誤率控制在10%以下,即便以不需另行測量欲預測負載情形下之實體資源使用量的方法進行預測,也可達到相似的預測準確度。

並列摘要


Virtualization has become the norm in today’s business. As the development of cloud computing technology advances, increasing number of enterprises move their existing physical machine hosted applications to virtualized cloud environments. Since the control and coordination of the use of hardware such as I/O and memory access are quite different between a hypervisor and a native operating system, when measuring the resource usage of an application one must take into account those consumed by the virtualization system modules on behalf of the application. In other words, it is important to know what an application’s resource needs are prior to transitioning it to the virtual environment in the initial planning phase. Particularly to answer the question of how many resources must be provisioned to the application given the anticipated workload and the performance goal. In this work, we first study the execution flow in both environments and identify a set of multi-dimensional usage parameters including CPU, memory, disk I/O, and network I/O to capture all aspects of resource consumption of an application especially in a virtualized environment. A workload-performance-resource (WPR) model is proposed where resource usages of an application both in native and in virtual under different workloads and performance goal are collected and the Canonical Correlation Analysis (CCA) method is used to construct the many-to-many relationship between the native resource usage parameters and the virtual resource usage parameters. In the model, multiple relationship patterns are accounted to achieve good prediction accuracy. We note that the prediction errors were high when it moved across certain critical resource allocation boundaries and a single model cannot accurately characterize changes in application behavior. We then propose a continuous retraining scheme called a sliding window-based retraining model to revise the WPR model as the workload increases. The experimental results show that the CCA-based WPR model can accurately capture the complex multi-dimensional resource usage relationship between in native and in a virtualized environment. When the target workload is within the range in the training set, the prediction error rate is less than 5%. The sliding window-based retraining breaks and recaps to update the training set to reconstruct a new CCA-based WPR model. We can successfully control the prediction error rate under 10% as the complex behavior of resource usage of the application in its VM changes as the intensity of workload increases.

參考文獻


[16] D. Clark, "Understanding Canonical Correlation Analysis," Concepts and Techniques in Modern Geography No. 3, 1975
[2] B. J. Watson, M. Marwah, D. Gmach, Y. Chen, M. Arlitt, and Z. Wang, "Probabilistic Performance Modeling of Virtualized Resource Allocation," in Proceedings of the 7th International Conference on Autonomic computing, 2010, pp. 99-108.
[6] S. Dutta, S. Gera, A. Verma, and B. Viswanathan, "SmartScale: Automatic Application Scaling in Enterprise Clouds," in Proceedings of the 2012 IEEE 5th International Conference on Cloud Computing, 2012, pp. 221-228.
[7] S. Kundu, R. Rangaswami, K. Dutta, and M. Zhao, "Application Performance Modeling in a Virtualized Environment," in Proceedings of IEEE 16th International Symposium on High Performance Computer Architecture, 2012, pp. 1-10.
[10] Y. Chen, S. Iyer, X. Liu, D. Milojicic, and A. Sahai, "Translating Service Level Objectives to Lower Level Policies for Multi-tier Services," in Journal of Cluster Computing, Vol. 11 Issue 3, 2008, pp. 299-311.

延伸閱讀