IP Library Granted Patent US 8,365,166
Granted Patent B2
US 8,365,166 · App. 11/708,217 · Granted Jan 29, 2013

System and method for automated provisioning of VMware image instances

Inventor: Jeffrey Stephan Hodges (Sandy, UT)
Assignee: Novell, Inc.
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,365,166
App. No.
11/708,217
Granted
Jan 29, 2013
Kind
B2
Abstract

A system and method for provisioning virtual machines for a demonstration are described. In one embodiment, the system comprises a scheduling server for enabling a user to schedule a demonstration by selecting a demonstration set and related details using a scheduling web page and a plurality of provisioning servers each connected to the scheduling server via an Internet connection, each of the provisioning servers having stored thereon a plurality of demonstration sets each comprising at least one VM. Responsive to selection of a demonstration set by the user, the scheduling server selects one of the provisioning servers to host the scheduled demonstration and notifies the selected provisioning server of details regarding the scheduled demonstration. The selected provisioning server executes a provisioning process for modifying a configuration file of each at least one VM such that a network number therein is set to a unique number associated with the user and the scheduled demonstration, and modifying a VM snapshot file associated with each at least one VM such that a network number therein is set to the unique number associated with the user and the scheduled demonstration.

Claims (43)

1. A system for provisioning a demonstration comprising at least one virtual machine (“VM”) instance, the system comprising:

a scheduling server for enabling a user to schedule a demonstration by selecting a demonstration set and a time and duration of the demonstration using a scheduling web page; and

a plurality of provisioning servers each connected to the scheduling server via an Internet connection, each of the provisioning servers having stored thereon a plurality of demonstration sets each comprising at least one VM;

wherein responsive to selection of a demonstration set by the user, the scheduling server selects one of the provisioning servers to host the scheduled demonstration and notifies the selected provisioning server of the time and duration of the scheduled demonstration; and

wherein the selected provisioning server executes a provisioning process for:

modifying a configuration file of each at least one VM to set a network number therein to a unique number associated with the user and the scheduled demonstration; and

modifying a VM snapshot file associated with each at least one VM to set a network number therein to the unique number associated with the user and the scheduled demonstration;

wherein subsequent to the scheduling a demonstration using the scheduling web page, the user is provided with at least one password and information for enabling the user to access and view the demonstration; and

wherein subsequent to providing the user with at least one password and information, notifying the user when the demonstration is ready to be accessed with the at least one password and information.

2. The system of claim 1 wherein each of the provisioning servers can host a demonstration for each of multiple users simultaneously up to a predetermined maximum number of users.

3. The system of claim 1 wherein the provisioning servers are divided into a plurality of server farms.

4. The system of claim 3 wherein each of the server farms is situated in a location that is geographically remote from the other server farms.

5. The system of claim 3 wherein at least one of the server farms is situated in a location that is geographically remote from the scheduling server.

6. The system of claim 1 wherein the selected provisioning server terminates the scheduled demonstration at a predetermined time, wherein the predetermined time is specified by the user during scheduling of the demonstration.

7. The system of claim 1 wherein a provisioning server location is specified by the user during scheduling of the demonstration.

8. The system of claim 7 wherein the scheduling server selects one of the provisioning servers to host the scheduled demonstration based at least in part on a location and availability of the provisioning server.

9. The system of claim 1 wherein the provisioning process comprises a script.

10. A method for provisioning a demonstration comprising at least one virtual machine (“VM”) instance, the method comprising:

responsive to a user's scheduling a demonstration via a web page presented by a scheduling server, wherein the scheduling a demonstration comprises the user selecting one of a plurality of available demonstration sets and specifying a time and duration of the demonstration, the scheduling server selecting a provisioning server to host the demonstration;

notifying the selected provisioning server of the scheduled demonstration;

the selected provisioning server modifying a configuration file of each VM comprising the selected demonstration set to provide the user with a private network;

the selected provisioning server modifying a VM snapshot file associated with each at least one VM to set a network number therein to the unique number associated with the user and the scheduled demonstration;

subsequent to the scheduling a demonstration using the web page presented by the scheduling server, providing the user with at least one password and information for enabling the user to access and view the demonstration; and

subsequent to providing the user with at least one password and information, notifying the user when the demonstration is ready to be accessed.

11. The method of claim 10 further comprising terminating the demonstration at a time scheduled by the user.

12. The method of claim 11 further comprising:

receiving a request from the user to terminate the demonstration at a time different than the time scheduled by the user; and

terminating the demonstration at the requested time.

13. The method of claim 10 wherein the notifying comprises placing a work order file in a directory associated with the selected provisioning server, wherein the directory is located on the scheduling server and wherein the selected provisioning server checks the associated directory periodically to determine whether a work order has been placed therein.

14. The method of claim 10 wherein the modifying configuration files of each VM comprising the selected demonstration set to provide the user with a private network comprises modifying a configuration file of each VM to set a network number therein to a unique number associated with the user and the scheduled demonstration.

15. The method of claim 14 wherein the selected provisioning server comprises a set of shared base files for the VMs and a master copy of a snapshot file for each VM.

16. A system for provisioning a demonstration comprising at least one virtual machine (“VM”) instance, the system comprising:

means for enabling a user to schedule a demonstration via a web page by selecting one of a plurality of available demonstration sets and specifying a time and duration of the demonstration;

means for selecting a provisioning server to host the demonstration;

means for notifying the selected provisioning server of the specified time and duration of and additional details regarding the scheduled demonstration;

means for causing the selected provisioning server to modify a configuration file of each VM comprising the selected demonstration set, thereby to provide the user with a private network;

means for causing the selected provisioning server to modify a VM snapshot file associated with each at least one VM to set a network number therein to the unique number associated with the user and the scheduled demonstration;

means for notifying the user of passwords and connection information subsequent to the user's scheduling the demonstration via the web page; and

means for notifying the user when the demonstration is ready to be accessed and viewed with the passwords and connection information.

17. The system of claim 16 further comprising means for terminating the demonstration at a time scheduled by the user.

18. The system of claim 16 further comprising means responsive to a request from the user for terminating the demonstration at a time different than the time originally scheduled by the user.

19. The system of claim 16 wherein the means for modifying a configuration file of each VM comprising the selected demonstration set to provide the user with a private network comprises means for modifying a configuration file of each VM to set a network number therein to a unique number associated with the user and the scheduled demonstration.

20. The system of claim 19 further comprising a set of shared base files for the VMs and a master copy of a snapshot file for each VM.

Assignments (15)
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 →
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 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0316 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034469/0057 →
RELEASE OF SECURITY INTEREST RECORDED AT REEL/FRAME 028252/0216 Recorded Nov 24, 2014
From: CREDIT SUISSE AG
To: NOVELL, INC.
Reel/Frame 034470/0680 →
GRANT OF PATENT SECURITY INTEREST SECOND LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0316 →
GRANT OF PATENT SECURITY INTEREST FIRST LIEN Recorded May 23, 2012
From: NOVELL, INC.
To: CREDIT SUISSE AG, AS COLLATERAL AGENT
Reel/Frame 028252/0216 →
RELEASE OF SECURITY IN PATENTS SECOND LIEN (RELEASES RF 026275/0018 AND 027290/0983) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0154 →
RELEASE OF SECURITY INTEREST IN PATENTS FIRST LIEN (RELEASES RF 026270/0001 AND 027289/0727) Recorded May 22, 2012
From: CREDIT SUISSE AG, AS COLLATERAL AGENT
To: NOVELL, INC.
Reel/Frame 028252/0077 →
GRANT OF PATENT SECURITY INTEREST (SECOND LIEN) Recorded May 13, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026275/0018 →
GRANT OF PATENT SECURITY INTEREST Recorded May 12, 2011
From: NOVELL, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 026270/0001 →
Continuity (1)
Related Publication 20080201709A1 · Aug 21, 2008