server virtualization and cloud computing
International Conference on Advances in Computing, Communication Control and Networking (ICACCCN2018)
ISBN: 978-1-5386-4119-4/18/$31.00 ©2018 IEEE 64
Virtualization in Cloud Computing- a Study
Manjeet Singh
Directorate of Education
Government of NCT of Delhi, India
E-Id: [email protected]
Abstract— The recent past have experienced tremendous
rise and popularity of technologies like cloud computing
and virtualization. Cloud computing is a construct that
allows us to access applications that actually reside at a
location other than your computer, most often, this will be
a distant data center. Many organizations have already
started implementing these technologies to further reduce
costs through improved resource utilization. Cloud
Computing and virtualization enable users to use
applications on internet and intranet. In Cloud computing
many of the services relies heavily on virtualized
hardware. Because of this, we carefully reviewed existing
virtual hardware services in order to both understand how
the process works and to find the service that is best suited
to Cloud computing and virtualization in different
situations.
Keywords—Cloud Computing; Virtualization; Virtual Machine;
Resource Utilisation; Data Center.
I. INTRODUCTION In Cloud computing, virtualization is the basis of
delivering Infrastructure as a Service (IaaS) that separates data, network, applications and machines from hardware constraints. Cloud computing is becoming popular among IT businesses due to its agile,flexible and cost effective services being offered at Software, Platform and In-frastructure level. Software as a Service (SaaS) allows users to access applications hosted by different vendors on Cloud via internet. Platform as a Service (PaaS) enables developers to code, test and deploy their applications on IaaS. In infrastructure as a Service (IaaS) model, Cloud provider‟s offer services such as computing, network, storage and databases via internet. IaaS is the base of all Cloud services with PaaS and SaaS both built upon it. The primary features of IaaS are elasticity and virtualization. Virtualization enables a single system to concurrently run multiple isolated virtual machines (VMs), operating systems or multiple instances of a single operating system (OS) [1].
Cloud Suite relies heavily on virtualized hardware. Because of this, we carefully reviewed existing virtual hardware services in order to both understand how the process works and to find the service that is best suited to Cloud Suite.
Virtualization is one of the oldest areas of interest in computer science. One of the most successful examples of virtualization is the Java Virtual Machine (J V M) [3]. Using the J V M allows the Java programming language to produce identical results regardless of the instruction set architecture
(ISA) that is used by the hardware platform. This is because, for all intents and purposes, the compiled Java code is running on the same machine hyphen albeit in a virtual setting. As long as a system has a J V M installed that can translate Java byte code into the appropriate ISA, then the results will be identical.
The Java virtual machine allows one piece of virtual hardware to be present on multiple discrete systems. Software like V M Ware allows multiple virtual hardware systems to be present on a single piece of physical hardware. Creating multiple virtualized hardware images on a single piece of physical hardware is one of the cornerstones of cloud computing. These concurrent virtual images are made possible by a hypervisor. Various types of virtualization exists such as Client virtualization, Storage virtualization and Server virtualization in cloud computing.
II. NEED, BENEFITS AND CONS OF VM MIGRATION
VM Migration is at the core of cloud computing. The needs and benefits of virtualization are as follows [2]:
Multiple Systems: With virtualization we can run multiple applications even on different operating system on the same physical hardware.
Power Management: We can improve the power utilization.
Improve Resource Utilization: The resource utilization is increased with the virtualization.
Load Balancing: Load can be distributed on available resources.
Maintenance and Servicing.
It improves system availability.
It is scalable, as per the requirement with time.
Security is provided by running multiple servers in isolation.
The major hurdle with the virtualization is that the network load during the migration increases which results in the increase of communication cost. One side effect of this is that performance of application running on virtual machine degraded.
III. VIRTUAL MACHINE PLACEMENT TECHNIQUES The various algorithms implemented earlier for VM
Placement in data centers are First Fit, Next Fit, Random Fit,
Authorized licensed use limited to: University of the Cumberlands. Downloaded on July 19,2021 at 16:02:13 UTC from IEEE Xplore. Restrictions apply.
International Conference on Advances in Computing, Communication Control and Networking (ICACCCN2018)
65
Least full First, Most Full First, First Fit Decreasing (Single Dimension), First Fit Decreasing Product, First Fit Decreasing Sum, Dot Product, Minimizing Angle. First fit, next fit and random fit algorithms are simple algorithms. These algorithms do not consider the resource capacities needed for placing virtual machine and not consider the resource consumptions in physical machines. Least full first, most full first, first fit decreasing (single dimension) algorithms are designed based on CPU capacity. First fit decreasing product, first fit decreasing sum and dot product algorithms are designed for multi dimensional resources. In these algorithms, physical/virtual machines‟ resource volumes are calculated using all resources capacities. In minimizing angle algorithm all resources are involved directly for placing virtual machines. In this algorithm different resource consumptions are balanced so that physical machines are minimized. This algorithm concentrates on balancing resources instead of maximizing resource usage of physical machines in each dimension. After all these Virtual Machine Placement algorithms, Modification of the Best Fit Decreasing (BFD) algorithm is implemented in cloud data centers for placement of Virtual Machines.
IV. SOME MAJOR CLOUD AND VIRTUALIZATION SERVICE PROVIDER
Google (Google App Engine)
Google App is great for all types of applications such as
Business, Consumer, Marketing, Mobile, and Website [4].
Easy to Build: By using the familiar development tool it will allow the user to buildup and get started
app quickly
Easy to Scale: It can serve any number of users and automatically responds to data traffic change.
Easy to Manage: Administer app through the centralize app web console always actives and
works, can‟t need software installation, server or
backup etc.
Easy to Storage: GAE advanced storage infrastructure gives benefits to companies to store
and access their data
Highly Scalable. Flexible Security and sharing. Fast data access. Reliable Storage Access.
Table 1: Comparison of service providers over various matrices
Google [4] Amazon [6] Microsoft [5]
Cloud
Provider Google App Engine Amazon EC2 Azure
Service
Mode PaaS /SaaS Provider PaaS/ SaaS Provider and IaaS PaaS/ SaaS Provider and IaaS
Develop
Support Web service
Web service;
Windows console application;
Virtual Instance
Virtual machine
Feature Easy to build; Easy to scale; Easy to
manage, inexpensive.
Elastic; Completely Controlled;
Flexible; Designed for use with
other Amazon Web Services
Reliable; Secure; Easy to Start.
Always up. Always on; Open;
Unlimited servers. Unlimited
storage. Powerful Capabilities.
Compute
model[65]
Predefined application structure and
framework; programmer-provided
“handlers” written in Python, all
persistent state stored in MegaStore
(outside Python code);
Automatic scaling up and down of
computation and storage; network
and server failover; all consistent
with 3-tier Web app structure
x86 Instruction Set Architecture
(ISA) via Xeon VM; Computation
elasticity allows scalability, but
developer must build the machinery,
or third party VAR such as Right
Scale must provide it
Microsoft Common Language
Runtime (CLR) VM; common
intermediate form executed in
managed environment;
Machines are provisioned based
on declarative
descriptions (e.g. which “roles”
can be replicated); automatic load
balancing
Storage MegaStore/BigTable
DynamoDB;SimpleDB;Rel ational
Database Service (RDS);
ElastiCache
Azure storage service
Support
SQL Cloud SQL
-
SQL Azure
Availability 100% 99.97% 99.95%
Free Usage Limitation usage in 1 GAE unite Micro-Linux-instance 3 month for free
Table 1 shows comparison of these service providers over various matrices.
Authorized licensed use limited to: University of the Cumberlands. Downloaded on July 19,2021 at 16:02:13 UTC from IEEE Xplore. Restrictions apply.
International Conference on Advances in Computing, Communication Control and Networking (ICACCCN2018)
66
Microsoft (Windows Azure)
Microsoft windows azure is an open cloud platform
which enable user to build deploy and manage applications
across global network of Microsoft datacenters. The user can
build applications by using any kind of language, tool or
framework.net, node.js, java, php, it give facility to its
customer that whatever language you want to install you can
install and use it [5].
Always up and always on: Microsoft window azure claim that its deliver services 99.95% to its users and
enable its users to build and run highly available
application without focusing on its infrastructure.
Open: MWA is open source, it give facilities to its customer for using any kind of language, framework,
or tool to build their applications.
Unlimited Server and Unlimited Storage: MWA enable its customer to easily scale their applications
to any size. Window Azure is available on multiple
datacenters around the world, which enable its users
to deploy their application near to their customers.
Powerful Capabilities: MWA can deliver flexible cloud computing platform which can assure any
application need. Its distributed caching and CDN
service allow user to minimize latency and deliver
great application performance anywhere in world [5].
Amazon EC2(aws.amazon.com)
Compute: Amazon is scale to meet user application demands whether it‟s one server or large cluster [6].
Amazon Elastic Compute Cloud (EC2). AEC is web service which provides resizable
compute capacity in cloud. Amazon EC2 web service
allows users to obtain and build up with minimal
friction. Amazon EC2 provides complete control to
their users for computing resources and let them run
on Amazons computing environment.
Networking: In networking Amazon customize and control user network resources, both inside and
outside the cloud [6].
V. VIRTUAL LABS
Creating a cloud based ad hoc laboratory system, such as Cloud Suite, requires a variety of different technologies. The primary technology that is necessary for Cloud lab is hardware virtualization. Fortunately there are numerous examples available to us. We will perform an examination of hardware virtualization services in general and a specific exploration of the services offered by Amazon.com. In addition to virtualization we will also explore: existing virtual lab environments, templating systems, remote storage solutions, and finally, A P Is and Frame Works [7].
i. Amazon.com Elastic Compute Cloud
On August 25, 2006, Jeff Bezos announced the limited beta of Amazon Elastic Compute Cloud [8], referred to as Amazon E C 2. Amazon E C 2 is a service that allows users to, essentially, rent computational resources on an as needed basis. This type of service is made possible by using the Xen hypervisor, Xen allows Amazon E C 2 to create Virtual
Private Servers as demand requires. These virtual servers make use of operating systems that have been optimized for paravirtualization. Once the end user has customized the virtual machine to their liking they are then able to save it as an Amazon Machine Image, or A M I.
An A M I is a system image that has been created to be used with E C 2. Users may customize these A M Is with their own software packages allowing an A M I to be tailored for any task. The Amazon Simple Storage Service (S 3) [9] is used extensively in the code written for Cloud Suite. S 3 allows a user to upload and download files using H T T P requests. Amazon Simple Storage Service, like the rest of Amazon Web Services, is not free semicolon however at the time of writing, Amazon offers a free tier of service available for the one year [9].
Amazon, and various 3rd parties, provide S D Ks that allow developers to interact with Amazon Web Services. The framework for Cloud Suite is written using S D Ks for P H P, Python (Boto) and Unix forward slash Linux command line. However S D Ks exists for multiple platforms and languages. The provided S D Ks greatly ease interaction with the cloud services provided by Amazon.
ii. Google Compute Engine
Amazon is far from the only available option for cloud services. Google recently announced „Google Compute Engine‟ [10] , a service similar to Amazon E C 2, in addition to the long standing Google App Engine. In the next section we will take a closer look at cloud services offered by providers other than Amazon.com.
iii. Heroku
Heroku {11] deservers special consideration because it is one of the best examples of a platform for executing arbitrary programs in the cloud. Heroku allows the end user to develop an application and leave the running of that application up to Heroku. The developer pushes code to Heroku using the Git version control system. Once the code is present, Heroku relies upon H T T P requests to interface with the client application.
iv. Google App Engine
Google App Engine (G A E) [12] is another service similar to Heroku semicolon however, Google App Engine places a number of restrictions on what code developers may use. Unlike an Infrastructure as a Service provider, G A E places limits on what code may be executed as well as only allowing the proprietary Google Query Language as a data store.
v. Eucalyptus
Extensive research on cloud technology has been performed at University of California, Santa Barbara (U C S B). Two of the most well known products of that research are Eucalyptus and App Scale.
Eucalyptus is an open source emulator for Amazon E C 2 that can be run on local clusters square [13] . Since the initial release of Eucalyptus, it has grown to become a commercial success, and is included in the Ubuntu operating system.
vi. App Scale
Authorized licensed use limited to: University of the Cumberlands. Downloaded on July 19,2021 at 16:02:13 UTC from IEEE Xplore. Restrictions apply.
International Conference on Advances in Computing, Communication Control and Networking (ICACCCN2018)
67
AppScale is an open source implementation of several cloud A P Is, including Google App Engine. App Scale can be deployed over Amazon E C 2, Eucalyptus, or an Ubuntu image. App Scale uses virtualization to provide a uniform experience across multiple cloud platforms.
vii. Coursera - Online Education
With the growth of high speed internet access to distance learning has become increasingly more accessible. In addition to universities supplementing their courses with online offerings, many universities are also making classes available online for free. Coursera is a central location where those seeking to improve their education may participate in free online classes from sixteen universities including: Caltech, Stanford, and Princeton. Additionally many universities have begun offering free classes online for no credit. One such offering from University of California, Berkley made use of Heroku to allow students to publish a web based application and see results in real time. The Massachusetts Institute of Technology also offers free online courses. It is important to note that these online courses typically do not confer any sort of degree or certificate, Coursera being notable in that some of it „courses do offer an electronic certificate of completion [14]. Courses offered online could make great use of a service like Cloud Suite to provide their students with an interactive lab component.
viii. Khan Academy
Khan Academy is a not for profit online educational resource. Khan Academy offers videos explaining a variety of topics. In addition to videos Khan Academy also offers a web based set of tools for developing mathematical proficiency. In late 2012 Khan Academy introduced Computer Science curriculum that offers programming instruction and demonstration. The programing curriculum is based on the Java Script language and is overseen by John Resig [15]. The program is designed to demonstrate the fundamentals of computer science to someone with little to no experience.
ix. University of Hawaii Virtual Lab
In 2007 the Department of Educational Technology at the University of Hawaii at Mano published a paper detailing an experiment where an online biology class made use of a C D hyphen ROM based virtual wet lab. The study compared the use of a virtual lab to what the study referred to as a „face to face‟ lab. The data analysis showed that, while students found the virtual labs to be useful, face – to -face lab time was more valuable to the overall learning experience than a purely computer-based lab. The study was primarily focused on the effectiveness of the virtual lab and did not give great detail on the technology [16].
x. Navy Virtual Lab
The Naval Postgraduate School (N P S) [17] has developed a distance learning solution that allows non - resident students to perform signal processing laboratory assignments. The Electrical and Computer Engineering department has developed an innovative mix of hardware and software to allow students to access lab equipment regardless of their location. The collection of signal generators and field programmable gate arrays allow students to perform experiments in real time.
VI. CONCLUSION
Cloud computing is basically a framework that allows us to access applications that actually reside at a location other than your computer. Virtualization is a technique to provide abstraction between the hardware and software of a computer system. In virtualization we create a virtual version of a resource (generally computer system or application running on it). The virtualization and cloud computing makes the resources available to a remote location. Some resources are shared between multiple users and accessed at the same time. The technique uses the resource sharing and increase the system utilization.
The Computer is virtualized in a clustered computing environment controlled by Cloud computing to fully utilize the computing and storage. The cloud will provide dynamic resource allocation to ensure effective system utilization through carefully monitoring of resource workload and available physical resources, and providing managed solutions on a continual basis. The most important aspect of virtualization is to develop a platform that students can access remotely without time and location constraints. The Cloud provides a segregated virtual environment without affecting any system outside of the cloud as well as other virtual systems within the cloud.
REFERENCES [1] Security Aspects of Virtualization in Cloud Computing. Available from:
https://www.researchgate.net/publication/273950406_Security_Aspects_ of_Virtualization_in_Cloud_Computing
[2] R M Sharma The impact of Virtualization in Cloud Computing International Journal of Recent Development in Engineering and Technology Website: www.ijrdet.com (ISSN 2347-6435(Online) Volume 3, Issue 1, July 2014).
[3] Oracle “The Structure of the Java Virtual Machine” http: // docs .oracle .com / javase / jvms / se7 / html / jvms - 2.html
[4] “Google cloud services – App Engine”. [Online]. Available: http://www.google.com/enterprise/cloud/appengine/.
[5] “Windows Azure: Cloud Computing, Cloud Services , Cloud Application Development”. [Online]. Available: http://www.windowsazure.com/en-us/.
[6] “Amazon Web Services”. [Online]. Available: http://aws.amazon.com/.
[7] Drew Alex C, Cloud Suite- Ad Hoc Laboratories Using Cloud Resource, California State University, Channel Island.
[8] EGI “European Grid Infrastructure” n.d. Web. http:// www.egi.eu/about/
[9] Amazon Web Services “Amazon S3 Pricing” http://aws.amazon.com/s3/
[10] Google Cloud Platform “Google Compute Engine” http cloud.google.com/products /compute - engine .html.
[11] Robinson, Tom. “Re: How does Heroku Work” http://www.quora.com/Scalability/.
[12] Google Developers “Google App Engine General Questions” https:// developers .google .com / appengine / kb / general.
[13] Eucalyptus “Why Eucalyptus” http:// www.eucalyptus.com / why – eucalyptus.
[14] Coursera, “Support Center” http:// help.coursera.org/ customer/ portal/ articles / 557884 - will-each-class-that-i-complete – 02.
[15] Kahn Academy. “Talks and Interviews” http:// www.khanacademy.org/talks-and-interviews/v/khan-academy- computer-science-launch.
[16] Stuckey - Mickell, Tracey, Stuckey - Danner, Bridget, Taylor, Brandon. “ Virtual Labs in the Online Perceptions and Implications for Policy and Practice “ , TCC 2007 Proceedings<http: / / etec.hawaii.edu / proceedings / 2007 / stuckey.pdf greater than sign.
[17] Cristi, Roberto. “ EC3400 Digital Signal Processing FFPGA Laboratory “ http: / / faculty.nps.edu / dl / eo3404 dl lab / n.d.
Authorized licensed use limited to: University of the Cumberlands. Downloaded on July 19,2021 at 16:02:13 UTC from IEEE Xplore. Restrictions apply.