Virtual Machine Resource Allocation via SLA-Based Clustering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized environments, managing resource allocation across multiple tenants is challenging due to the need for dynamic allocation and modification of resources to meet varying business requirements, which can be resource-intensive and costly, and existing solutions are not effective in optimizing resource allocation to meet diverse tenant requirements.

Innovation Solution

A system that allocates processing resources based on service requirements identified in service level agreements between users and service providers, using virtual machines that can be grouped into clusters for efficient resource management, including compute resources like CPU, memory, and networking bandwidth, and can be remotely accessible via the Internet, allowing for over-provisioning to meet peak demands.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If virtual machines are allocated to each user based on service requirements, then service quality is improved, but resource utilization deteriorates when total requested resources exceed available resources

Engineering Contradiction:
Improveservice qualityVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system dynamically allocates and deallocates virtual machine resources based on real-time service requirements and availability. Virtual machines can be created, moved, and destroyed automatically according to user demand and resource capacity, allowing the system to adapt flexibly between meeting service quality requirements and optimizing resource utilization.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system uses universal virtualization infrastructure that can serve multiple users and purposes. The same physical hardware resources can be virtualized and allocated to different users at different times, and virtual machines can be migrated between physical hosts, enabling one resource pool to fulfill multiple service requirements simultaneously.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Adaptability or versatility

If resource allocation is made dynamic to meet varying business requirements, then adaptability is improved, but system complexity worsens

Engineering Contradiction:
ImproveadaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system introduces a virtualization layer as an intermediary between physical hardware and user services. This abstraction layer simplifies management by providing standardized interfaces for resource allocation, making the system adaptable to different business requirements without proportionally increasing complexity. The virtualization manager handles complex allocation decisions through automated policies.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system manages complexity by changing parameters such as virtual machine configuration, resource allocation ratios, and service level agreements rather than redesigning the entire system architecture. These parameter adjustments allow the system to adapt to varying business requirements through configuration changes rather than structural modifications.

Inventive Principle:
Principle #35Parameter changes

3Manufacturing precision

If manual provisioning processes are used for virtual machine allocation, then control precision is improved, but productivity deteriorates due to resource intensity and human involvement

Engineering Contradiction:
Improvecontrol precisionVSAvoidprovisioning efficiency
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system implements automated self-service provisioning where virtual machines are allocated, configured, and managed automatically based on predefined service requirements and policies. The virtualization manager autonomously makes allocation decisions, eliminates manual human involvement in routine provisioning tasks, and maintains precise control through automated enforcement of service level agreements and resource constraints.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8307362B1Resource allocation in a virtualized environment
Publication Date: 2012.11.06 EMC IP HLDG CO LLC
  • US8307362B1 patent drawing
  • US8307362B1 patent drawing
  • US8307362B1 patent drawing

AI summary

In a virtualized environment, provisioned virtual machines may be migrated between different servers as needed and, accordingly, may be clustered according to particular configurations and requirements. The system described herein provides techniques for controlling the provisioning of users' virtual machines among clusters based on determined requirements obtained from users' service level agreements (SLAs) and in accordance with an optimized allocation of resources to service the processes corresponding to the virtual machines. The provisioning of virtual machines according to the system described herein may be dynamically controlled and allow for over-provisioning of virtual machines to a cluster beyond that which would normally be supported at the cluster absent the provisioning control techniques provided by the system described herein. The over-provisioning may be controllable according to specific requirements identified in each user's SLA.