11286a1f89
Add a native sidecar (bitnami/kubectl, restartPolicy: Always) that runs kanidmd renew-replication-certificate on each pod and patches the result into the kanidm-repl-certs ConfigMap (certs are public keys, not secrets). The config-init init container reads peer certs from the ConfigMap at startup, building the replication stanza automatically — no manual cert exchange required after first deploy. Add RBAC (Role + RoleBinding) granting the kanidm service account pods/exec and configmap patch permissions scoped to the kanidm namespace.
44 lines
859 B
YAML
44 lines
859 B
YAML
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: kanidm-config
|
|
namespace: kanidm
|
|
labels:
|
|
app.kubernetes.io/name: kanidm
|
|
app.kubernetes.io/instance: kanidm
|
|
data:
|
|
server.toml: |
|
|
version = "2"
|
|
|
|
domain = "auth.unkin.net"
|
|
origin = "https://auth.unkin.net"
|
|
bindaddress = "[::]:8443"
|
|
db_path = "/data/kanidm.db"
|
|
db_arc_size = 2048
|
|
tls_chain = "/data/tls/tls.crt"
|
|
tls_key = "/data/tls/tls.key"
|
|
log_level = "info"
|
|
|
|
[online_backup]
|
|
path = "/data/backups/"
|
|
schedule = "0 22 * * *"
|
|
versions = 7
|
|
|
|
[replication]
|
|
origin = "__REPL_ORIGIN__"
|
|
bindaddress = "[::]:8444"
|
|
---
|
|
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: kanidm-repl-certs
|
|
namespace: kanidm
|
|
labels:
|
|
app.kubernetes.io/name: kanidm
|
|
app.kubernetes.io/instance: kanidm
|
|
data:
|
|
kanidm-0: ""
|
|
kanidm-1: ""
|
|
kanidm-2: ""
|