Chapter 8. Upgrading to Red Hat Gluster Storage 3.2

This chapter describes the procedure to upgrade to Red Hat Gluster Storage 3.2 from Red Hat Gluster Storage 3.1.

Upgrade support limitations

  • Upgrading from Red Hat Enterprise Linux 6 based Red Hat Gluster Storage to Red Hat Enterprise Linux 7 based Red Hat Gluster Storage is not supported.
  • Servers must be upgraded prior to upgrading clients.

8.1. Offline Upgrade from Red Hat Gluster Storage 3.1 to 3.2

Warning

Before you upgrade, be aware of changed requirements that exist after Red Hat Gluster Storage 3.1.3. If you want to access a volume being provided by a Red Hat Gluster Storage 3.1.3 or higher server, your client must also be using Red Hat Gluster Storage 3.1.3 or higher. Accessing volumes from other client versions can result in data becoming unavailable and problems with directory operations. This requirement exists because Red Hat Gluster Storage 3.1.3 contained a number of changes that affect how the Distributed Hash Table works in order to improve directory consistency and remove the effects seen in BZ#1115367 and BZ#1118762.

Important

In Red Hat Enterprise Linux 7 based Red Hat Gluster Storage, updating to 3.1 or higher reloads firewall rules. All runtime-only changes made before the reload are lost.

8.1.1. Upgrading from Red Hat Gluster Storage 3.1 to Red Hat Gluster Storage 3.2 for Systems Subscribed to Red Hat Network

Procedure 8.1. Before you upgrade

  1. Unmount gluster volumes from all clients. On a client, use the following command to unmount a volume from a mount point.
    # umount mount-point
  2. On a gluster server, stop all volumes by running the following command for each volume.
    # gluster volume stop volname
  3. Unmount the data partition(s) from the servers using the following command.
    # umount mount-point
  4. Verify that all volumes are stopped.
    # gluster volume info
  5. Stop the glusterd services on all servers using the following command:
    # service glusterd stop

Procedure 8.2. Upgrade using yum

  1. Execute the following command to kill all gluster processes:
    # pkill gluster
  2. Verify that your system is not on the legacy Red Hat Network Classic update system.
    # migrate-rhs-classic-to-rhsm --status
    If you are still on Red Hat Network Classic, run the following command to migrate to Red Hat Subscription Manager.
    # migrate-rhs-classic-to-rhsm --rhn-to-rhsm
    Then verify that your status has changed.
    # migrate-rhs-classic-to-rhsm --status
  3. If you use Samba:
    1. For Red Hat Enterprise Linux 6.7 or higher, enable the following repository:
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-6-server-rpms
      For Red Hat Enterprise Linux 7, enable the following repository:
      # subscription-manager repos --enable=rh-gluster-3-samba-for-rhel-7-server-rpms
    2. Ensure that Samba is upgraded on all the nodes simultaneously, as running different versions of Samba in the same cluster will lead to data corruption.
      Stop the CTDB and SMB services and verify that they are stopped.
      # service ctdb stop
      # ps axf | grep -E '(ctdb|smb|winbind|nmb)[d]'
  4. Upgrade the server to Red Hat Gluster Storage 3.2.
    # yum update
    Wait for the update to complete.
  5. Reboot the server to ensure that kernel updates are applied.
  6. When all nodes have been upgraded, run the following command to update the op-version of the cluster. This helps to prevent any compatibility issues within the cluster.
    # gluster volume set all cluster.op-version 31001

    Note

    31001 is the cluster.op-version value for Red Hat Gluster Storage 3.2.0. Refer to Section 1.5, “Supported Versions of Red Hat Gluster Storage” for the correct cluster.op-version value for other versions.

8.1.2. Upgrading from Red Hat Gluster Storage 3.1 to Red Hat Gluster Storage 3.2 for Systems Subscribed to Red Hat Satellite Server

  1. Unmount all volumes. On a client, use the following command to unmount a volume from the mount point.
    # umount mount-name
  2. On a gluster server, stop all volumes using the following command:
    # gluster volume stop volname
  3. Unmount the data partition(s) on the servers using the following command:
    umount mount-point
  4. Create an Activation Key at the Red Hat Satellite Server, and associate it with the following channels. For more information, refer to Section 2.5, “Installing from Red Hat Satellite Server”
    • For Red Hat Enterprise Linux 6.7 or higher:
      Base Channel: Red Hat Enterprise Linux Server (v.6 for 64-bit x86_64)
      
      Child channels:
      RHEL Server Scalable File System (v. 6 for x86_64)
      Red Hat Gluster Storage Server 3 (RHEL 6 for x86_64)
      If you use Samba, add the following channel:
      Red Hat Gluster 3 Samba (RHEL 6 for x86_64)
    • For Red Hat Enterprise Linux 7:
      Base Channel: Red Hat Enterprise Linux Server (v.7 for 64-bit x86_64)
      
      Child channels:
      RHEL Server Scalable File System (v. 7 for x86_64)
      Red Hat Gluster Storage Server 3 (RHEL 7 for x86_64)
      If you use Samba, add the following channel:
      Red Hat Gluster 3 Samba (RHEL 6 for x86_64)
  5. Unregister your system from Red Hat Satellite by following these steps:
    1. Log in to the Red Hat Satellite server.
    2. Click on the Systems tab in the top navigation bar and then the name of the old or duplicated system in the System List.
    3. Click the delete system link in the top-right corner of the page.
    4. To confirm the system profile deletion by clicking the Delete System button.
  6. Run the following command on your Red Hat Gluster Storage server, using your credentials and the Activation Key you prepared earlier. This re-registers the system to the Red Hat Gluster Storage 3.2 channels on the Red Hat Satellite Server.
    # rhnreg_ks --username username --password password --force --activationkey Activation Key ID
  7. Verify that the channel subscriptions have been updated.
    On Red Hat Enterprise Linux 6.7 and higher, look for the following channels, as well as the rhel-x86_64-server-6-rh-gluster-3-samba channel if you use Samba.
    # rhn-channel --list
    rhel-x86_64-server-6
    rhel-x86_64-server-6-rhs-3
    rhel-x86_64-server-sfs-6
    On Red Hat Enterprise Linux 7, look for the following channels, as well as the rhel-x86_64-server-7-rh-gluster-3-samba channel if you use Samba.
    # rhn-channel --list
    rhel-x86_64-server-7
    rhel-x86_64-server-7-rhs-3
    rhel-x86_64-server-sfs-7
  8. Upgrade to Red Hat Gluster Storage 3.2.
    # yum update
  9. Reboot the server and run volume and data integrity checks.
  10. When all nodes have been upgraded, run the following command to update the op-version of the cluster. This helps to prevent any compatibility issues within the cluster.
    # gluster volume set all cluster.op-version 31001

    Note

    31001 is the cluster.op-version value for Red Hat Gluster Storage 3.2.0. Refer to Section 1.5, “Supported Versions of Red Hat Gluster Storage” for the correct cluster.op-version value for other versions.