Computer

리눅스 서버 클러스터 설정하기: 4. slurm node 에러 해결 방법

Novelism 2025. 3. 28. 23:20

3번항목보다 4번이 먼저 추가되다니... 3번 항목은 수정 중입니다. 

에러는 한가지가 아니기 때문에 이글은 아마도 제가 에러를 발견하고 해결할 때마다 계속 업데이트될 것입니다.

slurm 의 노드가 갑자기 죽었습니다. 어찌저찌해서 문제의 근원은 해결했고 (SSD가 가득 차버렸습니다... ㅠㅠ),

재시작은 두가지 방법이 있습니다. 

하나는 노드에 직접 접속하지 않고 로그인 서버에서 다음 명령어를 실행하는 것입니다. 

# 노드들 상태 보기
sinfo 

#  노드 상태 다운으로 표시하기
sudo scontrol update NodeName="node_name" State=down Reason=hung_proc
# 노드 상태 사용가능으로 변경하기 
sudo scontrol update NodeName="node_name" State=resume

아마 이미 다운되어있을테니, State=down 줄은 실행할 필요가 없겠죠. 
"node_name"에는 실제 노드 이름을 넣어줍니다. 

보통의 경우 (어떤 문제가 생겼기 때문에) 이 명령어만으로는 안되고, 

구체적으로 재시작할 노드에 접속해서 다음 명령어를 실행하여야 할 것입니다. 

sudo systemctl stop slurmd.service
sudo systemctl start slurmd.service


그런데 slurm을 재시작하려는데 이상하게 시작이 안됩니다.

이러면 로그 파일을 확인해봅니다.

제 경우는 /var/log/slurm/slurmd.log 파일입니다. 

 

[2025-03-28T10:30:21.701] error: Waiting for gres.conf file /dev/nvidia0
[2025-03-28T10:30:40.705] fatal: can't stat gres.conf file /dev/nvidia0: No such file or directory
[2025-03-28T13:59:49.785] error: Waiting for gres.conf file /dev/nvidia0
[2025-03-28T14:00:08.788] fatal: can't stat gres.conf file /dev/nvidia0: No such file or directory

 

이럴수가... 

/dev/nvidia0 이 인식이 안되는군요. 

비싼 GPU가 달려있는데 왜 찾지를 못하니... 

nvidia-smi 명령어를 치면 정상적으로 찾는데...

자. 아무튼 /dev/nvidia0을 되살려야겠죠. 

명령어는 

sudo nvidia-modprobe

입니다. 
그후 다시 해당 경로를 찾아보면 파일이 정상적으로 존재하는것을 볼 수 있었습니다.
다행이네요. 
이제 다시 sudo systemctl start slurmd.service  명령어를 입력하고

서버에서 sudo scontrol update NodeName="node_name" State=resume
를 다시 실행하면 작업이 정상적으로 들어갑니다.