Federated management in a distributed environment
First Claim
1. A non-transitory computer-readable storage medium containing instructions configured to control a processor residing in a server operating in a virtualization environment, the server associated with one or more remote users'"'"' connections to one or more virtual desktops in a virtualization environment, the instructions configured when executed, to perform a method comprising:
- upon startup, dynamically joining a federated server cluster as a first one of a plurality of servers that belong to the federated server cluster, after a first federated task has already been executing on an other one of the plurality of servers;
retrieving an indication of the first federated task;
executing the first federated task as an only instance of the executing first federated task over the plurality of servers of the federated server cluster in the virtualization environment wherein the first federated task performs and coordinates between the plurality of servers a first virtualization related management operation on behalf of all of the servers in the federated server cluster, thereby alleviating a need for each of the plurality of servers to execute its own first management operation, and wherein the first federated task, once initially executed, runs continuously on exactly one of the plurality of servers in the federated server cluster until the first federated task is terminated;
generating first federated task information pertaining to the executing instance of the first federated task;
storing the first federated task information in local replicated tracker data;
communicating the first federated task information as first federated task update information to the other ones of the plurality of servers of the federated server cluster, such that the other ones of the plurality of servers of the federated server cluster can store and replicate the first federated task information in their respective local replicated tracker data;
receiving second federated task update information pertaining to a second federated task executing on a second one of the servers of the federated server cluster as an only instance of the executing second federated task over the plurality of servers of the federated server cluster, wherein the second federated task is separate and distinct from the first federated task, wherein the second federated task performs and coordinates between the plurality of servers a second virtualization related management operation on behalf of all of the servers in the federated server cluster, thereby alleviating a need for each of the plurality of servers to execute its own second virtualization related management operation, wherein the second federated task, once initially executed, runs continuously on exactly one of the plurality of servers in the federated server cluster until the second federated task is terminated, and wherein the second federated task update information includes information determined by the instance of the second federated task; and
storing the second federated task update information into the local replicated tracker data.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and techniques that enable enhanced coordination and management of a plurality of servers cooperatively operating in a cluster of servers. In one implementation, a plurality of enhanced Virtual Desktop Management (VDM) Servers operating in a Federated Virtual Desktop Management (VDM) Cluster are provided. Each of the enhanced VDM Servers active in the Federated VDM Cluster use federated task information pertaining to and derived from various executing federated tasks. However, only a single selected one of the plurality of enhanced VDM Servers is executing a particular one of the federated tasks at a time so that each federated task is continuously running somewhere in the Federated VDM Cluster.
64 Citations
36 Claims
-
1. A non-transitory computer-readable storage medium containing instructions configured to control a processor residing in a server operating in a virtualization environment, the server associated with one or more remote users'"'"' connections to one or more virtual desktops in a virtualization environment, the instructions configured when executed, to perform a method comprising:
-
upon startup, dynamically joining a federated server cluster as a first one of a plurality of servers that belong to the federated server cluster, after a first federated task has already been executing on an other one of the plurality of servers; retrieving an indication of the first federated task; executing the first federated task as an only instance of the executing first federated task over the plurality of servers of the federated server cluster in the virtualization environment wherein the first federated task performs and coordinates between the plurality of servers a first virtualization related management operation on behalf of all of the servers in the federated server cluster, thereby alleviating a need for each of the plurality of servers to execute its own first management operation, and wherein the first federated task, once initially executed, runs continuously on exactly one of the plurality of servers in the federated server cluster until the first federated task is terminated; generating first federated task information pertaining to the executing instance of the first federated task; storing the first federated task information in local replicated tracker data; communicating the first federated task information as first federated task update information to the other ones of the plurality of servers of the federated server cluster, such that the other ones of the plurality of servers of the federated server cluster can store and replicate the first federated task information in their respective local replicated tracker data; receiving second federated task update information pertaining to a second federated task executing on a second one of the servers of the federated server cluster as an only instance of the executing second federated task over the plurality of servers of the federated server cluster, wherein the second federated task is separate and distinct from the first federated task, wherein the second federated task performs and coordinates between the plurality of servers a second virtualization related management operation on behalf of all of the servers in the federated server cluster, thereby alleviating a need for each of the plurality of servers to execute its own second virtualization related management operation, wherein the second federated task, once initially executed, runs continuously on exactly one of the plurality of servers in the federated server cluster until the second federated task is terminated, and wherein the second federated task update information includes information determined by the instance of the second federated task; and storing the second federated task update information into the local replicated tracker data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A server computing system, the server associated with one or more remote users'"'"' connections to one or more virtual desktops in a virtualization environment comprising:
-
a memory; a processor system communicatively coupled to the memory and a communication bus, the communication bus communicatively coupled to a plurality of other servers operating as members of a federated server cluster; a plurality of federated tasks residing in the memory and executable by the processor system, wherein each federated task performs a separate and distinct coordinated virtualization related management operation and is configured to execute on one of the plurality of servers as an only instance of the federated task in the federated server cluster on behalf of all of the servers in the federated server cluster thereby alleviating a need for each of the plurality of servers to execute its own virtualization related management operation; replicated tracker data accessible by the processor system, wherein the replicated tracker data comprises current state information about each of the federated tasks; and a federated software management component residing in the memory and configured, when executed by the processor system, to; upon startup, dynamically join the federated server cluster; cooperatively identify by communication with the others of the plurality of servers in the federated server cluster at least a first one of the plurality of federated tasks for execution on the server, receive task update information determined by an executing instance of a second one of the plurality of federated tasks executing as an only instance of the second federated task on another one of the plurality of servers and received over the communication bus, and store the received task update information determined by the second federated task into the replicated tracker data. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory computer-readable storage medium containing instructions configured, when executed, to control an enhanced server actively running as a member of a federated server cluster comprising a plurality of servers, by performing a method comprising:
-
retrieving an indication of a first federated task that has already been executing on an other one of the plurality of servers; executing the first federated task as an only instance of the executing first federated task over the plurality of servers of the federated server cluster, wherein the first federated task performs and coordinates between the plurality of servers a first ongoing management operation on behalf of all of the servers in the federated server cluster thereby alleviating a need for each of the plurality of servers to execute its own first ongoing management operation; generating first federated task information pertaining to the executing instance of the first federated task; storing the first federated task information in local replicated tracker data; communicating the first federated task information as first federated task update information to the other ones of the plurality of servers of the federated server cluster, such that the other ones of the plurality of servers of the federated server cluster can store and replicate the first federated task information in their respective local replicated tracker data; receiving second federated task update information pertaining to a second federated task executing on a second one of the servers of the federated server cluster as an only instance of the executing second federated task over the plurality of servers of the federated server cluster, wherein the second federated task is distinct and separate from the first federated task, wherein the second federated task performs and coordinates between the plurality of servers a second ongoing management operation on behalf of all of the servers in the federated server cluster, thereby alleviating a need for each of the plurality of servers to execute its own second ongoing management operation, and wherein the second federated task update information includes information determined by the instance of the second federated task; and storing the second federated task update information into the local replicated tracker data. - View Dependent Claims (21, 22, 23, 24)
-
-
25. A non-transitory computer-readable storage medium containing instructions configured to control a processor residing in a virtual desktop management (VDM) server of a plurality of VDM servers of a federated virtual desktop management (VDM) server cluster, the VDM server associated with one or more remote users'"'"' connections to one or more virtual desktops in a virtualization environment, the instructions configured, when executed, to perform a method comprising:
-
retrieving an indication of a first federated task; executing the first federated task as an only instance of the executing first federated task over the plurality of VDM servers of the federated virtual desktop management (VDM) server cluster, wherein the first federated task performs and coordinates between the plurality of VDM servers a first virtualization related management operation on behalf of all of the servers in the federated server cluster thereby alleviating a need for each of the plurality of servers to execute its own first virtualization related management operation, and wherein the first federated task, once initially executed, runs continuously on exactly one of the plurality of VDM servers in the federated server cluster until the first federated task is terminated; generating first federated task information pertaining to the executing instance of the first federated task; storing the first federated task information in local replicated tracker data; communicating the first federated task information as first federated task update information to the other ones of the plurality of VDM servers of the federated VDM server cluster, such that the other plurality of VDM servers of the federated VDM server cluster can store and replicate the first federated task information in their respective local replicated tracker data; receiving second federated task update information pertaining to a second federated task executing on a second one of the VDM servers of the federated VDM server cluster as an only instance of the executing second federated task over the plurality of VDM servers of the federated VDM server cluster, wherein the second federated task is separate and distinct from the first federated task, wherein the second federated task performs and coordinates between the plurality of VDM servers a second virtualization related management operation on behalf of all of the servers in the federated server cluster thereby alleviating a need for each of the plurality of servers to execute its own virtualization related management operation, and wherein the second federated task update information includes information determined by the instance of the second federated task; and storing the second federated task update information into the local replicated tracker data. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
Specification