IP Library Granted Patent US 11,093,269
Granted Patent B1
US 11,093,269 · App. 15/353,992 · Granted Aug 17, 2021

Managing resources in virtualization systems

Inventors: Yechiam Yemini (Alpine, NJ); Shmuel Kliger (Chappaqua, NY); Danilo Florissi (Briarcliff Manor, NY); Shai Benjamin (Mevaseret Zion, IL); Yuri Rabover (San Carlos, CA); Mor Cohen (New York, NY); Enlin Xu (New York, NY); Endre Sara (Briarcliff Manor, NY)
Assignee: Turbonomic, Inc.
G06F9/45558G06F9/45545G06Q10/0631G06F2009/45579G06F2009/45595
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 11,093,269
App. No.
15/353,992
Granted
Aug 17, 2021
Kind
B1
Abstract

Methods, systems, and apparatus, including computer program products, for managing resources in virtualization systems, including multi-cloud systems. The use of supply chain economics alone and in combination with other techniques offers a unified platform to integrate, optimize or improve, and automate resource management in a virtualization system. These techniques may be used to monitor and control the delivery of service level agreements and software licenses. They may also be used to monitor and control contention of computing resources in a virtualization system, and to suspend or terminate computing resources.

Claims (20)

1. A computer-implemented method, comprising:

allocating one or more respective computer resources from a first computer server to a first and second virtual machine operating in a virtualization system, wherein each virtual machine is a software implementation of a computer that runs at least one guest operating system and executes one or more programs or applications on the guest operating system and the first and second virtual machines have correlated peaks of input-output (I/O) flows;

comparing target and actual I/O performance metrics associated with the first virtual machine;

initiating at least one of a suspension sequence or a termination sequence for the first virtual machine on the first computer server based at least in part on the comparison of target and actual I/O performance metrics; and

upon initiation of at least one of the suspension sequence or the termination sequence for the first virtual machine, automatically initiating at least one of a suspension sequence or a termination sequence for the second virtual machine on the first computer server based at least in part on the initiation of at least one of the suspension sequence or the termination sequence for the first virtual machine so as to de-correlate the peaks of I/O flows associated with the first and second virtual machines.

2. The computer-implemented method of claim 1 , wherein initiating at least one of the suspension sequence or the termination sequence for the first virtual machine is based at least in part on a determination that the first virtual machine is to be moved to a second computer server, different from the first computer server.

3. The computer-implemented method of claim 2 , further comprising initiating a migration of the first virtual machine from the first computer server in which the first virtual machine is located to the second computer server.

4. The computer-implemented method of claim 2 , wherein automatically initiating at least one of the suspension sequence or the termination sequence for the second virtual machine is based at least in part on a determination that the second virtual machine is to be moved to the second computer server.

5. The computer-implemented method of claim 4 , further comprising initiating a migration of the second virtual machine from the first computer server in which the second virtual machine is located to the second computer server.

6. A computer system configured to perform operations comprising:

allocating one or more respective computer resources from a first computer server to a first and second virtual machine operating in a virtualization system, wherein each virtual machine is a software implementation of a computer that runs at least one guest operating system and executes one or more programs or applications on the guest operating system and the first and second virtual machines have correlated peaks of input-output (I/O) flows;

comparing target and actual I/O performance metrics associated with the first virtual machine;

initiating at least one of a suspension sequence or a termination sequence for the first virtual machine on the first computer server based at least in part on the comparison of target and actual I/O performance metrics; and

upon initiation of at least one of the suspension sequence or the termination sequence for the first virtual machine, automatically initiating at least one of a suspension sequence or a termination sequence for the second virtual machine on the first computer server based at least in part on the initiation of at least one of the suspension sequence or the termination sequence for the first virtual machine so as to de-correlate the peaks of I/O flows associated with the first and second virtual machines.

7. The computer-implemented method of claim 2 , wherein automatically initiating at least one of the suspension sequence or the termination sequence for the second virtual machine is based at least in part on a determination that the second virtual machine is to be moved to a third computer server, different from the first and second computer servers.

8. The computer system of claim 6 , wherein initiating at least one of the suspension sequence or the termination sequence for the first virtual machine is based at least in part on a determination that the first virtual machine is to be moved to a second computer server, different from the first computer server.

9. The computer system of claim 8 , wherein the operations further comprise initiating a migration of the first virtual machine from the first computer server in which the first virtual machine is located to the second computer server.

10. The computer system of claim 8 , wherein automatically initiating at least one of the suspension sequence or the termination sequence for the second virtual machine is based at least in part on a determination that the second virtual machine is to be moved to the second computer server.

11. The computer system of claim 10 , wherein the operations further comprise initiating a migration of the second virtual machine from the first computer server in which the second virtual machine is located to the second computer server.

12. The computer system of claim 8 , wherein automatically initiating at least one of the suspension sequence or the termination sequence for the second virtual machine is based at least in part on a determination that the second virtual machine is to be moved to a third second computer server, different from the first and second servers.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2022
From: TURBONOMIC, INC.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 062202/0030 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 17, 2016
From: YEMINI, YECHIAM; KLIGER, SHMUEL; FLORISSI, DANILO; BENJAMIN, SHAI; RABOVER, YURI; COHEN, MOR; XU, ENLIN; SARA, ENDRE
To: VMTURBO, INC.
Reel/Frame 040355/0498 →
CHANGE OF NAME Recorded Nov 17, 2016
From: VMTURBO, INC.
To: TURBONOMIC, INC.
Reel/Frame 040635/0809 →
Continuity (5)
Division 14539973 · Nov 12, 2014
Continuation In Part 12492890 · Jun 26, 2009
Provisional Application 62077898 · Nov 10, 2014
Provisional Application 62077852 · Nov 10, 2014
Provisional Application 62077860 · Nov 10, 2014
Cited By (1)
US 12,647,329