Quickstart
The fastest path from a fresh install to a running, verified agent. This page deliberately skips
options and edge cases — it links out to the full Configuration Reference and
Deployment Guide for everything beyond a first working setup. Written around the
SLURM backend, since it's the most common first deployment; other backends follow the same shape
with a different backend_type and backend_settings block (see your plugin's README under
plugins/).
Budget about 15-20 minutes if the offering side is already set up in Waldur.
1. Create the offering in Waldur
- Go to the
Service Providersection of your organization, open offering creation, pick a name and category, and selectWaldur site agentfrom the type drop-down.
- On the offering's
Edittab, openAccounting→Accounting plans, add a plan.
- Still on
Edit, openIntegration→User management, setService provider can create offering usertoYes.
- Activate the offering with the green
Activatebutton. - Copy the offering UUID from
Integration→Credentials— you'll need it below.
- Create an API token for a user with the OFFERING.MANAGER role on this offering. You'll need it below too.
2. Install the agent
1 | |
Starting from a bare server instead of an existing Python environment? Use the Ubuntu 24.04 or Rocky Linux 9 guide — they cover OS packages and the SLURM CLI tools the agent shells out to.
3. Write a minimal config
Option A: generate it from Waldur (SLURM only, recommended)
For SLURM offerings, skip hand-writing YAML entirely. On the same Integration → Credentials
page from step 1, open Actions → Generate Site Agent Config. It builds a config from your
actual offering — name, waldur_api_url, waldur_offering_uuid, all three *_backend
fields, backend_settings, and backend_components (including your real plan components, not a
generic example) are filled in for you. Only waldur_api_token comes back as a placeholder
(<YOUR_API_TOKEN_HERE>) — swap in the token from step 1. Copy or download the result as
waldur-site-agent-config.yaml.
You need the GET_SERVICE_PROVIDER_API_SECRET_CODE permission on the customer to see this
action — if it's missing from the Actions menu, that's usually why.
Option B: write it by hand
Only the fields below are required to get a SLURM offering running. Everything else in the full example (multi-offering setups, LDAP, prepaid billing, QoS management, home directory quotas, ...) can wait until this is working.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | |
Swap in real values for the three lines marked REQUIRED. default_account must already exist
in sacctmgr — the agent doesn't create it for you.
Either way, wherever the file ends up, remember to save it at
/etc/waldur/waldur-site-agent-config.yaml (or update the -c path in the commands below to
match).
4. Load offering components into Waldur
This pushes the backend_components block above (the cpu component here) into the offering as
a billable plan component. Without this step the offering has nothing to charge for.
1 | |
5. Check your setup before you touch systemd
1 | |
This confirms the Waldur side: the API is reachable, your token authenticates and has the right role, the offering UUID resolves, and the components you just loaded are visible. It does not check backend connectivity — it won't tell you whether the agent can actually reach and command your SLURM cluster. If you're on the SLURM backend, run the deeper, backend-aware check after placing at least one test order (step 7):
1 | |
Other backends (MOAB, MUP, Rancher, LDAP, ...) don't have an equivalent backend-side check yet — for those, the first real run in step 7 is your first signal.
6. Enable it for real
Follow Deployment → Systemd Service Setup to install and
start the four services (order_process, report, membership_sync, and either polling or
event-based, your choice). Come back here once they're running.
7. Verify end-to-end
Place a small test order against your offering in the Waldur marketplace, then:
1 2 3 4 5 | |
The resource should move to OK in Waldur and the account should exist in sacctmgr with the
prefix/limits from your config. If it doesn't, see
Deployment → Troubleshooting — that section is ordered to match
the failure modes you'll hit at each step above, starting with waldur_site_diagnostics.



