You are here: Manual Installation > Installation > Installing Moab Workload Manager

2.3 Installing Moab Workload Manager

This topic contains instructions on how to install and start Moab Workload Manager (Moab).

For Cray systems, Adaptive Computing recommends that you install Moab and Torque Servers (head nodes) on commodity hardware (not on Cray compute/service/login nodes).

However, you must install the Torque pbs_mom daemon and Torque client commands on Cray login and "mom" service nodes since the pbs_mom must run on a Cray service node within the Cray system so it has access to the Cray ALPS subsystem.

See Installation Notes for Moab and Torque for Cray in the Moab Workload Manager Administrator Guide for instructions on installing Moab and Torque on a non-Cray server.

In this topic:

2.3.1 Understand Licenses

As part of the Moab modularity, introduced in version 9.0.1, Moab features can be licensed separately. See Module-Based Features.

With the 9.1.0 release, Moab now uses an RLM Server to manage licenses. For the Moab core and for most Moab features, an RLM Server is not required. The new Moab "core" license will have a new name to reflect the RLM generation. Do not rename this license to moab.lic.

Elastic Computing, beginning with 9.1.0, requires an RLM Server as part of your configuration.

The 9.1.0 licensing change does not affect legacy licenses; however, a module-based licensed may be required to use newer functionality.

2.3.2 Open Necessary Ports

If your site is running firewall software on its hosts, you will need to configure the firewall to allow connections to the necessary ports.

Location Ports Functions When Needed
Moab Server Host 42559 Moab Server Port If you intend to run client commands on a host different from the Moab Server Host or if you will be using Moab in a grid

See 2.11 Opening Ports in a Firewall for general instructions and an example of how to open ports in the firewall.

2.3.3 Install Dependencies, Packages, or Clients

In this section:

2.3.3.A Dependencies and Packages

On the Moab Server Host, use the following commands to install the required Moab dependencies and packages.

[root]# yum install make libcurl perl-CPAN libxml2-devel gcc

2.3.3.B Torque Client

If you are using Torque and are installing the Torque Server on a different host (Torque Server Host) from the Moab Server (Moab Server Host), you will need to install the Torque client on the Moab Server Host in order for Moab to interact with Torque.

Follow the instructions in 2.2.5 Install Torque Clients using the Moab Server Host as the Torque Client Host; with the exception that you must copy and install the torque-package-devel-linux-<arch>.sh self-extracting package in addition to the torque-package-clients-linux-<arch>.sh package.

2.3.4 Obtain and Install the Elastic Computing License

If using Elastic Computing, Moab requires access to an RLM license server to record usage.

These instructions assume you already have access to an RLM Server. See 2.6 Installing RLM Server for instructions on how to set up a new RLM Server.

Do the following:

  1. On the RLM server, obtain the hostid and hostname.
    • hostid
      [root]# /opt/rlm/rlmhostid

      You should see output similar to the following.

      rlmhostid v12.1
      Copyright (C) 2006-2016, Reprise Software, Inc. All rights reserved.            
      
      Hostid of this machine: 00259096f004
    • hostname
      [root]# /opt/rlm/rlmhostid host

      You should see output similar to the following.

      rlmhostid v12.1      
      Copyright (C) 2006-2016, Reprise Software, Inc. All rights reserved.
      
      Hostid of this machine: host=<your-host-name>
  2. Email [email protected] for a license and include the hostid and hostname you just obtained.
  3. Adaptive Computing will generate the license and send you the Elastic Computing license file (.lic) file in a return email.
  4. On the RLM server, do the following:
    1. Download and install the license file.
      [root]# cd /opt/rlm
      [root]# chown rlm:rlm <licenseFileName>.lic
    2. If the RLM Server in your configuration uses a firewall, edit the license file to reference the ISV adaptiveco port for the Adaptive license-enabled products. This is the same port number you opened during the RLM Server installation. See the instructions to open necessary ports in the 2.6 Installing RLM Server (manual installation method) or 1.1 Installing RLM Server (RPM installation method) for more information.
      [root]# vi /opt/rlm/moab_elastic_tracking.lic
      
      
      ISV adaptiveco port=5135

      The license file already references the RLM Server port (5053 by default).

      If the RLM Server in your configuration uses different ports, you will need to modify the license file to reflect the actual ports. See the instructions to open necessary ports in the 2.6 Installing RLM Server (manual installation method) or 1.1 Installing RLM Server (RPM installation method) for more information.

    3. If you did not install an RLM Server using the file available from Adaptive Computing (for example, because your system configuration already uses one), do the following:
      1. Download the 'adaptiveco.set' file from the Adaptive Computing Moab HPC Suite Download page.
      2. Install the 'adaptiveco.set' file.
        [root]# chown rlm:rlm adaptiveco.set
      3. Place the 'adaptiveco.set' file in the same directory where the Elastic Computing license resides. Typically, this is the RLM Server base directory (/opt/rlm); but may be different depending on your configuration
    4. Perform a reread on the RLM Server base directory to update the RLM Server with your license. For example:
      [root]# /opt/rlm/rlmreread

2.3.5 (Optional) Build a Custom RPM

2.3.6 Install Moab Server

You must complete the tasks to install the dependencies, packages, or clients before installing Moab Server. See 2.3.3 Install Dependencies, Packages, or Clients.

If your configuration uses firewalls, you must also open the necessary ports before installing the Moab Server. See 2.3.2 Open Necessary Ports .

On the Moab Server Host, do the following:

  1. Download the latest Moab build from the Adaptive Computing Moab HPC Suite Download Center.
  2. As the root user, run each of the following commands in order.
    [root]# tar xzvf moab-9.1.0-<OS>.tar.gz
    [root]# cd moab-9.1.0-<OS>

    The variable marked <OS> indicates the OS for which the build was designed.

    If Elastic Computing is part of your Moab Workload Manager configuration, install deps/acpython-base*.

    [root]# yum install deps/acpython-base*
  3. Configure Moab. If you are installing Moab Accounting Manager, configure Moab with the --with-am option.
    [root]# ./configure <options>

    See 2.14 Moab Workload Manager Configuration Options for a list of commonly used options or use ./configure --help for a complete list of available options.

  4. ONLY if you are using green computing, or if you are using a resource manager other than Torque.

    Run the make perldeps command to install the necessary perl modules using CPAN. When first running CPAN, you will be asked for configuration information. It is recommended that you choose an automatic configuration. You will be prompted to provide input during module installation; running the make perldeps command with a script is not recommended.

  5. [root]# make perldeps
  6. Install Moab.
  7. [root]# make install
  8. Modify the Moab configuration file.
  9. [root]# vi /opt/moab/etc/moab.cfg

    Do the following:

    1. Verify that SUBMITCMD is set up for your Torque resource manager and that it points to a valid qsub executable. For example:
    2. RMCFG[torque] SUBMITCMD=/usr/local/bin/qsub

      If you use a SLURM resource manager, see Moab-SLURM Integration Guide in the Moab Workload Manager Administrator Guide for configuration information. If you use a NATIVE resource manager, see Managing Resources Directly with the Native Interface in the Moab Workload Manager Administrator Guide for configuration information.

    3. If you are using Torque as a resource manager and you installed the Torque Server on a different host (Torque Server Host), configure the RMCFG HOST parameter to tell Moab the host on which Torque Server is running.
      RMCFG[torque] HOST=<torque_server_hostname>
  10. Source the appropriate profile script to add the Moab executable directories to your current shell $PATH environment.
  11. [root]# . /etc/profile.d/moab.sh
  12. Copy your license file into the same directory as moab.cfg (/opt/moab/etc/ by default).
    [root]# cp moab.lic $MOABHOMEDIR/etc/moab.lic

    To verify the current status of your license, run the following command:

    [root] # moab --about 2>&1 | grep License

    You should get something similar to the following in the response:

    • New RLM-Based License (version 9.1.0 or after)

      $ moab --about | grep License
      Moab Workload Manager Version 'master' License Information:
        Current License:   (moab_license) Valid Until - 15-jan-2017
        Current License:   Max Sockets    =  1000000
        Current License:   (moab_grid) Valid Until - 15-jan-2017
        Current License:   (moab_green) Valid Until - 15-jan-2017
        Current License:   (moab_provision) Valid Until - 15-jan-2017
        Current License:   (moab_vms) Valid Until - 15-jan-2017
        Current License:   Max VMs    =  1000000
        Current License:   (moab_elastic) Valid Until - 15-jan-2017
        Current License:   (moab_groupsharing) Valid Until - 15-jan-2017
        Current License:   (moab_advancedrm) Valid Until - 15-jan-2017
        Current License:   (moab_workflow) Valid Until - 15-jan-2017
        Current License:   (moab_accounting) Valid Until - 15-jan-2017
    • Legacy License Format

      Moab Workload Manager Version '9.1.0' License Information:
       Current License:  Max Procs   = 10000
       Current License:  Valid Until - Jul 13 19:42:10 2017

    A license is required for Moab. A trial license may be included in your Moab installation enabling you to run Moab for a limited time and with limited features. Email [email protected] for information on obtaining licenses.

  13. Start Moab.
  14. [root]# chkconfig moab on
    [root]# service moab start

2.3.7 Configure Torque to Trust Moab

If you are using Torque as a resource manager and you installed the Torque Server on a different host (Torque Server Host); recommended, do the following:

2.3.8 Verify the Installation

If you have a resource manager configured, verify that the scheduler is able to schedule a job. Do the following:

2.3.9 (Optional) Install Moab Client

After you have installed Moab Server, you can create a client tarball to install just the Moab client commands on a login/client host. This tarball uses a single tar command to install the binary Moab client command files and their man pages. The tarball also contains a moab.cfg file configured with the Moab Server host name and port number so you do not have to manually configure this information on the login/client node.

If your site needs secure communication and authentication between Moab Client Host and the Moab Server Host, create a site-specific key and place it in the same directory as your moab.cfg file. By default, this would be $MOABHOMEDIR/etc/.moab.key. When the Moab server and client commands detect the presence of those two files they will use the key in those files to authenticate and communicate, instead of the default key. See Mauth Authentication in the Moab Workload Manager Administrator Guide for more information.

Do the following:

  1. On the Moab Server Host, create the client tarball.
    [root]# make client-pkg
  2. Copy the tarball to the root directory of the Moab Client Host.
  3. On the Moab Client Host, run the tarball to install the Moab client commands.
    [root]# tar xvf client.tgz

Related Topics 

© 2016 Adaptive Computing