摘要(英) |
Recent years Cloud computing is developed rapidly, and virtualization technology is also applied to various cloud environments and data centers. Virtual machine is based on hypervisor-based technology which is also the environment used by most enterprises to deploy applications. Virtual machine could be improved for hardware utilization and creating an isolated environment, however, it also causes additional cost overhead for hardware resource and performance.
In recent years, the Container-based virtualization has been risen rapidly. Container-based virtualization works at operating system level, the starting time is faster. Through container network, the application can be quickly deployed to different hosts in order to provide cluster service.
In this paper, I have implemented five different types of virtualization environments: Docker, KVM, VMware Workstation, Docker on KVM, Docker on VMware, and currently they are used by most enterprises to run web applications and then it provides a set of performance evaluation methods and conducting a series of experiments to evaluate the impact of different virtualization technologies on distributed web application cluster.
Experimental results show that container virtualization which is significantly faster than other virtualization environments in responding to connect requests and less additional hardware resource overhead. Compared with physical machine, Container virtualization causes about 5% performance overhead, and is followed by 21% of KVM. The experimental results also show that hypervisor-based virtualization will bring a lot of delay when the disk I / O reads frequently, and causes performance loss. Although running a container on top of virtual machine is a common case, according to experimental results it will bring a lot of performance overhead and responding delay. If enterprise needs to run applications that have strict requirements on performance and response time, it could be recommended to avoid running a container on top of virtual machine. |
參考文獻 |
[1] Mavridis, I. and H. Karatza, ”Performance and Overhead Study of Containers Running on Top of Virtual Machines”. in 2017 IEEE 19th Conference on Business Informatics (CBI),pp.32-38, 2017.
[2] Morabito, R., ”Power Consumption of Virtualization Technologies: An Empirical Investigation”. in 2015 IEEE/ACM 8th International Conference on Utility and Cloud Computing (UCC),pp.522-527, 2015.
[3] Barik, R.K., et al., ”Performance analysis of virtual machines and containers in cloud computing”. in 2016 International Conference on Computing, Communication and Automation (ICCCA),pp.1204-1210, 2016.
[4] Xie, X., P. Wang, and Q. Wang, ”The Performance Comparison of Native and Containers for the Cloud”. in 2018 International Conference on Smart Grid and Electrical Automation (ICSGEA),pp.378-381, 2018.
[5] Poojara, S.R., et al., ”Performance Analysis of Linux Container and Hypervisor for Application Deployment on Clouds”. in 2018 International Conference on Computational Techniques, Electronics and Mechanical Systems (CTEMS),pp.24-29, 2018.
[6] Á, K., ”Comparison of different Linux containers”. in 2017 40th International Conference on Telecommunications and Signal Processing (TSP),pp.47-51, 2017.
[7] Xavier, M.G., et al., ”Performance Evaluation of Container-Based Virtualization for High Performance Computing Environments”. in 2013 21st Euromicro International Conference on Parallel, Distributed, and Network-Based Processing,pp.233-240, 2013.
[8] Naik, N., ”Building a virtual system of systems using docker swarm in multiple clouds”. in 2016 IEEE International Symposium on Systems Engineering (ISSE),pp.1-3, 2016.
[9] Kumar, K. and M. Kurhekar, ”Economically Efficient Virtualization over Cloud Using Docker Containers”. in 2016 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM),pp.95-100, 2016.
[10] Cochrane, K., et al., Docker工作現場實戰寶典,初版,碁峰,2019年3月。
[11] ” kubernetes ” Accessed: July 10,2019. [Online]. Available: https://kubernetes.io/
[12] Burns, B., et al., Kubernetes:建置與執行,初版,歐萊禮,2018年5月。
[13] Zeng, H., et al., ”Measurement and Evaluation for Docker Container Networking”. in 2017 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC),pp.105-108, 2017.
[14] ” Docker Container Networks.” Accessed: July 10,2019. [Online]. Available: https://success.docker.com/article/networking
[15] ” Docker Networking Overview” Accessed: July 10,2019. [Online]. Available: https://docs.docker.com/network/
[16] Kumar, D. and A.F.F. Magloire, ”Hypervisor based performance characterization: XEN/KVM”. in 2017 2nd International Conference on Telecommunication and Networks (TEL-NET),pp.1-4, 2017.
[17] Yang, J. and Y. Lan, ”A Performance Evaluation Model for Virtual Servers in KVM-Based Virtualized System”. in 2015 IEEE International Conference on Smart City/SocialCom/SustainCom (SmartCity),pp.66-71, 2015.
[18] ” KVM Networking” Accessed: July 10,2019. [Online]. Available: https://www.linux-kvm.org/page/Networking
[19] ”QEMU” Accessed: July 10,2019. [Online]. Available: https://wiki.qemu.org/Main_Page
[20] ”libvirt” Accessed: July 10,2019. [Online]. Available: https://libvirt.org/docs.html
[21] 熊信彰,實戰雲端作業系統建置與維護:VMware vSphere 5.5 虛擬化全面啟動,第一版,碁峰,台灣,2014年9月。
[22] ”Nginx” Accessed: July 10,2019. [Online]. Available: https://nginx.org/en/docs/
[23] ”Amazon Elastic Container Service” Accessed: July 10,2019. [Online]. Available: https://aws.amazon.com/tw/ecs/
[24] ”Understanding the key differences between LXC and Docker” Accessed: July 10,2019. [Online]. Available: https://www.flockport.com/lxc-vs-docker/.
[25] Chelladhurai, J., P.R. Chelliah, and S.A. Kumar, ”Securing Docker Containers from Denial of Service (DoS) Attacks”. in 2016 IEEE International Conference on Services Computing (SCC),pp.856-859, 2016. |