From Beocat
Jump to: navigation, search
No edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
== OS Change ==
== OS Change ==
Soon we'll be switching our Operating System from CentOS 7 to Rocky Linux 9. If you are utilizing software that we provide via the <tt>module</tt> command, it would be a good idea to access the testbed and verify that we have the tools which you need. If they are not there, you should let us know what you need.
On April 1 2024, we switched our Operating System from CentOS 7 to Rocky Linux 9.


One big thing that I'm not sure we've made abundantly clear enough, is that if you have compiled your own software (with or without our modules) you will likely need to recompile it to use it with the new operating system.
If you had compiled your own software under CentOS (with or without our modules) you will likely need to recompile it to use it with the new operating system.
 
=== Accessing the testbed ===
We have provided two new head nodes <tt>helios</tt> and <tt>clymene</tt>.
 
Once you have logged into beocat, you can access them with ssh. e.g. <tt>ssh helios</tt>
 
They will be setup much the same way as our previous head nodes were, with access to the module command. The modules we have available under Rocky Linux 9 are available as a searchable list [https://modules.beocat.ksu.edu/rocky9/ here]
 
To submit jobs to the new operating system, we have provided a new constraint so that you are able to request the OS variant. CentOS 7 hosts have the feature <tt>os_el7</tt>, while the Rocky Linux 9 hosts provide the feature <tt>os_el9</tt>.
 
You would use the following in a job script to tell the scheduler that you would like the new OS:
 
<syntaxhighlight lang=bash>
#SBATCH -C os_el9
</syntaxhighlight>
 
We have an OpenOnDemand version of the testbed available at https://ondemand-dev.beocat.ksu.edu


=== Using old software ===
=== Using old software ===
Line 36: Line 19:
# that we will not or cannot provide under our new operating system.
# that we will not or cannot provide under our new operating system.


singularity exec /opt/beocat/containers/beocat_centos-7.9.sif /bin/bash -l <<EOF
apptainer exec /opt/beocat/containers/beocat_centos-7.9.sif /bin/bash -l <<EOF
${@}
${@}
EOF
EOF
</syntaxhighlight>
</syntaxhighlight>
If you would prefer, you could put the <tt>singularity exec</tt> lines in your script, with the commands you would like to run between the <tt><<EOF</tt> and <tt>EOF</tt> sections.
If you would prefer, you could put the <tt>apptainer exec</tt> lines in your script, with the commands you would like to run between the <tt><<EOF</tt> and <tt>EOF</tt> sections.


There will be no good way to utilize these tools with multi-node jobs, so it would be a good idea to migrate away from the CentOS 7 tools as soon as possible.
There will be no good way to utilize these tools with multi-node jobs, so it would be a good idea to migrate away from the CentOS 7 tools as soon as possible.

Latest revision as of 08:33, 24 June 2024

OS Change

On April 1 2024, we switched our Operating System from CentOS 7 to Rocky Linux 9.

If you had compiled your own software under CentOS (with or without our modules) you will likely need to recompile it to use it with the new operating system.

Using old software

Below is a script that will execute a container with all of the public software we provide under CentOS 7 from the head nodes. There may be versions of GPU-related packages missing.

#!/bin/bash
# This script is a wrapper for our CentOS 7 based container.
# You would use it something like this:
# sbatch -C os_el9 /opt/beocat/containers/beocat_centos-7.9.wrapper.sh ./R-hello_world.sh

# Note that you would need to provide an appropriate path for the script to to execute
# under the contained environnment (either a full path or a relative path), and the script
# would need to be executable.

# This is meant to be a stopgap measure for those that may be reliant on older software
# that we will not or cannot provide under our new operating system.

apptainer exec /opt/beocat/containers/beocat_centos-7.9.sif /bin/bash -l <<EOF
${@}
EOF

If you would prefer, you could put the apptainer exec lines in your script, with the commands you would like to run between the <<EOF and EOF sections.

There will be no good way to utilize these tools with multi-node jobs, so it would be a good idea to migrate away from the CentOS 7 tools as soon as possible.