2021.12.14 - [NVIDIA/gpu-monitoring-tools] dcgm-exporter CrashLoopBackOff
위 글에 이어 dcgm-exporter에서 발생한 CrashLoopBackOff 상태를 해결 방법을 적어둔다.
현상
에러 메시지
확인할 수 있는 pod container 로그가 없어, describe 명령으로 상태를 확인했다.
kubectl describe pods dcgm-exporter-
# ... 생략 ...
Containers:
dcgm-exporter:
Container ID: docker://
Image: nvcr.io/nvidia/k8s/dcgm-exporter:2.2.9-2.4.0-ubuntu18.04
Image ID: docker-pullable://nvcr.io/nvidia/k8s/dcgm-exporter@sha256:
Port: 9100/TCP
Host Port: 0/TCP
State: Waiting
Reason: CrashLoopBackOff
Last State: Terminated
Reason: ContainerCannotRun
Message: OCI runtime create failed: container_linux.go:380: starting container process caused: process_linux.go:545: container init caused: Running hook #0:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: initialization error: nvml error: driver/library version mismatch: unknown
nvml error: driver/library version mismatch: unknown라는 메시지를 보면, 이전과 비슷하게 드라이버 관련 에러라는 것을 확인할 수 있다.
원인
해당 pod가 스케쥴링된 노드에서 nvidia-smi가 정상적으로 동작하는지 확인한다.
dcgm-exporter가 동작하지 않는 원인이 nvidia 드라이버가 동작하지 않았기 때문임을 알 수 있다.
조치
해결 방법은 아래 글을 참고한다.
2022.02.20 - [nvidia-smi] Failed to initialize NVML: Driver/library version mismatch