IP Library Granted Patent US 9,639,384
Granted Patent B2
US 9,639,384 · App. 13/970,847 · Granted May 2, 2017

Method and system for fast provisioning of virtual desktop

Inventors: Sivaprasad Govindankutty (Bangalore, IN); Jubish K. Jose (Bangalore, IN)
Assignee: VMware, Inc.
G06F9/45533G06F8/63G06F9/4401G06F9/44505G06F9/45558G06F2009/45562G06F2009/45575
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,639,384
App. No.
13/970,847
Granted
May 2, 2017
Kind
B2
Abstract

Techniques are disclosed for provisioning a virtual desktop. A VM hosting the desktop may be joined to a domain using offline domain join and customized by modifying contents of a virtual disk of the VM, as per the customization requirements, without powering on the VM. While the VM is powered off, a composer application customizes the VM by applying system and user profile configuration changes and network configuration changes, as well as optionally creating a user data disk and pushing to the VM a script for formatting said disk during the VM's first power-on. In addition, while the VM is powered off, the composer invokes a domain joining tool to join the VM to a domain controller without having to reboot the VM. A snapshot is then taken of the VM, after which the VM is then powered on and the script for formatting the user data disk executes.

Claims (56)

1. A computer-implemented method of provisioning a virtual desktop hosted on a virtual machine (VM) without rebooting the VM, comprising:

before powering on the VM on which the virtual desktop being provisioned is hosted:

applying configurations and customizations to a virtual disk of the VM, by:

mounting the virtual disk to an application external to the VM;

loading one or more registry hives from the mounted virtual disk; and

modifying registry keys in the one or more loaded registry hives, wherein the modified registry keys are associated with at least one of user profile settings, system settings, and network settings that are modified for provisioning the virtual desktop,

joining the VM to a domain,

creating a user data disk,

pushing a script, which is configured to at least format the user data disk, to the VM, and

taking a reference snapshot of the VM, thereby permitting the virtual desktop to be reverted to a state of the reference snapshot, wherein the reference snapshot is taken prior to powering on the VM a first time and completing customization of the VM;

powering on the VM; and

while the VM is powered on, executing the script to perform additional customizations including formatting the user data disk subsequent to powering on the VM.

2. The computer-implemented method of claim 1 , wherein applying configurations and customizations to the virtual disk of the VM includes:

applying system and user profile configurations; and

applying a network configuration.

3. The computer-implemented method of claim 1 , wherein the script further includes activities, other than formatting the user data disk, that are performed after the reference snapshot is taken and the VM is powered on.

4. The computer-implemented method of claim 3 , wherein the activities include registering an operating system of the VM.

5. The computer-implemented method of claim 3 , wherein the activities include assigning a driver to the user data disk.

6. The computer-implemented method of claim 1 , wherein the VM is joined to the domain using Microsoft Offline Domain Join.

7. The method of claim 1 , wherein the application external to the VM accesses the virtual disk by invoking an application programming interface (API).

8. A non-transitory computer-readable storage medium comprising instructions for causing a computer system to carry out a method of provisioning a virtual desktop hosted on a virtual machine (VM) without rebooting the VM, the method comprising:

before powering on the VM on which the virtual desktop being provisioned is hosted:

applying configurations and customizations to a virtual disk of the VM, by:

mounting the virtual disk to an application external to the VM;

loading one or more registry hives from the mounted virtual disk; and

modifying registry keys in the one or more loaded registry hives, wherein the modified registry keys are associated with at least one of user profile settings, system settings, and network settings that are modified for provisioning the virtual desktop,

joining the VM to a domain,

creating a user data disk,

pushing a script, which is configured to at least format the user data disk, to the VM, and

taking a reference snapshot of the VM, thereby permitting the virtual desktop to be reverted to a state of the reference snapshot, wherein the reference snapshot is taken prior to powering on the VM a first time and completing customization of the VM;

powering on the VM; and

while the VM is powered on, executing the script to perform additional customizations including formatting the user data disk subsequent to powering on the VM.

9. The non-transitory computer-readable storage medium of claim 8 , wherein applying configurations and customizations to the virtual disk of the VM includes:

applying system and user profile configurations; and

applying a network configuration.

10. The non-transitory computer-readable storage medium of claim 8 , wherein the script further includes activities, other than formatting the user data disk, that are performed after the reference snapshot is taken and the VM is powered on.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the activities include registering an operating system of the VM.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the activities include assigning a driver to the user data disk.

13. The non-transitory computer-readable storage medium of claim 8 , wherein the VM is joined to the domain using Microsoft Offline Domain Join.

14. A system, comprising:

a processor; and

a memory, wherein the memory includes a program configured to perform operations for provisioning a virtual desktop hosted on a virtual machine (VM) without rebooting the VM, the operations comprising:

before powering on the VM on which the virtual desktop being provisioned is hosted:

applying configurations and customizations to a virtual disk of the VM, by:

mounting the virtual disk to an application external to the VM,

loading one or more registry hives from the mounted virtual disk, and

modifying registry keys in the one or more loaded registry hives, wherein the modified registry keys are associated with at least one of user profile settings, system settings, and network settings that are modified for provisioning the virtual desktop;

joining the VM to a domain;

creating a user data disk;

pushing a script, which is configured to at least format the user data disk, to the VM; and

taking a reference snapshot of the VM, thereby permitting the virtual desktop to be reverted to a state of the reference snapshot, wherein the reference snapshot is taken prior to powering on the VM a first time and completing customization of the VM;

powering on the VM; and

while the VM is powered on, executing the script to perform additional customizations including formatting the user data disk subsequent to powering on the VM.

15. The system of claim 14 , wherein applying configurations and customizations to the virtual disk of the VM includes:

applying system and user profile configurations; and

applying a network configuration.

Assignments (4)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2013
From: GOVINDANKUTTY, SIVAPRASAD; JOSE, JUBISH K.
To: VMWARE, INC.
Reel/Frame 031042/0103 →
Continuity (1)
Related Publication 20150058837A1 · Feb 26, 2015