You are here: Installation and Configuration > Manual Installation > Installing > Installing Nitro

2.6 Installing Nitro

This topic contains instructions on how to install Nitro.

Nitro

In this topic:

2.6.1 Obtain a Nitro License

The Nitro license file is installed on an RLM Server.

These instructions assume you already have access to an RLM Server. See 2.5 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 Nitro license file (typically, nitro.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 nitro.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.5 Installing RLM Server (manual installation method) or 2.14 Installing RLM Server (RPM installation method) for more information.
      [root]# vi /opt/rlm/nitro.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.5 Installing RLM Server (manual installation method) or 2.14 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 Nitro Download Center.
      2. Copy the 'adaptiveco.set' file into the same directory where the Nitro license resides (/opt/rlm).
    4. Perform a reread to update the RLM Server with your license.
      [root]# /opt/rlm/rlmreread

2.6.2 Open Necessary Ports

Nitro uses several ports for communication between the workers and the coordinator.

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

The listed ports is for configurations that have only one coordinator. If multiple coordinators are run on a single compute host, then sets of ports (range of 4) must be opened for the number of expected simultaneous coordinators.

Location Ports Functions When Needed
Compute Hosts (Nitro Coordinator) 47000 Coordinator/Worker communication Always
Compute Hosts (Nitro Coordinator) 47001 Coordinator PUB/SUB channel - publishes status information Always
Compute Hosts (Nitro Coordinator) 47002 Reserved for future functionality
Compute Hosts (Nitro Coordinator) 47003 API communication channel Always

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

2.6.3 Install Nitro

You must complete the tasks to obtain a Nitro license before installing Nitro. See 2.6.1 Obtain a Nitro License.

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

On the host where Nitro will reside, do the following:

  1. If you have not already done so, complete the steps to prepare the host. See 2.4 Preparing for Manual Installation or Upgrade.
  2. Change the directory to the root of the unpacked Nitro tarball bundle.

    [root]# cd nitro-tarball-bundle-<version>-<OS>
  3. Identify the Nitro product tarball (nitro-<version>-<OS>.tar.gz).
  4. Run each of the following commands in order.
    [root]# mkdir /opt/nitro
    [root]# tar xzvpf nitro-<version>-<OS>.tar.gz -C /opt/nitro --strip-components=1
  1. Copy the license file you generated earlier in this topic to each compute node (coordinator). On each compute node, or on the shared file system, do the following:
    [root]# cp <licenseFileName>.lic /opt/nitro/bin/
  2. Copy the provided scripts and the nitrosub command from the /opt/nitro/scripts directory.

    This is a "copy" file operation and not a "move" operation. This allows you to customize your version and always have the factory version available for consultation and/or comparison.

    1. Copy the launch_nitro.sh and launch_worker.sh scripts for your resource manager to the bin directory. Each resource manager has a subdirectory with the scripts directory that contains the scripts. This example uses Torque as the resource manager.
      [root]# cp /opt/nitro/scripts/torque/launch_nitro.sh /opt/nitro/bin/
      [root]# cp /opt/nitro/scripts/torque/launch_worker.sh /opt/nitro/bin/
    2. Copy the nitrosub command to the bin directory.
      [root]# cp /opt/nitro/scripts/nitrosub /opt/nitro/bin/
    3. Copy the nitro_job.sh and the worker_job.sh scripts to the etc directory.
      [root]# cp /opt/nitro/scripts/nitro_job.sh /opt/nitro/etc/
      [root]# cp /opt/nitro/scripts/worker_job.sh /opt/nitro/etc/
  3. Now that you have copied the scripts and the nitrosub command, edit the copies for your site's administrative policies.
    • bin/nitrosub command (applicable only if using a shared file system). At a minimum, do the following:
      1. Uncomment the "_resource_manager" line for your resource manager.
      2. Uncomment the "resource_type" line for your licensing model's allocation (nodes or cores).
      3. If your system will be using dynamic jobs, set the "_dynamic_size" value to the number of resources to allocate to a dynamic job.

      See 5.1 nitrosub Command for more information.

    • bin/launch_nitro.sh and bin/launch.worker.sh scripts. See 5.5 Launch Scripts for more information.
  4. If your system configuration allows multiple coordinators on the same node, additional configuration may be needed. See 2.23 Running Multiple Coordinators on the Same Node for more information.
  5. If you are not using a shared file system, copy the Nitro installation directory to all hosts.
    [root]# scp -r /opt/nitro root@host002:/opt

    If you are not using a shared file system, you may not be able to use the nitrosub command.

2.6.4 Verify Network Communication

Verify that the nodes that will be running Nitro are able to communicate with the Nitro ports and that the nodes are able to communicate with one another.

© 2017 Adaptive Computing