We are pleased to announce the release of slurm-quota v3.0.0, a major update to our open source solution for CPU/GPU time quota management on Slurm clusters. This release turns the HTTP service into a full authenticated REST API with role-based access control, and brings quota administration into the web interface.

As a reminder, slurm-quota helps HPC and AI computing centers account and enforce CPU and GPU time quotas for users and accounts, using a lightweight architecture that integrates naturally with standard Slurm workflows.

What’s New?

Users can authenticate against the site LDAP directory from the CLI and the web dashboard. After a successful login, the service issues a JWT used for subsequent API requests.

  • JWT bearer token authentication (#57)

Protected REST API routes require a Bearer JWT in the Authorization header. Tokens can be obtained through LDAP login, or issued offline by administrators with slurm-quota-token when JWT-only authentication is configured.

Beyond statistics, the API now covers quota changes, consumption adjustments, default quotas, GPU factors, and role management. The CLI and web dashboard are both clients of this single API.

  • RBAC with four roles (#58, #70)

Access is governed by an authorization policy with four roles:

user — default role; view own consumption and quota stats
manager — view stats for assigned Slurm accounts, in addition to personal visibility
operator — view all stats and manage quotas, consumption, defaults, and GPU factors
admin — same operational rights as operators, plus role attribution

  • No more sudo for administrative CLI operations

Operators and admins authenticate as themselves and run quota management commands through the API. Local sudo access to the database is no longer required for day-to-day administration.

  • Quota and consumption control in the web interface (#82, #85)

Operators and admins can edit quotas and adjust consumption directly from the dashboard, with clearer feedback for successes and errors.

  • CLI and web interface for role attribution (#90)

Admins can grant or revoke operator and manager roles, and assign Slurm accounts to managers, from the new slurm-quota role command and the Manage roles page in the web dashboard.

  • SQLite WAL mode (#71)

Write-Ahead Logging is enabled on the SQLite database to improve concurrency between the job charge path, the REST API, and concurrent readers.

  • Native TLS support for the REST API (#77)

slurm-quota-serve can terminate HTTPS natively with a certificate and key configured in serve.ini, so tokens and LDAP credentials are not sent in cleartext over the cluster network.

This release also includes a Python packaging refactor with dedicated slurm-quota-{serve,charge,prune} commands.

How-to Upgrade

Version 3 is a major release with breaking changes: authentication is now required on the REST API, command entry points are split (slurm-quota-serve, slurm-quota-charge, slurm-quota-prune), and the web dashboard deployment paths have moved. Existing v2 RPM installations can follow the dedicated upgrade guide from v2 to v3, which covers database backup, package upgrade, serve.ini authentication and authorization setup, client environment updates (SLURM_QUOTA_URL, TLS), role bootstrap, and Apache/mod_wsgi path changes for the web dashboard.

Acknowledgements

The development of slurm-quota has been continuously sponsored by ISDM-Meso, part of the University of Montpellier. We warmly thank them for their continued support and trust in this work.

Learn More