Juju charms for automating the Day 0 to Day 2 operations of the Slurm workload manager ⚖️🐧
The slurm-charms
repository is a collection of charmed operators that enables you to easily deploy, configure, and manage the Slurm workload manager.
Here's the current charms in the collection:
slurmctld
: the central management daemon for Slurm.slurmd
: the compute node daemon for Slurm.slurmdbd
: the database daemon for Slurm.slurmrestd
: the REST API interface to Slurm.
To deploy the Slurm charms from Charmhub, you must be using Juju 3.x or greater.
juju deploy slurmctld --channel edge
juju deploy slurmd --channel edge
juju deploy slurmdbd --channel edge
juju deploy slurmrestd --channel edge
juju deploy mysql --channel 8.0/stable
juju deploy mysql-router slurmdbd-mysql-router --channel dpe/edge
juju integrate slurmctld:slurmd slurmd:slurmctld
juju integrate slurmctld:slurmdbd slurmdbd:slurmctld
juju integrate slurmctld:slurmrestd slurmrestd:slurmctld
juju integrate slurmdbd-mysql-router:backend-database mysql:database
juju integrate slurmdbd:database slurmdbd-mysql-router:database
If you want to learn more about all the things you can do with the Slurm charms, here are some resources for you to explore:
The project uses tox as its command runner, which provides some useful commands that will definitely help while hacking on the charms:
tox run -e fmt # Apply formatting standards to code.
tox run -e lint # Check code against coding style standards.
tox run -e type # Type checking.
tox run -e unit # Run unit tests.
We also have some integration tests in place, but be aware that it requires a fairly good amount of computer resources to run them. We usually test with at least 4 cores and 16 GB of RAM, but feel free to experiment!
tox run -e integration
If you're interested in contributing, take a look at our contributing guidelines.
The Slurm charms are a project of the Ubuntu High-Performance Computing community. Interested in contributing bug fixes, patches, documentation, or feedback? Want to join the Ubuntu HPC community? You’ve come to the right place 🤩
Here’s some links to help you get started with joining the community:
- Ubuntu Code of Conduct
- Contributing guidelines
- Join the conversation on Matrix
- Get the latest news on Discourse
- Ask and answer questions on GitHub
The Slurm charms are free software, distributed under the Apache Software License, version 2.0. See the Apache-2.0 LICENSE file for further details.
The Slurm workload manager is licensed under the GNU General Public License, version 2, or any later version. See Slurm's legal notice for further licensing information about Slurm.