# Installing Operating System Updates Offline Using Update Packages

To install the Operating system (OS) updates on HyperScale nodes that are offline, you must download the exact list of OS update packages from the maintenance advantage site on a computer with internet connectivity, and then copy and extract the packages on the HyperScale node to perform the installation.

## Before You Begin

- Download the following packages. Make sure that you download all the parts, including the MD5 checksum.

  $Part_00 | $Part_14 | $Part_28 | $Part_42
  $Part_01 | $Part_15 | $Part_29 | $Part_43
  $Part_02 | $Part_16 | $Part_30 | $Part_44
  $Part_03 | $Part_17 | $Part_31 | $Part_45
  $Part_04 | $Part_18 | $Part_32 | $Part_46
  $Part_05 | $Part_19 | $Part_33 | $Part_47
  $Part_06 | $Part_20 | $Part_34 | $Part_MD5
  $Part_07 | $Part_21 | $Part_35 |
  $Part_08 | $Part_22 | $Part_36 |
  $Part_09 | $Part_23 | $Part_37 |
  $Part_10 | $Part_24 | $Part_38 |
  $Part_11 | $Part_25 | $Part_39 |
  $Part_12 | $Part_26 | $Part_40 |
  $Part_13 | $Part_27 | $Part_41 |

- If you use a tape library on the Hyperscale nodes, you must upgrade the corresponding Linux tape driver (lin_tape), when the Kernel associated with the OS is upgraded. For more information, see Tape Library Support for HyperScale.

## Procedure

1. Log on to the node that has the `/ws/ddb` path and create the following folder structure under `/ws/ddb` using a File Transfer application (For example, Winscp):

       /payload/CVAppliance

   This will be the node from which the upgrade script will be executed.

2. Using the File Transfer application manually copy all the packages to the `/ws/ddb/payload/CVAppliance` folder in the HyperScale node.

3. Login to the node using iRMC (HyperScale 1.5) \ IPMI (Hyperscale X) \ Server Console (HyperScale Reference Architecture) and extract the CVAppliance_<MonthYear> folder from the package location to the `/ws/ddb/payload/CVAppliance` folder:

       cd /ws/ddb/payload/CVAppliance
       cat CVAppliance_$[MonthYear]* | tar -xvf –

   The above command combines the split .tar files, and extracts it to the local path.

       pwd
       /ws/ddb/payload/CVAppliance/

4. Create a Software Cache directory, if it does not exist.

       mkdir /opt/commvault/SoftwareCache

5. Create a symbolic link between the CVAppliance folder and the Software Cache:

   Note

   If you already have a Software Cache on the Hyperscale node, remove it from the Remote Cache list on the CommServe. (CommCell Console ribbon > Tools > Add/Remove Software > Software Cache Configuration > Remote Software Cache tab.) Otherwise the symbolic link will not be created.

       ln -s /ws/ddb/payload/CVAppliance /opt/commvault/SoftwareCache/CVAppliance

6. Navigate to the following directory:

       cd /opt/commvault/MediaAgent

7. Execute the following script to compile the packages:

       ./cvcreate_rpmxml.py

   Output, similar to the following, will be displayed:

       [root@hyperscale-hs1 MediaAgent]# ./cvcreate_rpmxml.py
       node: hyperscale-hs2
       node: hyperscale-hs3
       Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager, vdsmupgrade
       This system is not registered with an entitlement server. You can use subscription-manager to register.
       Cleaning repos: jb-eap-7-for-rhel-7-server-rpms jb-eap-7.1-for-rhel-7-server-rpms
                     : jb-eap-7.2-for-rhel-7-server-rpms mono-cv-supported
                     : rh-gluster-3-client-for-rhel-7-server-rpms rh-gluster-3-for-rhel-7-server-rpms
                     : rh-gluster-3-samba-for-rhel-7-server-rpms
                     : rh-gluster-3-web-admin-agent-for-rhel-7-server-rpms rhel-7-server-ansible-2-rpms
                     : rhel-7-server-ansible-2.5-rpms rhel-7-server-ansible-2.6-rpms
                     : rhel-7-server-ansible-2.7-rpms rhel-7-server-extras-rpms rhel-7-server-optional-rpms
                     : rhel-7-server-rhv-4-manager-tools-rpms rhel-7-server-rhv-4-mgmt-agent-rpms
                     : rhel-7-server-rhv-4-tools-rpms rhel-7-server-rhv-4.0-manager-rpms
                     : rhel-7-server-rhv-4.0-rpms rhel-7-server-rhv-4.1-manager-rpms
                     : rhel-7-server-rhv-4.1-rpms rhel-7-server-rhv-4.2-manager-rpms
                     : rhel-7-server-rhv-4.3-manager-rpms rhel-7-server-rpms
                     : rhel-7-server-supplementary-rpms rhel-ha-for-rhel-7-server-rpms
       Other repos take up 51 M of disk space (use --verbose for details)
       infile_arch: /tmp/yum.list.noarch
       infile_arch: /tmp/yum.list.x86_64

8. Get the current UNIX time using the following command:

       # date +%s

   The output will display the current UNIX time in epoch format.

   For example:

       [root@hyperscale-hs1 ]#  date +%s
       1572626183

   Note

   `1572626183` is used as an example. This value will change depending on the current time.

9. Create the following entries:

       # echo "sHyperScaleRemoteCache Yes" >> /etc/CommVaultRegistry/Galaxy/Instance001/MediaAgent/.properties

        vi $[/etc/CommVaultRegistry/Galaxy/Instance001/MediaAgent]/.properties
        nSWCacheLastSyncTime $[Current_UNIX_time]

   Where:

   <Current_UNIX_time> is the UNIX time obtained in step 8.

10. Verify the value:

         [root@hyperscale-hs1 $[MediaAgent]]# pwd
        $[/etc/CommVaultRegistry/Galaxy/Instance001/MediaAgent]
        [root@hyperscale-hs1 $[MediaAgent]]# cat .properties
        nSWCacheLastSyncTime         $[Current_UNIX_time]

    Alternatively, manually add the following Additional Setting on the Control Node using the CommCell Console:

    Note

    The values in setting will not be automatically populated.

11. Set the MediaAgents associated with the nodes in the Maintenance mode. For more information, see Setting the MediaAgent on Maintenance Mode.

    Important

    Make sure that all the MediaAgents in the storage pool are set in the maintenance mode before proceeding to the next step.

12. On the system console (for example, using KVM, not SSH) of the node on which the remote cache is configured, press Ctrl+Alt+F2 to get to login prompt, log on to the node, and then navigate to the following folder:

    /opt/commvault/MediaAgent

13. Update the CVFS binaries using the following command:

        # ./cvupgradeos.py -upgrade_hedvig_only

    Note

    `cvupgradeos.py` must be run using the console. Do not run `cvupgradeos.py` using SSH.

    Alternately update the CVFS binaries using the following command in the non-disruptive mode:

        # ./cvupgradeos.py -upgrade_hedvig_only_non_disruptive

    Non-disruptive mode prevents the nodes from going into maintenance mode and as a result the operational status, especially for restore operations, will be uninterrupted.

14. Update the operating system binaries using following command:

        # ./cvupgradeos.py -upgrade_os_only

    The following prompt will be displayed:

        Performing some pre-upgrade checks ... please wait...
        You are attempting to perform OS upgrade of cluster nodes.
        This will bring down cluster services/volume and reboot the nodes one after the other
        Following nodes will be upgraded:
                mynode001.company.com
                mynode002.company.com
                mynode003.company.com
        Please confirm if you want to upgrade at this time (y/n):

    Important

    Verify and ensure that all the nodes in the cluster are listed in the output.

15. Type `y` and press `Enter` to continue.

    The installation process will start. The progress of the installation is displayed. (The sequence is also logged in /var/log/commvault/Log_Files/cvupgradeos.log.)

    Note the following:

    - The updates will be installed sequentially on each HyperScale node available in the current cluster.

    - At the end of update installation, each node will be rebooted before moving on to the next node.

    - The remote cache node (or the node from which the OS updates are installed) will be the last node to reboot. The upgrade will automatically resume after the reboot but may take some time to complete the post upgrade operations in this node.

16. Once the last node has rebooted, log back into the node and navigate to the following folder:

    /opt/commvault/MediaAgent

17. Once the installation is completed, check the status of the installation using the following command:

        # ./cvupgradeos.py -status

    The resumed process will be displayed, however, if the process has completed, a message similar to the following will be displayed:

    If there is a failure, investigate the reason for the failure in /var/log/commvault/Log_Files/cvupgradeos.log. Correct the issue causing the failure and then rerun `cvupgradeos.py` to install the updates in the failed node.

18. Using the Command Center, remove the MediaAgents associated with the nodes from Maintenance mode. For more information, see Setting the MediaAgent on Maintenance Mode.

19. Remove the following offline repositories as this could consume space on the DDB.

         /ws/ddb/payload/CVAppliance/CVAppliance_$[MonthYear]*

## Result

- The updates will be installed in all the HyperScale nodes.

- If the OS version is upgraded, you can verify the OS version as follows:

  1. From the Command Center navigation pane, go to Manage > Infrastructure > Server groups.

     The Server groups page appears.

  2. The server name, OS version, and other details are displayed for each server in the server group.

×

Loading...