Software Requirements¶
This section outlines the key software and repository requirements for the components used by Omnia to deploy HPC clusters. For more information about the supported devices and software, see Support Matrix.
Repository¶
- Enable the AppStream and BaseOS repositories via the RHEL subscription manager.
-
To pin specific RHEL version in the subscription manager, use the following commands:
Run on: OIM hostsubscription-manager release --show subscription-manager release --set=10.0 -
Ensure that RHEL has an active subscription or is configured to access local repositories.
- Verify that all repository URLs for the software packages are accessible -- downloads will fail for inaccessible packages.
- For RHEL systems without a subscription, the repository URLs for
x86_64_codeready-builder,x86_64_appstream, andx86_64_baseosare mandatory. - Docker credentials are a mandatory requirement to pull in the essential packages during local repository deployment.
- If the Slurm RPMS is already available, update the value in the URL of the
user_repo_url_x86_64oruser_repo_url_aarch64parameter in/opt/omnia/input/project_default/local_repo_config.yml. - In a mixed architecture environment where the Slurm control node and compute nodes use different architectures (for example, control node with x86_64 and compute nodes with aarch64), ensure that Slurm binaries for both architectures are compiled and available in the user repository.
-
If the repository is hosted, use the URL created in the
local_repo_config.ymlfile.File: /opt/omnia/input/project_default/local_repo_config.ymluser_repo_url_x86_64: - { url: "http://<ipaddress>/slurm-repo/x86_64", gpgkey: "", sslcacert: "", sslclientkey: "", sslclientcert: "", name: "slurm_custom" } user_repo_url_aarch64: - { url: "http://<ipaddress>/slurm-repo/aarch64", gpgkey: "", sslcacert: "", sslclientkey: "", sslclientcert: "", name: "slurm_custom" }Run
ansible-playbook local_repo/local_repo.yml. -
Create Slurm repository build for x86_64. See Build Slurm repository for x86_64 and Host RPMS on Apache server.
Note
- If any user repository is already hosted externally, update the value of the
user_repo_url_x86_64oruser_repo_url_aarch64parameter in/opt/omnia/input/project_default/local_repo_config.ymlwith the hosted repository URL based on the architecture. - If the RPMs are already available but are not externally hosted, place the RPMs in the OIM and follow the steps in Host RPMS on Apache server. After hosting the RPMs, update the
user_repo_url_x86_64oruser_repo_url_aarch64parameter with the newly created repository URL.
Lightweight Directory Access Protocol (LDAP)¶
- The LDAP server details are required to configure the
omnia_authcontainer and OpenLDAP as a proxy server. - To deploy an external OpenLDAP server for authentication, ensure that the OpenLDAP server is deployed and configured with the required directory structure (users and groups). For the detailed steps, see External LDAP Deployment.
Lightweight Distributed Metric Service (LDMS)¶
-
Ensure that EPEL and AppStream repositories are configured and the python3-devel and python3-Cython packages are installed. To install the packages, run the following command:
Run on: OIM hostsudo dnf install -y python3-devel python3-Cython -
The LDMS RPM must be available in the user repository, and the
ldms.jsonfile should be updated accordingly. If the LDMS RPM is not available, refer to Building LDMS PRODUCER RPM Package for instructions on building LDMS RPMs. - If the LDMS RPMS are already available, update the value (
<hosted LDMS repository url>) in the URL of theuser_repo_url_x86_64oruser_repo_url_aarch64parameter in/opt/omnia/input/project_default/local_repo_config.yml. -
If the repository is hosted, use the URL created in the
local_repo_config.ymlfile.File: /opt/omnia/input/project_default/local_repo_config.ymluser_repo_url_x86_64: - { url: "http://<ipaddress>/ldms-repo/x86_64", gpgkey: "", sslcacert: "", sslclientkey: "", sslclientcert: "", name: "ldms" } user_repo_url_aarch64: - { url: "http://<ipaddress>/ldms-repo/aarch64", gpgkey: "", sslcacert: "", sslclientkey: "", sslclientcert: "", name: "ldms" }Run
ansible-playbook local_repo/local_repo.yml.
BuildStreaM¶
- A dedicated node is required for BuildStreaM GitLab deployment.
- The node must have sufficient system resources for BuildStreaM (minimum 4 GB RAM, 2 CPU cores, 20GB free disk space)
- GitLab requires a minimum of 2 CPU cores. More cores may be needed for production workloads.
- Network connectivity for GitLab services.
- Ensure that Omnia BuildStreaM container, PostgreSQL container, and Playbook Watcher service are deployed on the OIM node. See Prepare the Omnia Infrastructure Manager.