IP Library Granted Patent US 11,487,572
Granted Patent B1
US 11,487,572 · App. 17/233,181 · Granted Nov 1, 2022

Migration of cloud-based software application

Inventor: Michael Sabin (Fort Lauderdale, FL)
Assignee: CITRIX SYSTEMS, INC.
G06F9/45558G06F9/452H04L67/1001G06F2009/4557
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,487,572
App. No.
17/233,181
Filed
Apr 16, 2021
Granted
Nov 1, 2022
Kind
B1
Art Unit
2199
USPC
718/1
Abstract

A method for migrating a virtual desktop may include provisioning a first virtual machine to host the virtual desktop. The first virtual machine may be provisioned to include a first operating system disk and a first identity disk. A snapshot of the first operating system disk may be generated. The virtual desktop may be migrated to a second virtual machine by at least replacing a second operating system disk of the second virtual machine with the first operating system disk. The first identity disk of the first virtual machine and a second identity disk of the second virtual machine may remain unchanged by the migration. Related systems and articles of manufacture are also provided.

Claims (43)

1. A system, comprising:

at least one data processor; and

at least one memory storing instructions, which when executed by the least one data processor, cause the at least one data processor to at least:

provision a first virtual machine to host an application, the first virtual machine including a first operating system disk;

generate a snapshot of the first operating system disk, the snapshot comprising data capturing a state of the first operating system disk at a particular point in time; and

migrate the application to a second virtual machine hosted in a different data center than the first virtual machine, the migration including replacement of a second operating system disk of the second virtual machine with use of the snapshot of the first operating system disk while a first identity disk of the first virtual machine and a second identity disk of the second virtual machine remain unchanged by the migration of the application.

2. The system of claim 1 , wherein the application comprises a virtual desktop configured to provide, at a client device communicatively coupled with at least the first virtual machine or the second virtual machine, a desktop operating system.

3. The system of claim 2 , wherein the first operating system disk stores data associated with the virtual desktop, and wherein the data includes an operating system, one or more applications, and a user data.

4. The system of claim 2 , wherein the virtual desktop comprises a static virtual desktop configured to retain one or more changes applied to the virtual desktop upon restarting the first virtual machine or the second virtual machine hosting the virtual desktop.

5. The system of claim 1 , wherein the first virtual machine is provisioned with the first identity disk storing a first data, wherein the first data provides the first virtual machine with a first identity, wherein the second virtual machine is provisioned with the second identity disk storing a second data, wherein the second data provides the second virtual machine with a second identity different than the first of the first virtual machine.

6. The system of claim 1 , wherein the first virtual machine is included in a first data center and the second virtual machine is included in a second data center.

7. The system of claim 6 , wherein the first data center and the second data center are included in a same region or different regions, and wherein the regions comprise one or more data centers within a latency-defined perimeter and connected through a dedicated regional low-latency network.

8. The system of claim 6 , wherein the application is migrated in response to the first data center having performance below a threshold or the second data center having a better performance than the first data center.

9. The system of claim 6 , wherein the application is migrated in response to an outage at the first data center.

10. The system of claim 1 , wherein the migrating of the application further includes placing the second virtual machine in a maintenance mode or powering off the second virtual machine prior to replacement of the second operating system disk.

11. The system of claim 1 , wherein the provisioning of the first virtual machine includes providing a first catalog including the first virtual machine.

12. The system of claim 1 , wherein the snapshot of the first operating system disk is generated in response to a request to migrate the virtual desktop.

13. The system of claim 1 , wherein the snapshot of the first operating system disk is generated based on a schedule or a periodic intervals.

14. A computer-implemented method, comprising:

provisioning a first virtual machine to host an application, the first virtual machine including a first operating system disk;

generating a snapshot of the first operating system disk, the snapshot comprising data capturing a state of the first operating system disk at a particular point in time; and

migrating the application to a second virtual machine hosted in a different data center than the first virtual machine, the migration including replacement of a second operating system disk of the second virtual machine with use of the snapshot of the first operating system while a first identity disk of the first virtual machine and a second identity disk of the second virtual machine remain unchanged by the migration of the application.

15. The method of claim 14 , wherein the application comprises a virtual desktop configured to provide, at a client device communicatively coupled with at least the first virtual machine or the second virtual machine, a desktop operating system.

16. The method of claim 15 , wherein the first operating system disk stores data associated with the virtual desktop, and wherein the data includes an operating system, one or more applications, and a user data.

17. The method of claim 15 , wherein the virtual desktop comprises a static virtual desktop configured to retain one or more changes applied to the virtual desktop upon restarting the first virtual machine or the second virtual machine hosting the virtual desktop.

18. The method of claim 14 , wherein the first virtual machine is provisioned with the first identity disk storing a first data, wherein the first data provides the first virtual machine with a first identity, wherein the second virtual machine is provisioned with the second identity disk storing a second data, wherein the second data provides the second virtual machine with a second identity different than the first of the first virtual machine.

19. The method of claim 14 , wherein the first virtual machine is included in a first data center and the second virtual machine is included in a second data center, wherein the first data center and the second data center are included in a same region or different regions, and wherein the regions comprise one or more data centers within a latency-defined perimeter and connected through a dedicated regional low-latency network.

20. A non-transitory computer readable medium storing instructions, which when executed by at least one data processor, result in operations comprising:

provisioning a first virtual machine to host an application, the first virtual machine including a first operating system disk;

generating a snapshot of the first operating system disk, the snapshot comprising data capturing a state of the first operating system disk at a particular point in time; and

migrating the application to a second virtual machine hosted in a different data center than the first virtual machine, the migration including replacement of a second operating system disk of the second virtual machine with use of the snapshot of the first operating system disk while a first identity disk of the first virtual machine and a second identity disk of the second virtual machine remain unchanged by the migration of the application.

21. A system, comprising:

at least one data processor; and

at least one memory storing instructions, which when executed by the least one data processor, cause the at least one data processor to at least:

provision a first virtual machine to host an application, the first virtual machine including a first operating system disk;

generate a snapshot of the first operating system disk, the snapshot comprising data capturing a state of the first operating system disk at a particular point in time; and

migrate the application to a second virtual machine, the migration including replacement of a second operating system disk of the second virtual machine with use of the snapshot of the first operating system disk while a first identity disk of the first virtual machine and a second identity disk of the second virtual machine remain unchanged by the migration of the application;

wherein the first virtual machine is included in a first data center, wherein the first data center and the second data center are included in a same region or different regions, and wherein the regions comprise one or more data centers within a latency-defined perimeter and connected through a dedicated regional low-latency network.

22. A computer-implemented method, comprising:

provisioning a first virtual machine to host an application, the first virtual machine including a first operating system disk;

generating a snapshot of the first operating system disk, the snapshot comprising data capturing a state of the first operating system disk at a particular point in time; and

migrating the application to a second virtual machine, the migration including replacement of a second operating system disk of the second virtual machine with use of the snapshot of the first operating system while a first identity disk of the first virtual machine and a second identity disk of the second virtual machine remain unchanged by the migration of the application;

wherein the first virtual machine is included in a first data center and the second virtual machine is included in a second data center, wherein the first data center and the second data center are included in a same region or different regions, and wherein the regions comprise one or more data centers within a latency-defined perimeter and connected through a dedicated regional low-latency network.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2021
From: SABIN, MICHAEL
To: CITRIX SYSTEMS, INC.
Reel/Frame 055949/0024 →
Cited By (1)
US 12,603,932