Method and system for automatically updating multiple servers
First Claim
Patent Images
1. A method of updating a plurality of servers, each having at least one type, and to which at least a portion of communications received by each server are directed by a load balancer, comprising:
- allocating each of the plurality of servers to various ones of a plurality of groups, each group comprising, for at least one of the at least one type, fewer than all of the servers having a same type;
selecting at least one of the plurality of groups;
identifying a status related to the servers in the selected at least one of the plurality of groups;
providing at least one command for suspending the directing of communications to the servers in the selected at least one plurality of groups, said command not suspending the directing of communications to the servers in at least one of the plurality of groups different from the selected at least one of the plurality of groups;
updating information on the servers in the selected at least one of the plurality of groups and for which the directing of communications is suspended; and
responsive to the status identified, initiating the resumption the directing of communications to at least one of the servers containing updated information and in the selected at least one of the plurality of groups.
10 Assignments
0 Petitions
Accused Products
Abstract
A system and method updates multiple servers automatically without taking all of the multiple servers off-line at the same time. The system and method selects a group of servers, takes the group off-line, updates the group taken off-line, and then brings on-line those members of the group that were on-line prior to the update and for which the update was installed successfully.
100 Citations
20 Claims
-
1. A method of updating a plurality of servers, each having at least one type, and to which at least a portion of communications received by each server are directed by a load balancer, comprising:
-
allocating each of the plurality of servers to various ones of a plurality of groups, each group comprising, for at least one of the at least one type, fewer than all of the servers having a same type;
selecting at least one of the plurality of groups;
identifying a status related to the servers in the selected at least one of the plurality of groups;
providing at least one command for suspending the directing of communications to the servers in the selected at least one plurality of groups, said command not suspending the directing of communications to the servers in at least one of the plurality of groups different from the selected at least one of the plurality of groups;
updating information on the servers in the selected at least one of the plurality of groups and for which the directing of communications is suspended; and
responsive to the status identified, initiating the resumption the directing of communications to at least one of the servers containing updated information and in the selected at least one of the plurality of groups. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for updating a plurality of servers, each having at least one type, and to which at least a portion of communications received by each server are directed by a load balancer, comprising:
-
a configuration manager having an input coupled to receive information regarding the plurality of servers, the configuration manager for;
allocating each of the plurality of servers to various ones of a plurality of groups responsive to the information received at the configuration manager input, each group comprising, for at least one of the at least one type, fewer than all of the servers having a same type; and
selecting at least one of the plurality of groups and providing at an output at least one identifier corresponding to at least one server in the selected at least one plurality of groups;
a status manager having an input coupled to the configuration manager output, for receiving the at least one identifier corresponding to the at least one server in the selected group, the status manager for providing at a status request output a request for status related to the at least one server in the selected at least one of the plurality of groups;
receiving at a status input a response to the request provided at the status request output; and
providing at an output an indication of the status corresponding to the at least one server in the selected at least one of the plurality of groups responsive to the response received at the status input;
a shutdown manager having an input coupled to the configuration manager output for receiving the at least one identifier corresponding to at least one server in the selected at least one plurality of groups, the shutdown manager for providing at an output at least one command for suspending the directing of communications to the servers in the selected at least one plurality of groups, said command not suspending the directing of communications to the servers in at least one of the plurality of groups different from the selected at least one of the plurality of groups and for providing a signal at a signal output following the at least one command provided at the shutdown manager output;
an update manager having an input coupled to the shutdown manager output for receiving the signal, the shutdown manager for, responsive to the signal, providing at an output information useful for updating the servers in the selected at least one of the plurality of groups; and
wherein the shutdown manager additionally provides at the output, responsive to the status identified, at least one command for initiating the resumption of the directing of communications to at least one of the servers;
having received the information useful for updating the servers; and
in the selected at least one of the plurality of groups. - View Dependent Claims (9, 10, 11, 12, 13, 14, 20)
-
-
15. A computer program product comprising a computer useable medium having computer readable program code embodied therein for updating a plurality of servers, each having at least one type, and to which at least a portion of communications received by each server are directed by a load balancer, the computer program product comprising computer readable program code devices configured to cause a computer to:
-
allocate each of the plurality of servers to various ones of a plurality of groups, each group comprising, for at least one of the at least one type, fewer than all of the servers having a same type;
select at least one of the plurality of groups;
identify a status related to the servers in the selected at least one of the plurality of groups;
provide at least one command for suspending the directing of communications to the servers in the selected at least one plurality of groups, said command not suspending the directing of communications to the servers in at least one of the plurality of groups different from the selected at least one of the plurality of groups;
update information on the servers in the selected at least one of the plurality of groups and for which the directing of communications is suspended; and
responsive to the status identified, initiate the resumption the directing of communications to at least one of the servers containing updated information and in the selected at least one of the plurality of groups. - View Dependent Claims (16, 17, 18, 19)
-
Specification