Seminar Topics & Project Ideas On Computer Science Electronics Electrical Mechanical Engineering Civil MBA Medicine Nursing Science Physics Mathematics Chemistry ppt pdf doc presentation downloads and Abstract

Full Version: Dynamic Resource Allocation in Computing Clouds using Distributed Multiple Criteria
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Dynamic Resource Allocation in Computing Clouds using Distributed Multiple Criteria Decision Analysis

[attachment=51365]

Abstract

In computing clouds, it is desirable to avoid wasting
resources as a result of under-utilization and to avoid lengthy
response times as a result of over-utilization. In this paper,
we propose a new approach for dynamic autonomous resource
management in computing clouds. The main contribution of this
work is two-fold. First, we adopt a distributed architecture where
resource management is decomposed into independent tasks, each
of which is performed by Autonomous Node Agents that are
tightly coupled with the physical machines in a data center.
Second, the Autonomous Node Agents carry out configurations
in parallel through Multiple Criteria Decision Analysis using
the PROMETHEE method. Simulation results show that the
proposed approach is promising in terms of scalability, feasibility
and flexibility.

INTRODUCTION

For clients, cloud computing provides an abstraction of the
underlying platform which saves them the costs of designing,
building and maintaining a data center to host their Application
Environments (AE). By leveraging system virtualization in a
data center, multiple Virtual Machines (VM), which are the
components of AEs, can be consolidated on one Physical
Machine (PM). A VM is loosely coupled with the PM it runs
on; as a result, not only can a VM be started on any PM, but
also, it can be migrated to other PMs.
Currently, migrations can be performed in seconds to minutes
depending on the size, activity and bandwidth of the VM
and PMs. Migration makes it possible to dynamically adjust
data center utilization and tune the resources allocated to AEs.
Furthermore, these adjustments can be automated through
formally defined strategies in order to continuously manage
the resources in a data center with less human intervention. We
refer to this task as the process of dynamic and autonomous
resource management.

PROBLEM DESCRIPTION

In a data center, the primary goal of a dynamic autonomous
resource management process is to avoid wasting resources as
a result of under-utilization. Such a process should also aim to
avoid high response times as a result of over-utilization which
may result in violation of the service level agreements (SLA)
between the clients and the provider. Furthermore, it needs to
be carried out continuously due to the time variant nature of
the workloads of AEs.

RELATED WORK

Since first proposed in the seminal work of Walsh et al. [1],
a general two-layer architecture that uses utility functions
has been commonly adopted in the context of dynamic and
autonomous resource management. This architecture consists
of local agents—also called local decision modules, or application
agents, etc.— that are tightly coupled with each AE, and
a global arbiter—also called a global decision module—that
computes and applies configurations on behalf of the entire
data center in a centralized manner.
The main responsibility of the local agents is to calculate
utilities. Given the current or forecasted workloads and the
range of resources, the utility function calculates a utility
between 0 and 1. Once the local agents calculate the utilities
for each AE, the results are communicated to the global arbiter.

SYSTEM ARCHITECTURE

The system is designed as a distributed network of NAs,
each capable of accommodating VMs and, when necessary,
delegating VMs to other PMs and handing the management
over to the corresponding NAs. We assume that the network
maintains global awareness of the resource availability of PMs
and their task assignments through an oracle. Concretely,
the oracle can be implemented as either a distributed or a
centralized monitoring system [17].
The system model is described in abstract functional and
operational terms based on the Abstract State Machine (ASM)
paradigm [18] and the CoreASM open source tool environment
[19] for modeling dynamic properties of distributed
systems. ASMs are known for their versatility in computational
and mathematical modeling of complex distributed
systems with an orientation towards practical applications [20].
The description of the model in ASM reveals the underlying
design concepts and provides a concise yet precise blueprint
for reasoning about the key system properties.

VM Selection

Once an anomaly is captured by the monitor, VM Selection
activity starts. This is where one or more VMs are selected
from the VM pool of the problematic PM to be migrated to
another PM in order to resolve the anomaly. The selected VMs
are used by the VM Placement activity to find a suitable target
PM for each of them in the data center.
The selection of VMs are done using PROMETHEE similar
to the way it is used in VM Placement. However, the alternative
set is formed in a different manner. In VM Selection,
an NA does not need to contact the oracle since it does the
selection from its local pool of VMs. Therefore, the alternative
set is computed based on the PM’s local information.

EXPERIMENTAL SETUP, RESULTS AND VALIDATION

In order to test our approach and compare it with other
methods, we have built a simulation environment using the
C Programming Language. The simulation runs in a stepwise
manner. In each iteration, the conditions in the data center
evolve with the changing resource requirements of the hosted
AEs. The simulator is designed in this way to allow us to
compare different methods at identical points in time with the
same conditions.

CONCLUSION AND FUTURE WORK

In this paper, we introduced a new approach for dynamic
autonomous resource management in computing clouds.
Our approach consists of a distributed architecture of NAs
that perform resource configurations using MCDA with the
PROMETHEE method. The simulation results show that this
approach is promising particularly with respect to scalability,
feasibility and flexibility.
Scalability is achieved through a distributed approach that
reduces the computational complexity of computing new
configurations. Simulation results show that our approach is
potentially more feasible in large data centers compared to
centralized approaches. In essence, this feasibility is due to the
significantly lower number of migrations that are performed in
order to apply new configurations. Simulation results show that
our method should theoretically trigger less SLA violations
by smoothly distributing the overall resource utilization over
slightly more PMs in the data center. The flexibility of our
approach comes from its ability to easily change the weights
of criteria and adding/removing criteria in order to change
configuration goals.