Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
documentation.suse.com / SUSE Linux Enterprise High Availability Documentation / Administration Guide / Maintenance and Upgrade / Upgrading Your Cluster and Updating Software Packages
Applies to SUSE Linux Enterprise High Availability 12 SP5

24 Upgrading Your Cluster and Updating Software Packages

This chapter covers two different scenarios: upgrading a cluster to another version of SUSE Linux Enterprise High Availability (either a major release or a service pack) as opposed to updating individual packages on cluster nodes. See Section 24.2, “Upgrading your Cluster to the Latest Product Version” versus Section 24.3, “Updating Software Packages on Cluster Nodes”.

If you want to upgrade your cluster, check Section 24.2.1, “Supported Upgrade Paths for SLE HA and SLE HA Geo” and Section 24.2.2, “Required Preparations Before Upgrading” before starting to upgrade.

24.1 Terminology

In the following, find definitions of the most important terms used in this chapter:

Major Release, General Availability (GA) Version

The Major Release of SUSE Linux Enterprise (or any software product) is a new version that brings new features and tools, decommissions previously deprecated components and comes with backward incompatible changes.

Cluster Offline Upgrade

If a new product version includes major changes that are backward incompatible, the cluster needs to be upgraded by a cluster offline upgrade. You need to take all nodes offline and upgrade the cluster as a whole, before you can bring all nodes back online.

Cluster Rolling Upgrade

In a cluster rolling upgrade, one cluster node at a time is upgraded while the rest of the cluster is still running. You take the first node offline, upgrade it and bring it back online to join the cluster. Then you continue one by one until all cluster nodes are upgraded to a major version.

Service Pack (SP)

Combines several patches into a form that is easy to install or deploy. Service packs are numbered and usually contain security fixes, updates, upgrades, or enhancements of programs.

Update

Installation of a newer minor version of a package.

Upgrade

Installation of a newer major version of a package or distribution, which brings new features. See also Cluster Offline Upgrade versus Cluster Rolling Upgrade.

24.2 Upgrading your Cluster to the Latest Product Version

Which upgrade path is supported, and how to perform the upgrade depends both on the current product version and on the target version you want to migrate to.

SUSE Linux Enterprise High Availability has the same supported upgrade paths as the underlying base system. For a complete overview, see the section Supported Upgrade Paths to SUSE Linux Enterprise Server 12 SP5 in the SUSE Linux Enterprise Server Deployment Guide.

In addition, the following rules apply, as the High Availability cluster stack offers two methods for upgrading the cluster:

  • Cluster Rolling UpgradeA cluster rolling upgrade is only supported within the same major release (from one service pack to the next, or from the GA version of a product to SP1).

  • Cluster Offline UpgradeA cluster offline upgrade is required to upgrade from one major release to the next (for example, from SLE HA 11 to SLE HA 12) or from a service pack within one major release to the next major release (for example, from SLE HA 11 SP3 to SLE HA 12).

Section 24.2.1 list the supported upgrade paths and methods for SLE HA (Geo), moving from one version to the next. The column For Details lists the specific upgrade documentation you should refer to (including also the base system and Geo Clustering for SUSE Linux Enterprise High Availability). This documentation is available from:

Important
Important: No Support for Mixed Clusters and Reversion After Upgrade
  • Mixed clusters running on SUSE Linux Enterprise High Availability 11/SUSE Linux Enterprise High Availability 12 are not supported.

  • After the upgrade process to product version 12, reverting back to product version 11 is not supported.

24.2.1 Supported Upgrade Paths for SLE HA and SLE HA Geo

Upgrade From ... To

Upgrade Path

For Details

SLE HA 11 SP3 to SLE HA (Geo) 12

Cluster Offline Upgrade

  • Base System: SUSE Linux Enterprise Server 12 Deployment Guide, part Updating and Upgrading SUSE Linux Enterprise

  • SLE HA: Upgrading from Product Version 11 to 12: Cluster Offline Upgrade

  • SLE HA Geo: Geo Clustering for SUSE Linux Enterprise High Availability 12 Geo Clustering Quick Start, section Upgrading from SLE HA (Geo) 11 SP3 to SLE HA Geo 12

SLE HA (Geo) 11 SP4 to SLE HA (Geo) 12 SP1

Cluster Offline Upgrade

  • Base System: SUSE Linux Enterprise Server 12 SP1 Deployment Guide, part Updating and Upgrading SUSE Linux Enterprise

  • SLE HA: Upgrading from Product Version 11 to 12: Cluster Offline Upgrade

  • SLE HA Geo: Geo Clustering for SUSE Linux Enterprise High Availability 12 SP1 Geo Clustering Quick Start, section Upgrading to the Latest Product Version

SLE HA (Geo) 12 to SLE HA (Geo) 12 SP1

Cluster Rolling Upgrade

  • Base System: SUSE Linux Enterprise Server 12 SP1 Deployment Guide, part Updating and Upgrading SUSE Linux Enterprise

  • SLE HA: Performing a Cluster Rolling Upgrade

  • SLE HA Geo: Geo Clustering for SUSE Linux Enterprise High Availability 12 SP1 Geo Clustering Quick Start, section Upgrading to the Latest Product Version

SLE HA (Geo) 12 SP1 to SLE HA (Geo) 12 SP2

Cluster Rolling Upgrade

  • Base System: SUSE Linux Enterprise Server 12 SP2 Deployment Guide, part Updating and Upgrading SUSE Linux Enterprise

  • SLE HA: Performing a Cluster Rolling Upgrade

  • SLE HA Geo: Geo Clustering for SUSE Linux Enterprise High Availability 12 SP2 Geo Clustering Quick Start, section Upgrading to the Latest Product Version

  • DRBD 8 to DRBD 9: Migrating from DRBD 8 to DRBD 9

SLE HA (Geo) 12 SP2 to SLE HA (Geo) 12 SP3

Cluster Rolling Upgrade

  • Base System: SUSE Linux Enterprise Server 12 SP3 Deployment Guide, part Updating and Upgrading SUSE Linux Enterprise

  • SLE HA: Performing a Cluster Rolling Upgrade

  • SLE HA Geo: Geo Clustering for SUSE Linux Enterprise High Availability 12 SP3 Geo Clustering Guide, section Upgrading to the Latest Product Version

SLE HA (Geo) 12 SP3 to SLE HA (Geo) 12 SP4

Cluster Rolling Upgrade

  • Base System: SUSE Linux Enterprise Server 12 SP4 Deployment Guide, part Updating and Upgrading SUSE Linux Enterprise

  • SLE HA: Performing a Cluster Rolling Upgrade

  • SLE HA Geo: Geo Clustering for SUSE Linux Enterprise High Availability 12 SP4 Geo Clustering Guide, section Upgrading to the Latest Product Version

SLE HA (Geo) 12 SP4 to SLE HA (Geo) 12 SP5

Cluster Rolling Upgrade

  • Base System: SUSE Linux Enterprise Server 12 SP5 Deployment Guide, part Updating and Upgrading SUSE Linux Enterprise

  • SLE HA: Performing a Cluster Rolling Upgrade

  • SLE HA Geo: Geo Clustering for SUSE Linux Enterprise High Availability 12 SP5 Geo Clustering Guide, section Upgrading to the Latest Product Version

24.2.2 Required Preparations Before Upgrading

Backup

Ensure that your system backup is up to date and restorable.

Testing

Test the upgrade procedure on a staging instance of your cluster setup first, before performing it in a production environment.

This gives you an estimation of the time frame required for the maintenance window. It also helps to detect and solve any unexpected problems that might arise.

24.2.3 Cluster Offline Upgrade

This section applies to the following scenarios:

  • Upgrading from SLE HA 11 SP3 to SLE HA 12

  • Upgrading from SLE HA 11 SP4 to SLE HA 12 SP1

If your cluster is still based on an older product version than the ones listed above, first upgrade it to a version of SUSE Linux Enterprise Server and SUSE Linux Enterprise High Availability that can be used as a source for upgrading to the desired target version.

Procedure 24.1: Upgrading from Product Version 11 to 12: Cluster Offline Upgrade

SUSE Linux Enterprise High Availability 12 cluster stack comes with major changes in various components (for example, /etc/corosync/corosync.conf, disk formats of OCFS2). Therefore, a cluster rolling upgrade from any SUSE Linux Enterprise High Availability 11 version is not supported. Instead, all cluster nodes must be offline and the cluster needs to be upgraded as a whole as described below.

  1. Log in to each cluster node and stop the cluster stack with:

    # rcopenais stop
  2. For each cluster node, perform an upgrade to the desired target version of SUSE Linux Enterprise Server and SUSE Linux Enterprise High Availability. If you have an existing Geo cluster setup and want to upgrade it, see the additional instructions in the Geo Clustering for SUSE Linux Enterprise High Availability Geo Clustering Quick Start. To find the details for the individual upgrade processes, see Section 24.2.1, “Supported Upgrade Paths for SLE HA and SLE HA Geo”.

  3. After the upgrade process has finished, reboot each node with the upgraded version of SUSE Linux Enterprise Server and SUSE Linux Enterprise High Availability.

  4. If you use OCFS2 in your cluster setup, update the on-device structure by executing the following command:

    # o2cluster --update PATH_TO_DEVICE

    It adds additional parameters to the disk which are needed for the updated OCFS2 version that is shipped with SUSE Linux Enterprise High Availability 12 and 12 SPx.

  5. To update /etc/corosync/corosync.conf for Corosync version 2:

    1. Log in to one node and start the YaST cluster module.

    2. Switch to the Communication Channels category and enter values for the following new parameters: Cluster Name and Expected Votes. For details, see Procedure 4.1, “Defining the First Communication Channel (Multicast)” or Procedure 4.2, “Defining the First Communication Channel (Unicast)”, respectively.

      If YaST should detect any other options that are invalid or missing according to Corosync version 2, it will prompt you to change them.

    3. Confirm your changes in YaST. YaST will write them to /etc/corosync/corosync.conf.

    4. If Csync2 is configured for your cluster, use the following command to push the updated Corosync configuration to the other cluster nodes:

      # csync2 -xv

      For details on Csync2, see Section 4.7, “Transferring the Configuration to All Nodes”.

      Alternatively, synchronize the updated Corosync configuration by manually copying /etc/corosync/corosync.conf to all cluster nodes.

  6. Log in to each node and start the cluster stack with:

    # systemctl start pacemaker
  7. Check the cluster status with crm status or with Hawk2.

  8. Configure the following services to start at boot time:

    # systemctl enable pacemaker
    # systemctl enable hawk
    # systemctl enable sbd
Note
Note: Upgrading the CIB Syntax Version

Tags (for grouping resources) and some ACL features only work with the CIB syntax version pacemaker-2.0 or higher. (To check your version, use the cibadmin -Q |grep validate-with command.) If you have upgraded from SUSE Linux Enterprise High Availability 11 SPx, your CIB version will not be upgraded by default. To manually upgrade to the latest CIB version use one of the following commands:

# cibadmin --upgrade --force

or

# crm configure upgrade force

24.2.4 Cluster Rolling Upgrade

This section applies to the following scenarios:

  • Upgrading from SLE HA 12 to SLE HA 12 SP1

  • Upgrading from SLE HA 12 SP1 to SLE HA 12 SP2

  • Upgrading from SLE HA (Geo) 12 SP2 to SLE HA (Geo) 12 SP3

  • Upgrading from SLE HA (Geo) 12 SP3 to SLE HA (Geo) 12 SP4

  • Upgrading from SLE HA (Geo) 12 SP4 to SLE HA (Geo) 12 SP5

Use one of the following procedures for your scenario:

Warning
Warning: Active Cluster Stack

Before starting an upgrade for a node, stop the cluster stack on that node.

If the cluster resource manager on a node is active during the software update, this can lead to results such as fencing of active nodes.

Important
Important: Time Limit for Cluster Rolling Upgrade

The new features shipped with the latest product version will only be available after all cluster nodes have been upgraded to the latest product version. Mixed version clusters are only supported for a short time frame during the cluster rolling upgrade. Complete the cluster rolling upgrade within one week.

Procedure 24.2: Performing a Cluster Rolling Upgrade
  1. Log in as root on the node that you want to upgrade and stop the cluster stack:

    # systemctl stop pacemaker
  2. Perform an upgrade to the desired target version of SUSE Linux Enterprise Server and SUSE Linux Enterprise High Availability. To find the details for the individual upgrade processes, see Section 24.2.1, “Supported Upgrade Paths for SLE HA and SLE HA Geo”.

  3. Restart the cluster stack on the upgraded node to make the node rejoin the cluster:

    # systemctl start pacemaker
  4. Take the next node offline and repeat the procedure for that node.

  5. Check the cluster status with crm status or with Hawk2.

The Hawk2 Status screen also shows a warning if different CRM versions are detected for your cluster nodes.

Beside an in-place upgrade, many customers prefer a fresh installation even for moving to the next service pack. The following procedure shows a scenario where a two-node cluster with the nodes alice and bob is upgraded to the next service pack (SP):

Procedure 24.3: Performing a Cluster-wide Fresh Installation of a New Service Pack
  1. Make a backup of your cluster configuration. A minimum set of files are shown in the following list:

    /etc/corosync/corosync.conf
    /etc/corosync/authkey
    /etc/sysconfig/sbd
    /etc/modules-load.d/watchdog.conf
    /etc/hosts
    /etc/ntp.conf

    Depending on your resources, you may also need the following files:

    /etc/services
    /etc/passwd
    /etc/shadow
    /etc/groups
    /etc/drbd/*
    /etc/lvm/lvm.conf
    /etc/mdadm.conf
    /etc/mdadm.SID.conf
  2. Start with node alice.

    1. Put the node into standby node. That way, resources can move off the node:

      # crm --wait node standby alice reboot

      With the option --wait, the command returns only when the cluster finishes the transition and becomes idle. The reboot option has the effect that the node will be already out of standby mode when it is online again. Despite its name, the reboot option works as long as the node goes offline and online.

    2. Stop the cluster services on node alice:

      # crm cluster stop
    3. At this point, alice does not have running resources anymore. Upgrade the node alice and reboot it afterward. Cluster services are assumed not to start on boot.

    4. Copy your backup files from Step 1 to the original places.

    5. Bring back node alice into cluster:

      # crm cluster start
    6. Check that resources are fine.

  3. Repeat Step 2 for node bob.

24.3 Updating Software Packages on Cluster Nodes

Warning
Warning: Active Cluster Stack

Before starting an update for a node, either stop the cluster stack on that node or put the node into maintenance mode, depending on whether the cluster stack is affected or not. See Step 1 for details.

If the cluster resource manager on a node is active during the software update, this can lead to results such as fencing of active nodes.

  1. Before installing any package updates on a node, check the following:

    • Does the update affect any packages belonging to SUSE Linux Enterprise High Availability or the Geo clustering extension? If yes: Stop the cluster stack on the node before starting the software update:

      # systemctl stop pacemaker
    • Does the package update require a reboot? If yes: Stop the cluster stack on the node before starting the software update:

      # systemctl stop pacemaker
    • If none of the situations above apply, you do not need to stop the cluster stack. In that case, put the node into maintenance mode before starting the software update:

      # crm node maintenance NODE_NAME

      For more details on maintenance mode, see Section 23.2, “Different Options for Maintenance Tasks”.

  2. Install the package update using either YaST or Zypper.

  3. After the update has been successfully installed:

    • Either start the cluster stack on the respective node (if you stopped it in Step 1):

      # systemctl start pacemaker
    • or remove the maintenance flag to bring the node back to normal mode:

      # crm node ready NODE_NAME
  4. Check the cluster status with crm status or with Hawk2.

24.4 For More Information

For detailed information about any changes and new features of the product you are upgrading to, refer to its release notes. They are available from https://www.suse.com/releasenotes/.