A Proposed Architectural Framework for Resource Provisioning ...

2 downloads 1917 Views 577KB Size Report
Department of Communication Technology and Network, Faculty of ... The cloud providerplaysa major role in provisioning computing resources, allowing the.
1st International Conference of Recent Trends in Information and Communication Technologies

A Proposed Architectural Framework for Resource Provisioning Mechanism in Cloud Computing Mohd Hairy Mohamaddiah *, Azizol Abdullah, Masnida Hussin, Shamala Subramaniam Department of Communication Technology and Network, Faculty of Computer Science and Information Technology, Universiti Putra Malaysia, 43400 UPM Serdang, Selangor, Malaysia

Abstract The cloud providerplaysa major role in provisioning computing resources, allowing the cloud users or subscribers to deploy their applications. However, as the demand for resources is continue to increase, there is a chance that guaranteed computing resources cannot be provided.. Furthermore, the computing resources will become contention. This will result in a contention of remaining free resources.To overcome this problem, there is a need foran efficient resource provisioningmechanismto cloud providers and its users. An architectural framework of resource provisioning mechanism utilizing three domains of resource management namely allocation, discovery and monitoring has beenproposed in this paper. An innovative perspective of the proposed framework from a system level and modular perspectivefocusing on resource provisioning in cloudhave been outlined. The study intended to provide an architectural framework for the development of resource provisioning mechanism in cloud. Furthermore, it is suggested that our proposed framework may lead to a better provisioning process of the available resources and meet the required Service Level Agreements. Keywords.Resource Allocation; Resource Monitoring; Resource Discovery; Cloud Computing; Resource Provisioning; Resource Management.

1. Introduction Cloudcomputingis a service model that wasintroduced to provide computing resources such as computing power, storage and bandwidthto deliver IT services to the organization. The service model is being adopted rapidly by many organizations because it offers many business opportunities, especially in terms of financial investment and human capital. It has become one of the main potential utilities for IT services. When using cloud services, an organization may opt out of setting up a data center for its IT infrastructure or procure hardware and software for its business applications, as they are able to lease the resources from a cloud service provider.Initial providersfor cloud computing, namely Amazon EC2, Google Apps Engine, Microsoft Azure, SalesForce.com and others,offer a great business value to the interested organizations which intend to subscribe cloud services that come with a concept of pay-per-use, on-demand, and defined Service Level Agreements (SLAs). Currently, cloud services have expanded broadly and rapidlytransforming the landscape of IT infrastructure. Cloud subscribers may lease the required resources(infrastructure, software, and platforms) from cloud providers. Cloud *Corresponding author: [email protected]

IRICT 2014 Proceeding 12th -14th September, 2014, Universiti Teknologi Malaysia, Johor, Malaysia

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

313

resources are pooled in order to serve lot of other subscribers, where a provider will use a multi-tenancy model in which resources (physical and virtual) are dynamically reassigned based on user requirements [1]. Assignment of resources will be based on the lease and SLA agreement, whereby different clients will need more or less amount of virtual resources. Subsequently, the growth of demands for cloud services is bringing more challenges to the providers to provide resources to the subscribers. Therefore,resource availability has become a high priority for cloud service providers in order to serve the requirement from the subscribers. As a result, resources become contentious or exhausted [2], or over provisioned due to lower workload spikes [3].Moreover, cloud service provider should provision the requested resources to the client without any flaws, thus fulfilling the required SLA. On the contrary, there are also scenariosin which resources are underutilized during nonpeak hours, as different clients have different workloads which cannot be determined automatically. Thus, this will cost a wasted resources and service provider revenue. There have been several studies in the literature reporting works in resource provisioning. The works introduce various frameworks and model such as multitenancy model, elasticity framework, service management framework, estimation model, Failure-aware model to solve the problem in resource provisioning. However, previous studies have primarily more limited and concentrate the silo process of resource provisioning (discovery, allocation and monitoring). This means that the development of the provisioning mechanism is not as one total solution. Therefore, a new resource provisioning mechanism that cultivates an improved allocation and monitoring method in resource management is highly required. Our proposed mechanism is intended to integrate discovery, allocation and monitoring as one parallel process, simultaneously running to include various algorithmic approaches for adaptive scheduling and load balancing, plus a dynamic estimation of user's workload. Our proposed approach covers all the mention features in one total approach which run simultaneously and parallely. As a result, it is expected that the entire approach will develop an efficient resource provisioning mechanism. It is believed that this study will help to discover the most appropriate and competent resources with faster scheduling resource allocation and prevent any task execution failures. The aim of this paper is to outline the resource provisioning mechanism from a system level perspective. This paper is organized as follows: Section 2 discussesthe motivation and the significanceof the proposed framework.Section 3 describes service provisioning and its components in detail, then Section 4elaborates related work in resource provisioning. Section 5 defines our proposed architectural framework for cloudresource provisioning..Finally,Section 6concludes the paper.

2. Our Motivation &Significance A large-scale heterogeneous environment of cloud computing involves dynamic and large workloads that require a certain amount of resources or limited time for processing. Therefore, the demand for cloud services has been increasing tremendously. However, there are still problems in the process of resource provisioning, since the resources may experience low availability or overprovisioning. With the increase of functionality and complexity of client workload, a failure of resources will also occur simultaneously [4]. Thus, to achieve a guaranteed quality of service (QoS) and meet the required SLA is hardly met [5],although the deployment of cloud has been already in a high availability environment. As a consequence, to support this requirement,an efficient resource provisioning

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

314

mechanism should be implemented. Providing an efficient mechanism is quite challenging, since cloud environment has a multi-dynamic workload, multi-tenancy cloud service provider, multi-deployment model and security vulnerability. There have been works that have examined workload modeling ([4],[6],[7], [8],[9]) in resource provisioning. These works have attempted on various domain such as failure of resources, service monitoring, power efficiency and scheduling strategies in order to obtain cloud resource optimization and resolve the mention problems above. Their works are proven to improve service time, violation rate and power consumption. Although many resource provisioning methods have been proposed, the study on resource provisioning in the cloud consisting of discovery, allocation and monitoring is much needed today. Specifically, there are still issues in allocation and monitoring of cloud resources that need to be mitigated. In order to resolve these issues, we need to determine: • Whatcauses computing resources to be exhausted and out of capacity to serve the cloud subscribers? • What is the best method to trigger exhausted resources in cloud computing? • How can an additional or existing request should be executed and allocated in a community cloud in order to fulfil the SLAs between the provider and the cloud subscriber? • What is the best framework to combine all three processes in resource management intoone design solution? • Howwill computing power provide the required resources on time forusers without starving its current capacity? • Howcan computing power be made scalable and rapidly elastic without increasing power usage in the current cloud infrastructure? The answers for the above questions are our guide to formulateour proposed architectural framework. From this study, the proposed architectural framework will help the cloud provider to improve the service time and optimize the process of resource provisioning in the cloud. This will maximize the profit of the service provider whilereducing the operation cost. Our proposed architecture should relieve the burden of the cloud users from having problems obtaining resources and processed requests per the SLA. From a financial viewpoint, the provider will enjoy cost reduction for the utility, while the user will benefit from thefee reduction due to better resource utilization.

3.

RESOURCE PROVISIONING SERVICE AND MANAGEMENT ON THE CLOUD

3.1. Cloud Resource Management Concepts From our perspective, resource management is a service provisioning that includesresource discovery, allocation and monitoring processes [10].These processes manage physical resources such as CPU cores, disk space, and network bandwidth. The resources must be sliced and shared between virtual machines running potentially heterogeneous workloads. An outline for the taxonomy of resource management elementsisdepicted in Figure 1 below:

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

315

RESOURCE MANAGEMENT

MONITORING Monitoring client / cloud subscriber & availability of resources

ALLOCATION Allocate resources

DISCOVERY Discovery & provision of resources

Figure 1. Elements of Resource Management.

At the provisioning stage, physical resources are abstracted into multiple virtual machines using virtualization technology. The provisioned resources will be used by the client/subscriber to deploy its required applications in the provisioning platform. The subscriber has full access to the provisioned resources, while the provider controls the physical hardware and services layer. This is to enable them to monitor the performance of the resources [11]. In our approach, we proposed a framework in the cloud service model infrastructure as a service (IaaS) - which will benefit the three main stakeholders, namely cloud infrastructure provider (IP), cloud service provider (SP) and cloud subscriber. In cloud computing, service provider (SP) delivers physical computing provided by infrastructure provider (IP). The IP offers computing, storage, and network resources required for hosting. Their goal is to capitalize on the provider from tenants by making efficient use of their infrastructure, possibly by outsourcing partial workloads to partnering providers[12]. Then, the SP will run the cloud software in order to provision request resources via multiple services to the customers. The SP offers economically efficient services using hardware resources provisioned by IPs, which may be directly accessed by end-users or orchestrated by other service providers[12]. It provides the resources sourced by the IP (with computing power: CPU, memory, storage and network) and abstract into numbers of virtual machines for cloud subscribers. It has been observed that the whole process of provisioning needs to be executed in parallel without any intervention. With an integrated process in provisioning, the proposed framework: i. Will offer an improved scheduling approach for resource allocation by using advanced reservations to guarantee resources prior to the user requests to further improve the service time for the user; ii. Will be pliable and elastic when discovering free resources available in a dynamic situation (time and environment); iii. Will offer a timely autonomous one single platform for resource management process; and iv. Will increase shared resources among public universities and will lower down the cost for IT infrastructure. 3.2. Resource Allocation Cloudsubscribers will launch their applications, and they require computing resources to deploy their applications. Therefore, the allocation process is the process of assigning available sources needed for cloud applications over the distributed environment[12]. These resources are allocated based on user request and pay-per-use method. In this process, brokering, scheduling and dispatching methods are being applied to allocate the resources. Brokering happens when the service provider cum resource broker manages the request from the client. Then, the

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

316

SP initiates a request to IP for computing resources, where the IP is stationed at different cloud providers. Next, the scheduler schedules assigned resources to the client.It is said that at the SP works as the local scheduler. Then, the dispatcher allocates the assigned resources to the client.In out provisioning process, we introduced Distributed Virtual Infrastructure Manager (DVi) as the service provider to perform the SPs role mention as previously mentioned. A graph topologyis denoted (Figure 2) to represent job requests from the clients. Every job request from the client will be classified as applications, Ai. Every application has its sets of tasks, V and its processing requirementsdenoted as On. This information of tasks will be gathered, calculated and sent to resource infrastructure manager (RiM). RIM is introduced as a middle-entity for: i. Coordinating communication between other resource providers in order to collect resource states availability; and ii. Distribution of workload to the resource providers to process the request by the SP. An in-depth explanation about RiM &DViis presented in the next section. We would say that our system model setup is similar to the interconnecting grid platform setup[4],[13]. The information sent and received between DVi and RiM is crucial in order to avoid scenarios such as over-provisioning or under-provisioning of resources. It should allow theexchangeof information between the two managers that will indicate abetter and precise required resources by the user. The RiM is responsible for sending the resources state information such as cloud virtual machines availability, existing tasks list being executed, virtual machines attributes and others. The DVi is responsible for sending the task lists, and its load inclusive of calculation of estimated resources required. We believe that if the estimation is done at SP site, it will produce faster decision-making phase at the RiM to distribute tasks to the designated resources. These parties will work together and sustain the communication between them. We assume that the applications come with heterogeneous task. Each task may or may not have its ownprecedence, k, and a degree, in order to finish all of the designated tasks.The degree of precedence is denoted asas dk.

Figure 2. Topology of Application, Ai, (a) Application with Tasks Dependencies,and (b) application withoutTask Dependencies.

If the tasks come without precedence, we assume that tasks can start with or without finishing the previous task, as depictedin Figure 2 (b).From here, we will propose a provisioning strategy as part of the frameworkformulation. The DVi and

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

317

RiM will play a major role in the allocation stage as this is one of the crucial parts of the cloud provisioning services. 3.3. Resource Monitoring Aceto et al.[14]defined resource monitoring as a key tool for controlling and managing hardware and software infrastructure. Monitoring purposes also use the information from the key performance indicators (KPIs) for both platforms and applications in thecloud. This information serves as a feeder for data to assist in the decision-making of the allocation processes. Monitoring schemes are also a key component for resources state (physical and virtual) in the event of failure,whether at the physical or services layer.We would like to invoke selfmonitoring and healing of the systems. Self-monitoring is necessary for automatic balancing of workloads across computing nodes to optimize the cost of system utilization. In the event of failure of the cloud system, then it is mediated for a rapid system recovery[15]. We proposed a method to monitor the current utilization of resources at both states, whether the resource is idle, in preprocessing or working mode. The monitoring scheme will gather data from different sources (i.e. from RiM)and learn the data. Then, it will feed the information automatically to the resource manager. These schemes will then reintegrate with the resource discovery and allocation scheme in order to finish processing the tasks. An elaboration pertaining to monitoring components in our proposed framework is elaborated in the next few sections. 3.4. Resource Discovery In cloud computing, discovery of resources refers to determining the most appropriate resources to be leased that qualify to serve the application based on the given SLA and its own requirement.This domain is one of the parts where brokering mechanism is performed. The discovery is also part of the main concern in scheduling resources. Hence, we would like to propose a method where monitoring and discovery mechanisms are collaborating to support the allocation process. The key approach is the information that the component gathered in order to select the best candidate resources to be dispatched. To summarize, we will accommodate all schemes (allocation, discovery and monitoring)into one mechanism that works in parallel with the purpose of meeting the SLA. In addition, we aimed to demonstrate that the proposed framework hastheability to allocate resources for mixed environments or applications (heterogeneoustasks). In our work, we are concentrating on the infrastructure as a service (IaaS) cloud delivery system. In the next section, greater detail about our architectural framework, processes aligned in the framework, and the method pertaining to our proposed framework are elaborated. 4.

RELATED WORK IN RESOURCE PROVISIONING The development of a framework and model is one of the approaches to resource provisioning. We concluded that some studieshave developed an algorithm for theirframework or model, whilesome will develop and use service oriented for the verification method in their methodology.The work by Demchenko et al.[8]examined a service-oriented architecture and developed an architectural framework to combine on-demand network and grid/cloud resources for service provisioning. The proposed infrastructure services modeling framework (ISMF) is part of the total solution for an on-demand architectural framework and service

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

318

provisioning to support e-science applications and high-performance computing resources. The ISMF is formulated from resources modeling in which the main function of the model is able to describe physical resources in detail and abstracting the virtual resource layer. The description format, which is based on semantic technology, will allow the extension and dynamic change of the resources in the framework. A. Calatrava et al.[16]formulated a model by combining and integrating cloud and grid resources. Their solution was found by outsourcing workload to the cloud when the resources on the grid became exhausted. Meta scheduling analysis was used to analyze the current state of the grid and schedule the integration with the cloud. As a result, the proposed method had utilized the resources in the hybrid infrastructure (cloud and grid).The proposed model bySrikantaiah et al.[17]was developed using time-varying workload and DVFS (Dynamic Voltage and Frequency Scaling) theory in a multitier cloud platform, which resulted in savingsin terms of both energy and cost. Espadas et al. [3] proposed a model using multi-tenancy characteristic to solve the over- and under-provisioning of cloud resources problem. They used a tenantbased isolation approach, which encapsulated the execution of each tenant. As a tenant-based load balancing, this distributes requests according to tenant information. To determine the number of VM instances needed, they used a tenant-based VM instance allocation. The method is based on VM capacity and tenant context weight. In these approaches, there was an improvement in the server-based hours for virtual machine provisioning, which reduced response time and cost.Their work proved to be asuccess in a multi-tenancy environment and created a cost-effective tenancy. In this sub-section, we reviewed and analyzed various monitoring mechanisms that have been implemented. Several studies have been conducted to address heterogeneous and monitoring resources, which denote an intuitive representation of a running cloud by focusing on common monitoring concerns. Raw monitoring of data is gathered by multiple monitoring techniques to create a more intuitive cloud profile. Any changes in the real running system will be reflected in the model immediately[9]. Therefore,human can inspect runtime status of the cloud via the model instead of investigating disordered runtime data. Monitoring also reflects the service level management in cloud services. An architectural model proposed in [11]used service monitoring and process of IT service management to realize management of cloud services resources. The paper provides a foundation for technology to ensure the quality of service of cloud services. A study conducted for resource monitoring appliedan event triggermethod [18] to monitor the current state of the resources and integrate with fixed polling of resources. There is not much significant study about the failure of resources itself. The current software technology in the market such as VMWarehas features for load balancing or fault tolerance, but this applies only to physical hosts and not to virtual servers. Furthermore, if a resource failure such as virtual machine is not identified and addressed in time, it could cause permanent damage to the resources, bring down critical IT services andcause massive data lossand maintenance costs. This will violate the SLAs with clients.High availability (HA) feature is also one of the features currently available in virtualization software. This feature is used by the service provider for resource failure or disaster recovery in case of a bigger event failure. Although the HA features result in a positive outcome, especially when the situation of resource contention arises, the SLA with the client constrains the provider. A fault tolerance mechanism should be incorporated with the monitoring suite for the resources. [19] used a discrete-time Markov chain as a fault detection mechanism in their proposed solution. They also incorporated a long-term condition monitoring of

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

319

equipment in the complex systems. Their works were intended to describe states and apply directly the state transition in the failure existence. They proved that a transition of the application due to unsuspected potential failuresmight be difficult to detect throughnon-automated means. Application environments which use cloud facilities are dynamic and have various constraints. Therefore, this solution demonstrates that detecting and fixing any problem on time can increase service uptime and enhance client satisfaction. Iyer et al.[20] proposed a decomposition model that applies scheduling on traces for server consolidations on shared resources platform. It introducedvirtual platform architecture (VPA) to estimate resources and enable transparent shared resources management. The model also incorporateda heuristic approach to get the sampling data for analysis. Monitoring scheme of cache space and memory bandwidth is one of the major measurement parts of the model. The monitoring scheme in the VPA is associated and enforced with the client. They have shown that monitoring is needed for shared resource management and performance isolation in a consolidation scenario. The study in thepaper[21] introduced a framework to manage the mappings of the low-level resource metrics to high-level SLAs,known as the LoM2HiS framework. The framework assists in autonomic SLA management and enforcement. The framework is capable of detecting future SLA violation threats based on predefined threat thresholds. In summary, many interesting framework and model indicating the potential of resource provisioning mechanism have been reported.However, most of the studies in the open literature do not simultaneously examine all resource provisioning in one total solution framework. Therefore, it is necessary to perform deep research inall domain in resource provisioning to be integrated in one architecture framework runningparallel and providingefficient provisioning processes.

5. RESOURCE PROVISIONING MECHANISM ARCHITECTURAL FRAMEWORK. In this section, we elaborate on the architecture frameworkin conceptual terms.The resource management framework shown in Figure 3concentrateson the cloud management layer with 3 sub-modules. The proposed framework is very promising in providing the best resource provisioning mechanism in terms of a better performance and efficiency to meet the required SLA and address the problem of resource contention and availability. We also aimed to lower the power consumption compared to other resource management frameworks. This will provide an advantage to the provider in terms of saving cost and contribute to saving energy. Our framework will be based on three main modules,which are monitoring, discovery and allocation modules. These modules are derived from different processes in cloud resource management. It starts from the user’s request in place of resources for their applications until it finishes processing their applications. Our proposed framework should be run in an autonomous and dynamic environment. In our approach, we proposed a framework in the cloud service model infrastructure as a service (IaaS) - which will benefit the three main stakeholders, namely cloud infrastructure provider (IP), cloud service provider (SP) and cloud subscriber. In cloud computing, service provider (SP) delivers physical computing provided by infrastructure provider (IP). The IP offers computing, storage, and network resources required for hosting. Their goal is to capitalize on the provider from tenants by making efficient use of their infrastructure, possibly by outsourcing partial workloads to partnering providers [12]. Then, the SP will run the cloud software in order to provision request resources via multiple services to the customers. The SP offers economically efficient services using hardware resources provisioned by IPs,

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

320

which may be directly accessed by end-users or orchestrated by other service providers [12]. It provides the resources sourced by the IP (with computing power: CPU, memory, storage and network) and abstract into numbers of virtual machines for cloud subscribers. It has been observed that the whole process of provisioning needs to be executed in parallel without any intervention. With an integrated process in provisioning, the proposed framework: i. Will offer an improved scheduling approach for resource allocation by using advanced reservations to guarantee resources prior to the user requests to further improve the service time for the user; ii. Will be pliable and elastic when discovering free resources available in a dynamic situation (time and environment); iii. Will offer a timely autonomous one single platform for resource management process; and iv. Will increase shared resources among public universities and will lower down the cost for IT infrastructure. In the proposed framework, two parts are considered, namely service management and orchestration. Service management is the front line that will liaise with client, receiving the requirement, calculating the required resources to be dispatched, as well as schedule the execution of the tasks. The orchestration part defines, manages and outsources the required dispatch resources. In the framework, as mentioned in Section 3,we introduced two service provisioning managersof Distributed Virtual Environment (DVi) Manager and Resource Infrastructure Manager(RiM). The DVi manager is responsible for the allocation of designated resources requested, while the RiMmanages the local and outsource resources to be dispatched by the DVi. There will also be other external components which will be linked to our framework. We will insertour algorithms in the modules managed by the DVi and RiM in order to provide an efficient cloud resource management mechanism. Figure 3below illustrates our proposed architecture framework:

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

321

Figure 3. Proposed Framework of Resource Management Mechanism Architecture

5.1. Interface of Subscriber Request This component is a processwhere client/subscriber submitted their request for resources. The clients are required to provide/upload their input tasks, and the required time to process the task. We expect that the input provided is not in a high level format (based on processing capacity requiredand size of task). Hence, our framework will derive the calculation for the required resources to be deployed to the client. Our DVi will then transform the request into a service request and make the autonomic provisioning resources. These processes will be carried out via different components. The details of the components will be explained in the next sub-section. 5.2. Distributed Virtual Environment Manager (DVi) The main role for the DVi manager is to implement provisioning policies such as schedule task allocations to the available resources provided by RiM. DViis the first who handle inputs from the client. The inputs have a global scheduler that handles and schedules heterogeneous tasks to be serviced. DVi is the first level where the tasks will be served. The main components are the allocation components. These componentscontaina local scheduler responsible for the task scheduling.We represent task as directed acyclic graph with its precedence relations, G=(V,A) where V={1,…,n}. We define the task of application as, L. V

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

322

is tally with their tasks and (i,k)∈ A if and only if Liis completed before Lk. Every application has itsdifferent tasks with different weight of task. The weightage of task will be based on the due dates for each of the task, its precedence, and itsprocessing requirements. We denote the due dates as Dd. As denotedin Figure 3, the RiM will act as the global scheduler in order to outsource the tasks to the designated resource provider. It will communicate with other providersrunning the virtual machines. We will explain in detail in the next section pertaining to the integration between the RiM and an external/outsourced resource provider. 5.3. Resource Infrastructure Manager(RiM) The RiM component is the orchestration part. It is responsible in the discovery and monitoring component in our proposedframework. At this layer, the requested information is translated into resources. The RiMhas a pool of resources available, M=(M1,M2...Mn) and each resource comes with different compute nodes, P=(p1, p2, ...pn). RiM has its own local scheduler, which also processes current, recurring and incoming tasks assigned by the DVi.

5.3.1. Monitoring Component The monitoring component coordinates resources andplays a role as the predictorfor provisioning of resources in order to avoid an over-provisioning situation. This component will also execute load balancing among the existing resources to cater the underutilized resources, and at the same time being scalable and elastic for the remaining resources to be segregated across the users. The proposed method usesload prediction via a machine learning technique. The new algorithm will assess the current load estimation and learn the pattern. In our proposed framework, self-monitoring process will be done by the RiM. Nevertheless, the RiM has to work closely with the DVi, since the service requests(jobs) are supplied by them. In the event of a crash or over-provision, the DVihastheright to hold the scheduling (allocation) process. It will notify the RiM if the task process is able to be migrated. Then, the RiM hasthe right to expand the existing virtual resources to other available physical hosts.In the event of underutilized computing power, the RiM will perform load balancing for the physical machines that join the cluster jobs. This shall also distribute the load evenly to all the physical machines administered by the RiM. The process is being done without the public cloud administrators’ intervention. It will result inquick action and also optimize resource utilization. The components also have the ability to assist the discovery component to determine the best available resource for resource placement to process the tasks. In our framework, the component collects the resources load information and also its state, whether there is any failure during processing. The state is based on updated information on the resources available time denoted as ERT, and current load at resources is denoted as, Cl.. 5.3.2. Discovery Component The discovery component will search for other resources in the event of the existing resources become depleted or violent. This component will comprise a sub-module of decision making to elect a suitable candidate to be selected in order

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

323

to provide the resources. In addition, this componentis also responsible for performing a resource placement of the designated user request. This whole process is executed automatically. After the placement process, the submoduleallocation will take a turn to finish the resource provisioning process, and it will then inform the DVi to allocate the resources to the specified users. This is done via a scheduler, inwhich a new algorithm will be developed to provide resources within or beyond the SLA permitted. This module is responsible for providing the virtual instances (e.g. operating systems or data files) to users based on their request. Although our proposed method involves a lot of procedures.Nevertheless, we will impose a parallel process that will run simultaneously. This will speed up the provisioning process, thus decreasing unavailability of the required resources. 5.4. Outsourced / External Resources Components The RiM is also connected to several external resource providers. We denote the external/outsourced resources as De. The RiM and Deare connected by a communication network. Each of this outsourced componenthas its own compute nodes with complete data repository consists of information regarding current load being processed, execution time, and thenumber of available resources. In our proposed framework, we assume that our RiMis able to access the repository from this external resourcesas there is ahandshake agreement between both sides.. If there is aneed to outsource the operating task to De,thenit will be faster for the RiM to pick reliable resources for the outsourcing job.

5.5. Service Provisioning Workflow We materialized a basic use-case and scenarioto be considered for our proposed framework, which is the dynamic resource allocation to multiple users in multiple locations to process heterogeneous applications. In this scenario,we proposed the targets users execute a highly data intensive applications. Each heterogeneous application has different SLAs, datasets and deadlines. The cloud provider must have adequate computing resources to fulfill these requirements. Figure 4 below illustrates a typical use case when the cloud users require compute resources for their applications.

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

324

Figure 4. Use Case and Scenario of Resource Provisioning

This use case includes all our components of the proposed architectural framework; service request, abstraction of requests, outsourcing resources, and finally allocate the required resources to the users. Our proposed framework supports this scenario by providing meansto dynamically allocate resources seamlessly. All of the requests run in parallel mode. Our framework generally composed of service request, abstraction and allocation of request, and discovery and monitoring of the resources. The user will request the required resources together with its application properties (SLA and deadlines). The cloudservice provider (DVi Manager) will then examine andabstract the submitted request into virtual resources. In the event of no resource available, it will be outsourced to the infrastructure manager (RiM manager)and map it down to the resource level. At this level, the dynamic properties of RiM allow the allocation of required resources in minimal time. This is because at the RMi level, the resources are well-monitored and have adequate resources to be deployed.It will permit a cost efficient and fastdeployment of the required requests. In other cases, with the dynamicand increasing user demand,it will eventually make the resources, i.e. virtual machines, easily starved of resources. However, with our proposed framework, it will dynamically estimate the required resources to prevent the contention of resources. Figure5 belowsummarizes the simple process workflow derived from the use case based on our proposed architectural framework, which includes three main processes of resource provisioning; allocation, discovery and monitoring.

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

325

Figure 5. Process Workflow of Resource Provisioning

6. Conclusion In this paper, we have proposed a resource provisioning mechanism framework from a system level perspective.Our approach intends to utilize the three domains of resource management, namelyallocation,discovery and monitoring techniquesfor resources distribution. The goal of the framework is to provide faster execution, prevent unavailability of resources, and fulfill the SLA to the client. Our framework is best suited to application with composed of heterogeneous tasks.. Eachtasks requiredependencies and differentdeadlines, plus fluctuating workloads, through which the processing requirements are ascertained.Therefore,anyrequest should be carefully assessed. Our framework plays a rolein defining the processing requirement, dispatching the correct resources, and executing the task in a minimal time. A cloud infrastructure presents a variety of resource configurations to the user.Our future work targets a full experimental test exploiting a heterogeneous mix of resources that may be utilized for execution of different applications. Also, we targeted to validate our framework with a real-time workloadsimulated in a cloud infrastructure environment. We intend to gauge the impact of multiple applications composed multiple tasks to be executed simultaneously in our proposed framework. We expect that our framework will then provide better resource allocation and monitoring process in terms of better performance, competitiveness, and efficiency to meet the required SLAand improve resource performance simultaneously.

ACKNOWLEDGMENT The authors wish to thank the Faculty of Computer Science and Information Technology for its continuous support in completing this paper.

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

326

References [1]

Dillon, T., Wu, C., and Chang, E. “Cloud Computing: Issues and Challenges,” in 2010 24th IEEE International Conference on Advanced Information Networking and Applications, , pp. 27–33,2010.

[2]

Vinothina, P., Sridaran,V., Ganapathi,R. “A Survey on Resource Allocation Strategies in Cloud Computing,” International. Journal. Of Advanced. Computer Science. Applications, vol. 3, no. 6, pp. 97–104, 2012.

[3]

Espadas, J., Molina, A., Jiménez, G., Molina, M., Ramírez, R., & Concha, D. “A tenantbased resource allocation model for scaling Software-as-a-Service applications over cloud computing infrastructures,” Future Generation Computer System , vol. 29, no. 1, pp. 273– 286, 2013.

[4]

Javadi, B., Abawajy, J., & Buyya, R. “Failure-aware resource provisioning for hybrid Cloud infrastructure,” Journal Of. Parallel Distributed Computing, vol. 72, no. 10, pp. 1318–1331, 2012.

[5]

Maurer, M., Brandic, I., & Sakellariou, R. “Adaptive resource configuration for Cloud infrastructure management,” Future Generation Computer System, vol. 29, no. 2, pp. 472– 487, 2013.

[6]

Basmadjian, R., De Meer, H., Lent, R., & Giuliani, G. “Cloud Computing and Its Interest in Saving Energy: the Use Case of a Private Cloud,” Journal of Cloud Computing, vol. 1, no. 1, p. 5, 2012.

[7]

Stillwell, M., Schanzenbach, D., Vivien, F., & Casanova, H. “Resource Allocation Using Virtual Clusters,” InCluster Computing and the Grid, 2009. CCGRID'09. 9th IEEE/ACM International Symposium on (pp. 260-267). IEEE., 2009.

[8]

Demchenko, Y., Van der Ham, J., Yakovenko, V., de Laat, C., Ghijsen, M., & Cristea, M. “On-demand provisioning of Cloud and Grid based infrastructure services for collaborative projects and groups,” In Collaboration Technologies and Systems (CTS), 2011 International Conference on (pp. 134-142). IEEE, 2011.

[9]

Shao, J., Wei, H., Wang, Q., & Mei, H. “A Runtime Model Based Monitoring Approach for Cloud,” In Cloud Computing (CLOUD), 2010 IEEE 3rd International Conference on (pp. 313-320). IEEE, 2010.

[10]

Mohamaddiah, M. H., Abdullah, A., Subramaniam, S., & Hussin, M. “A Survey on Resource Allocation and Monitoring in Cloud Computing,” International Journal of Machine Learning & Computing, vol. 4, no. 1, pp. 31–38, 2014.

[11]

Sun, Y., Xiao, Z., Bao, D., & Zhao, J. “An architecture model of management and monitoring on Cloud services resources,” In Advanced Computer Theory and Engineering (ICACTE), 2010 3rd International Conference on (Vol. 3, pp. V3-207). IEEE, 2010.

[12]

Hu, Y., Wong, J., Iszlai, G., & Litoiu, M. “Resource provisioning for cloud computing,” in Proceedings of the 2009 Conference of the Center for Advanced Studies on Collaborative Research, 2009, pp. 101–111, 2009.

[13]

Javadi, B., Thulasiraman, P., & Buyya, R. “Cloud Resource Provisioning to Extend the Capacity of Local Resources in the Presence of Failures,” In High Performance Computing

Mohd Hairy Mohamaddiah et. al. /IRICT (2014) 312-327

327

and Communication & 2012 IEEE 9th International Conference on Embedded Software and Systems (HPCC-ICESS), 2012 IEEE 14th International Conference on (pp. 311-319). IEEE, 2012. [14]

Aceto, G., Botta, A., De Donato, W., & Pescapè, A. “Cloud monitoring: A survey.,” Computer Networks, vol. 57, no. 9, pp. 2093–2115, 2013.

[15]

Hussain, H., Malik, S. U. R., Hameed, A., Khan, S. U., Bickler, G., Min-Allah, N., & Rayes, A. “A survey on resource allocation in high performance distributed computing systems,” Parallel Computing., vol. 39, no. 11, pp. 709–736, 2013.

[16]

Calatrava, A., Moltó, G., & Hernández, V. “Combining Grid and Cloud Resources for Hybrid Scientific Computing Executions,” In Cloud Computing Technology and Science (CloudCom), 2011 IEEE Third International Conference on (pp. 494-501). IEEE, 2011.

[17]

Srikantaiah, S., Kansal, A., & Zhao, F. “Energy aware consolidation for cloud computing,” In Proceedings of the 2008 conference on Power aware computing and systems (Vol. 10), 2008.

[18]

Zhu, Y., & Xu, W. “Research of grid resource monitoring based on event-trigger and fixed polling,” In Financial Theory and Engineering (ICFTE), 2010 International Conference on (pp. 108-111). IEEE, 2010.

[19]

Dabrowski, C., & Hunt, F. C. Dabrowski and F. Hunt, “Identifying Failure Scenarios in Complex Systems by Perturbing Markov Chain Models,” in Proceedings of the 2011 Pressure Vessels & Piping Division (PVPD),pp. 1–24, 2011,

[20]

Iyer, R. Illikkal, O., Tickoo, L., Zhao, P.,Apparao, and Newell,D. “VM3: Measuring, modeling and managing VM shared resources,” Computer Networks, vol. 53, no. 17, pp. 2873–2887, 2009.

[21]

Emeakaroha, V. C., Brandic, I., Maurer, M., & Dustdar, S. “Low level metrics to high level SLAs-LoM2HiS framework: Bridging the gap between monitored metrics and SLA parameters in cloud environments,” In High Performance Computing and Simulation (HPCS), 2010 International Conference on (pp. 48-54). IEEE, 2010.