Installing on a Linux compute host

You must install and configure IBM® Spectrum Symphony on at least one management host (and use it as the primary host). You can additionally install IBM Spectrum Symphony on a compute host on Linux®. Compute hosts provide computing resources.

Before you begin

  • Refer to the minimum system requirements outlined in Requirements and permissions and download the applicable installation package according to Installation packages.
  • Note that if you plan to install IBM Spectrum Conductor after you install IBM Spectrum Symphony, you must install IBM Spectrum Symphony in advanced workload execution mode (WEM) and install with either root or sudo-to-root permission.
  • If you plan to use any of the IBM Spectrum Symphony Advanced Edition features (as described in IBM Spectrum Symphony editions) install IBM Spectrum Symphony Advanced Edition. Additionally, if you plan to install MapReduce, that also requires IBM Spectrum Symphony Advanced Edition.
  • You must know the cluster administrator operating system account, communication ports, database host, workload execution mode (WEM), installation directory, and cluster name.
  • Your hosts require the following utilities. Some of them are typically installed with your operating system. However, if they are removed or are not installed, install them before you install IBM Spectrum Symphony:
    • The bc for mathematical calculations.
    • The gettext library that provides globalization support for translated product messages. Without this library, you will encounter a gettext.sh: file not found or gettext: command not found error during installation. Typically, this library is installed with your operating system. To check your system for this library, run the which gettext command. If the command returns that the gettext library is not found, then you do not have the gettext library installed. To install it, run this command as root:
      yum install gettext
    • The bind-utils package that provides the nslookup command-line tool.
    • The ed Linux line-oriented text editor, which is required for running certain IBM Spectrum Symphony commands, such as egoinstallfixes.
    • In addition, install these specific Linux packages, as applicable. Ensure you install these packages before you install IBM Spectrum Symphony:
      • For RHEL:
        • [7.3.2 Fix]You can apply Fix 602717 on top of IBM Spectrum Symphony 7.3.2 on RHEL 10. Note, however, that the libcrypt.so.1 library has been deprecated, and is not included with RHEL 10. Ensure that you install the libxcrypt-compat package before installing IBM Spectrum Symphony. On your RHEL 10 management hosts, as root, run:
          yum install libxcrypt-compat
        • On RHEL 8 ([7.3.2 Fix]and 9 or later if you have an IBM Spectrum Symphony fix, install the libnsl package. You can run this command as root to install it:
          yum install libnsl
          Note: The libnsl package is not required if you have IBM Spectrum Symphony 7.3.2 with Fix 602717 or later. It is only required for RHEL 8 and 9 clusters prior to Fix 602717.
        • On RHEL 7 or later, install the net-tools package. You can run this command as root to install it:
          yum install net-tools
        • Ensure that either the fonts local.conf file is configured or the dejavu-serif-fonts package is installed. For more information, see the RHEL documentation:
          • Option 1: Create the /etc/fonts/local.conf file with the following contents:
            <?xml version='1.0'?>
            <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
            <fontconfig>
              <alias>
                <family>serif</family>
                <prefer><family>Utopia</family></prefer>
              </alias>
              <alias>
                <family>sans-serif</family>
                <prefer><family>Utopia</family></prefer>
              </alias>
              <alias>
                <family>monospace</family>
                <prefer><family>Utopia</family></prefer>
              </alias>
              <alias>
                <family>dialog</family>
                <prefer><family>Utopia</family></prefer>
              </alias>
              <alias>
                <family>dialoginput</family>
                <prefer><family>Utopia</family></prefer>
              </alias>
            </fontconfig>
          • Option 2: Run the yum install command to install the dejavu-serif-fonts package.
        • On SLES 15, install the net-tools package. You can run this command as root to install it:
          yum install net-tools
        • For Ubuntu:
          • [7.3.2 Fix]You can apply Fix 602717 on top of IBM Spectrum Symphony 7.3.2 on Ubuntu 24.04.
          • Install the RPM utility by running the apt-get install rpm command.
          • Install the 32-bit compatibility libraries (lib32z1) by using the aptitude install lib32z1 command.
  • (Optional) If you plan to integrate your Apache Hadoop YARN cluster with IBM Spectrum Symphony during installation, you must install YARN.

Procedure

  1. Log in to the host using the installation user operating system account (cluster administrator, root or sudo to root permission).
  2. Define the cluster properties by setting the following environment variables. If you do not set the optional environment variables, the default values will be used.
    To define cluster properties as environment variables, run the following commands corresponding to your shell:
    • sh, ksh, or bash:
      export VARIABLE_NAME=value
      
    • csh or tcsh:
      setenv VARIABLE_NAME value
    To define cluster properties in a file, create a simple text file /tmp/install.config and enter each variable on a new line, in this format:
    VARIABLE_NAME=value
    Any variables set in the environment overwrite the same variables set in the configuration file.
    Option Description
    CLUSTERADMIN Mandatory if you are installing as root. Set to any valid operating user account, which then owns all installation files. Use the same value as you used on the primary and primary candidate hosts. For example:
    export CLUSTERADMIN=egoadmin
    CLUSTERNAME Optional. Set to the name of the cluster. Use the same value as you used on the primary and primary candidate hosts. For example:
    export CLUSTERNAME=cluster123
    The default is cluster1.
    Important: You cannot change the cluster name after installation.
    BASEPORT Optional. Set for the cluster. The cluster uses seven consecutive ports from the base port. The default port number is 7869. For example:
    export BASEPORT=17869
    Note:
    • Before installation, make sure that the seven consecutive ports are not in use.
    • All hosts in the cluster should use the same base port. Use the same value as you used on the primary and primary candidate hosts.
    SIMPLIFIEDWEM Required if you are using simplified WEM. Use the same value as you used on the primary and primary candidate hosts. The default is N. For example:
    # export SIMPLIFIEDWEM=N
    EGOCOMPUTEHOST Specify Y to indicate installation on a compute host. This setting installs the necessary packages for IBM Spectrum Symphony to run on the compute host. For example:
    export EGOCOMPUTEHOST=Y
    The default is N.
    IBM_SPECTRUM_SYMPHONY_LICENSE_ACCEPT Mandatory when you install without user interaction (that is, with the --quiet option), to indicate that you accept the license agreement before installing:
    export IBM_SPECTRUM_SYMPHONY_LICENSE_ACCEPT=Y
  3. If you are installing IBM Spectrum Symphony Advanced Edition, define the following environment variables for MapReduce workload:
    Note: To install MapReduce after you have installed your IBM Spectrum Symphony cluster, follow the steps in Adding MapReduce to your IBM Spectrum Symphony cluster instead of completing this step.
    Option Description
    INSTALL_MAPREDUCE Required if you are installing MapReduce. Specify Y. For example:
    export INSTALL_MAPREDUCE=Y

    If not set, or if specified to N, MapReduce is not installed.

    JAVA_HOME Specify the installation directory of Oracle or IBM Java™. For example:
    export JAVA_HOME=/usr/java/latest
    Note: To enable MapReduce workload, you must specify the location of your Java installation by setting the JAVA_HOME environment variable before installation.

    If you install IBM Spectrum Symphony without setting JAVA_HOME, remember to define JAVA_HOME later in the $SOAM_HOME/mapreduce/conf/pmr-env.sh file.

    HADOOP_HOME Specify the installation directory of the Hadoop distribution. For example:
    export HADOOP_HOME=/opt/hadoop-version
    HADOOP_VERSION Specify the version of the Hadoop distribution. For example:
    export HADOOP_VERSION=version
    DFS_GUI_HOSTNAME Specify the host name of the HDFS NameNode. For example:
    export DFS_GUI_HOSTNAME=namenodehost.mydomain.com
    DFS_GUI_PORT Specify the port number for the HDFS NameNode. For example:
    export DFS_GUI_PORT=50070
  4. If you are installing IBM Spectrum Symphony Advanced Edition and want to configure Apache Hadoop YARN integration during installation, set the following environment variables:
    Option Description
    JAVA_HOME Specify the installation directory for Oracle or IBM Java. For example:
    export JAVA_HOME=/usr/java/latest
    Note: To enable YARN integration, you must specify the location of your Java installation by setting the JAVA_HOME environment variable before installation.

    If you install IBM Spectrum Symphony without setting JAVA_HOME, remember to define JAVA_HOME later in the $EGO_TOP/integration/yarn/conf/egoyarn-env.sh file.

    HADOOP_YARN_HOME Specify the installation directory for full distribution YARN. For example:
    export HADOOP_YARN_HOME=/opt/hadoop-version
  5. For Ubuntu installation, run the apt-get install rpm in Ubuntu to install the RPM utility.
  6. Run the IBM Spectrum Symphony installer package
    • If you want to install with default settings, run:
      sym-version_architecture.bin
      If you are using the evaluation version, run:
      symeval-version_architecture.bin
      Note: Alternative method: If you must use .rpm files instead of .bin, extract the .rpm files, install the ego*.rpm files, then install the soam*.rpm files, in the order described in Files within the installation packages.
      For example, first extract the .rpm files from the sym-version_architecture.bin package by running:
      sym-version_architecture.bin --extract extract_directory

      where extract_directory specifies the directory to extract .rpm files.

      Next, install each .rpm file in order by running:
      rpm -ivh rpm_file_name
      For example:
      rpm -ivh egocore-version.architecture.rpm
      Additional note for Ubuntu: To install the .rpm files on Ubuntu, you must also specify the --ignorearch parameter. For example:
      rpm -ivh --ignorearch rpm_file_name
    • If you want to install to a different location other than the default, run:
      sym-version_architecture.bin --prefix install_location --dbpath dbpath_location
      If you are using the evaluation version, run:
      symeval-version_architecture.bin --prefix install_location --dbpath dbpath_location
      where:
      • --prefix install_location specifies the absolute path to the installation directory. The --prefix parameter is optional. If you install without the --prefix option, IBM Spectrum Symphony is installed in its default directory: /opt/ibm/platform on Linux. Ensure that the path is set to a clean directory.
      • --dbpath dbpath_location sets the RPM database to a directory different from the default /var/lib/rpm. The --dbpath parameter is optional.
      Note: Alternative method: If you must use .rpm files instead of .bin, extract the .rpm files, install the ego*.rpm files, then install the soam*.rpm files, in the order described in Files within the installation packages.
      For example, first extract the .rpm files from the sym-version_architecture.bin package by running:
      sym-version_architecture.bin --extract extract_directory

      where extract_directory specifies the directory to extract .rpm files.

      Next, install each .rpm file in order by running:
      rpm -ivh --prefix install_location --dbpath dbpath_location rpm_file_name
      For example:
      rpm -ivh --prefix /opt/mydir --dbpath /opt/mydir/mydb egocore-version.architecture.rpm
      Additional note for Ubuntu: To install the .rpm files on Ubuntu, you must also specify the --ignorearch parameter. For example:
      rpm -ivh --ignorearch --prefix install_location --dbpath dbpath_location rpm_file_name
    • If you want to install without user interaction, run:
      Remember: Before installing with the --quiet option, ensure that you have set the IBM_SPECTRUM_SYMPHONY_LICENSE_ACCEPT environment variable to Y or y.
      sym-version_architecture.bin --quiet
      If you are using the evaluation version, run:
      symeval-version_architecture.bin --quiet

      where --quiet suppresses prompts during installation.

  7. After installation is complete, source the environment.
    • If you are running Linux using bash, run:
      . $EGO_TOP/profile.platform
    • If you are running Linux using csh, run:
      source $EGO_TOP/cshrc.platform

      where $EGO_TOP is your installation directory (default is /opt/ibm/spectrumcomputing).

  8. Verify that you have installed the applicable packages:
    • For Linux and Linux on POWER hosts: Access the System & Services > Software Components page within the cluster management console to see the software components installed on each host. This page indicates the installed software component packages, and active versions on each host.
    • Query the installation packages on the host database using rpm commands:
      rpm -qa [--dbpath dbpath_location] | grep package_name
      
      Note that if you installed IBM Spectrum Symphony using the --dbpath option, use the same dbpath_location to verify. For example, if you installed using /data/abc/rpmdb as the dbpath_location, then run the verification commands using that database location. Here is an example:
      rpm -qa --dbpath /data/abc/rpmdb | grep soammrmgmt

    For a list of installation package names, refer to Files within the installation packages.

What to do next

After installing IBM Spectrum Symphony, join the host to the cluster. See Adding a host to a cluster.
Tip: If all of the hosts in your cluster can be reached using short host names, you can configure EGO to use the short host names by specifying the portion of the domain name to remove, by configuring the EGO_STRIP_DOMAIN parameter within the ego.conf file. For full usage and syntax, see ego.conf reference.