From bab4f3f1eae06c0a2c36089acf032427d21a636a Mon Sep 17 00:00:00 2001 From: Jea-Eok-Kim Date: Fri, 4 Sep 2026 12:23:41 +0900 Subject: [PATCH] prometheus-slurm-exporter: mount Slurm client tools onto the container PATH The unit mounts sdiag, sinfo and squeue at the host's slurm_install_prefix inside the container as well. The exporter invokes them by name, and a custom prefix is not on the container's PATH, so every scrape run fails: exec: "sinfo": executable file not found in $PATH With the default prefix the destination happens to be /usr/local/bin, which is already on PATH, so the bug only appears when the operator sets slurm_install_prefix. Restart=always keeps the unit reported as active, so nothing in the play fails; only Prometheus shows it, as an EOF on the scrape. Pin the destination paths to /usr/local/bin. The library mount is left alone: shared objects are resolved by path, not by PATH. Observed on DGX B300, DGX OS 7.5.0, slurm_install_prefix=/raid/slurm/usr/local. Signed-off-by: Jea-Eok-Kim --- .../templates/docker.slurm-exporter.service.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/prometheus-slurm-exporter/templates/docker.slurm-exporter.service.j2 b/roles/prometheus-slurm-exporter/templates/docker.slurm-exporter.service.j2 index 502c7bf3c..7452b2763 100644 --- a/roles/prometheus-slurm-exporter/templates/docker.slurm-exporter.service.j2 +++ b/roles/prometheus-slurm-exporter/templates/docker.slurm-exporter.service.j2 @@ -12,7 +12,7 @@ ExecStartPre=-/usr/bin/docker rm %n {% if not slurm_exporter_build_image %} ExecStartPre=/usr/bin/docker pull {{ slurm_exporter_container }} {% endif %} -ExecStart=/usr/bin/docker run --rm --network host --name %n -v {{ slurm_install_prefix }}/bin/sdiag:{{ slurm_install_prefix }}/bin/sdiag -v {{ slurm_install_prefix }}/bin/sinfo:{{ slurm_install_prefix }}/bin/sinfo -v {{ slurm_install_prefix }}/bin/squeue:{{ slurm_install_prefix }}/bin/squeue -v /etc/slurm:/etc/slurm:ro -v {{ slurm_install_prefix }}/lib:{{ slurm_install_prefix }}/lib:ro -v /etc/hosts:/etc/hosts:ro -v /var/run/munge:/var/run/munge:ro {{ slurm_exporter_container }} +ExecStart=/usr/bin/docker run --rm --network host --name %n -v {{ slurm_install_prefix }}/bin/sdiag:/usr/local/bin/sdiag -v {{ slurm_install_prefix }}/bin/sinfo:/usr/local/bin/sinfo -v {{ slurm_install_prefix }}/bin/squeue:/usr/local/bin/squeue -v /etc/slurm:/etc/slurm:ro -v {{ slurm_install_prefix }}/lib:{{ slurm_install_prefix }}/lib:ro -v /etc/hosts:/etc/hosts:ro -v /var/run/munge:/var/run/munge:ro {{ slurm_exporter_container }} [Install] WantedBy=multi-user.target