A Survey of Virtual Machine Management in Edge Computing
Total Page:16
File Type:pdf, Size:1020Kb
A Survey of Virtual Machine Management in Edge Computing This article provides an overview of the industrial and research projects on virtual machine (VM) management in edge computing, focusing on the virtualization frameworks and virtualization techniques, the serverless management, and the security advantages and issues that virtualization brings to edge computing. By ZEYI TAO ,QI XIA,ZIJIANG HAO,CHENG LI ,LELE MA ,SHANHE YI, AND QUN LI ABSTRACT | Many edge computing systems rely on virtual impacted the contemporary computational patterns for machines (VMs) to deliver their services. It is challenging, both industrial and individual uses. Companies can benefit however, to deploy the virtualization mechanisms on edge from cloud computing by executing large batch-oriented computing hardware infrastructures. In this paper, we intro- tasks on cloud servers, and individual users can rely duce the engineering and research trends of achieving effi- on remote clouds to perform resource-intensive compu- cient VM management in edge computing. We elaborate on: tations for their client devices. Because cloud computing 1) the virtualization frameworks for edge computing developed has brought so many applications into reality, commer- in both the industry and the academia; 2) the virtualization cial cloud platforms, such as Amazon AWS [2], Microsoft techniques tailored for edge computing; 3) the placement Azure [3], and Google Cloud [4], have been successively and scheduling algorithms optimized for edge computing; and put into operation in recent years. 4) the research problems in security related to virtualization of Nevertheless, cloud computing suffers from a severe edge computing. problem when serving client devices at the edge of the Internet. Since cloud data centers usually reside at the core KEYWORDS | Algorithms; management; virtual machining. of the Internet, it is always the case that client devices have a long network distance to the remote clouds, which I. INTRODUCTION leads to significant network delay perceived by the end Since Amazon released its elastic compute cloud (EC2) [1] users. This is unacceptable for many application scenarios, product in 2006, cloud computing has become increasingly especially for latency-sensitive mobile-cloud and IoT-cloud important in people’s daily life. By providing elastic hard- applications, where the client devices are mobile devices ware resources, including processing resources, storage such as smartphones and Internet-of-Things (IoT) devices, resources, and networking resources, at the data centers respectively. residing at the core of the Internet, cloud computing In light of this situation, edge computing [5]–[7] (also enables a spectrum of applications that have profoundly known as fog computing [8], [9] and cloudlets [10], [11]) was proposed as an extension of cloud computing. By pro- viding hardware sources at the edge of the Internet, edge Manuscript received February 9, 2019; revised April 13, 2019 and June 20, 2019; computing serves client devices with much lower network accepted June 20, 2019. Date of publication July 25, 2019; date of current version August 5, 2019. This work was supported in part by the U.S. National latency than cloud computing, thereby greatly improving Science Foundation under Grant CNS-1816399. (Corresponding author: the user experience for delay-sensitive client-remote appli- Zeyi Tao.) Z. Tao, Q. Xia, Z. Hao, C. Li, L. Ma,andQ. Li are with the College of William cations. More importantly, edge computing has recently and Mary, Williamsburg, VA 23185 USA (e-mail: [email protected]; become a concept beyond merely an extension of cloud [email protected]; [email protected]; [email protected]; [email protected]; [email protected]). computing [8]. Indeed, edge computing is now frequently S. Yi is with VMware, Palo Alto, CA 94304 USA (e-mail: [email protected]). mentioned as an enabling technology of IoT [12], [13] Digital Object Identifier 10.1109/JPROC.2019.2927919 and is widely adopted by a range of rapidly develop- 0018-9219 © 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information. 1482 PROCEEDINGS OF THE IEEE | Vol. 107, No. 8, August 2019 Tao et al.: Survey of Virtual Machine Management in Edge Computing tion is the most widely adopted solution to this prob- lem. VMs and containers in the same specifications always produce the identical execution environ- ment regardless of the heterogeneity of the underly- ing hardware infrastructure. Therefore, applications developed for a particular set of VM specifications can be surely executed in an edge computing environment that provisions VM instances in those specifications. 2) Resource Abstraction: VMs and containers are not executed on bare metal; they are executed on hypervisors. Hypervisors manage the underlying hardware resources and provide emulated hardware devices for the VMs and containers running atop. By doing so, hypervisors effectively hide the hetero- geneity of the underlying hardware infrastructure, Fig. 1. Example architecture of edge computing. which greatly simplifies the development of cloud applications as well as the management of the hard- ware resources. ing applications, such as big data analytics [14], video 3) Isolation: VMs achieve hardware-level isolation; the surveillance [15]–[17], virtual reality [18]–[20], and aug- abnormal status of a VM such as a software failure mented reality (AR) [21]–[23]. will not affect the correctness (sometimes even the Fig. 1 shows an example architecture of edge com- performance) of the programs running in other VMs puting. As shown in Fig. 1, client devices are wire- running on the same host [25]. This feature is highly lessly connected to the level 1 edge nodes, which are desirable in edge computing because edge nodes Wi-Fi access points (APs) and cellular towers. Behind the are supposed to serve a number of end users and level 1 edge nodes are the level 2 edge nodes, which have execute many tasks simultaneously. In comparison, a longer network distance to the client devices than the containers only achieve operating system (OS)-level level 1 edge nodes. There is also a backend cloud behind isolation; in normal cases, a program running inside the level 2 edge nodes that resides at the core of the a container can only access the resources assigned to Internet. The client devices perceive lower delay when the that container. However, in abnormal cases, such as computations are done at the level 1 edge than at the when a container crashes or has been compromised, level 2 edge. On the other hand, the level 2 edge nodes the containers in problem may affect the entire host possess more powerful hardware than the level 1 edge machine [26], [27]. The primary advantage of con- nodes and can thus execute more computational tasks tainers is that they are more lightweight than VMs, simultaneously. Note that Fig. 1 merely shows a possible and the OS-level isolation that they achieve is usually architecture of edge computing. In other edge computing sufficient for edge computing. architectures, it is possible that there are only one level or more than two levels of edge nodes and that there is no Despite the advantages of adopting the virtualization backend cloud in the system. technology, edge computing has several characteristics that Generally, cloud computing is built on several funda- distinguish itself from cloud computing, which pose new mental technologies, including virtualization, distributed challenges to the management of VMs. We summarize such mass storage, and parallel programming models [24]. characteristics and the challenges they pose as follows. Among these technologies, virtualization plays an impor- 1) Sparse Distribution: Edge nodes are distributed more tant role in resource provisioning, task scheduling, and sparsely in a region than the cloud servers locating at computation sandboxing in cloud computing environ- the same data center. Therefore, it takes a longer time ments. Although built on less powerful hardware, edge to migrate VMs and containers in an edge computing computing faces similar challenges as cloud computing environment than in a cloud computing environment, in effectively managing the hardware resources. There- which poses severe challenges in providing seamless fore, edge computing also employs virtualization as one services for edge computing users. of its fundamental technologies. At a high level, the vir- 2) Limited Resources: Unlike cloud servers that possess tualization technology, no matter in the form of virtual conceptually infinite hardware resources, edge nodes machines (VMs) or containers, provides the following fea- usually possess limited hardware resources. There- tures that are critical in delivering flexible and reliable fore, each edge node can only support a limited edge computing services. number of VMs and containers, which makes it quite 1) Platform Independence: The hardware infrastructure challenging to schedule the VMs/containers in an of edge computing can be highly heterogeneous, edge computing environment. given that the edge nodes are possibly provided by 3) Limited Service Range: Each edge node only covers a multiple third parties and/or individuals. Virtualiza- limited service range via wireless media. Due to the Vol. 107, No. 8, August 2019 |PROCEEDINGS OF THE IEEE 1483 Tao et al.: Survey of Virtual Machine Management in Edge Computing mobility of end devices, VMs and