FULLTEXT02
FULLTEXT02
FULLTEXT02
LIST OF FIGURES
Name of the Figure
Page No.
Figure 1.1: Cloud Computing Architecture 1
Figure 1.2: Dynamic Resource Provisioning by VMP
3
Architecture
Figure 1.3: Problem Under Provision & Over Provision 7
Figure 1.4: OVMP Algorithm Proposed 9
Figure 2: Optimization Techniques 20
Figure 3.1: Activity Client 32
Figure 3.2: Activity Server 33
Figure 3.3: Use Case 42
Figure 3.4: Sequence 43
Figure 3.5: Class 44
Figure 3.6: Components of Client 45
Figure 3.7: Components of Server 46
Figure 3.8: ER Diagrams 46
i
Chapter 1
INTRODUCTION
1
organizations do not need to make any large scale capital expenditures on
their own. Organization need to pay only as much for the computing
infrastructure as they use from the vendors whose hosting the services.
The billing model of cloud computing is similar to the electricity payment
that do on the basis of usage. The vendor is used for providing the cloud
computing services and organization is used for users' of cloud computing
services.
2
There are a multitude of parameters and considerations (e.g.,
performance, cost, locality, reliability and availability) in the decision
of where, when and how to place and reallocate virtualized resources
in cloud environments. Some of the considerations are aligned with
one another while others may be contradictory.
This work investigates challenges involved in the problem of VM
scheduling in cloud environments, and tackles these challenges using
approaches ranging from combinatorial optimization techniques and
mathematical modeling to simple heuristic methods.
Note that the term scheduling in the context of this thesis is referred
to as the initial placement of VMs and the readjustment of placement
over time.
3
Scientific contributions of this thesis include modeling for dynamic
cloud scheduling via VM migration in multi-cloud environments, cost-
optimal VM placement across multiple clouds under dynamic pricing
schemes, modeling and placement of cloud services with internal
structure, as well as to optimize VM placement within data centers for
predicable and time-constrained load peaks.
Virtualization is the creation of a virtual version of any of the
resources like a server, an operating system, a storage device or network
resources. It broadly describes the separation of a resource or request for a
service from the physical entity.
4
which a pool of computing resources is available to users (called cloud
consumers) via the Internet. Computing resources such as software,
processing power, storage and network bandwidth are represented to cloud
consumers as the accessible public utility services. In IaaS model,
virtualization technologies can be used to provide resources to cloud
consumers. They can specify the required software stack, e.g., operating
systems and applications; then package them all together into Virtual
Machines (VMs).
5
and I/O bandwidth. The declared volume details are virtual instances on
EC2. To address fault- tolerance, EC2 distributes its virtual instances
across several data centers, each data center is called as an availability
zone. To execute in different data centers, two virtual instances are
running on different zones. There are six available zones, four are located
in U.S. and the other two are in Europe. Further, to determine that the
similar performance characteristics appear on different types of virtual
instances as well.
6
managed very productively and hence must pave the way for optimizing
the energy-performance trade-off.
This study mainly considers IaaS as it has been recognized as the most
promising model. Such Iaas represented by a large scale data center
comprising large number of heterogeneous physical node. Each node is
characterized by CPU performance, disk storage, amount of RAM and
network bandwidth. The proposed study architecture is adopted from
enhancing the efficient management of workload by assigning them in a
proper manner. Our proposed work is similar to the work done but we also
consider energy efficiency in our work which is not being considered in
Stochastic programming was applied to solve problems and even in
resource provisioning; however, to the best of our understanding it has
never been studied in energy efficiency for VM consolidation. The
dynamic VM consolidation problem can be divided into four problems.
7
Figure 1.3: Problems in Under provisioning and Over provisioning
The following are the main set of possibilities which lay the foundation
for taking up this project:
8
Each of foretasted sub-problems must operate in better optimized
way.
OVMP algorithm
9
Figure 1.4: OVMP algorithm purpose
The upcoming chapters of the thesis are organized in the following way:
Introduction of the product and project as detailed in Chapter-1. In
Chapter - 2 we present a literature survey. Chapter - 3 provides an
introduction of the proposed algorithm. Chapter - 4 shows the
experimental result. The Chapter 5 provides the summary of the study and
concludes the paper. and future work by a list of references and the papers
10
11
Chapter 2
LITERATURE REVIEW
12
resources, usually used for solving problems that may require
thousands of processor cores or hundreds of terabytes of storage,
while cloud technologies are driven by economies of scale, focusing
on integrating resource capacities to the public in the form of a
utility and enabling access to leased resources (e.g., computation
power, storage capacity, and software services) at prices comparable
to in-house hosting. The distinctions between these two paradigms
are sometimes not clear as they share the same vision. An in-depth
comparison between girds and clouds is beyond the scope of this
thesis, but for details there are a number of valuable works available
13
II. Platform as a Service (PaaS)
14
2.2. Cloud Computing Scenarios and Roles
15
Compute Cloud (EC2) [3], GoGrid, and Rackspace. To simplify
the application delivery for consumers, some infrastructure
providers go a step further with the PaaS model, i.e., in addition
to supporting application hosting environments, these
infrastructure providers also provide development infrastructure
including programming environment, tools, configuration
management, etc. Some notable providers of this type include
Google App Engine, Salesforce.com, and AppFog. In academia,
some on-going projects such as ConPaaS and 4CaaSt are
developing new PaaS frameworks that enable flexible
deployment and management of cloud-based services and
applications.
II. Service Providers (SPs) use either their own resources (taking
both the SP and IP roles) or resources leased from one or
multiple IPs to deliver end-user services to their consumers. It
can be a telco service provider, an internet service provider
(e.g., LinkedIn, etc. These services can be potentially
developed using PaaS tools as mentioned previously. In
particular, when cloud resources are leased from external IPs,
SPs are not in charge of maintaining the underlying hardware
infrastructures. Without having direct control over the low-
level hardware resources, SPs can use performance metrics
(e.g., response time) to optimize their applications by scaling
their rented resources from IPs, providing required Quality of
Service (QoS) to the end users.
16
III. Cloud End Users who are the consumers of the services
offered by SPs and usually have no concerns on where and
how the services are hosted.
2.3. Virtualization
Virtualization is a technology that separates computing functions and
implementations from physical hardware. Early related research dates
back to 1960s and the joint work of IBM TJ Watson and MIT on the
M44/44X Project. Now virtualization has become the foundation of
Cloud Computing, since it enables isolation between hardware and
software, between users, and between processes and resources. These
isolation problems have not been well solved by traditional operating
systems. With virtualization, software capable of execution on the raw
hardware can be run in a virtual environment. Depending on the layer
where the virtualization occurs, two major categories of virtualization
can be identified (as illustrated in Figure 1):
Hypervisor- based Virtualization. This technology is based on a
layer of software (i.e., the hypervisor) that manages the resources of
physical hosts and provides the necessary services for the VMs to run.
Instead of direct access to the underlying hardware layer, all VMs
request resources from the hypervisor that is in charge of resource
allocation and scheduling for VMs. There are two major types of
implementations of this kind of virtualization, briefly described as
follows.
19
obtain a suitable VM-PM mapping. Both management tasks are
regarded as constraint satisfaction problems. More practical aspects
can be taken into consideration by extending the constraints in
these problems.
Stochastic integer programming: Because the future demand of
VM for providing network services is uncertain, the stochastic
integer programming technique is used to predict a suitable VM-
PM mapping.
Simulated annealing optimization: Have proposed a dynamic
runtime mapping framework that adopts a simulated annealing
optimization algorithm to map VMs onto a small set of PMs in
order to minimize power consumption without significant system
degradation.
20
Following are some of the optimization criteria followed while
provisioning resources in cloud environment.
21
dynamic programming, benders decomposition and average approximation
are used for provisioning resources dynamically.
I. Genetic algorithm
24
3. DESIGN AND IMPLEMENTATION
• Costs. The price model was dominated by fixed prices in the early
phase of cloud adoption. However, cloud market trends show that
dynamic pricing schemes utilization is increasing. Deployment
costs decrease by dynamically placing services among clouds or
by dynamically reconfiguring services (e.g., resizing VM sizes
without harming service performance) become possible. In
addition, internal implicit costs for VM scheduling, e.g.,
interference and overhead that one VM causes on other
concurrently running VMs on the same physical host, should also
be taken into account.
The cloud providers supply a pool of resources to the user in the form
of virtual machines. These VM can be divided into a set of classes
with each class representing a different application type with the goal
of minimizing all the costs at the provider’s end by meeting the
demands of users. The demands and prices can't be fixed. This value
can be estimated based on a distribution curve. SIP is found to be
useful for solving the problem of VM placement.
PROPOSED ALGORITHM
Parameters are denoted as follows:
34
vi(d) denotes the number of required VMs in class Vi if demand d
is realized.
tj(p), tj(s), tj(n ) -the maximum capacity of corresponding resource
which cloud provider Pj can supply to user.
35
N denotes the number of cloud providers
Step1: first get the sample reservation cost from cloud
provider
Step2: initialize the cost for basic variables like Cijk(r) (ω)
for i = 1,2,... ,N do
for j = 1,2,... ,N do
for k = 1,2,... ,N do
z= scenario of reservation phase* decision variable of
reservation
phase I
(or)
z=Cijk(r)(ω)* Xijk(r)(ω)
I = min (decision variable of reservation phase, on demand
phase, Expending phase) *c(y)
(or)
I=min ( Xijk(r)(ω) * Xijk(o)( ω)* Xijk(e)(ω)
End for;
End for;
End for;
for i = 1,2,... ,N do
for j = 1,2,... ,N do
for k = 1,2,... ,N do
for t = 1,2,... ,N do
c(y)= scenario of reservation phase* decision variable of
reservation phase + scenario of on demand phase* decision
variable of on demand phase + scenario of expanding phase*
decision variable of expanding phase (or)
c(y)= Cijkt(r)( ω)* Xijkt(r)( ω) + Cijkt(o)( ω)* Xijkt(o)( ω) +
Cijkt(e)( ω)* Xijkt(e)( ω)
here, some constraints to be followed
Xijk(e)( ω)<=Xijk(r)( ω);
Xijk(R)= Xijkt(r)( ω);
36
Xijk(e)( ω)+Xijk(o)( ω) => dit(ω)
3.6. Clustering Phase
The SIP algorithm has two stages. Stage1 defines the number of VMs to
be provisioned in reservation phase and stage2 defines the number of VMs
allocated in utilization and on-demand.
The proactive algorithm for resource allocation in cloud computing has
been proposed in this section. The main objective of our approach is to
track the status of available resources, allocated resources in the server and
this approach also contributing to maintain the load balancing over the
slave server.
37
Each cluster server includes a master server and many more slave
server. Each slave server serves a virtual machine which is allocated by
the CSPi. In the slave server each virtual machine has a unique ID. The
main roll of master server is to listing all over resource states of each VM i
at slave server. Each virtual machine contains the following resources like
CPU, RAM and STORAGE such as R1, R2 and R3 respectively.
CSPi allocates one and more virtual machine at a slave server with
unique ID and slave server also have own
resource capacity to executes VMi resources. Each virtual machine takes a
fix amount of space for the logically allocation at the slave server.
38
Physically VMi are placed in the data center and references of VMi passed
on master server by CSPi during demanding request by users.
A UML system is represented using five different views that describe the
system from distinctly different perspective. Each view is defined by a set
of diagram, which is as follows.
User Model View
i. This view represents the system from the user’s
perspective.
ii. The analysis representation describes a usage
scenario from the end-users perspective.
40
Implementation Model View
In this the structural and behavioral as parts of the system
are represented as they are to be built.
Use case Diagrams represent the functionality of the system from a user’s
point of view. Use cases are used during requirements elicitation and
analysis to represent the functionality of the system. Use cases focus on
the behavior of the system from external point of view.
Actors are external entities that interact with the system. Examples of
actors include users like administrator, bank customer …etc., or another
system like central database.
41
Use Case
42
Sequence
43
Class
44
45
ER DIAGRAMS
DATA DICTIONARY
46
MySQL -u root –p 123456
use OVMPcloud;
commit;
select 'Thank You For Using This Script. Your Database is Ready to
use!!!' as notification from dual;
Chapter 4
47
TESTING
Test Cases
Test Module Name Test Expected Result
Num Name Output
ber
1 Deploy SaaS SaaS test Should P
display
SAAS
homepag
e
2 Run SaaS SaaS test System P
without IaaS with
deployment restricted
functional
ities
3 Login IaaS with IaaS Should P
proper authentic display
credentials ation test operation
s
49
Table 1
Chapter 5
RESULTS
Table 2
50
Capacity utilization for exploring virtual machine is the major task in
cloud computing in joint virtual provisioning operations and cost spending
is one key feature in virtual cloud computing applications.
So the better system was required during this requirement in cloud
computing.
51
OVMP algorithm makes a decision based on the optimal solution of
stochastic integer programming (SIP) to rent resources from cloud
providers. This algorithm can minimize the cost spending in each plan
52
for hosting virtual machines in a multiple cloud provider environment
under future demand and price uncertainty.
The results show that OVMP algorithm can minimize the total cost,
while requirements of both providers and customers are met.
CONCLUSION
As cloud computing becomes increasingly popular,
efficient management of VM images, such as image propagation to
compute nodes and image snapshotting for check pointing or migration
is critical. The performance of these operations directly affects the
usability of the benefits offered by cloud computing systems. This
paper introduced several techniques that integrate with cloud
middleware to efficiently handle two patterns: multi deployment and
multi snapshotting. We propose a lazy VM deployment scheme that
fetches VM image content as needed by the application executing in
the VM, thus reducing the pressure on the VM storage service for
heavily concurrent deployment requests. Further-more, we leverage
object versioning to save only local VM image differences back to
persistent storage when a snapshot is created, yet provide the illusion
that the snapshot is a different, fully independent image. This has two
important benefits. First, it handles the management of updates
independently of the hypervisor, thus greatly improving the portability
of VM images and compensating for the lack of VM image format
standardization. Second, it handles snapshotting transparently at the
level of the VM image repository, greatly simplifying the management
53
of snapshots. We demonstrated the benefits of our approach through
experiments on hundreds of nodes using benchmarks as well as real-
life applications. Compared with simple approaches based on pre
propagation, our approach shows a major improvement in both
execution time and resource usage: the total time to perform a multi
deployment was reduced by up to a factor of 25, while the storage and
bandwidth usage was reduced by as much as 90%. Compared with
approaches that use copy-on-write images (i.e., qcow2 ) based on raw
backing images stored in a distributed file system (i.e., PVFS), we
show a speedup of multideployment by a factor of 2 and comparable
multisnapshotting performance, all with the added benefits of
transparency and portability. Based on these encouraging results, we
plan to explore the multideployment and multisnapshotting patterns
more extensively. With respect to multideployment, one possible
optimization is to build a pre fetching scheme based on previous
experience with the access pattern. With respect to multisnapshotting,
interesting reductions in time and storage space can be obtained by
introducing deduplication schemes. We also plan to fully integrate the
current work with Nimbus and explore its benefits for more complex
HPC applications in the real world.
FUTURE WORK
The extension of Cloud computing has resulted in the creation of huge
data centers globally containing numbers of computers that consume large
amounts of energy resulting in high operating costs. To reduce energy
consumption providers must optimize resource usage by performing
dynamic consolidation of virtual machines (VMs) in an efficient way.
54
8. REFERENCES
BOOKS
JAVA Technologies
Gerard Ian Prudhomme, “JAVA Technologies”, 2016.
55
WEB LINKS
1.Zhen Xiao, Weijia Song, and Qi Chen, Dynamic Resource Allocation
using Virtual Machines for Cloud Computing Environment,
Volume: 24, Issue: 6 , June 2013, IEEE.
2. Rafael Moreno-Vozmediano, Ruben S. Montero, Ignacio M.
Llorente. ACDC '09: Proceedings of the 1st workshop on
Automated control for datacenters and cloudsJune 2009 Pages 19–
24https://doi.org/10.1145/1555271.1555277.
3. Amazon Elastic Compute Cloud (EC2).
http://aws.amazon.com/ec2/.
4. A. Kovari ; P. Dukan. KVM & OpenVZ virtualization based IaaS
open source cloud virtualization platforms: OpenNode, Proxmox
VE, October 2012, IEEE.
5. Amazon Simple Storage Service (S3).http://aws.amazon.com/s3/.
6. Jessie J Walker, David Freet, Rajeev Agrawal, Youakim Badr.
Open source cloud management platforms and hypervisor
technologies: A review and comparison, 11 July 2016, IEEE.
7. M. Armbrust, A. Fox, R. Griffith, A. Joseph, R. Katz, A.
Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M.
Zaharia. A view of cloud computing. Commun. ACM, 53:50–58,
April 2010.
8. A. Bar-Noy and S. Kipnis. Designing broadcasting algorithms in the
postal model for message-passing systems. In SPAA ’92:
Proceedings of the 4th Annual ACM Symposium on Parallel
Algorithms and Architectures, pages 13–22, New York, 1992.
ACM.
56
9. Anshul Gandhi, Yuan Chen, Daniel Gmach, Martin Arlitt ; Manish
Marwah. Minimizing data center SLA violations and power
consumption via hybrid resource provisioning, September 2011,
IEEE.
10. Zhibo Cao , Shoubin Dong. Dynamic VM Consolidation for
Energy-Aware and SLA Violation Reduction in Cloud Computing,
September 2013, IEEE.
11. B. Claudel, G. Huard, and O. Richard. Taktuk. Aadaptive
deployment of remote executions. In HPDC ’09: Proceedings of the
18th ACM International Symposium on High Performance
Distributed Computing, pages 91–100, New York, 2009. ACM.
12. A.J. Kleywegt, A. Shapiro, and T. Homem-de-Mello. The
sample average approximation method for stochastic discrete
optimization. SIAM Journal on Optimization, 12:479–502, 2001.
(Cited on p. 471)
13. Alexander Shapiro and Andy Philpott. A Tutorial on Stochastic
Programming.
https://www2.isye.gatech.edu/people/faculty/Alex_Shapiro/Tutorial
SP.pdf, 2007.
14. P. H. Carns, W. B. Ligon, R. B. Ross, and R. Thakur. Pvfs: A
parallel file system for Linux clusters. In Proceedings of the 4th
Annual Linux Showcase and Conference, pages 317–327, Atlanta,
GA, 2000.
15. RüdigerSchultz, François V, Louveaux. Stochastic Integer
Programming, Volume 10, 2003, Pages 213-266, Handbooks in
Operations Research and Management Science.
16. S. Chaisiri, B.-S. Lee, and D. Niyato. Optimal Virtual Machine
Placement across Multiple Cloud Providers. In Proceedings of the
57
4th IEEE Asia-Pacific Services Computing Conference, pages
103–110.
17. R. V. den Bossche, K. Vanmechelen, and J. Broeckhove. Cost-
Optimal Scheduling in Hybrid IaaS Clouds for Deadline
Constrained Workloads. In Proceedings of the 2010 IEEE
International Conference on Cloud Comput-ing, pages 228–235.
IEEE Computer Society, 2010.
18. W. Li, J. Tordsson, and E. Elmroth. Modeling for Dynamic Cloud
Schedul-ing via Migration of Virtual Machines. In Proceedings of
the 3rd IEEE International Conference on Cloud Computing
Technology and Science (CloudCom 2011), pages 163–171, 2011.
19. BM. Industry Developments and Models – Global Testing
Services: Com-ing of Age. IDC, 2008 and IBM Internal Reports.
20. Salesforce.com, Inc. Salesforce.com. http://www.salesforce.com,
visited March 2014.
58