- Centralized user and resource management lacks in scalable management of users, resources and organization-level security policy.
- A decentralized user and virtualized resource management for IaaS by adding a new layer called domain in between the user and the virtualized resources was proposed.
- Resource fragmentation in multi-cluster environment can be controlled by using the most-fit processor policy.
- The most-fit policy has higher time complexities but the time overheads are negligible compared to the system long time operation
- The proposed mechanism is based on sealed-bid auction.
- The cloud service provider collects all the users’ bids and determines the price. The resource is distributed to the first kth highest bidders under the price of the (k+1)th highest bid.
- Reduces the resource provisioning problem into ordering problem.
- This mechanism does not ensure profit maximization due to its truth telling property under constraints.
- Achieved by using market based resource allocation strategy in which equilibrium theory is introduced (RSA-M).
Resource Provisioning for Cloud Computing
Architecture
Walrus
Cloud Controller (CLC)
- Processes requests and makes VM placement decisions.
- Top of the Architecture
- Data storage service compatible with Amazon’s S3, which is responsible for manipulating VM templates and delivering them to NCs when a developer wishes to instantiate a VM.
Cluster Controller
- NC's are grouped in clusters managed by the Cluster Controller (CC)
- CC gathers state information from each NC, schedules developers’ requests to individual NC's, and manages the configuration of public and private networks.
Architecture
Node Controller
- NC offers a common layer that abstracts the hypervisor solution employed on each server.
- Eucalyptus has four components
- Node Controller(NC)
- Cluster Controller(cc)
- Cloud Controller (CLC)
- Walrus
Resource Management and Control
- Two different user classes: administrators and developers.
- Reflects a business-oriented model view
- The former are the users responsible for managing the entire Cloud who have access to all features of Eucalyptus.
- The latter are the developers that can request and make use of VM instances directly from Eucalyptus, without the need for administrators’ intervention
Negotiation issues
- Messages exchanged between Eucalyptus components as well as messages sent by developers requiring a resource are described through WSDL interfaces.
- The negotiation or external interface is offered by the CLC and is responsible by translating developers’ requests into operations for the internal components
- Eucalyptus supports both SOAP-based and HTTP Query-based interfaces
- Developed entirely inside a Service-Oriented paradigm
REFERENCES
- For maintaining compatibility with Amazon EC2, developers on Eucalyptus may only instantiate VMs from classes previously configured.
- V.Vinothina, Dr.R.Sridaran, Dr.PadmavathiGanapathi. “A Survey on Resource Allocation Strategies in Cloud Computing.” (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 3, No.6, 2012
- G. S. Majumdar, “The “Any-Schedulability” Criterion for Providing QoS Guarantees Through Advance Reservation Requests”, in Proceedings of the IEEE/ACM International Symposium on Cluster Computing and the Grid (International Workshop on Cloud Computing), Shanghai, China, May 2009, pp. 490-495.
- Kuo-Chan Huang &Kuan-Po Lai: Processor Allocation policies for Reducing Resource fragmentation in Multi cluster Grid and Cloud Environments (IEEE, 2010), pp.971-976.
- Dongwan Shin and HakanAkkan :Domain- based virtualized resource management in cloud computing.
- Wei-Yu Lin et al. : Dynamic Auction Mechanism for Cloud Resource Allocation: 2010 IEEE/ACM 10th International Conference on Cluster, Cloud and Grid Computing, pp.591-592.
- RerngvitYanggratoke, FetahiWuhib and Rolf Stadler: Gossip-based resource allocation for green computing in Large Clouds: 7th International conference on network and service management, Paris, France, 24-28 October, 2011.
- FetahiWuhib and Rolf Stadler : Distributed monitoring and resource management for Large cloud environments(IEEE,2011),pp.970-975.
- DusitNiyato, Zhu Kun and Ping Wang : Cooperative Virtual Machine Management for Multi-Organization Cloud Computing Environment.
- Dorian Minarolli and Bernd Freisleben: Uitlity –based Resource Allocations for virtual machines in cloud computing(IEEE,2011),pp.410-417.
- Yoo, Seunghwan, and Sungchun Kim. "SLA-aware adaptive provisioning method for hybrid workload application on Cloud computing platform." Proceedings of the international multi conference of engineers and computer scientists. Vol. 1. 2013
- Nathuji, Ripal, Aman Kansal, and Alireza Ghaffarkhah. "Q-clouds: managing performance interference effects for qos-aware clouds." Proceedings of the 5th European conference on Computer systems. ACM, 2010.
- Omara, Fatma A., Sherif M. Khattab, and Radhya Sahal. "Optimum Resource Allocation of Database in Cloud Computing." Egyptian Informatics Journal 15.1 (2014): 1-12.
- Javadi, Bahman, Jemal Abawajy, and Rajkumar Buyya. "Failure-aware resource provisioning for hybrid Cloud infrastructure." Journal of parallel and distributed computing 72.10 (2012): 1318-
- Y. O. Yazır, C. Matthews, R. Farahbod, A. Guitouni, S. Neville, S. Ganti, and Y. Coady, “Dynamic and Autonomous Resource Management in Computing Clouds through Distributed Multi Criteria Decision Making,”
- A. Kochut, “On Impact of Dynamic Virtual Machine Reallocation on Data Center Efficiency,” 2008, pp. 1 –8.
- R. Das, J. Kephart, I. Whalley, and P. Vytas, “Towards Commercialization of Utility-based Resource Allocation,” in ICAC ’06: IEEE International Conference on Autonomic Computing, 2006, pp. 287–290
- D. Chess, A. Segal, I. Whalley, and S. White, “Unity: Experiences with a Prototype Autonomic Computing System,” in 2004. Proceedings. International Conference on Autonomic Computing, 2004, pp. 140–147
- Architecture
- Negotiation issues
- Resource Management and Control
What is Eucalyptus?
- Eucalyptus is intended to bridge the gap between open-source software for Clouds and enterprise solutions.
- Fully compatible with Amazon EC2
Examples
Resource Provisioning and Power Consumption
“Power-Aware” Algorithms
- Host overload detection
- Adaptive utilization threshold based algorithms
- Median Absolute Deviation algorithm (MAD)
- Interquartile Range algorithm (IQR)
- Regression based algorithms
- Local Regression algorithm (LR)
- Robust Local Regression algorithm (LRR)
- Host under load detection algorithms
- Migrating the VMs from the least utilized host
- VM selection algorithms
- Minimum Migration Time policy (MMT)
- Random Selection policy (RS)
- Maximum Correlation policy (MC)
- VM placement algorithms
- Heuristic for the bin-packing problem – Power-Aware Best Fit Decreasing algorithm (PABFD)
Taxonomy of Power Management Techniques
- Servers consume 0.5% of the world’s total electricity usage
- Closer to 1.2% when data center systems are factored into the equation
- Server energy demand doubles every 4-6 years
- Large amounts of CO2 produced by burning fossil fuels
- What if we could reduce the energy used with minimal performance impact? (Green Cloud Computing)
DVS (Dynamic Voltage Scaling)
- DVS (Dynamic Voltage Scaling) technique
- Reducing the dynamic energy consumption by lowering the supply voltage at the cost of performance degradation
- Recent processors support such ability to adjust the supply voltage dynamically.
- The dynamic energy consumption = * Vdd2 * Ncycle
- Vdd : the supply voltage
- Ncycle : the number of clock cycle
- An example
VM Management
- Monitor Cloud usage and load
- When load decreases:
- Live migrate VMs to more utilized nodes
- Shutdown unused nodes
- Start up waiting nodes.
- Schedule new VMs to new nodes.
Minimizing VM Instances
- Virtual machines are desktop-based.
- Lots of unwanted packages.
- Unneeded services.
- Are multi-application oriented, not service oriented.
- Clouds are based on a Service Oriented Architecture.
- Need a custom lightweight (maybe Linux) VM for service oriented science.
- Need to keep VM image as small as possible to reduce network latency.
Green Computing
- Performance/Watt: Moore’s law ???
- Advanced scheduling techniques.
- Power aware
- Thermal aware
- Power Efficient Data center designs
- Cooling systems
- Rack design
- Number of ways to explore provisioning
to conserve energy within a Cloud.
- Schedule VMs to conserve energy.
- Management of both VMs and underlying infrastructure.
- Minimize operating inefficiencies for non-essential tasks.
- Optimize data center design.
What is Eucalyptus ?
Power-aware Scheduling
- Schedule as many VMs at once on a multi-core node.
- Greedy scheduling algorithm
- Keep track of cores on a given node
- Match vm requirements with node capacity
Green Cloud Computing Architecture
- Open Source Private Cloud Software
- Eucalyptus was designed to provide services compatible with Amazon EC2, i.e., it was designed for the rental of virtual machines in the Cloud.
- All communications in Eucalyptus are made through WebServices standards.
Green Cloud Framework
VM scheduling on Multi-core Systems
- There is a nonlinear relationship between the number of processes used and power consumption.
- We can schedule VMs to take advantage of this relationship in order to conserve power
Power consumption curve on an Intel Core i7 920 Server
(4 cores, 8 virtual cores with Hyperthreading)
Tasks required to accomplish goals
Hierarchical Resource Organization
- Eucalyptus
- Open Nebula
- Nimbus
Architecture
Resource Management and Control
Algorithm 1: Scheduling algortithm.
Inputs: requirements, rank, hostsList;
Outputs: selectedHost;
1 Begin
2 for each host in hostsList do
3 if (host meets requirements) then
4 candidates.new(host);
5 end
6 end
7 sorted = sortByRank(candidates, rank);
8 selectedHost = sorted(1);
9 end
- The Scheduler is the OpenNebula module responsible for making VM placement decisions.
- The default scheduler on OpenNebula provides a scheduling policy that places
- VMs according to a ranking algorithm, which relies on performance data from both the running VMs and physical servers
- Indexing all the resources available
- Translating the application requirements
- Estimating the capacity needs of VMs
- Managing resources in order QoS requirements
- Monitoring the usage of allocated resources SLA
- Performing load balancing
- Dynamically reallocating resources
- Application/Services request and authorization
- Managing VMs migration at different physical sites.
Advantages:
- Managing concurrent allocations
- Priority based transactions
- Ease in VM allocation, VM migration and resource discovery
Meeting Priorities
Performance and Service Provider Priorities
- Power Aware Provisioning
- Green Cloud Computing
- Workload based Provisioning
- Resource Provisioning for HPC
- SLA based Provisioning
- QoS/Adaptive Provisioning
- Failure Aware Provisioning
- Fault Tolerant/Optimal Computing
- Ensure confidentiality, integrity, and availability in a multi-tenant environment.
- Effectively meet the advertised SLA, while optimizing cloud resource utilization.
- Offer tenants capabilities for self-service, and achieve scaling through automation and simplification.
Goals of Dynamic Provisioning
OpenNebula
Conclusion
VS
Researchers point of view
- Optimize the resources
- Utilize the cpu power to the maximum
- Propose new algorithms which can perform better
Industry
- Quality of service
- Customer satisfaction
- SLA(Service Level Aggrements)
- Dynamic provisioning in cloud computing tries to achieve:
- Energy efficiency
- High resource utilization
- Reliability of services
- Low performance interference /failure
- Parameters to consider for resource provisioning includes:
- Response Time
- Minimize Cost
- Revenue Maximization
- Fault Tolerance
- Reduced SLA violation
- Reduced Power Consumption
- User driven Open-source, Enterprise cloud manager.
- used by various international organizations such as CERN , Telefonica , ESA.
Architecture
- Classic Cluster like structure
- Master and Slave nodes
- At least requires one physical network joining all the cluster nodes with the front end.
Performance and Energy Aware Resource Provisioning
Resource Provisioning for HPC applications
- WHY and WHO should choose (or not choose) cloud for HPC ?
- For WHAT applications and how should cloud be used for HPC?
Solution:
- By analyzing the performance of HPC applications on a range of platforms varying from supercomputer to cloud
- By analyzing the impact of virtualization on HPC applications
- By using multiple platforms (dedicated and in the cloud) and use a smart application aware mapping of applications to platforms
- By investigating the economic aspects of running in cloud vs. supercomputer
Optimizing Cloud Virtualization for HPC
- To mitigate the overhead of cloud platform two ways is considered
- Lightweight virtualization : reduces the latency overhead of network virtualization by granting virtual machines native accesses to physical network interfaces
- CPU affinity: instructs the operating system to bind a process (or thread) to a specific CPU core
- Prevent migration of process
- Prevent multi process share a core
- Improving cache locality
- In cloud CPU affinity can be enforced in two levels:
- Application level: binding process of to the virtual CPUs of a VM
- Hypervisor level: binding virtual CPUs to physical CPUs
Cloud Bursting and Benefit
Comparison of Resource Provisioning Techniques
(): = /
where is the number of processors
- Speedup () is defined as:
=_/_
where _ is the sequential execution time and _ is the parallel execution time
- Mapping of HPC applications to platforms with varying resources (e.g., differentprocessor types and speed, interconnection networks, and virtualization overhead)
V. Vinothina, R. Sridaran, and PadmavathiGanapathi. A survey on resource allocation strategies in cloud computing. International Journal of Advanced Computer Science and Applications, 3(6):97–104, 2012
Comparison of Resource Provisioning Techniques
- How to find a mapping between application and available resources?
- To makes best use of the dedicated HPC-optimized resources?
- Minimizes the cost of bursting to the cloud
- Meet the performance targets?
- By an intelligent mapping algorithms
- Which are aware of application characteristics
- Understand that application which scale poorly on cloud should be allocated to dedicated resources
SLA-Aware Adaptive Provisioning Method
InterGrid Gateway
SLA-Aware Adaptive Provisioning Method
Javadi, Bahman, Jemal Abawajy, and Rajkumar Buyya. "Failure-aware resource provisioning for hybrid Cloud infrastructure." Journal of parallel and distributed computing 72.10 (2012): 1318-1331.
- Monitor: Collects the workload and the performance metric of all running VAEEs, such as the response time, the request arrival rate, the average service time, and the CPU utilization, etc.
- Analyzer: Receives and analyzes the logged parameter from the monitor to estimate next state workload. It also receives the response times of different users.
- Resource Scheduler: Sets up updated configuration metric for each VAEE, and uses its optimizer with the optimization model to determine resource provisioning according to these workload estimates and response time constrains of different users such that the resource requirements of the overall VAEE is minimized.
- Virtualized Application Executor: Assigns the virtual machine configuration, and then runs the VAEEs to satisfy the resource requirements of the different customers according to the optimized decision.
Yoo, Seunghwan, and Sungchun Kim. "SLA-aware adaptive provisioning method for hybrid workload application on Cloud computing platform."
Proceedings of the international multi conference of engineers and computer scientists. Vol. 1. 2013
Resource provisioning through IGG
Fig: Proposed SAA-Provisioning Framework
Goal: To minimize usage of resources under a workload while satisfying different users for the guaranteed response time.
Fig. VM Deployment and QoS management with QClouds.
Cloud Scheduler: Placement of VMs submitted by customers on cloud servers.
Interference Mitigation Control: Allocate additional resources to impact VMs to bring their performance to the same level as what would have been observed without interference.
Resource Efficiency Control: The slack in resource can then be dynamically allocated to applications to achieve higher levels of QoS.
Nathuji, Ripal, Aman Kansal, and Alireza Ghaffarkhah. "Q-clouds: managing performance interference effects for qos-aware clouds." Proceedings of the 5th European conference on Computer systems. ACM, 2010.
Failure-aware resource provisioning
- As resource failures due to the increasing functionality and complexity of hybrid Cloud computing are inevitable
- A failure-aware resource provisioning algorithm that is capable of attending to the end-users quality of service (QoS) requirements is paramount.
- A failure-aware resource provisioning approach is necessary for the uptake of hybrid Cloud computing.
Optimum Resource Allocation of Database in Cloud Computing
- Virtualization Design Problem (VDP): N VMs run on a shared physical machine pool and each VM runs its own instance of a N instances of a DBMS. The shared physical pool is represented by M different resources.
- Virtual Design Advisor (VDA): The VDA is divided into two modules:
- configuration enumeration, which includes the search algorithm
- cost model.
- The modules interact to produce the recommended configurations using a calibration process (Tune cost model parameters).
Virtualization Design Advisor (VDA) architecture
Javadi, Bahman, Jemal Abawajy, and Rajkumar Buyya. "Failure-aware resource provisioning for hybrid Cloud infrastructure." Journal of parallel and distributed computing 72.10 (2012): 1318-1331.
Figure: Virtualization Design Advisor (VDA) architecture
- The search algorithm modifies the query optimizer’s tuning parameters using the calibration process.
- The calibration process can profile the intensively of workload even CPU-intensive or non-CPU-intensive and guides the VDA to allocate the suitable amounts of resources to each VM.
Omara, Fatma A., Sherif M. Khattab, and Radhya Sahal. "Optimum Resource Allocation of Database in Cloud Computing." Egyptian Informatics Journal 15.1 (2014): 1-12.
What is Migration and why is it done?
Types of Migration
- Migration is the process of moving the VMs from one host or storage location to another that is the Physical Machine.
- This is basically performed to balance the load among the physical Machines when new requests are added for service.
- There are different types of Migration taking place
Dynamic Resource Provisioning
Moving a powered-off virtual machine to a new host.
- Migrating a Suspended Virtual Machine:
Moving a suspended virtual machine to a new host.
Moving a powered-on virtual machine to a new host but this takes place without interruption in the availability of the VM.
- Migration with Vmotion storage:
Moving a powered-on virtual machine to a new host but cannot move from one data centre to other.
Advantages of Migration
A. Kochut, “On Impact of Dynamic Virtual Machine Reallocation on Data Center Efficiency,” 2008, pp. 1 –8.
- Infrastructure improved as the requirement increased
- There was a need for efficiency increase
- Provide the Application right amount of resource at right time
- Helps in increased service and utilization
- All these are performed with the process of Migration.
A. Kochut, “On Impact of Dynamic Virtual Machine Reallocation on Data Center Efficiency,” 2008, pp. 1 –8.
- When there is a suddern spike of requests, the VMs are migrated which helps in balancing the workloads
- In case of Disaster in any of the servers and the application is still running in the VMs, they cannot be stopped and hence they are migrated to the other PMs.
- Virtual Machine Migration can also migrate Virtual Machines in case of unscheduled server downtime (due to some fault in server), so that users experience high availability of applications at all times.
A. Kochut, “On Impact of Dynamic Virtual Machine Reallocation on Data Center Efficiency,” 2008, pp. 1 –8.
Disadvantages of Static Provisioning
- The main problem with this is that, the resource of the PM is wasted which causes huge loss for the resource providers when considered in a large scale
- The user has to pay for the whole resource even though the complete utilization of the resource rarely happens.
Generic Architecture
- The dynamic allocation till date has been proposed with various approaches with each concentrating on different aspects to increase the efficiency such as preemption of the tasks in the virtual machines, multiple criteria based analysis, priority based allocation etc.
- The architecture mentioned here is a general architecture that contains the essential tasks of a dynamic allocation which concentrates on
1. Balancing the Load whenever a new request comes in
2. Check the SLA regularly if it is satisfies the requirement for a particular service
Analysis of Static Provisioning
Y. O. Yazır, C. Matthews, R. Farahbod, A. Guitouni, S. Neville, S. Ganti, and Y. Coady, “Dynamic and Autonomous Resource Management in Computing Clouds through Distributed Multi Criteria Decision Making,”
This clearly shows the problem of Under Utilization of the resource that was Addressed earlier.
Architecture Flow
Y. O. Yazır, C. Matthews, R. Farahbod, A. Guitouni, S. Neville, S. Ganti, and Y. Coady, “Dynamic and Autonomous Resource Management in Computing Clouds through Distributed Multi Criteria Decision Making,”
Classification of Resource Provisioning
Generic Architecture
Analysis of Dynamic Provisioning
This addresses the problem that existed in the Static
allocation and the problem of underutilization is stopped
Types Resource Provisioning
Generic Architecture
- Each of the Virtual Machine is associated with a Vid.
- Load Balancer maintains the list of VMs
- Requirement of the request matched with the resource of the Vid
- The closest matched VM is allocated with request
- This is done by allocating Vid to the request.
- Two main functions to be performed, maintaining the SLA and balancing the load among the PMs.
- The resource provisioning technique has been classified into two categories,
1. Offline Static Provisioning
2. Online Dynamic Provisioning
- Started with Static and with advancement in infrastructure moved to Dynamic Provisioning
R. Das, J. Kephart, I. Whalley, and P. Vytas, “Towards Commercialization of Utility-based Resource Allocation,” in ICAC ’06: IEEE International Conference on Autonomic Computing, 2006, pp. 287–290.
Resource Allocation- An Intro
Resource Allocation Strategies
Static Resource Proisioning
- Initial Technique with low computation.
- Resource allocation based on the request’s peak utilization
- Initially this was carried out by the providers because of lack of better infrastructure
- If the resource is reduced, that might lead to SLA violation.
- Problem: Resource are utilized much lesser than the peak.
D. Chess, A. Segal, I. Whalley, and S. White, “Unity: Experiences with a Prototype Autonomic Computing System,” in 2004. Proceedings. International Conference on Autonomic Computing, 2004, pp. 140–147.
- Process of assigning available resources to the needed cloud applications.
- Resource allocation starves services if the allocation is not managed precisely.
- Integrating cloud provider activities for utilizing and allocating scarce resources within the limit of cloud environment so as to meet the needs of the cloud application.
- It requires the type and amount of resources needed by each application in order to complete a user job.
Why Resource Provisioning???
- Cloud resources consist of physical and virtual resources. The physical resources are shared across multiple compute requests through virtualization and provisioning.
- The request for virtualized resources consists of a set of parameters detailing the processing, memory and disk needs.
- Provisioning satisfies the request by mapping virtualized resources to physical ones.
- Impractical to predict the dynamic nature of users, user demands, and application demands .
- The job should be completed on time with minimal cost .
- For this, we need efficient resource allocation system that suits cloud environments.
- This Load Balancing has to be performed for the benefit of both the customer and the service provider.
- Based on SLA, helps finding the VM, helps distributing work across multiple VMs
- This is done to prevent over utilization.
- This stands as the mediator between the user requests and the Virtual Machines
- They help in achieving higher level of fault tolerance.
- Legal Agreement
- Segments to be addressed by a service provider is specified.
- Example, duration of the service, problem management, customer duties, warranties, disaster recovery, and termination of agreement.
- Only based on this for a particular request, the resource can be allocated.
- Problem: VM has to monitor in regular interval for SLA
- Resource allocated based on the Application's workflow
- Interpret the application logic and exploited to estimate the execution schedule to predict the resource consumed.
- For real time applications a prototype model is implemented with a test bed cloud for allocation
- Virtual network of virtual machines capable of live migration.
- Dynamic Application Demand helps in automatic relocation.
- Pay on Demand where users can choose what kind of service they demand.
Overview of Resource Provisioning Techniques
Execution Time based Resource Provisioning
- The actual task execution time and preemptable scheduling is considered for resource allocation.
- Overcomes resource contention problem and increases resource utilization by using different modes of renting computing capacities.
- Estimating the execution time for a job is a hard task for a user and errors are made very often.
- The VM model considered in the below paper is heterogeneous and proposed for IaaS.
[Jiyani et al.: Adaptive resource allocation for preemptable jobs in cloud systems (IEEE, 2010), pp.31-36.]
- Based on this strategy, a matchmaking strategy (assign a resource to a job) was proposed.
- Does not use detailed knowledge of the scheduling policies used at resources and subjected to AR’s (Advance Reservation).
Jose Orlando Melendez &shikhareshMajumdar: Matchmaking with Limited knowledge of Resources on Clouds and Grids.
Utility Functions based Resource Provisioning
- Dynamically managing VMs in IaaS by optimizing objective functions like minimizing cost function, cost performance function and meeting QoS objectives. The objective function is defined as Utility property which is selected based on measures of response time, number of QoS, targets met and profit etc.
- Few algorithms that dynamically allocate CPU resources to meet QoS objectives. But they do not try to maximize the objectives.
- Utility (profit) based resource allocation for VMs which use live VM migration .
- Resource allocation based on response time as a measure of utility function for multi-tier cloud computing systems.
- Follows force-directed resource management for resource consolidation. But this system is acceptable only as long as the client behaviors remain stationary.
Dorian Minarolli and Bernd Freisleben: Uitlity –based Resource Allocations for virtual machines in cloud computing (IEEE,2011),pp.410-417.
Policy based Resource Provisioning
Kuo-Chan Huang &Kuan-Po Lai: Processor Allocation policies for Reducing Resource fragmentation in Multi cluster Grid and Cloud Environments (IEEE, 2010), pp.971-976.
Gossip based Resource Provisioning
Auction based Resource Provisioning
- Resource allocation in large-scale cloud environments.
- A distributed scheme that allocates cloud resources to a set of applications that have time-dependent memory demands and it dynamically maximizes a global cloud utility function.
- Produces optimal allocation when memory demand is smaller than the available memory in the cloud and the quality of the allocation does not change with the number of applications and the number of machines.
- Requires additional functionalities to make resource allocation scheme robust to machine failure.
- Organizations can cooperate to share the available resources to reduce the cost.
- This system does not consider the dynamic co-operative formation of organizations.
RerngvitYanggratoke, FetahiWuhib and Rolf Stadler: Gossip-based resource allocation for green computing in Large Clouds: 7th International conference on network and service management, Paris, France, 24-28 October, 2011.
Wei-Yu Lin et al. : Dynamic Auction Mechanism for Cloud Resource Allocation: 2010 IEEE/ACM 10th International Conference on Cluster, Cloud and Grid Computing, pp.591-592.
Efficient Resource Provisioning
Cloud Entities for Resource Provisioning
- Type of workload
- Type of goal
- Type of resources
- Type of service provided.
Workload Types
Resource Providers (RPs):
Business companies, cluster managers and even hosts which provide physical resources as IaaS (Infrastructure as a Service).
Clients:
Users/Application that are interested in resource provisioning.
They do not have knowledge regarding or control over the underlying data center infrastructures of the Clouds
Resource Brokers (RBs):
Allocate resources for applications/services on multiple VMs in order to fulfill requests of different Clients
Manage resources provided by several RPs deploying VMs on several Physical Servers in the same Cloud, or even different Clouds.
Resource allocation in order to obtain the most cost-effective resources
Amount of work that needs to be accomplished by computer resources in a certain period of time.
- High-performance workloads:
- specialized process with scientific or technical requirements
- complex and require significant compute capabilities.
- Database workloads:
- Most common type of workload.
- must be tuned and managed to support the service that’s using that data.
- Batch workloads:
- operates in the background.
- process huge volumes of data
- rarely time sensitive and can be scheduled when few real-time tasks are running.
- Transactional workloads:
- automation of business processes.
- complex transactional workloads are best suited to a private cloud
- Analytic workloads:
- analytic services of organizations, in a cloud environment to make sense of the vast amounts of data across a complex hybrid environment
- require much more real-time computing capability.
http://www.dummies.com/how-to/content/types-of-workloads-in-a-hybrid-cloud-environment.html
Inefficient Resource Provisioning
Challenges in Resource Provisioning
The below conditions will lead to inefficient resource allocation.
- Dynamic scalability
- Multi-tenancy
- Querying and access
- Standardization
- Reliability and fault-tolerance
- Debugging and profiling
- Security and Privacy
- Power
- Resource contention.
- Scarcity of resources.
- Resource fragmentation.
- Over-provisioning.
- Under-provisioning.
Over Provisioning
Under Provisioning
- Under-provisioning of resources occurs when the application is assigned with fewer numbers of resources than the demand.
- Resource providers’ allocation of resources may lead to an under-provisioning of resources.
- Over-provisioning of resources arises when the application gets surplus resources than the demanded one.
- Resource users’ (cloud users) estimates of resource demands to complete a job before the estimated time may lead to an over-provisioning of resources.
- To overcome the above mentioned discrepancies, inputs needed from both cloud providers and users for a RAS.
- Below table indicates the list of inputs user and provider should give to an RAS.
- The complexity of finding an optimum resource allocation is exponential in huge systems like big clusters, data centers or Grids.
- Since resource demand and supply can be dynamic and uncertain, various strategies for resource allocation are proposed.
http://www.dummies.com/how-to/content/types-of-workloads-in-a-hybrid-cloud-environment.html
Outline
- Introduction
- Why resource provisioning?
- Cloud Entities for Resource Provisioning
- Efficient and Inefficient Resource provisioning
- Challenges in Resource Provisioning
- Overview of Resource provisioning techniques
- Classification of Resource Provisioning Algorithms
- Goals of Dynamic Provisioning
- Performance and Energy aware Resource Provisioning
- Comparison of Resource Provisioning Techniques
- Current Cloud based systems
- Summary
- Revanth Pobala
- Sheheryar Ali Arshad
- Ashwin Ramesh Babu
- Akilesh Rajavenkatanarayanan