IP Library Granted Patent US 10,013,287
Granted Patent B2
US 10,013,287 · App. 13/690,126 · Granted Jul 3, 2018

System and method for structuring self-provisioning workloads deployed in virtualized data centers

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,013,287
App. No.
13/690,126
Granted
Jul 3, 2018
Kind
B2
Abstract

The system and method for structuring self-provisioning workloads deployed in virtualized data centers described herein may provide a scalable architecture that can inject intelligence and embed policies into managed workloads to provision and tune resources allocated to the managed workloads, thereby enhancing workload portability across various cloud and virtualized data centers. In particular, the self-provisioning workloads may have a packaged software stack that includes resource utilization instrumentation to collect utilization metrics from physical resources that a virtualization host allocates to the workload, a resource management policy engine to communicate with the virtualization host to effect tuning the physical resources allocated to the workload, and a mapping that the resource management policy engine references to request tuning the physical resources allocated to the workload from a management domain associated with the virtualization host.

Claims (31)

1. A set of executable instructions residing in a non-transitory computer-readable medium for execution on a processor, comprising:

configuring, via the processor, a workload for delivery to a virtualization host having physical hardware resources, wherein the workload is an aggregation of services that are configured to work together and wherein the virtualization host is a virtual hosting environment partitioned from the physical hardware resources and the virtual hosting environment including multiple Virtual Machines (VMs), wherein the workload is configured to process within a guest operating system configured for and processing within the virtual hosting environment;

provisioning, via the processor, the workload with a metric collection mechanism, a resource policy enforcement mechanism, and configuration files that define ranges for allocation of the physical hardware resources for processing the workload within the guest operating system of the virtualization host and configuring a policy engine for processing customized corrective actions identified in policies and processed when the allocation defined in the configuration files fail to comply with the ranges during usage of the physical hardware resources and when the workload processes based on bandwidth violations and storage capacity violations, the resource policy enforcement mechanism utilizing metrics from the metric collection mechanism to adjust real time allocations of the physical hardware resources based on the configuration files, and wherein the metrics are gathered by the metric collection mechanism and the metrics include information relevant to utilization of specific hardware resources used by the workload when the workload processes within the virtualization host;

deploying, via the processor, the configured and provisioned workload to the virtualization host; and

isolating, via the processor, differences between a policy engine interface for the policy engine in the virtualization host between other policy engine interfaces for other policy engines in other virtualization hosts in a virtualization host specific mapping for controlling and sharing the physical hardware resources between the virtualization host and the other virtualization hosts.

2. The medium of claim 1 , wherein configuring further includes selecting the virtualization host for the workload based, at least in part, on the configuration files and the physical hardware resources of the virtualization host.

3. The medium of claim 2 , wherein selecting further includes using attributes and parameters associated with the workload to assist in selecting the virtualization host.

4. The medium of claim 3 , wherein using further includes acquiring a service level agreement defining memory, processor, and network constraints for the workload, wherein the service level agreement is one of the attributes.

5. The medium of claim 1 , wherein provisioning further includes configuring the workload with the metric collection mechanism, the resource policy enforcement mechanism, and the configuration files for the workload to self-provision the physical hardware resources when deployed in the virtualization host.

6. The medium of claim 1 , wherein provisioning further includes configuring the metric collection mechanism to monitor and report usage metrics of the workload when deployed in the virtualization host.

7. The medium of claim 1 , wherein provisioning further includes configuring the metric collection mechanism as a packaged module loaded within a kernel of the guest operating system of the virtualization host.

8. The medium of claim 1 , wherein provisioning further includes configuring the configuration files with a service level agreement for the physical hardware resources.

9. The medium of claim 1 , wherein provisioning further includes configuring the resource policy enforcement mechanism to interact with the metric collection mechanism to gather real time usage metrics for the workload on the physical hardware resources and compare those usage metrics with information included in the configuration files.

10. The medium of claim 1 , wherein provisioning further includes configuring the resource policy enforcement mechanism to dynamically tune usage and particular allocations of the physical hardware resources for the workload while the workload processes within the virtual host.

11. A set of executable instructions residing in a non-transitory computer-readable medium for execution on a processor, comprising:

loading, via the processor, a workload as a virtual distribution on physical hardware resources, and wherein the workload is an aggregation of services that are configured to work together and to process within a virtualization host, and wherein the virtualization host is a virtual hosting environment partitioned from the physical hardware resources based on ranges of allocation for those physical hardware resources within a guest operating system configured for and processing within the virtualization host, and wherein the virtual distribution is a specific VM configured to process the workload within the virtualization host and the virtual distribution including customized corrective actions for processing defined in policies and processed when the allocation fails to comply with the ranges during usages of the physical hardware resources when the workload processes based on bandwidth violations and storage capacity violations;

initiating, via the processor, a packaged module within a kernel of an operating system for the specific VM;

self-tuning, via the processor, allocations of the physical hardware resources used by the workload as the workload processes within the specific VM based on constraints for the allocations managed by the packaged module and actions taken by the packaged module as the packaged module processes within the specific VM, and wherein the constraints relevant to utilization metrics of the physical hardware resources as the workload processes within the specific VM; and

isolating, via the processor, differences between a policy engine interface for processing the customized corrective actions in the virtualization host between other policy engine interfaces for other customized corrective actions in other virtualization hosts in a virtualization host specific mapping for controlling and sharing the physical hardware resources between the virtualization host and the other virtualization hosts.

12. The medium of claim 11 further comprising, processing the method within a cloud environment.

13. The medium of claim 11 , wherein self-tuning further includes obtaining usage metrics for processing the workload on the physical hardware resources.

14. The medium of claim 11 , wherein self-tuning further includes obtaining the constraints as a service level agreement for the workload.

15. The medium of claim 11 , wherein self-tuning further includes obtaining the constraints as configuration files for the workload.

16. The medium of claim 11 , wherein self-tuning further includes obtaining the constraints as attributes or parameters associated with the workload.

17. The medium of claim 15 , wherein self-tuning further includes tuning the physical hardware resources.

18. A system, comprising:

a memory having workload provision manager; and

a processor coupled to the memory to execute the workload provision manager from the memory;

wherein the workload provision manager is configured to deploy a workload configured for ranges of allocation assigned to physical hardware resources within a guest operating system configured for and processing within a virtualization host and the workload further configured to dynamically self-adjust and self-provision itself for the physical hardware resources based on processing conditions of the physical hardware resources when the workload processes within the virtualization host and the workload configured with customized corrective actions defined in policies for processing when the allocation fails to comply with the ranges during usage of the physical hardware resources when the workload processes based on bandwidth violations and storage capacity violations, and wherein the workload is an aggregation of services that are configured to work together and to process within the virtualization host, and wherein the virtualization host is a virtual hosting environment partitioned from the physical hardware resources, and the workload provision manager is further configured to isolate differences between a policy engine interface for processing the customized corrective actions in the virtualization host between other policy engine interfaces for other customized corrective actions in other virtualization hosts in a virtualization host specific mapping for controlling and sharing the physical hardware resources between the virtualization host and the other virtualization hosts.

19. The system of claim 18 , wherein the workload includes a packaged module that is configured to be loaded into the guest operating system of the physical hardware resources for performing the dynamic self-adjustment and self-provisioning.

20. The system of claim 19 , wherein the packaged module includes a hardware metrics reporting mechanism, a policy enforcement mechanism, and hardware resource constraint information, each of which is configured to interact with, one another within the operating system of the virtualization host.

Assignments (11)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2026
From: MICRO FOCUS SOFTWARE INC.
To: MICRO FOCUS LLC
Reel/Frame 073758/0781 →
RELEASE OF SECURITY INTEREST REEL/FRAME 035656/0251 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.)
Reel/Frame 062623/0009 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME - : 044183/0718 Recorded Mar 18, 2019
From: JPMORGAN CHASE BANK, N.A.
To: SUSE LLC
Reel/Frame 048628/0436 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME - 042388/0386 AND REEL/FRAME - 044183/0577 Recorded Mar 18, 2019
From: JPMORGAN CHASE BANK, N.A.
To: SUSE LLC
Reel/Frame 048628/0221 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2019
From: MICRO FOCUS SOFTWARE INC.
To: SUSE LLC
Reel/Frame 048379/0548 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT TYPO IN APPLICATION NUMBER 10708121 WHICH SHOULD BE 10708021 PREVIOUSLY RECORDED ON REEL 042388 FRAME 0386. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF SUCCESSION OF AGENCY. Recorded Jul 26, 2018
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 048793/0832 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042388/0386 →
CHANGE OF NAME Recorded Sep 13, 2016
From: NOVELL, INC.
To: MICRO FOCUS SOFTWARE INC.
Reel/Frame 040020/0703 →
SECURITY INTEREST Recorded May 13, 2015
From: MICRO FOCUS (US), INC.; BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; NOVELL, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 035656/0251 →