Upgrade

Version Compatibility
When releasing newer versions we take care to make sure we are backwardly compatible with older versions. While you will always be able to upgrade from version x to x+1, in order to continue to produce high quality software it may occasionally be necessary to drop compatibility with older versions. There will always be an upgrade path from any series-2 release to any other series-2 release. There are three approaches to upgrading your cluster software Each method has advantages and disadvantages, some of which are listed in the table below, and you should chose the one most appropriate to your needs.
 * 1) Complete Cluster Shutdown
 * 2) Rolling (node by node)
 * 3) Disconnect & Reattach

Complete Cluster Shutdown
In this scenario one shuts down all cluster nodes and resources and upgrades all the nodes before restarting the cluster. Procedure
 * 1) On each node:
 * 2) Shutdown the cluster stack (Heartbeat or OpenAIS)
 * 3) Upgrade the Pacemaker software.  This may also include upgrading the cluster stack and/or the underlying operating system..
 * 4) Check the conﬁguration manually or with the crm_verify tool if available.
 * 5) On each node:
 * 6) Start the cluster stack.  This can be either OpenAIS or Heartbeat and does not need to be the same as the previous cluster stack.

Rolling (node by node)
In this scenario each node is removed from the cluster, upgraded and then brought back online until all nodes are running the newest version.

Procedure
On each node: Repeat for each node in the cluster
 * 1) Shutdown the cluster stack (Heartbeat or OpenAIS)
 * 2) Upgrade the Pacemaker software.  This may also include upgrading the cluster stack and/or the underlying operating system.
 * 3) On the ﬁrst node, check the conﬁguration manually or with the crm_verify tool if available.
 * 4) Start the cluster stack.  This must be the same cluster stack that the rest of the cluster is using.

Disconnect & Reattach
A variant of a complete cluster shutdown, but the resources are left active and re-detected when the cluster is restarted.

Procedure

 * 1) Tell the cluster to stop managing services. This is required to allow the services to remain active after the cluster shuts  down.
 * 2) For any resource that has a value for is-managed, make sure it is set to false (so that the cluster will not stop it)
 * 3) On each node:
 * 4) Shutdown the cluster stack (Heartbeat or OpenAIS)
 * 5) Upgrade the cluster stack program - This may also include upgrading the underlying operating system.
 * 6) Check the conﬁguration manually or with the crm_verify tool if available.
 * 7) On each node:
 * 8) Start the cluster stack.  This can be either OpenAIS or Heartbeat and does not need to be the same as the previous cluster stack.
 * 9) Verify the cluster re-detected all resources correctly
 * 10) Allow the cluster to resume managing resources again
 * 11) For any resource that has a value for is-managed reset it to true (so the cluster can recover the service if it fails) if desired