Rocky8 Transition

Replacing a soon to be defunct operating system

Due to the end of support for the current cluster operating system (CentOS 7), the underlying operating system must be upgraded. As a result of this necessary change, some workflows you use now will not work after May 1st. Software with primary support will be tested in advance of the upgrade to minimize disruptions. However, we anticipate that software with secondary support and user-compiled software may experience some compatibility issues post-upgrade.

The operating system on the Agate cluster will be upgraded from CentOS 7 to Rocky8 during the May maintenance day, Wednesday May 1, 2024.

The Mesabi cluster, which is being retired on June 5, 2024, will not have Rocky8 installed. The nodes in the Mangi add-on cluster will also keep running the old operating system until Mesabi is shut down and those nodes are transferred to the Agate cluster on June 5th.

Test partitions have been set up to allow researchers to test software ahead of this change. The Slurm partitions are named amdsmall-rocky, amdlarge-rocky, and v100-rocky. Please test your current workflows.

If you are compiling & building your own programs, you may choose to simply compile & build a new executable for yourself using the native libraries on Agate – after the change over to Rocky8 is made.

Work-Arounds

Compatibility mode for interactively run jobs, from a command line

Example: Run a software package (samtools in this example) from the command line by adding two lines of typing to your workflow (highlighted in the Rocky8 example):

Current procedure on CentOS7

$ module load samtools

$ cd MY_DATA_DIR

$ samtools depth file.bam > output.txt

Compatibility procedure on Rocky8

$ module load compatibility/mesabi-centos7

$ compat-shell

$ module load samtools

$ cd MY_DATA_DIR

$ samtools depth file.bam > output.txt

Compatibility mode for batch jobs, submitted to the scheduler

Example: To run the same workflow as above, loading a module and running it (samtools here), wrap your workflow in an executable script, and pass it to the appropriate compatibility function.
 
Current procedure on CentOS7
You have a file, my_job.sh, that you want to submit via SLURM. It contains the following:
#!/bin/bash -l        
#SBATCH --time=8:00:00
#SBATCH --ntasks=8
#SBATCH --mem=10g
#SBATCH --tmp=10g
#SBATCH --mail-type=ALL  
#SBATCH --mail-user=sample_email@umn.edu 
 
module load samtools
cd MY_DATA_DIR
samtools depth file.bam > output.txt
 
You submit this job to the cluster by running:
sbatch my_job.sh
 
Compatibility procedure on Rocky8
Your new job file, my_compat_job.sh, will contain the following:
#!/bin/bash -l        
#SBATCH --time=8:00:00
#SBATCH --ntasks=8
#SBATCH --mem=10g
#SBATCH --tmp=10g
#SBATCH --mail-type=ALL  
#SBATCH --mail-user=sample_email@umn.edu 
 
module load compatibility/mesabi-centos7
compat-exec ./my_wrapped_script.sh
 
This references a new file, my_wrapped_script.sh, by a relative path. You could also use an absolute path; the important part is that it is visible in this location at the start of the SLURM job. This new file contains the following:
#!/bin/bash
 
module load samtools
cd MY_DATA_DIR
samtools depth file.bam > output.txt
 
This file needs to be executable in order to work correctly with the compatibility framework, and you can set the permissions appropriately for it by running the following:
chmod +x my_wrapped_script.sh
 
Once the contents and permissions of the script are set correctly, you can submit the job to the cluster by running:
sbatch my_compat_job.sh

----

FAQs and known workarounds for this transition to Rocky8 can be found and will be continually updated on this current page (https://www.msi.umn.edu/content/rocky8-transition)

Please contact the MSI Helpdesk, help@msi.umn.edu, to report any concerns and get additional assistance.