Installing IBM Spectrum Scale packages on Red Hat Enterprise Linux 7.x systems

Use this information to manually install IBM Spectrum Scale™ packages on systems running on Red Hat Enterprise Linux 7.x.

  1. Download and extract IBM Spectrum Scale packages, and then accept the licensing agreement. For more information, see Extracting the IBM Spectrum Scale software on Linux nodes and Accepting the electronic license agreement on Linux nodes.

    For information on the location of extracted packages, see Location of extracted packages.

  2. Install the IBM Spectrum Scale RPMs, including the Advanced Edition packages, using the following command.
    # rpm -ivh gpfs.base*.rpm gpfs.gpl*rpm gpfs.license*.rpm gpfs.gskit*rpm 
    gpfs.msg*rpm gpfs.ext*rpm gpfs.adv*rpm gpfs.crypto*rpm

    The system displays output similar to the following:

    Preparing... ########################################### [100%]
    1:gpfs.base ########################################### [ 11%]
    2:gpfs.ext ########################################### [ 22%]
    3:gpfs.adv ########################################### [ 33%]
    4:gpfs.crypto ########################################### [ 44%]
    5:gpfs.gpl ########################################### [ 56%]
    6:gpfs.license.adv ########################################### [ 67%]
    7:gpfs.msg.en_US ########################################### [ 78%]
    8:gpfs.gskit ########################################### [ 89%]
    9:gpfs.base-debuginfo ########################################### [100%]
  3. Build the portability layer using the following command.
    # /usr/lpp/mmfs/bin/mmbuildgpl

    The system displays output similar to the following:

    --------------------------------------------------------
    mmbuildgpl: Building GPL module begins at Tue May 31 10:31:30 MST 2016.
    --------------------------------------------------------
    Verifying Kernel Header...
      kernel version = 31000229 (3.10.0-229.7.2.el7.x86_64, 3.10.0-229.7.2)
      module include dir = /lib/modules/3.10.0-229.7.2.el7.x86_64/build/include
      module build dir   = /lib/modules/3.10.0-229.7.2.el7.x86_64/build
      kernel source dir  = /usr/src/linux-3.10.0-229.7.2.el7.x86_64/include
      Found valid kernel header file under /usr/src/kernels/3.10.0-229.7.2.el7.x86_64/include
    Verifying Compiler...
      make is present at /bin/make
      cpp is present at /bin/cpp
      gcc is present at /bin/gcc
      g++ is present at /bin/g++
      ld is present at /bin/ld
    Verifying Additional System Headers...
      Verifying kernel-headers is installed ...
        Command: /bin/rpm -q kernel-headers
        The required package kernel-headers is installed
    make World ...
    make InstallImages ...
    --------------------------------------------------------
    mmbuildgpl: Building GPL module completed successfully at Tue May 31 10:31:54 MST 2016.
    --------------------------------------------------------

    You might need to install prerequisite packages, if the portability layer cannot be built due to missing prerequisite packages. For a list of prerequisite packages, see Software requirements.

    If the repository setup and the kernel configuration are correct, you can install the prerequisite packages using the following command:

    # /usr/bin/yum install -y package_name1 package_name2 ... package_nameN

    For example, if kernel-devel, gcc, and gcc-c++ are listed as the missing prerequisite packages, use the following command to install these packages:

    # /usr/bin/yum install -y kernel-devel gcc gcc-c++

Once IBM Spectrum Scale is built on all nodes, you can create the cluster. It is recommended to have an odd number of quorum nodes and that your NSD nodes be designated as quorum nodes

  1. Create the cluster using the following command.
    # /usr/lpp/mmfs/bin/mmcrcluster -N nodeslist --ccr-enable -r /usr/bin/ssh -R /usr/bin/scp -C cluster1.spectrum

    In this command example, nodeslist is a file that contains a list of nodes and node designations to be added to the cluster and its contents are as follows:

    node1:quorum
    node2
    node3
    node4:quorum-manager
    node5:quorum-manager

    Running the mmcrcluster command generates output similar to the following:

    mmcrcluster: Performing preliminary node verification ...
    mmcrcluster: Processing quorum and other critical nodes ...
    mmcrcluster: Processing the rest of the nodes ...
    mmcrcluster: Finalizing the cluster data structures ...
    mmcrcluster: Command successfully completed
    mmcrcluster: Propagating the cluster configuration data to all
    affected nodes.  This is an asynchronous process.
    # Thu Mar 24 15:33:06 CST 2016: mmcommon pushSdr_async: mmsdrfs propagation started
    Thu Mar 24 15:33:10 CST 2016: mmcommon pushSdr_async: mmsdrfs propagation completed; mmdsh rc=0
  2. Accept proper role licenses for the nodes using the following commands.
    1. Accept the server licenses for the applicable nodes.
      # /usr/lpp/mmfs/bin/mmchlicense server --accept -N node1,node4,node5

      The system displays output similar to the following:

      The following nodes will be designated as possessing server licenses:
          node1
          node4
          node5
      mmchlicense: Command successfully completed
      mmchlicense: Warning: Not all nodes have proper GPFS license designations.
          Use the mmchlicense command to designate licenses as needed.
      mmchlicense: Propagating the cluster configuration data to all
      affected nodes.  This is an asynchronous process.
      # Thu Mar 24 15:37:59 CST 2016: mmcommon pushSdr_async: mmsdrfs propagation started
      Thu Mar 24 15:38:01 CST 2016: mmcommon pushSdr_async: mmsdrfs propagation completed; mmdsh rc=0
    2. Accept the client licenses for the applicable nodes.
      # /usr/lpp/mmfs/bin/mmchlicense client --accept -N node2,node3

      The system displays output similar to the following:

      The following nodes will be designated as possessing client licenses:
          node2
          node3
      mmchlicense: Command successfully completed
      mmchlicense: Propagating the cluster configuration data to all
      affected nodes.  This is an asynchronous process.
      # Thu Mar 24 15:38:26 CST 2016: mmcommon pushSdr_async: mmsdrfs propagation started
      Thu Mar 24 15:38:28 CST 2016: mmcommon pushSdr_async: mmsdrfs propagation completed; mmdsh rc=0

    IBM Spectrum Scale cluster is now created. You can view the configuration information of the cluster using the following command.

    # /usr/lpp/mmfs/bin/mmlscluster

    The system displays output similar to the following:

    GPFS cluster information
    ========================
      GPFS cluster name:         cluster1.spectrum
      GPFS cluster id:           993377111835434248
      GPFS UID domain:           cluster1.spectrum
      Remote shell command:      /usr/bin/ssh
      Remote file copy command:  /usr/bin/scp
      Repository type:           CCR
    GPFS cluster configuration servers:
    -----------------------------------
      Primary server:    node1 (not in use)
      Secondary server:  (none)
     Node  Daemon node name  IP address    Admin node name  Designation
    --------------------------------------------------------------------
       1   node1            203.0.113.11  node1           quorum
       2   node4            203.0.113.14  node4           quorum-manager
       3   node5            203.0.113.15  node5           quorum-manager
       4   node2            203.0.113.12  node2           
       5   node3            203.0.113.13  node3
  3. Start the GPFS daemons and the cluster using the following command.
    # /usr/lpp/mmfs/bin/mmstartup -N NodesList

    NodeList is the list of nodes on which the daemons and the cluster are to be started.

    You can use the mmgetstate -a NodeList command to verify that the GPFS software is running on these nodes.