2.7 Upgrading Gluster Storage for Oracle Linux to Release 6

This section discusses upgrading to Gluster Storage for Oracle Linux Release 6 from Releases 5, 4.1 or 3.12.

Before you perform an upgrade, configure the Oracle Linux yum server repositories or ULN channels. For information on setting up access to the repositories or channels, see Section 2.3, “Enabling Access to the Gluster Storage for Oracle Linux Packages”.

Make sure you also disable the Gluster Storage for Oracle Linux repositories and channels for the previous releases:

  • Release 5.  ol7_gluster5 repository or ol7_arch_gluster5 ULN channel.

  • Release 4.1.  ol7_gluster41 repository or ol7_arch_gluster41 ULN channel.

  • Release 3.12.  ol7_gluster312 repository or ol7_arch_gluster312 ULN channel.

Do not make any configuration changes during the upgrade. You should upgrade the servers before clients are upgraded. After the upgrade, you should run the same Gluster server and client versions.

2.7.1 Performing an Online Upgrade

This procedure performs an online upgrade. An online upgrade does not require any volume down time. During the upgrade, Gluster clients can continue access the volumes.

You can perform an online upgrade with replicated and distributed replicated volumes only. Any other volume types must be upgraded offline. See Section 2.7.2, “Performing an Offline Upgrade” for information on performing an offline upgrade.

This procedure upgrades one server at a time, while keeping the volumes online and client IO ongoing. This procedure assumes that multiple replicas of a replica set are not part of the same server in the trusted storage pool.

The upgrade procedure should be performed on each Gluster node.

Performing an online upgrade:

  1. If you are upgrading from Gluster Storage for Oracle Linux Release 3.12, make sure the deprecated features lock-heal, and grace-timeout are unset on the volumes. You can see if these features are set using the gluster volume info command. If any of these features are listed in the Options Reconfigured section in the output, you must unset them before you upgrade.

    To unset these options for each volume, use the gluster volume reset command. For example:

    # gluster volume reset myvolume features.lock-heal
    # gluster volume reset myvolume features.grace-timeout
  2. Stop the Gluster service.

    # systemctl stop glusterd
  3. Stop all Gluster file system processes:

    # killall glusterfs glusterfsd

    You can make sure no Gluster file system processes are running using:

    # ps aux |grep gluster
  4. Stop any Gluster-related services, for example, stop Samba and NFS-Ganesha.

    # systemctl stop smb
    # systemctl stop nfs-ganesha
  5. Update the Gluster Storage for Oracle Linux packages:

    # yum update glusterfs-server
  6. (Optional) If you are using NFS-Ganesha, upgrade the package using:

    # yum update nfs-ganesha-gluster
  7. Start the Gluster service:

    # systemctl daemon-reload
    # systemctl start glusterd
  8. Reload and start any Gluster-related services, for example, Samba and NFS-Ganesha.

    # systemctl daemon-reload 
    # systemctl start smb
    # systemctl start nfs-ganesha
  9. Heal the volumes. You can see the status of the volumes using:

    # gluster volume status

    If any bricks in the volume are offline, bring the bricks online using:

    # gluster volume start volume_name force

    When all bricks are online, heal the volumes:

    # for i in `gluster volume list`; do gluster volume heal $i; done

    You can view healing information for each volume using:

    # gluster volume heal volume_name info