Skip to content

Commit dad1a39

Browse files
Add placeholder Secret manifest and link it from the README
secrets-example.yaml shows the two Secrets the deployments expect (slurm-munge-key, slurm-sssd-conf) with dummy values, plus a note on delivering slurmdbd.conf as a Secret via subPath for sites that prefer that over shared storage. Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent d8019e1 commit dad1a39

2 files changed

Lines changed: 55 additions & 1 deletion

File tree

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,8 @@ All containers require:
178178
- **SSSD config** (if using LDAP): Kubernetes Secret mounted at `/etc/sssd/.secret/` (`kubectl -n slurm create secret generic slurm-sssd-conf --from-file=sssd.conf=...`)
179179
- **Mail relay** (slurmctld, optional): Set `SMTP_HOST`, `SMTP_PORT`, `MAIL_FROM` env vars
180180

181-
See each service README for the exact secret-creation commands.
181+
See each service README for the exact secret-creation commands, or
182+
[`secrets-example.yaml`](secrets-example.yaml) for a placeholder manifest.
182183

183184
## 🔧 Service Details
184185

secrets-example.yaml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
# =============================================================================
2+
# Example Secrets for the vulcan-slurm images -- PLACEHOLDER VALUES ONLY
3+
# =============================================================================
4+
# The deployment manifests in slurmctld/, slurmdbd/ and slurmrestd/ mount two
5+
# Kubernetes Secrets. Create them from your real files instead of editing
6+
# this manifest (base64 in YAML is easy to get wrong for binary keys):
7+
#
8+
# kubectl -n slurm create secret generic slurm-munge-key \
9+
# --from-file=munge.key=/etc/munge/munge.key
10+
#
11+
# kubectl -n slurm create secret generic slurm-sssd-conf \
12+
# --from-file=sssd.conf=/etc/sssd/sssd.conf
13+
#
14+
# The munge key must be byte-identical to the one on your compute/login
15+
# nodes or every Slurm RPC fails with "Unauthorized credential".
16+
# sssd.conf typically contains your LDAP bind credentials - that is why it
17+
# is a Secret and not a ConfigMap.
18+
#
19+
# NOTE: slurmdbd.conf (database password) is mounted from shared storage in
20+
# these examples because several tools parse it in place, but nothing stops
21+
# you from delivering it as a Secret the same way if that suits your site
22+
# better - mount it at /etc/slurm via subPath.
23+
# =============================================================================
24+
apiVersion: v1
25+
kind: Secret
26+
metadata:
27+
name: slurm-munge-key
28+
namespace: slurm
29+
type: Opaque
30+
data:
31+
# base64 of your real munge.key (binary) - placeholder below
32+
munge.key: UkVQTEFDRS1XSVRILVlPVVItUkVBTC1NVU5HRS1LRVk=
33+
---
34+
apiVersion: v1
35+
kind: Secret
36+
metadata:
37+
name: slurm-sssd-conf
38+
namespace: slurm
39+
type: Opaque
40+
stringData:
41+
sssd.conf: |
42+
# REPLACE with your real sssd.conf (LDAP bind credentials live here)
43+
[sssd]
44+
config_file_version = 2
45+
services = nss, pam
46+
domains = example
47+
48+
[domain/example]
49+
id_provider = ldap
50+
ldap_uri = ldaps://ldap.example.org
51+
ldap_search_base = dc=example,dc=org
52+
ldap_default_bind_dn = cn=readonly,dc=example,dc=org
53+
ldap_default_authtok = REPLACE-ME

0 commit comments

Comments
 (0)