Kubernetes/삽질

[NVIDIA/gpu-monitoring-tools] dcgm-exporter CrashLoopBackOff - 2

비번변경 2022. 2. 21. 20:45

2021.12.14 - [NVIDIA/gpu-monitoring-tools] dcgm-exporter CrashLoopBackOff

위 글에 이어 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가 정상적으로 동작하는지 확인한다.

Failed to initialize NVML: Driver/library version mismatch

dcgm-exporter가 동작하지 않는 원인이 nvidia 드라이버가 동작하지 않았기 때문임을 알 수 있다.

 

조치 

해결 방법은 아래 글을 참고한다.

2022.02.20 - [nvidia-smi] Failed to initialize NVML: Driver/library version mismatch