Fault tolerant rolling software upgrade in a cluster
First Claim
1. A method of upgrading software in a cluster, comprising:
- reaching software parity for said cluster by individually upgrading software binaries for each member of said cluster to a new software version from a prior version while each cluster member continues to operate at a prior software version; and
coordinating a fault tolerant transition of said cluster to said new software version responsive to reaching software parity while supporting continued access to a clustered application service by application clients during said transition of said cluster to said new software version.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system are provided for conducting a cluster software version upgrade in a fault tolerant and highly available manner. There are two phases to the upgrade. The first phase is an upgrade of the software binaries of each individual member of the cluster, while remaining cluster members remain online. Completion of the first phase is a pre-requisite to entry into the second phase. Upon completion of the first phase, a coordinated cluster transition is performed during which the cluster coordination component performs any required upgrade to its own protocols and data structures and drives all other software components through the component specific upgrade. After all software components complete their upgrades and any required data conversion, the cluster software upgrade is complete. A shared version control record is provided to manage transition of the cluster members through the cluster software component upgrade.
94 Citations
18 Claims
-
1. A method of upgrading software in a cluster, comprising:
-
reaching software parity for said cluster by individually upgrading software binaries for each member of said cluster to a new software version from a prior version while each cluster member continues to operate at a prior software version; and
coordinating a fault tolerant transition of said cluster to said new software version responsive to reaching software parity while supporting continued access to a clustered application service by application clients during said transition of said cluster to said new software version. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer system comprising:
-
a member manager adapted to reach software parity for a cluster through an upgrade of software binaries for each individual member of said cluster to a new software version from a prior version while each cluster member continues to operate at a prior software version; and
a cluster manager adapted to coordinate a fault tolerant transition of said cluster to said new software version, responsive to attainment of software parity by said member manager, and to support continued application service to application clients during said coordinated transition. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. An article comprising:
-
a computer useable medium embodying computer usable program code for upgrading a cluster, said computer program code including;
computer useable program code for reaching software parity for said cluster by individually upgrading software binaries to a new software version from a prior version while each cluster member continues to operate at a prior software version; and
computer useable program code for coordinating a fault tolerant transition of said cluster to said new software version in response to reaching software parity while supporting continued access to a clustered application service by application clients during said transition of said cluster to said new software version. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification