Provisioned virtual computing
First Claim
1. A method of providing a desktop computing environment to each of multiple users comprising:
- assigning each of the multiple users to a class among a plurality of classes, each class being indicative of computing resources that a user in the class is expected to consume when using the desktop computing environment;
after receiving a request for a desktop computing environment from one of the multiple users;
determining a class assigned to the user;
within the determined class, computing environment parameters based on a user profile corresponding to the user;
applying the environment parameters to a virtual machine supporting a provisioned environment for the user corresponding to the determined class for the user, the provisioned environment including processor, memory, and storage resources according to the class and an operating system and applications assigned to the user to provide the user'"'"'s desktop computing environment;
assigning the user to the provisioned environment corresponding to the class;
monitoring and recording usage of the provisioned environment by the user including processor and memory utilization;
for each of the multiple users, after occurrence of predetermined events;
evaluating the recorded usage of the provisioned environment by the user to determine whether to modify the provisioned environment for the user; and
modifying the provisioned environment for the user according to the evaluation and a best fit metric to match parameters of the provisioned environment with recorded usage by the user.
6 Assignments
0 Petitions
Accused Products
Abstract
A policy indicative of overprovisioning and underprovisioning indicators defining rules to specify a triggering event indicating the need to reassess the provisioning of a user. Such reprovisioning occurs automatically upon occurrences of predetermined events, and may even be undetectable to the user. Since the reprovisioning can either expand or contract the resources available to a particular user, users are matched to an optimal, or “best fit” computational resource set to correspond to the demands of the particular user. Provisioning determining a class of the user, and is indicative of an expected resource load the user imposes. The provisioner continuously monitors usage imposed by the user to aggregate a user profile indicative of provisioning demands, automatically reevaluating the class based on the aggregated user profile according to predetermined events, and selectively reassigning the provisioning environment based on the reevaluation.
-
Citations
29 Claims
-
1. A method of providing a desktop computing environment to each of multiple users comprising:
-
assigning each of the multiple users to a class among a plurality of classes, each class being indicative of computing resources that a user in the class is expected to consume when using the desktop computing environment; after receiving a request for a desktop computing environment from one of the multiple users; determining a class assigned to the user; within the determined class, computing environment parameters based on a user profile corresponding to the user; applying the environment parameters to a virtual machine supporting a provisioned environment for the user corresponding to the determined class for the user, the provisioned environment including processor, memory, and storage resources according to the class and an operating system and applications assigned to the user to provide the user'"'"'s desktop computing environment; assigning the user to the provisioned environment corresponding to the class; monitoring and recording usage of the provisioned environment by the user including processor and memory utilization; for each of the multiple users, after occurrence of predetermined events; evaluating the recorded usage of the provisioned environment by the user to determine whether to modify the provisioned environment for the user; and modifying the provisioned environment for the user according to the evaluation and a best fit metric to match parameters of the provisioned environment with recorded usage by the user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer system for supporting provisioning of a desktop computing environment to each of multiple users comprising:
-
an interface to a rendering device for receiving a request for a desktop computing environment from a user from among the multiple users; a provisioner for determining a class of the user, from among a plurality of classes, each class being indicative of computing resources that a user in the class is expected to consume when using the desktop computing environment; a user profile, the provisioner further operable to employ the user profile to; within the determined class, compute environment parameters based on a user profile corresponding to the user; and apply the environment parameters to a virtual machine so as to provision the requested desktop computing environment for the user corresponding to the determined class for the user, the provisioned desktop computing environment including processor, memory and storage resources sufficient to provide the computing resources that the user is expected to consume according to the class and an operating system and applications assigned to the user; a connection broker for assigning the user to the provisioned desktop computing environment corresponding to the class, the provisioner further monitoring and recording usage of the provisioned desktop computing environment by the user including processor and memory utilization; best fit logic in the provisioner for evaluating the recorded usage of the provisioned desktop computing environment by the user after occurrence of predetermined events, using a best fit metric to match parameters of the provisioned desktop computing environment with recorded usage by the user; an instance manager for modifying the provisioned desktop computing environment for the user based on the evaluation. - View Dependent Claims (21, 22, 23, 24, 25, 26)
-
-
27. A computer program product having a computer readable storage operable to store a set of encoded instructions which, when executed by a processor responsive to the instructions, cause a computer connected to the computer readable storage to perform method of providing an automatically reprovisioned desktop computing environment to each of multiple users comprising:
-
computer program code for receiving a request for a desktop computing environment from a user among the multiple users; computer program code for determining a class of the user, from among a plurality of classes, each class being indicative of computing resources that a user in the class is expected to consume when using the desktop computing environment; computer program code for computing, within the determined class, environment parameters based on a user profile corresponding to the user; computer program code for applying the environment parameters to a virtual machine so as to provision the requested desktop computing environment for the user corresponding to the determined class for the user, the provisioned desktop computing environment including processor, memory and storage resources sufficient to provide the computing resources that the user is expected to consume according to the class and an operating system and applications assigned to the user; computer program code for assigning the user to the provisioned desktop computing environment corresponding to the class; computer program code for, within the determined class, continuously monitoring and recording usage of the provisioned desktop computing environment by the user, including processor and memory utilization; computer program code for evaluating the recorded usage of the provisioned desktop computing environment by the user after occurrence of predetermined events, including invoking a best-fit metric to match parameters of the provisioned desktop computing environment with recorded usage by the user; and modifying the provisioned desktop computing environment for the user based on the evaluation.
-
-
28. A method of organizing desktop computing for virtual provisioning of desktop computing environments to each of multiple users comprising:
-
designating a desktop computing environment for a user by assigning a provisioning environment from a range of available computing environments, designating further comprising; computing environment parameters based on a user profile corresponding to the user; and applying the environment parameters to a virtual machine so as to provision the desktop computing environment of the user, the provisioned desktop computing environment comprising processor, memory and storage resources and an operating system and applications assigned to the user sufficient to provide the computing resources that the user is expected to consume according to the class; monitoring and recording usage of the provisioned desktop computing environment including processor and memory utilization, periodically reviewing the recorded usage of the provisioned desktop computing environment to detect service provisioning deficiencies using a best fit metric that matches parameters of the provisioned desktop computing environment with the recorded usage by the user, service provisioning deficiencies indicative of at least one of overprovisioning or underprovisioning a user, each provisioned desktop computing environment having an assigned class indicative of an allocation of computing resources and environment parameters indicative of available computing resources; remedying a detected underprovisioning by at least one of; increasing environment parameters defining available computing resources;
orreassigning the user to a different class having increased computing resources; remedying a detected overprovisioning by at least one of; removing excessive computing resources by reducing environment parameters;
orreassigning the user to a different class having decreased computing resources. - View Dependent Claims (29)
-
Specification