题名

基於OpenStack動態負載平衡機制設計與實作

并列篇名

The Design and Implementation of Dynamic Load Balancing Mechanisms based on OpenStack

作者

吳豐名

关键词

動態負載平衡 ; 模糊理論 ; OpenStack ; Docker ; 雲端服務 ; Dynamic Load Balance ; Fuzzy ; OpenStack ; Docker ; Cloud Service

期刊名称

臺中科技大學資訊工程系碩士班學位論文

卷期/出版年月

2016年

学位类别

碩士

导师

陳世穎

内容语文

繁體中文

中文摘要

隨著電腦硬體與網路頻寬的蓬勃發展,使得雲端的相關技術日漸普及,越來越多的科技大廠紛紛提供雲端服務,造成雲端系統面臨龐大的使用者同時存取雲端服務,因此如何提供高可靠性且不中斷服務的雲端服務,儼然成為雲端服務提供者在維運服務上的極大挑戰。而隨著雲端技術的發展,容器(container)技術逐漸受到重視,容器(container)為輕量級虛擬化的技術且效能接近原生,而Docker對容器進行封裝使其更容易操作,因此大幅地簡化雲端服務的部署與環境問題。綜合上述,目前大都是以負載平衡解決雲端服務面臨大量使用者存取的問題,負載平衡提高雲端服務穩定性與可靠性,使雲端服務可以彈性擴充與更好的容錯性等。因此本論文設計一適用於OpenStack雲端系統的動態負載平衡機制,並且使用模糊理論來達到動態負載平衡,使其能隨著OpenStack雲端系統提供的雲端服務之負載而改變其權重值,進行更有效的負載分配。最後驗證本論文所設計的雲端動態負載平衡機制(Cloud Dynamic Load Balance Mechanism, CDLBM)與動態模糊理論負載平衡演算法(Dynamic Fuzzy Load Balance, DFLB)能實際應用於OpenStack雲端平台以及Docker叢集環境中,並進行效能的分析與驗證。實驗顯示在壓力測試時,DFLB比輪詢排程法、權重輪詢排程法與Cloud Load Balance Algorithm降低10-40%的回應時間;而在效能測試下,DFLB比輪詢排程法、權重輪詢排程法與Cloud Load Balance Algorithm降低11-22%的回應時間。

英文摘要

Along with booming development in computer hardware and internet bandwidth, technologies related to cloud computing gets more popular, therefore, more and more big technology enterprises started to provide cloud services, which lead to simultaneous access of the cloud services in the cloud system by massive users, therefore, how to provide reliable and uninterrupted cloud service has become a big challenge in the operation and service aspects of the cloud service provider. Along with the development in cloud technologies, container technology has caught more and more people’s attention, container has now become lighter and virtualized, and its effectiveness gets closer to native one. Moreover, Docker has packaged on the container to make is easier to be operated, therefore, the deployment and environment issue of cloud service has been greatly simplified. To summarize, it was clear that presently, load balance was mostly used to solve the issue of access by massive users faced by cloud service, and load balance can enhance the stability and reliability of cloud service, consequently, cloud service can be expanded more flexibly and can have better fault tolerance. Therefore, in this paper, a dynamic load balance mechanism suitable for OpenStack cloud system was designed, meanwhile, fuzzy theory was used to achieve dynamic load balance so that it can, along with the load of cloud services provided by OpenStack cloud system, change its weighting, and more effective load distribution can be conducted. Finally, the actual application of Cloud Dynamic Load Balance Mechanism (CDLBM) and Dynamic Fuzzy Load Balance (DFLB) algorithms designed in this paper in OpenStack cloud platform and Docker cluster environment was verified, meanwhile, efficiency analysis and verification was also conducted. The experimental results showed that under pressure test, DFLB can, as compared to Round-Robin Scheduling, Weighted Round-Robin Scheduling and Cloud Load Balance Algorithm, reduce the response time by 10-40%; under efficiency test, DFLB can, as compared to Round-Robin scheduling method and weighting Round-Robin scheduling method and Cloud Load Balance Algorithm, reduce the response time by 11-22%.

主题分类 基礎與應用科學 > 資訊科學
資訊與流通學院 > 資訊工程系碩士班
参考文献
  1. [4] Mell, P., and Grance, T. (2011). The NIST definition of cloud computing.
    連結:
  2. [9] Sefraoui, O., Aissaoui, M., and Eleuldj, M. (2012). OpenStack: toward an open-source solution for cloud computing. International Journal of Computer Applications, 55(3).
    連結:
  3. [12] Litvinski, O., and Gherbi, A. (2013). Experimental evaluation of OpenStack compute scheduler. Procedia Computer Science, 19, 116-123.
    連結:
  4. [17] Mohamed, M., Yangui, S., Moalla, S., and Tata, S. (2011, June). Web service micro-container for service-based applications in cloud environments. InEnabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), 2011 20th IEEE International Workshops on (pp. 61-66). IEEE.
    連結:
  5. [20] Seo, K. T., Hwang, H., Moon, I., Kwon, O., and Kim, B. (2014). Performance comparison analysis of linux container and virtual machine for building cloud.Advanced Science and Technology Letters, 66, 105-111.
    連結:
  6. [22] Liu, H., and Wee, S. (2009). Web server farm in the cloud: Performance evaluation and dynamic architecture. In Cloud Computing (pp. 369-380). Springer Berlin Heidelberg.
    連結:
  7. [24] Bernstein, D. (2014). Containers and cloud: From lxc to docker to kubernetes.IEEE Cloud Computing, (3), 81-84.
    連結:
  8. [25] Lin, C. C., Chin, H. H., and Deng, D. J. (2014). Dynamic multiservice load balancing in cloud-based multimedia system. Systems Journal, IEEE, 8(1), 225-234.
    連結:
  9. [30] Shimonishi, H., Yoshida, M., Fan, R., and Suzuki, H. (1997, November). An improvement of weighted round robin cell scheduling in ATM networks. In Global Telecommunications Conference, 1997. GLOBECOM'97., IEEE (Vol. 2, pp. 1119-1123). IEEE.
    連結:
  10. [31] Teo, Y. M., and Ayani, R. (2001). Comparison of load balancing strategies on cluster-based web servers. Simulation, 77(5-6), 185-195.
    連結:
  11. [32] 陳信宏, and 包蒼龍. (2009). 網頁伺服器負載平衡架構效能之比較.
    連結:
  12. [34] Lin, C. C., Chin, H. H., and Deng, D. J. (2014). Dynamic multiservice load balancing in cloud-based multimedia system. Systems Journal, IEEE, 8(1), 225-234. ISO 690
    連結:
  13. [36] Chen, S. L., Chen, Y. Y., and Kuo, S. H. (2016). CLB: A novel load balancing architecture and algorithm for cloud services. Computers and Electrical Engineering.
    連結:
  14. [37] 張嘉宏. (2015). 具備負載平衡機制的虛擬機器叢集式系統的設計與實作. 暨南大學資訊管理學系學位論文, 1-58.
    連結:
  15. [39] 陳裕升. (2014). 具負載平衡與容錯機制的雲端魯班陽宅評估系統. 中興大學資訊科學與工程學系所學位論文, 1-44. ISO 690
    連結:
  16. [43] 鍾家賢. (2008). 網格資源運算效能分析模型設計之研究. 中國文化大學商學院資訊管理研究所學位論文
    連結:
  17. [44] Foster, I., Kesselman, C., and Tuecke, S. (2001). The anatomy of the grid: Enabling scalable virtual organizations. International journal of high performance computing applications, 15(3), 200-222.
    連結:
  18. [47] Pääkkönen, P., and Pakkala, D. (2015). Mechanism and architecture for the migration of service implementation during traffic peaks. Service Oriented Computing and Applications, 1-17.
    連結:
  19. [50] Singh, B., and Srinivasan, V. (2007, June). Containers: Challenges with the memory resource controller and its performance. In Ottawa Linux Symposium (OLS) (p. 209).
    連結:
  20. [51] O'Hara, J. (2007). Toward a commodity enterprise middleware. Queue, 5(4), 48-55.
    連結:
  21. [54] Mamdani, E. H., and Assilian, S. (1975). An experiment in linguistic synthesis with a fuzzy logic controller. International journal of man-machine studies, 7(1), 1-13.
    連結:
  22. [55] Mamdani, E. H. (1974). Applications of fuzzy algorithms for simple dynamic plants. IEE. v121, 1585-1588.
    連結:
  23. [1] Ostermann, S., Iosup, A., Yigitbasi, N., Prodan, R., Fahringer, T., and Epema, D. (2009). A performance analysis of EC2 cloud computing services for scientific computing. In Cloud computing (pp. 115-131). Springer Berlin Heidelberg.
  24. [2] 薛義誠, 李世華, and 游文人. (2012). 雲端科技在教育上的運用.
  25. [3] NIST, http://www.nist.gov/, August 2016(last accessed:2016/8/14)
  26. [5] Gong, C., Liu, J., Zhang, Q., Chen, H., and Gong, Z. (2010, September). The characteristics of cloud computing. In Parallel Processing Workshops (ICPPW), 2010 39th International Conference on (pp. 275-279). IEEE.
  27. [6] Caron, E., Toch, L., and Rouzaud-Cornabas, J. (2013). Comparison on OpenStack and OpenNebula performance to improve multi-Cloud architecture on cosmological simulation use case.
  28. [7] Wen, X., Gu, G., Li, Q., Gao, Y., and Zhang, X. (2012, May). Comparison of open-source cloud management platforms: OpenStack and OpenNebula. InFuzzy Systems and Knowledge Discovery (FSKD), 2012 9th International Conference on (pp. 2457-2461). IEEE.
  29. [8] Wuhib, F., Stadler, R., and Lindgren, H. (2012, October). Dynamic resource allocation with management objectives—Implementation for an OpenStack cloud. In 2012 8th international conference on network and service management (cnsm) and 2012 workshop on systems virtualiztion management (svm) (pp. 309-315). IEEE.
  30. [10] Cacciatore, K., Czarkowski, P., Dake, S., Garbutt, J., Hemphill, B., Jainschigg, J., ... and Whitaker, B. E. (2015). Exploring Opportunities: Containers and OpenStack. OpenStack White Paper, 19.
  31. [11] OpenStack Software Overview, https://www.openstack.org/software/, May 2016(last accessed:2016/5/29)
  32. [13] Kumar, Rakesh, et al. "Open source solution for cloud computing platform using OpenStack." International Journal of Computer Science and Mobile Computing 3.5 (2014): 89-98.
  33. [14] Barkat, A., dos Santos, A. D., and Ho, T. T. N. (2014, September). Open stack and cloud stack: Open source solutions for building public and private clouds. InSymbolic and Numeric Algorithms for Scientific Computing (SYNASC), 2014 16th International Symposium on (pp. 429-436). IEEE.
  34. [15] Sahasrabudhe, S. S., and Sonawani, S. S. (2014, October). Comparing openstack and VMware. In Advances in Electronics, Computers and Communications (ICAECC), 2014 International Conference on (pp. 1-4). IEEE. ISO 690
  35. [16] Tarreau, W. (2012). HAProxy-the reliable, high-performance TCP/HTTP load balancer. 2011-8)[2013-4]. http://haproxy. lwt. eu.
  36. [18] Xavier, M. G., Neves, M. V., Rossi, F. D., Ferreto, T. C., Lange, T., and De Rose, C. A. (2013, February). Performance evaluation of container-based virtualization for high performance computing environments. In Parallel, Distributed and Network-Based Processing (PDP), 2013 21st Euromicro International Conference on (pp. 233-240). IEEE.
  37. [19] Fink, J. (2014). Docker: A software as a service, operating system-level virtualization framework. Code4Lib Journal, 25.
  38. [21] Felter, W., Ferreira, A., Rajamony, R., and Rubio, J. (2015, March). An updated performance comparison of virtual machines and linux containers. In Performance Analysis of Systems and Software (ISPASS), 2015 IEEE International Symposium On (pp. 171-172). IEEE.
  39. [23] Turnbull, J. (2014). The Docker Book. Lulu. com.
  40. [26] 陳建宏. (2003). 伺服器叢集系統的允入控制與負載平衡機制 (Doctoral dissertation, 撰者).
  41. [27] Arpaci-Dusseau, R. H., and Arpaci-Dusseau, A. C. (2014). Operating systems: Three easy pieces. Arpaci-Dusseau Books. ISO 690
  42. [28] Ala'a, Z., Doulat, A. S., and Khamayseh, Y. M. (2011). Performance evaluation of different scheduling algorithms in WiMax. International Journal of Computer Science, Engineering and Applications, 1(5), 81.
  43. [29] Hahne, E. L. (1986). Round Robin Scheduling for Fair Flow Control in Data Communication Networks (No. LIDS-TH-1631). MASSACHUSETTS INST OF TECH CAMBRIDGE LAB FOR INFORMATION AND DECISION SYSTEMS.
  44. [33] 蘇建郡.(2004). 支援SNMP及動態負載平衡之叢集式防火牆設計.
  45. [35] Wen, H., Hai-ying, Z., Chuang, L., and Yang, Y. (2011, August). Effective load balancing for cloud-based multimedia system. In Electronic and Mechanical Engineering and Information Technology (EMEIT), 2011 International Conference on (Vol. 1, pp. 165-168). IEEE.
  46. [38] Zhang, W. (2000). Linux Virtual Server for Scalable Network Services, Ottawa Linux Symposium 2000.
  47. [40] 張婉瑜. (2012). 雲端服務虛擬平台中可適性負載平衡機制之設計與實作. 高雄應用科技大學電子工程系學位論文
  48. [41] Karimi, A., Zarafshan, F., Jantan, A., Ramli, A. R., and Saripan, M. (2009). A new fuzzy approach for dynamic load balancing algorithm. arXiv preprint arXiv:0910.0317.
  49. [42] Kun-Ming, V., Chou, Y., and Wang, Y. (2004). A fuzzy-based dynamic load-balancing algorithm. Journal of Information, Technology and Society, 4(2), 55-63.
  50. [45] Flores, H., Srirama, S. N., and Paniagua, C. (2011, December). A generic middleware framework for handling process intensive hybrid cloud services from mobiles. In Proceedings of the 9th International Conference on Advances in Mobile Computing and Multimedia (pp. 87-94). ACM.
  51. [46] Flores, H., and Srirama, S. (2013, June). Mobile cloud messaging supported by xmpp primitives. In Proceeding of the fourth ACM workshop on Mobile cloud computing and services (pp. 17-24). ACM.
  52. [48] Gupta, P. R., Taneja, S., and Datt, A. Using Heat and Ceilometer for providing Autoscaling in OpenStack.
  53. [49] Oberheide, J., Veeraraghavan, K., Cooke, E., Flinn, J., and Jahanian, F. (2008, June). Virtualized in-cloud security services for mobile devices. In Proceedings of the First Workshop on Virtualization in Mobile Computing (pp. 31-35). ACM.
  54. [52] Richardson, A. (2012). Introduction to RabbitMQ. Google UK, available at http://www.rabbitmq.com/resources/google-tech-talk-final/alexis-google-rabbitmq-talk. pdf, retrieved on Mar, 30, 33.
  55. [53] 曾金豐. (2014). 以模糊理論建構一個高效能之計算環境-以 IC 設計公司為例. 中華大學資訊管理學系學位論文
  56. [56] 模糊田口法於多重品質特性製程上之研究-以 LCD 的光片製程為例. 2008.
  57. [57] 袁學海, 李洪興, and 孫凱彪. (2011). 基於參數單點模糊化方法的模糊系統及其逼近能力. 電子學報, 39(10), 2372-2377.
  58. [58] Ross, T. J. (2009). Fuzzy logic with engineering applications. John Wiley and Sons.
  59. [59] PHP Wikipedia, https://en.wikipedia.org/wiki/PHP, August 2016(last accessed:2016/8/14)
  60. [60] TIOBE Index, http://www.tiobe.com/tiobe_index, July 2016(last accessed:2016/7/4)
  61. Apache JMeter, http://jmeter.apache.org/, August 2016(last accessed:2016/8/14)