https://github.com/charmed-hpc/slurm-charms
Juju charms for automating the Day 0 to Day 2 operations of the Slurm workload manager βοΈπ§
https://github.com/charmed-hpc/slurm-charms
automation charm charmed-hpc hpc juju slurm slurm-workload-manager
Last synced: 17 days ago
JSON representation
Juju charms for automating the Day 0 to Day 2 operations of the Slurm workload manager βοΈπ§
- Host: GitHub
- URL: https://github.com/charmed-hpc/slurm-charms
- Owner: charmed-hpc
- License: apache-2.0
- Created: 2024-07-29T17:13:31.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2026-05-21T00:16:21.000Z (23 days ago)
- Last Synced: 2026-05-21T07:19:21.283Z (22 days ago)
- Topics: automation, charm, charmed-hpc, hpc, juju, slurm, slurm-workload-manager
- Language: Python
- Homepage:
- Size: 1.25 MB
- Stars: 4
- Watchers: 2
- Forks: 5
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# Slurm charms
[](https://github.com/charmed-hpc/slurm-charms/actions/workflows/ci.yaml/badge.svg)
[](https://github.com/charmed-hpc/slurm-charms/actions/workflows/release.yaml/badge.svg)

[](https://matrix.to/#/#hpc:ubuntu.com)
[Juju](https://juju.is) charms for automating the Day 0 to Day 2 operations of the [Slurm workload manager](https://slurm.schedmd.com/overview.html) βοΈπ§
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:
* [`sackd`](./charms/sackd/): the authentication and credential kiosk daemon for Slurm.
* [`slurmctld`](./charms/slurmctld/): the central management daemon for Slurm.
* [`slurmd`](./charms/slurmd): the compute node daemon for Slurm.
* [`slurmdbd`](./charms/slurmdbd): the database daemon for Slurm.
* [`slurmrestd`](./charms/slurmrestd/): the REST API interface to Slurm.
## β¨ Getting started
To deploy the Slurm charms from [Charmhub](https://charmhub.io), you must be using Juju 3.x or greater.
```shell
juju deploy sackd --channel edge
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 sackd:slurmctld slurmctld:sackd
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
```
## π€ What's next?
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:
* [Documentation](https://canonical-charmed-hpc.readthedocs-hosted.com/latest)
* [Open an issue](https://github.com/charmed-hpc/slurm-charms/issues/new?title=ISSUE+TITLE&body=*Please+describe+your+issue*)
* [Ask a question on Github](https://github.com/orgs/charmed-hpc/discussions/categories/q-a)
## π οΈ Development
The project uses [just](https://github.com/casey/just) and [uv](https://github.com/astral-sh/uv) for
development, which provides some useful commands that will definitely help while hacking on the charms:
```shell
just repo fmt # Apply formatting standards to code.
just repo lint # Check code against coding style standards.
just repo typecheck # Type checking.
just repo 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!
```shell
just repo integration
```
The integration tests for `slurmctld` high availability functionality require more time and computer
resources to run so are optionally gated behind a flag:
```shell
just repo integration -- --run-high-availability
```
If you're interested in contributing, take a look at our [contributing guidelines](./CONTRIBUTING.md).
## π€ Project and Community
The Slurm charms are a project of the [Ubuntu High-Performance Computing community](https://ubuntu.com/community/governance/teams/hpc).
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](https://ubuntu.com/community/ethos/code-of-conduct)
* [Contributing guidelines](./CONTRIBUTING.md)
* [Join the conversation on Matrix](https://matrix.to/#/#hpc:ubuntu.com)
* [Get the latest news on Discourse](https://discourse.ubuntu.com/c/hpc/151)
* [Ask and answer questions on GitHub](https://github.com/orgs/charmed-hpc/discussions/categories/q-a)
## π License
The Slurm charms are free software, distributed under the Apache Software License, version 2.0.
See the [Apache-2.0 LICENSE](./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](https://slurm.schedmd.com/disclaimer.html) for further licensing information about Slurm.