IP Library Granted Patent US 10,289,440
Granted Patent B2
US 10,289,440 · App. 15/335,350 · Granted May 14, 2019

Capacity risk management for virtual machines

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,289,440
App. No.
15/335,350
Granted
May 14, 2019
Kind
B2
Abstract

An access data collector collects access assignment data characterizing active access assignment operations of a hypervisor in assigning host computing resources among virtual machines for use in execution of the virtual machines. Then, a capacity risk indicator calculator calculates a capacity risk indicator characterizing a capacity risk of the host computing resources with respect to meeting a prospective capacity demand of the virtual machines, based on the access assignment data.

Claims (31)

1. A system including a non-transitory computer-readable storage medium storing instructions executable by at least one processor, the system comprising:

a data collector configured to collect data characterizing assignment operations of a hypervisor assigning a plurality of host computing resources among a plurality of virtual machines for use in execution of the plurality of virtual machines; and

a utilization monitor configured to,

obtain utilization data for the plurality of host computing resources and determine, for each host computing resource, a first capacity risk assessment pertaining to CPU usage, memory usage, and storage usage utilized by the plurality of virtual machines hosted by a respective host computing resource,

determine, for the hypervisor, a second capacity risk assessment based on pressure associated with detected latency corresponding to a plurality of activity indicators of the hypervisor, the pressure being a measure of resource saturation risk associated with hypervisor access of CPU, memory, or storage resources, wherein the second capacity risk takes into account a variable penalty value selected based on an amount of the detected latency corresponding to the plurality of activity indicators, and

generate an overall capacity risk assessment for the hypervisor assigning the plurality of host computing resources, wherein the overall capacity risk is based on the first capacity risk assessment and the second capacity risk assessment.

2. The system of claim 1 , wherein determining the first capacity risk assessment is based at least in part on the utilization data obtained by the utilization monitor.

3. The system of claim 1 , wherein the first capacity risk assessment is performed using predefined minimum and maximum threshold values that define acceptable operating ranges for metrics corresponding to the utilization data.

4. The system of claim 1 , wherein the second capacity risk assessment includes a summary of risk determined for a plurality of clusters experiencing latency corresponding to the plurality of activity indicators associated with at least a portion of the plurality of computing resources in at least one cluster.

5. The system of claim 4 , wherein at least one penalty value is assigned to one or more of the plurality of clusters, in response to detecting that wait times for retrieving a computing resource are above a predefined maximum time threshold for the one or more clusters, the at least one penalty value indicating an increased likelihood of saturation risk for the one or more clusters.

6. A method comprising:

obtaining, for a plurality of host computing resources, utilization data and determining, for each host computing resource, a first capacity risk assessment, the first capacity risk assessment pertaining to CPU usage, memory usage, and storage usage utilized by a plurality of virtual machines hosted by a respective host computing resource;

determining, for the hypervisor, a second capacity risk assessment based on pressure associated with detected latency corresponding to a plurality of activity indicators of the hypervisor, the pressure being a measure of resource saturation risk associated with hypervisor access of CPU, memory, or storage resources, wherein the second capacity risk takes into account a variable penalty value selected based on an amount of the detected latency corresponding to the plurality of activity indicators, and

generating an overall capacity risk assessment for the hypervisor assigning the plurality of host computing resources, wherein the overall capacity risk is based on the first capacity risk assessment and the second capacity risk assessment.

7. The method of claim 6 , further comprising obtaining data characterizing assignment operations of the hypervisor in assigning the plurality of host computing resources among the plurality of virtual machines for use in execution of the plurality of virtual machines, the data being used to generate the first capacity risk assessment.

8. The method of claim 6 , wherein determining the first capacity risk assessment is based at least in part on the utilization data obtained by a utilization monitor.

9. The method of claim 6 , wherein the first capacity risk assessment is performed using predefined minimum and maximum threshold values that define acceptable operating ranges for metrics corresponding to the utilization data.

10. The method of claim 6 , wherein the second capacity risk assessment includes a summary of risk determined for a plurality of clusters experiencing latency corresponding to the plurality of activity indicators associated with at least a portion of the plurality of computing resources in at least one cluster.

11. The method of claim 10 , wherein at least one penalty value is assigned to one or more of the plurality of clusters, in response to detecting that wait times for retrieving a computing resource are above a predefined maximum time threshold for the one or more clusters, the at least one penalty value indicating an increased likelihood of saturation risk for the one or more clusters.

12. A computer program product including instructions recorded on a non-transitory computer-readable storage medium and configured, when executed by at least one processor, to cause the at least one processor to

obtain, for a plurality of host computing resources, utilization data and determining, for each host computing resource, a first capacity risk assessment, the first capacity risk assessment pertaining to CPU usage, memory usage, and storage usage utilized by a plurality of virtual machines hosted by a respective host computing resource;

determine, for the hypervisor, a second capacity risk assessment based on pressure associated with detected latency corresponding to a plurality of activity indicators of the hypervisor, the pressure being a measure of resource saturation risk associated with hypervisor access of CPU, memory, or storage resources, wherein the second capacity risk takes into account a variable penalty value selected based on an amount of the detected latency corresponding to the plurality of activity indicators, and

generate an overall capacity risk assessment for the hypervisor assigning the plurality of host computing resources, wherein the overall capacity risk is based on the first capacity risk assessment and the second capacity risk assessment.

13. The computer program product of claim 12 , further comprising obtaining data characterizing assignment operations of the hypervisor in assigning the plurality of host computing resources among the plurality of virtual machines for use in execution of the plurality of virtual machines, the data being used to generate the first capacity risk assessment.

14. The computer program product of claim 12 , wherein the first capacity risk assessment is performed using predefined minimum and maximum threshold values that define acceptable operating ranges for metrics corresponding to the utilization data.

15. The computer program product of claim 12 , wherein the first capacity risk assessment is determined using predefined minimum and maximum threshold values to assess the utilization data.

16. The computer program product of claim 12 , wherein the second capacity risk assessment includes a summary of risk determined for a plurality of clusters experiencing latency corresponding to the plurality of activity indicators associated with at least a portion of the plurality of computing resources in at least one cluster.

17. The computer program product of claim 16 , wherein at least one penalty value is assigned to one or more of the plurality of clusters, in response to detecting that wait times for retrieving a computing resource are above a predefined maximum time threshold for the one or more clusters, the at least one penalty value indicating an increased likelihood of saturation risk for the one or more clusters.

18. The system of claim 1 , wherein the second capacity risk assessment further includes an assessment of an amount of time elapsed before an individual virtual machine receives CPU resources, the elapsed time corresponding to a delay taken for an access queue to assign resources using a processor of at least one of the plurality of host computing systems, wherein a higher delay indicates an increased risk of saturation of the at least one host computing resource.

19. The method of claim 6 , wherein the second capacity risk assessment further includes an assessment of an amount of time elapsed before an individual virtual machine receives CPU resources, the elapsed time corresponding to a delay taken for an access queue to assign resources using a processor of at least one of the plurality of host computing systems, wherein a higher delay indicates an increased risk of saturation of the at least one host computing resource.

20. The computer program product of claim 12 , wherein the second capacity risk assessment further includes an assessment of an amount of time elapsed before an individual virtual machine receives CPU resources, the elapsed time corresponding to a delay taken for an access queue to assign resources using a processor of at least one of the plurality of host computing systems, wherein a higher delay indicates an increased risk of saturation of the at least one host computing resource.

Assignments (17)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Sep 10, 2019
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 050327/0634 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2019
From: CAPLAN SOFTWARE DEVELOPMENT S.R.L.
To: BMC SOFTWARE, INC.
Reel/Frame 048782/0245 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2019
From: BMC SOFTWARE, INC.
To: CAPLAN SOFTWARE DEVELOPMENT S.R.L.
Reel/Frame 048782/0213 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 6, 2018
From: SIVASUBRAMANIAN, JEYASHREE; APTE, SUDHEER
To: BMC SOFTWARE, INC.
Reel/Frame 047695/0772 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY INTEREST Recorded Aug 10, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043514/0845 →