1. Home
  2. Third Party Software
  3. How do I enable OpenHPC 2.0 on a Bright Cluster?

How do I enable OpenHPC 2.0 on a Bright Cluster?

“OpenHPC is a collaborative, community effort that initiated from a desire to aggregate a number of common ingredients required to deploy and manage High Performance Computing (HPC) Linux clusters including provisioning tools, resource management, I/O clients, development tools, and a variety of scientific libraries.”

Bright offers a package to easily integrate, and leverage OpenHPC libraries and packages for use within a Bright cluster.

Disclaimer

While steps have been taken to ensure compatibility between Bright and the OpenHPC packages, since Bright already provides many of the same packages as OpenHPC (such as SLURM), care should be taken before installing the OpenHPC packages on a Bright cluster. It is strongly recommended to first install and test your desired OpenHPC packages and ensure they work on a non-production Bright cluster first to ensure no breakages occur. The following steps have been tested as working on a Bright 9.0/CentOS 8 cluster.

Prerequisites

The ohpc-reposetup 2.0 script requires RHEL/CentOS 8 as this is the Linux distribution that OHPC 2.0 supports that is also supported by Bright. Currently, only the x86_64 architecture is supported by this procedure.

This package assumes that /opt/ohpc will be a symlink to /cm/shared/apps/ohpc/ and admins will be prompted if a previous OHPC install is detected. Each software image will also contain a symlink as mentioned above so that OHPC can resolve its path correctly.

OpenHPC requires using LMod (Lua Modules) as opposed to TMod (Tcl Modules) in order to work correctly. If LMod is not already enabled on the system, please first enable LMod on the cluster using the steps provided in section 2.2.5 of the Bright admin manual: https://support.brightcomputing.com/manuals/9.0/admin-manual.pdf#subsection.2.2.5

In order to obtain the OpenHPC repo setup package, please contact Bright support. Once you have received the package from Bright support, please place the RPM file on your headnode and proceed with the following steps.

Setup

On the headnode, install the integration package provided by Bright support. CMDaemon should be running and responding in-order for the install process to work correctly.

[root@ah-b90-c8u2-10-15 ~]# rpm -ivh ohpc-reposetup-2.0_100010_cm9.0_9d9e3d1f71.x86_64.rpm
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:ohpc-reposetup-2.0-100010_cm9.0_9################################# [100%]
. .
.To setup OHPC run module load ohpc-reposetup/2.0/ohpc-reposetup.module from the head node then ohpc-reposetup.sh.
[root@ah-b90-c8u2-10-15 ~]# module load ohpc-reposetup/2.0/ohpc-reposetup.module
[root@ah-b90-c8u2-10-15 ~]# ohpc-reposetup.sh
Checking prerequisite files.
Setting up OHPC for use with Bright...
Backing up default modules.
/etc/sysconfig/modules/lmod/cm-lmod-init.sh
/etc/sysconfig/modules/lmod/00-modulepath.sh
=== The following images were detected ===
Please choose which images you wish to
enable the OHPC repo in.
==========================================
a) All software images.
0) default-image /cm/images/default-image
d) Disable OHPC on the head node and software images.
q) Quit.
(selection): a
You selected: a
Enable OHPC in all software images.
Creating symlink to /opt/ohpc in:  /cm/images/default-image
Backing up lmod modules.
/cm/images/default-image/etc/sysconfig/modules/lmod/00-modulepath.sh
/cm/images/default-image/etc/sysconfig/modules/lmod/z00-lmod.sh
/cm/images/default-image/etc/sysconfig/modules/lmod/z01-default_modules.sh
[root@ah-b90-c8u2-10-15 ~]#

Once the script has been run to set up the OHPC repository with Bright, then cluster admins can then install packages via yum from the head node. No action is needed for the compute nodes to see these changes. The “ohpc-compat” module should first be loaded in order to add /opt/ohpc to the module path environment variable, then as with any other module, users should then load with “module load” and “module unload” the desired OpenHPC module. For example:

[root@ah-b90-c8u2-10-19 ~]# module load ohpc-compat
[root@ah-b90-c8u2-10-19 ~]# module load gnu9/9.3.0
[root@ah-b90-c8u2-10-19 ~]# gcc --version
gcc (GCC) 9.3.0
Copyright (C) 2019 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

[root@ah-b90-c8u2-10-19 ~]# module unload gnu9/9.3.0
[root@ah-b90-c8u2-10-19 ~]#
Updated on October 20, 2020

Related Articles

Leave a Comment