Connection-based resource management for virtual desktop instances
First Claim
1. A method, comprising:
- performing, by one or more computers on a service provider network;
provisioning, by a computing resource instance manager implemented on one of the one or more computers on behalf of a service provider customer, resources that implement a virtual desktop instance for a user, wherein the resources that implement the virtual desktop instance comprise a computing resource instance and a storage volume accessible to the computing resource instance over a network;
detecting that the user has connected to the virtual desktop instance through a client over a network connection and that the virtual desktop instance has been started, wherein starting the virtual desktop instance comprises attaching for network access the storage volume to the computing resource instance;
detecting that the user has disconnected from the virtual desktop instance based at least in part on monitoring of the network connection for an inactivity period that exceeds an inactivity threshold;
determining, in response to the detection that the user has disconnected from the virtual desktop instance and based at least in part on a resource management policy, that the virtual desktop instance should be shut down;
shutting down, in response to the determination, the virtual desktop instance while maintaining data for the virtual desktop instance on the storage volume, wherein shutting down the virtual desktop instance comprises shutting down the computing resource instance, detaching the storage volume from the virtual desktop instance, and making the computing resource instance available for another user;
detecting that a user has reconnected to the virtual desktop instance through a client; and
in response to detecting that a user has reconnected to the virtual desktop instance, restarting the virtual desktop instance, wherein restarting the virtual desktop instance comprises attaching for network access the storage volume to a different computing resource instance and booting up the different computing resource instance for the virtual desktop instance.
1 Assignment
0 Petitions
Accused Products
Abstract
A computing system that provides virtual computing services may generate and manage remote computing sessions between client computing devices and virtual desktop instances hosted on the service provider'"'"'s network. A computing resource instance manager may monitor connections to and disconnections from a virtual desktop instance during particular time periods, and may apply a resource management policy to determine whether and when to shut down an underlying virtualized computing resource instance following a disconnection (e.g., immediately, after some period of time, or only between certain hours). A storage volume for the virtual desktop instance may be detached during a shutdown. In response to a reconnection request, the virtualized computing resource instance (or another such instance) may be restarted and the storage volume may be reattached. The computing resource instance manager may develop a model for predicting when to shut down or restart an instance based on historical data or machine learning.
30 Citations
18 Claims
-
1. A method, comprising:
performing, by one or more computers on a service provider network; provisioning, by a computing resource instance manager implemented on one of the one or more computers on behalf of a service provider customer, resources that implement a virtual desktop instance for a user, wherein the resources that implement the virtual desktop instance comprise a computing resource instance and a storage volume accessible to the computing resource instance over a network; detecting that the user has connected to the virtual desktop instance through a client over a network connection and that the virtual desktop instance has been started, wherein starting the virtual desktop instance comprises attaching for network access the storage volume to the computing resource instance; detecting that the user has disconnected from the virtual desktop instance based at least in part on monitoring of the network connection for an inactivity period that exceeds an inactivity threshold; determining, in response to the detection that the user has disconnected from the virtual desktop instance and based at least in part on a resource management policy, that the virtual desktop instance should be shut down; shutting down, in response to the determination, the virtual desktop instance while maintaining data for the virtual desktop instance on the storage volume, wherein shutting down the virtual desktop instance comprises shutting down the computing resource instance, detaching the storage volume from the virtual desktop instance, and making the computing resource instance available for another user; detecting that a user has reconnected to the virtual desktop instance through a client; and in response to detecting that a user has reconnected to the virtual desktop instance, restarting the virtual desktop instance, wherein restarting the virtual desktop instance comprises attaching for network access the storage volume to a different computing resource instance and booting up the different computing resource instance for the virtual desktop instance. - View Dependent Claims (2, 3, 4)
-
5. A system, comprising:
-
a plurality of computing nodes that collectively provide virtual computing services to one or more clients, each of the computing nodes comprising at least one processor and a memory; one or more virtualized computing resource instances executing on a respective one of the computing nodes, wherein one of the virtualized computing resource instances is configured to implement a virtual desktop instance for a client; a storage volume implemented on another one of the computing nodes, wherein the storage volume is attached for network access to the one of the virtualized computing resource instances; and a computing resource instance manager executing on at least one of the computing nodes; wherein the computing resource instance manager is configured to; detect that the client has connected to the virtual desktop instance over a network connection and that the storage volume is attached for network access to the one of the virtualized computing resource instances; detect that the client has been disconnected from the virtual desktop instance based at least in part on monitoring of a network connection for an inactivity period that exceeds an inactivity threshold; determine, based at least in part on a resource management policy, whether or not the one of the virtualized computing resource instances should be shut down in response to the detection that the client has been disconnected from the virtual desktop instance; shut down, in response to the determination, the one of the virtualized computing resource instances while maintaining data for the virtual desktop instance on the storage volume, wherein to shut down the one of the virtualized computing resource instances the computing resource instance manager is configured to; detach the storage volume from the one of the virtualized computing resource instances; and make the one of the virtualized computing resource instances available for another client; and restart, in response to detection that a client has reconnected to the virtual desktop instance, the virtual desktop instance, wherein to restart the virtual desktop instance the computing resource instance manager is configured to; attach for network access the storage volume to a different computing resource instance; and boot the different computing resource instance for the virtual desktop instance. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A non-transitory computer-readable storage medium storing program instructions that when executed on one or more computers cause the one or more computers to perform:
-
monitoring operation of a virtualized computing resource instance that implements a virtual desktop instance for one or more clients, wherein said monitoring comprises tracking connections to the virtual desktop instance and disconnections from the virtual desktop instance by the one or more clients during one or more time periods of a pre-determined duration, wherein the disconnections are based at least in part on an inactivity period that exceeds an inactivity threshold; generating, based at least in part on said monitoring, a model for determining when to proactively shut down the virtualized computing resource instance or when to shut down the virtualized computing resource instance following a disconnection from the virtual desktop instance; shutting down the virtualized computing resource instance based at least in part on applying the model, wherein shutting down the virtualized computing resource comprises detaching a storage volume currently attached for network access to the virtualized computing resource and where data for the virtual desktop instance is maintained; tracking that the virtualized computing resource instance has been shut down; making the virtualized computing resource instance that has been shut down available for another client; detecting that a client has reconnected to the virtual desktop instance; and restarting the virtual desktop instance responsive to the detection, wherein restarting the virtual desktop instance comprises attaching for network access the storage volume to a different virtualized computing resource instance and booting up the different virtualized computing resource instance for the virtual desktop instance. - View Dependent Claims (15, 16, 17, 18)
-
Specification