Installing Moab HPC Suite - Edition

The RPM installation only supports installation on Red Hat 6.5, CentOS 6.5 or Scientific Linux 6.5. Use the Manual installation instructions if installing on other supported operating systems.

Because many system-level files and directories are accessed during the installation, the instructions in this guide should be executed with root privileges.

You will see that the instructions execute commands as the root user. Please note that the same commands will work for a non-root user with the sudo command.

Dependencies and packages installation

Install Java

You must install the 64-bit RPM version of Oracle® Java® 7 Runtime Environment if you are installing Moab Web Services.

Oracle Java 7 Runtime Environment is the recommended Java environment, but Oracle Java 6 is also supported. All other versions of Java, including OpenJDK/IcedTea, GNU Compiler for Java, and so on cannot run Moab Web Services.

The Oracle® Java® download page has moved and requires a web-enabled workstation to accept the license agreement and download the software.

Do the following:

  1. Download Java 7 on a web-enabled workstation.
    1. Open a web browser and connect to the Java downloads page.
    2. Select the radio button to accept the license agreement.
    3. Click the download link for the Linux x64 RPM file.
  2. Copy the Java 7 RPM to the MWS server using scp, rsync, or any similar network copy utility.
  3. On the MWS server, run the following to install Java 7:
    [root]# rpm -Uh <RPMfilename>

Opening ports

A few ports need to be available through your firewall so components of the suite can communicate with each other. Some features of some components might need additional ports configured. The individual component documentation indicates when additional ports are needed.

To open ports in your firewall

Installing the RPM suite

If you want to build a custom RPM for component documentation (Moab Workload Manager, Moab Web Services orMoab Accounting Manager, refer to the Manual Installation Guide and follow instructions in the respective component.

To install the RPM suite

  1. If you are upgrading from a previous installation of Moab, back up your /opt/moab/tools directory to prevent losing modifications made to the perl scripts. If you are performing a clean installation of Moab HPC Suite, skip this step.
  2. [root]# tar czf backup-tools.tar.gz /opt/moab/tools
  3. Download the latest 8.0.3 RPM suite tarball (moab-hpc--suite-<version>-<timestamp>-<OS>.tar.gz, for example) from the Adaptive Computing website.
  4. Untar the downloaded package.
  5. [root]# tar zxf moab-hpc--suite-<version>-<timestamp>-<OS>.tar.gz
  6. Change directories into the untarred directory.

    Consider reviewing the README file for additional details on using the RPM distribution tarball.

  7. Install the suite repositories. The -y option installs with the default settings for the RPM suite.

    For a description of the options of the repository installer script, run:

    [root]# ./install-rpm-repos.sh -h

    [root]# ./install-rpm-repos.sh [<repository-directory>] [-y]

    If the installation returns the following warning line:

    Warning: RPMDB altered outside of yum.

    This is normal and can safely be ignored.

  8. The [<repository-directory>] option is the directory where you want to copy the RPMs. If no argument is given, run "install-rpm-repos.sh -h" and note the default directory location. If the [<repository-directory>] already exists, RPMs will be added to the existing directory. No files are overwritten in [<repository-directory>]. A repository file is also created in /etc/yum.repos.d/ and points to the [<repository-directory>] location.

    For ease in repository maintenance, the install script fails if Adaptive Computing RPMs are copied to different directories. If a non-default [<repository-directory>] is specified, please use the same directory for future updates.

    The script installs the createrepo package and its dependencies. You must answer "y" to all the questions in order for the RPM install of the suite to work. Additionally, the script installs the EPEL and 10gen repositories.

  9. Test the repository:
  10. [root]# yum search moab

    If no error is given, the repository is correctly installed. The output will look similar to the following (varying slightly depending on the suite and build type):

    ...
    
    moab-hpc--suite.noarch : Moab HPC  Suite virtual package
    moab-perl-RRDs.noarch : Moab RRDs
    moab-tomcat-config.x86_64 : Tomcat Configuration for Moab Viewpoint and Web Services
    moab-verify-oracle-java.noarch : Java Validator for Moab Viewpoint and Web Services
    moab-web-services.x86_64 : Moab Web Services
    moab-workload-manager.x86_64 : Moab Workload Manager
    moab-workload-manager-client.x86_64 : Moab Workload Manager Client
    moab-workload-manager-common.x86_64 : Moab Workload Manager Common Files
    moab-perl-data.noarch : Perl Configuration for perl packages by Adaptive Computing
    moab-torque-client.x86_64 : TORQUE Client
    moab-torque-common.x86_64 : TORQUE Common Files
    moab-torque-devel.x86_64 : TORQUE Development Files
    moab-torque-mom.x86_64 : TORQUE MOM agent
    moab-torque-server.x86_64 : TORQUE Server
    moab-web-services-hpc-configuration.x86_64 : MWS configuration for HPC
    moab-workload-manager-hpc-configuration.x86_64 : MWM configuration for HPC
  11. Install the suite package.

    [root]# yum install moab-hpc--suite

    If you encounter the following error:

    ...
      --> Finished Dependency Resolution
    krb5-workstation-1.6.1-62.el5.x86_64 from installed has depsolving problems
      --> Missing Dependency: krb5-libs = 1.6.1-62.el5 is needed by package krb5-workstation-1.6.1-62.el5.x86_64 (installed)
    krb5-workstation-1.6.1-62.el5.x86_64 from installed has depsolving problems
      --> Missing Dependency: krb5-libs = 1.6.1-62.el5 is needed by package krb5-workstation-1.6.1-62.el5.x86_64 (installed)
    Error: Missing Dependency: krb5-libs = 1.6.1-62.el5 is needed by package krb5-workstation-1.6.1-62.el5.x86_64 (installed)
    You could try using --skip-broken to work around the problem
    You could try running: package-cleanup --problems
    package-cleanup --dupes
    rpm -Va --nofiles --nodigest

    Install the krb5-workstation package, then execute the install suite package again.

    [root]# yum install krb5-workstation
    [root]# yum install moab-hpc--suite

    If you encounter CURL library errors, make sure you are installing the correct version for your OS.

  12. Install and prepare the MongoDB database by doing the following:
    1. Install mongo-10gen-server.
    [root]# yum install mongo-10gen-server --exclude mongodb-org,mongodb-org-server

    Running yum upgrade will replace MongoDB 2.4.x with a more recent, and incompatible version. Consider using yum version lock to maintain MongoDB 2.4.x.

    1. Start MongoDB.

    RHEL and CentOS, and Scientific Linux:

    [root]# chkconfig mongod on
    [root]# service mongod start
    
    [ OK ]
    1. Add the required MongoDB users.

    The passwords used below (secret1, secret2, and secret3) are examples. Choose your own passwords for these users.

    [root]# mongo
    > use admin;
    > db.addUser("admin_user", "secret1");
    > db.auth("admin_user", "secret1");
    
    > use moab;
    > db.addUser("moab_user", "secret2");
    > db.addUser("mws_user", "secret3", true);
    
    > use mws;
    > db.addUser("mws_user", "secret3");
    > exit

    Because the admin_user has read and write permissions to the admin database, it also has read and write permissions to all other databases. See Control Access to MongoDB Instances with Authentication for more information.

    1. Enable authentication in MongoDB.

    RHEL and CentOS, and Scientific Linux:

    [root]# vi /etc/mongod.conf
    
    auth = true
     
    [root]# service mongod restart

Installing PostgreSQL

If you plan to use Moab Workload Manager with ODBC, you must install a PostgreSQL database.

To install PostgreSQL

  1. Install and initialize PostgreSQL.

    CentOS, RHEL, and Scientific Linux

    [root]# yum install postgresql-server

    [root]# service postgresql initdb

    SLES

    [root]# zypper install postgresql-server
    [root]# service postgresql start
  2. Configure trusted connections.

    Edit or add a "host" line in the pg_hba.conf file for the interface from which the server(s) (for example, Moab Workload Manager and/or Moab Accounting Manager) will be connecting to the database and ensure that it specifies a secure password-based authentication method (for example, md5).

    [root]# vi /var/lib/pgsql/data/pg_hba.conf
    
    # IPv4 local connections:
    host    all             all             127.0.0.1/32            md5
    # IPv6 local connections:
    host    all             all             ::1/128                 md5
  3. Configure PostgreSQL to accept connections from your host.

    [root]# vi /var/lib/pgsql/data/postgresql.conf
     
    # Uncomment the listen addresses line in the configuration:
    
    listen_addresses = 'localhost'          # what IP address(es) to listen on;
  4. Start or restart the database.

    [root]# chkconfig postgresql on
    [root]# service postgresql restart

Related topics 

© 2015 Adaptive Computing