(Click to open topic with navigation)
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:
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.
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
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:
[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
[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>
[root]# cd /opt/rlm
[root]# chown rlm:rlm <licenseFileName>.lic
[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.
[root]# chown rlm:rlm adaptiveco.set
[root]# /opt/rlm/rlmreread
2.3.5 (Optional) Build a Custom RPM
Do the following:
[root]# yum install rpm-build
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:
[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*
[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.
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.
[root]# make perldeps
[root]# make install
[root]# vi /opt/moab/etc/moab.cfg
Do the following:
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.
RMCFG[torque] HOST=<torque_server_hostname>
[root]# . /etc/profile.d/moab.sh
[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.
[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:
[root]# qmgr Qmgr: set server managers += root@<moab_server_hostname> Qmgr: set server submit_hosts += <moab_server_hostname> Qmgr: exit
If you have a resource manager configured, verify that the scheduler is able to schedule a job. Do the following:
[root]# su - adaptive [adaptive]$ echo sleep 150 | msub [adaptive]$ showq [adaptive]$ exit
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:
[root]# make client-pkg
[root]# tar xvf client.tgz
Related Topics