... | @@ -278,12 +278,11 @@ See the [User guide](User guide) to check the use cases supported and how to sub |
... | @@ -278,12 +278,11 @@ See the [User guide](User guide) to check the use cases supported and how to sub |
|
|
|
|
|
## Installing from RPM
|
|
## Installing from RPM
|
|
|
|
|
|
EAR includes the specification files to create an rpm from an already existing
|
|
EAR includes the specification files to create an rpm from an already existing installation.
|
|
installation.
|
|
|
|
The spec file is placed at `etc/rpms`.
|
|
The spec file is placed at `etc/rpms`.
|
|
To create the RPM it is needed a valid installation from source.
|
|
To create the RPM it is needed a valid installation from source.
|
|
The RPM can be part of the system image.
|
|
The RPM can be part of the system image.
|
|
Visit the [Requirements](RPM requirements) page for a quick overview of the requirements.
|
|
Visit the [Requirements](#rpm-requirements) page for a quick overview of the requirements.
|
|
|
|
|
|
Execute the `rpmbuild.sh` script to create the EAR rpm file.
|
|
Execute the `rpmbuild.sh` script to create the EAR rpm file.
|
|
Once created, it can be included in the compute nodes images. It is recommened
|
|
Once created, it can be included in the compute nodes images. It is recommened
|
... | @@ -295,8 +294,7 @@ Once you have the rpm file, execute the following steps: |
... | @@ -295,8 +294,7 @@ Once you have the rpm file, execute the following steps: |
|
|
|
|
|
> You can also use the `--nodeps` if your dependency test fails.
|
|
> You can also use the `--nodeps` if your dependency test fails.
|
|
|
|
|
|
- During the installation the configuration files `*.in` are compiled to the ready to use version, replacing tags for correct paths. You will have more information of those files in the following pages. Check the [next section](#installation-content)
|
|
- During the installation the configuration files `*.in` are compiled to the ready to use version, replacing tags for correct paths. You will have more information of those files in the following pages. Check the [next section](#installation-content) for more information.
|
|
for more information.
|
|
|
|
- Type `rpm -e ear.version` to uninstall.
|
|
- Type `rpm -e ear.version` to uninstall.
|
|
|
|
|
|
### Installation content
|
|
### Installation content
|
... | @@ -321,6 +319,58 @@ Below table describes the complet heriarchy of the EAR installation: |
... | @@ -321,6 +319,58 @@ Below table describes the complet heriarchy of the EAR installation: |
|
| `/etc/slurm` | EAR SLURM plugin configuration file. |
|
|
| `/etc/slurm` | EAR SLURM plugin configuration file. |
|
|
| `/etc/systemd` | EAR service files. |
|
|
| `/etc/systemd` | EAR service files. |
|
|
|
|
|
|
|
|
### RPM requirements
|
|
|
|
|
|
|
|
EAR uses some third party libraries. EAR RPM will not ask for them when installing but they must be available in `LD_LIBRARY_PATH` when running an application and you want to use EAR.
|
|
|
|
Depending on the RPM, different version must be required for these libraries:
|
|
|
|
|
|
|
|
| Library | Minimum version | References |
|
|
|
|
| ----------- | --------------- |----------------------------------------------------------------|
|
|
|
|
| MPI | - | - |
|
|
|
|
| MySQL\* | 15.1 | [MySQL](https://mysql.com) or [MariaDB](https://mariadb.org/) |
|
|
|
|
| PostgreSQL\* | 9.2 | [PostgreSQL](https://www.postgresql.org/) |
|
|
|
|
| Autoconf | 2.69 | [Website](https://www.gnu.org/software/autoconf/autoconf.html) |
|
|
|
|
| GSL | 1.4 | [Website](https://www.gnu.org/software/gsl/) |
|
|
|
|
|
|
|
|
\* Just one of them required.
|
|
|
|
|
|
|
|
These libraries are not required, but can be used to get additional functionality or metrics:
|
|
|
|
|
|
|
|
| Library | Minimum version | References |
|
|
|
|
|--------------|-----------------|--------------------------------------------------------------------------------------------------|
|
|
|
|
| SLURM | 17.02.6 | [Website](https://slurm.schedmd.com/) |
|
|
|
|
| PBS\*\* | 2021 | [PBSPro](https://www.altair.com.es/pbs-professional/) or [OpenPBS](https://www.openpbs.org/) |
|
|
|
|
| CUDA/NVML | 7.5 | [CUDA](https://developer.nvidia.com/cuda-zone) |
|
|
|
|
| CUPTI\*\* | 7.5 | [CUDA](https://developer.nvidia.com/cuda-zone) |
|
|
|
|
| Likwid | 5.2.1 | [Likwid](https://github.com/RRZE-HPC/likwid) |
|
|
|
|
| FreeIPMI | 1.6.8 | [FreeIPMI](https://www.gnu.org/software/freeipmi/) |
|
|
|
|
| OneAPI/L0\*\* | 1.7.9 | [OneAPI](https://www.intel.com/content/www/us/en/developer/tools/oneapi/overview.html#gs.0k5fbb) |
|
|
|
|
| LibRedFish\*\* | 1.3.6 | [LibRedFish](https://github.com/DMTF/libredfish) |
|
|
|
|
|
|
|
|
\*\* These will be available in next release.
|
|
|
|
|
|
|
|
Also, some **drivers** has to be present and loaded in the system when starting EAR:
|
|
|
|
|
|
|
|
| Driver | File | Kernel version | References |
|
|
|
|
| ----------- | --------------------------------------- | -------------- | --------------- |
|
|
|
|
| CPUFreq | kernel/drivers/cpufreq/acpi-cpufreq.ko | 3.10 | [Information](https://wiki.archlinux.org/index.php/CPU_frequency_scaling) |
|
|
|
|
| Open IPMI | kernel/drivers/char/ipmi/\*.ko | 3.10 | [Information](https://docs.oracle.com/en/database/oracle/oracle-database/12.2/cwlin/configuring-the-open-ipmi-driver.html) |
|
|
|
|
|
|
|
|
## Starting Services
|
|
|
|
|
|
|
|
The best way to execute all EAR daemon components (EARD, EARDBD, EARGM) is by the unit services method.
|
|
|
|
|
|
|
|
> __NOTE__ EAR uses a MariaDB/MySQL server. The server must be started before EAR services are executed.
|
|
|
|
|
|
|
|
The way to launch the EAR daemons is via unit services. The generated unit services for the EAR Daemon, EAR Global Manager Daemon and EAR Database Daemon are generated and installed in `$(EAR_ETC)/systemd`. You have to copy those unit service files to your `systemd` operating system folder and then use the `systemctl` command to run the daemons.
|
|
|
|
Check the [EARD](Architecture#ear-node-manager), [EARDBD](Architecture#ear-database-manager), [EARGMD](Architecture#ear-global-manager) pages to find the precise execution commands.
|
|
|
|
|
|
|
|
When using `systemctl` commands, you can check messages reported to `stderr` using `journalctl`. For instance:
|
|
|
|
`journalctl -u eard -f`. Note that if `NodeUseLog` is set to 1 in `ear.conf`, the messages will not be printed to `stderr` but to `$EAR_TMP/eard.log` instead. `DBDaemonUseLog` and `GlobalmanagerUseLog` options in `ear.conf` specifies the output for EARDBD and EARGM, respectivelly.
|
|
|
|
|
|
|
|
Additionally, services can be started, stopped or reloaded on parallel using parallel commands such as `pdsh`. As an example:
|
|
|
|
`sudo pdsh -w nodelist systemctl start eard`.
|
|
|
|
|
|
## Updating EAR with a new installation
|
|
## Updating EAR with a new installation
|
|
|
|
|
|
In some cases, it might be a good idea to create a new install instead of updating your current one, like trying new configurations or when a big update is released.
|
|
In some cases, it might be a good idea to create a new install instead of updating your current one, like trying new configurations or when a big update is released.
|
... | | ... | |