Chapter 9. Upgrading Red Hat Gluster Storage to Red Hat Enterprise Linux 7

This chapter describes the procedure to upgrade from Red Hat Enterprise Linux 6 based Red Hat Gluster Storage to Red Hat Enterprise Linux 7 based Red Hat Gluster Storage.

Important

Be aware of the following when upgrading a Gluster node from RHEL 6 to RHEL 7:
  • Red Hat recommends that the RHEL 6 to RHEL 7 upgrade be performed with assistance from Red Hat.
  • Upgrading from RHEL 6 to RHEL 7 is an offline procedure which results in Gluster node downtime, as volumes are offline during the upgrade process.
  • Servers must be upgraded prior to upgrading clients.

9.1. Preparing System for Upgrade

  1. Migrate from Red Hat Network Classic to Red Hat Subscription Manager

    Verify that your system is not on the legacy Red Hat Network Classic update system:
    # migrate-rhs-classic-to-rhsm --status
    If the system is not on Red Hat Network Classic, skip this step
    If the system is on Red Hat Network Classic, migrate to Red Hat Subscription Manager using: Migrating from RHN to RHSM in Red Hat Enterprise Linux.
  2. Register the system with Subscription Manager

    Important

    If the system is already registered using Subscription Manager, skip the registrations steps and start the backup of the Gluster configuration files.
    To register the system with Red Hat Network, execute the following command and enter your Red Hat Network user name and password that have the RHEL entitlements:
    # subscription-manager register --username=user_name --password=password
  3. Identify the available entitlement pools

    Find the entitlement pools containing the RHEL 6 repositories:
    # subscription-manager list --available
  4. Attach entitlement pool to the system

    Use the pool identifier located in the previous step to attach the RHEL 6 entitlements to the system:
    # subscription-manager attach --pool=pool_ID
  5. Enable repositories

    Enable the RHEL 6, scalefs, and Red Hat Gluster Storage repositories:
    # subscription-manager repos --enable=rhel-6-server-rpms --enable=rhel-scalefs-for-rhel-6-server-rpms --enable=rhs-3-for-rhel-6-server-rpms
  6. Backup the Gluster configuration files

    Note

    It is recommended to make a complete backup using a reliable backup solution before you update your system. This Knowledge Base solution covers one possible approach: https://access.redhat.com/solutions/1484053.
    1. Ensure that the following configuration directories and files are backed up:
      • /var/lib/glusterd
      • /etc/glusterfs
    2. For systems with samba-ctdb enabled cluster, create a new directory to store the backup:
      # mkdir backup_folder_name
      # cd backup_folder_name
    3. Execute the following command to take a backup samba-ctdb data:
      for each in `ctdb getdbmap | grep PERSISTENT | cut -d" " -f2 | cut -d":" -f2`; do echo $each ; ctdb backup_folder_name $each ${each}.bak; done
  7. Stop all Gluster services, volumes, and processes

    1. Stop any geo-replication sessions:
      # gluster volume geo-replication MASTER_VOL SLAVE_HOST::SLAVE_VOL stop
    2. Stop the Nagios process:
      # service nrpe stop
    3. Stop all volumes:
      # for vol in `gluster volume list`; do gluster --mode=script volume stop $vol; sleep 2s; done
    4. Stop the Gluster processes:
      # service glusterd stop
      # pkill glusterfs
      # pkill glusterfsd

      Important

      If glusterd crashes, there is no functionality impact to this crash as it occurs during the shutdown. For more information, see Resolving glusterd crash
    5. For system with samba-ctdb enabled cluster, stop the CTDB services:
      # service ctdb stop
  8. Update the system and reboot

    Update the system to the latest minor version of RHEL 6, and reboot after the update is complete:
    # yum update
    # reboot
  9. Verify the version number

    Check the current version number of the updated RHEL 6 system using the following command:
    # cat /etc/redhat-release

    Important

    The version number should be 6.10.