IP Library Granted Patent US 9,098,322
Granted Patent B2
US 9,098,322 · App. 13/840,053 · Granted Aug 4, 2015

Managing a server template

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 9,098,322
App. No.
13/840,053
Granted
Aug 4, 2015
Kind
B2
Abstract

A non-transitory computer-readable storage medium may comprise instructions for managing a server template stored thereon. When executed by at least one processor, the instructions may be configured to cause at least one computing system to at least convert the server template to a corresponding virtual machine, manage the corresponding virtual machine, and convert the corresponding virtual machine back into a template format.

Claims (54)

1. A non-transitory computer-readable storage medium comprising instructions for managing a server template stored thereon that, when executed by at least one processor, are configured to cause at least one computing system to at least:

determine whether a management resource pool has sufficient resources to create a corresponding virtual machine within a server;

if sufficient resources do not exist in the management resource pool and the server is a template-type server, free up computing capacity in the management resource pool by removing a running virtual machine from the management resource pool;

convert the server template to the corresponding virtual machine;

manage the corresponding virtual machine; and

based on the converting and the managing, convert the corresponding virtual machine back into the server template.

2. The non-transitory computer-readable storage medium of claim 1 , wherein the converting the server template comprises creating a copy of the server template and adding identification information to the copy of the server template, the copy of the server template, including the added identification information, being the corresponding virtual machine.

3. The non-transitory computer-readable storage medium of claim 2 , wherein the converting the corresponding virtual machine back into the server template comprises removing the identification information from the copy of the server template, the copy of the server template with the identification information removed having a template format.

4. The non-transitory computer-readable storage medium of claim 2 , wherein the converting the corresponding virtual machine back into the server template comprises:

removing the identification information from the copy of the server template; and

deleting the server template.

5. The non-transitory computer-readable storage medium of claim 1 , wherein the managing the corresponding virtual machine comprises performing a server provisioning task on the corresponding virtual machine.

6. The non-transitory computer-readable storage medium of claim 1 , wherein the managing the corresponding virtual machine comprises patching an operating system of the corresponding virtual machine.

7. The non-transitory computer-readable storage medium of claim 1 , wherein the managing the corresponding virtual machine comprises presenting contents of the corresponding virtual machine in a browser.

8. The non-transitory computer-readable storage medium of claim 1 , wherein the managing the corresponding virtual machine comprises presenting applications that are part of the server template in a browser.

9. The non-transitory computer-readable storage medium of claim 1 , wherein the managing the corresponding virtual machine comprises copying a file into the corresponding virtual machine.

10. The non-transitory computer-readable storage medium of claim 1 , wherein the managing the corresponding virtual machine comprises taking a snapshot of the corresponding virtual machine.

11. The non-transitory computer-readable storage medium of claim 1 , wherein the managing the corresponding virtual machine comprises determining whether the corresponding virtual machine complies with a regulatory policy.

12. The non-transitory computer-readable storage medium of claim 1 , wherein:

the instructions are further configured to cause the at least one computing system to free up computing capacity in a resource pool by removing a running virtual machine from the resource pool; and

the converting the server template includes creating the corresponding virtual machine in the resource pool.

13. The non-transitory computer-readable storage medium of claim 12 , wherein:

the instructions are further configured to cause the at least one computing system to determine whether the server template is a template-type server or a virtual machine before freeing up the computing capacity; and

the freeing up computing capacity includes freeing up computing capacity in the resource pool based on determining that the server template is a template-type server.

14. The non-transitory computer-readable storage medium of claim 1 , wherein:

the instructions are further configured to cause the at least one computing system to determine whether the server template is a template-type server or a virtual machine after managing the corresponding virtual machine; and

the converting the corresponding virtual machine back into the server template includes converting the corresponding virtual machine back into the server template based on determining that the server template is a template-type server.

15. A non-transitory computer-readable storage medium comprising instructions for managing a first server, a second server, and a third server stored thereon, the instructions being configured to cause at least one computing system to at least:

determine that the first server is a template-type server;

based on determining that the first server is a template-type server, determine whether a management resource pool has sufficient resources available to convert the first server from a template-type server to a first virtual machine;

based on determining that the management resource pool does not have sufficient resources available to convert the first server from the template-type server to the first virtual machine, free up capacity in the management resource pool by removing a running virtual machine from the management resource pool;

after freeing up capacity in the management resource pool, convert the first server to a first virtual machine, the first virtual machine corresponding to the first server;

after converting the first server to the first virtual machine, manage the first virtual machine;

after managing the first virtual machine, convert the first virtual machine back to a template-type server;

determine that the second server is a template-type server;

based on determining that the second server is a template-type server, determine whether the management resource pool has sufficient resources available to convert the second server from a template-type server to a second virtual machine;

based on determining that the management resource pool does have sufficient resources, convert the second server to a second virtual machine, the second virtual machine corresponding to the second server;

after converting the second server to the second virtual machine, manage the second virtual machine;

after managing the second virtual machine, convert the second virtual machine back to a template-type server;

determine that the third server is not a template-type server; and

manage the third server.

16. A computer-implemented method comprising:

determining whether a management resource pool has sufficient resources to create a corresponding virtual machine within a server;

if sufficient resources do not exist in the management resource pool and the server is a template-type server, freeing up computing capacity in the management resource pool by removing a running virtual machine from the management resource pool;

converting a server template to the corresponding virtual machine;

managing the corresponding virtual machine; and

based on the converting and the managing, converting the corresponding virtual machine back into the server template.

17. The method of claim 16 , wherein the converting the server template comprises creating a copy of the server template and adding identification information to the copy of the server template, the copy of the server template, including the added identification information, being the corresponding virtual machine.

18. The method of claim 17 , wherein the converting the corresponding virtual machine back into the server template comprises removing the identification information from the copy of the server template, the copy of the server template with the identification information removed having a template format.

19. The method of claim 17 , wherein the converting the corresponding virtual machine back into the server template comprises:

removing the identification information from the copy of the server template; and

deleting the server template.

20. The method of claim 16 , further comprising:

freeing up computing capacity in a resource pool by removing a running virtual machine from the resource pool; and wherein the converting the server template includes creating the corresponding virtual machine in the resource pool.

Assignments (15)
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 (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 →
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 →
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 052844/0646 →
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 →
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 Jul 27, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043351/0189 →
SECURITY INTEREST Recorded Jul 27, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043351/0231 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 20, 2013
From: APTE, SUJIT; GHAISAS, ABHAY
To: BMC SOFTWARE, INC.
Reel/Frame 030048/0959 →