IP Library › Granted Patent US 8,819,673
Granted Patent B1
US 8,819,673 · App. 11/753,519 · Granted Aug 26, 2014

Systems and methods for java virtual machine management

Inventors: Christopher Thomas Wilkinson (San Antonio, TX); Neelsen Edward Cyrus (San Antonio, TX)
Assignee: United Services Automobile Association (USAA)
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 8,819,673
App. No.
11/753,519
Granted
Aug 26, 2014
Kind
B1
Abstract

A virtual machine (VM) management utility tool may deploy an object model that may persist one or more virtual machine dependencies and relationships. Through a web front-end interface, for example, the VMs may be started in a specific order or re-booted, and the tool automatically determines the additional VMs that need to be re-booted in order to maintain the integrity of the environment. Through the web interface, for example, the object model may be managed, and start-up orders or VM dependencies may be updated. For VMs that may not start under load, the object model may block access to the VM until the VM is fully initialized.

Claims (37)

1. A non-transitory computer-readable storage medium having computer-readable instructions comprising a method for:

selecting at least one action associated with at least one virtual machine (VM);

determining if one of the at least one VM has any dependencies upon other VMs;

if so, taking the dependencies into account when the at least one action is performed;

storing a list of one or more blocked VMs to which any request is prevented from being made, wherein the list of one or more blocked VMs includes the at least one VM associated with the at least one selected action, and wherein the list further includes a VM depending from a blocked VM in the list; and

preventing each of the blocked and dependent VMs of the list from receiving any requests from a user.

2. The computer-readable storage medium of claim 1 , wherein the at least one VM comprises a Java virtual machine.

3. The computer-readable storage medium of claim 1 , wherein the at least one action comprises re-boot or do not start.

4. The computer-readable storage medium of claim 1 , further comprising instructions for maintaining a do not start list including the VMs that are not to be started.

5. The computer-readable storage medium of claim 1 , further comprising instructions for maintaining a list of VMs that are prevented from starting under load.

6. The computer-readable storage medium of claim 5 , further comprising instructions for starting the at least one VM based on the associated at least one action.

7. The computer-readable storage medium of claim 6 , wherein if a VM is prevented from starting under load, then modifying a plugin on a server and removing the VM, or blocking a transport port of the VM and unblocking the port after the VM is initialized.

8. A non-transitory computer-readable medium having computer-readable instruction to manage virtual machines (VMs), comprising a method for:

determining a start order for the VMs based on weights associated with the VMs, wherein weights are managed and modified by a publishing module;

starting the VMs pursuant to the start order;

storing a list of one or more blocked VMs to which any request is prevented from being made, wherein the list of one or more blocked VMs includes the at least one VM associated with the at least one selected action, and wherein the list further includes a VM depending from a blocked VM in the list; and

preventing each of the blocked and dependent VMs of the list from receiving any requests from a user.

9. The computer-readable storage medium of claim 8 , wherein the start order is further based on VM dependencies.

10. The computer-readable storage medium of claim 9 , further comprising instructions for setting at least one VM dependency prior to starting.

11. The computer-readable storage medium of claim 9 , further comprising instructions for setting or modifying at least one VM dependency after starting.

12. The computer-readable storage medium of claim 9 , further comprising instructions for starting, stopping, or re-booting at least one VM in accordance with at least one VM dependency.

13. The computer-readable storage medium of claim 8 , further comprising instructions for:

determining at least one VM to be re-booted; and

determining additional VMs to be re-booted based on the at least one VM to be re-booted.

14. The computer-readable storage medium of claim 8 , further comprising instructions for determining at least one VM that cannot start under load, and blocking access to the at least one VM until the at least one VM is fully initialized.

15. A non-transitory computer-readable medium having computer-readable instructions to start a plurality of virtual machines (VMs), comprising a method for:

maintaining the VMs in a set of servers;

determining which VMs in a set of servers are to be started;

storing a list of one or more blocked VMs to which any request is prevented from being made, wherein the list of one or more blocked VMs includes the at least one VM associated with the at least one selected action, and wherein the list further includes a VM depending from a blocked VM in the list;

starting the VMs in a predetermined order such that weights and dependencies of the VMs are taken into account; and

preventing each of the blocked and dependent VMs of the list from receiving any requests from a user.

16. The computer-readable storage medium of claim 15 , wherein determining which VMs are to be started comprises checking a predetermined list of actions associated with each VM.

17. The computer-readable storage medium of claim 16 , wherein the actions comprise start, do not start, do not start under load, or re-boot.

18. The computer-readable storage medium of claim 16 , further comprising instructions for receiving updates to the dependencies and predetermined list of actions.

19. The computer-readable storage medium of claim 15 , wherein the dependencies of the VMs are based on predetermined weights associated with each VM.

20. The computer-readable storage medium of claim 19 , wherein equally weighted VMs are started in parallel.

21. The computer-readable storage medium of claim 15 , wherein dependency mapping is used to determine the dependencies.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2018
From: UNITED SERVICES AUTOMOBILE ASSOCIATION
To: INTEL CORPORATION
Reel/Frame 047731/0162 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2007
From: WILKINSON, CHRISTOPHER THOMAS; CYRUS, NEELSEN EDWARD
To: UNITED SERVICES AUTOMOBILE ASSOCIATION (USAA)
Reel/Frame 019869/0487 →