🔧 Engineering/📁 GPU & Hardware

Supermicro GPU 서버 설치 이후 작업 (CUDA / DCGM / Docker)

만두개 2026. 3. 10. 14:33
반응형
SMALL

앞 글에서는 Supermicro 워크스테이션 서버 기본 설치 과정을 정리했다.

2026.03.09 - [🔧 Engineering/📁 GPU & Hardware] - Supermicro 워크스테이션 서버 설치 정리 (Ubuntu / RAID / 초기 설정)

 

Supermicro 워크스테이션 서버 설치 정리 (Ubuntu / RAID / 초기 설정)

Supermicro 워크스테이션 서버를 설치하면서 진행했던 과정을 정리해보려고 한다.Ubuntu 기반 서버였고, BIOS 설정부터 RAID 구성, Ubuntu 설치 후 기본 패키지 설정까지 진행했다.신입이라 아직 하나씩

mandoog.tistory.com

이번 글에서는 GPU가 장착된 서버에서 추가로 필요한 설정을 정리해보려고 한다.

GPU 서버에서는 기본 OS 설치 이후 다음 작업이 추가로 필요하다.

  • NVIDIA Driver
  • NVSwitch 관련 패키지
  • DCGM (Datacenter GPU Manager)
  • CUDA / cuDNN
  • Docker + NVIDIA Container Toolkit

1. NVIDIA Driver 및 관련 모듈 설치

먼저 NVIDIA Driver와 modprobe 관련 패키지를 설치한다.

nvidia-modprobe는 nvidia 관련 커널 모듈을 자동으로 로드하기 위한 패키지이다.

apt install nvidia-driver-XXX-server nvidia-modprobe
 

※ XXX는 GPU 환경에 맞는 드라이버 버전으로 변경


2. NVSwitch 환경 패키지 설치 (HGX 서버 등)

- DGX 같이 nvswitch 있는 서버만 필요.

HGX 시스템처럼 NVSwitch가 있는 GPU 서버에서는 추가 패키지가 필요하다.

nvidia-fabricmanager

NVSwitch 관리 서비스

libnvidia-nscq

NVSwitch 상태 조회 API

apt install nvidia-fabricmanager-XXX libnvidia-nscq-XXX
 

3. NVIDIA Repository 활성화

DGX/HGX 환경에서는 NVIDIA repository를 추가해야 한다.

Ubuntu 기준으로 다음 명령어를 실행한다.

curl https://repo.download.nvidia.com/baseos/ubuntu/jammy/dgx-repo-files.tgz | sudo tar xzf - -C /
curl https://repo.download.nvidia.com/baseos/ubuntu/noble/x86_64/dgx-repo-files.tgz | sudo tar xzf - -C /
 

이후 패키지 목록을 업데이트한다.

apt update
 

4. DCGM (Datacenter GPU Manager) 설치

DCGM은 GPU 상태 모니터링을 위한 NVIDIA 관리 도구이다.

apt install datacenter-gpu-manager
 

서비스 활성화

systemctl enable nvidia-dcgm
systemctl start nvidia-dcgm

5. GPU 및 서비스 상태 확인

설치 이후 다음 명령어로 GPU 상태를 확인한다.

GPU 상태 확인

nvidia-smi

 

NVIDIA Persistence Service

systemctl status nvidia-persistenced
 

NVSwitch 서비스 상태

systemctl status nvidia-fabricmanager

 

NVLink 토폴로지 확인

nvidia-smi topo -m
 

 

NVSwitch 상태 확인

dcgmi nvlink -s
dcgmi discovery -l

6. nvidia-persistenced 자동 활성화

기본 설정에서는 persistence mode가 비활성화되어 있을 수 있다.

서비스 파일을 수정한다.

vi /lib/systemd/system/nvidia-persistenced.service
 

다음 항목을 수정한다.

ExecStart= ... --no-persistence-mode
 

ExecStart= ... --persistence-mode

 


7. CUDA 환경 변수 설정

CUDA를 사용하는 경우 환경 변수를 추가한다.

export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
 

이후 환경 변수 적용

source ~/.bashrc
 

또는

source /etc/bash.bashrc
 

8. cuDNN 설치

cuDNN 압축 파일을 먼저 해제한다.

tar -xvf cudnn-linux-x86_64-8.9.4.25_cuda11-archive.tar.xz
 

디렉토리 이동

cd cudnn-linux-x86_64-8.9.4.25_cuda11-archive
 

CUDA 경로로 파일 복사

sudo cp include/cudnn*.h /usr/local/cuda/include
sudo cp lib/libcudnn* /usr/local/cuda/lib64

cuDNN 설치 확인

cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
 

예시 출력

#define CUDNN_MAJOR 8
#define CUDNN_MINOR 9
#define CUDNN_PATCHLEVEL 4
 

9. Docker 설치

먼저 의존성 패키지를 설치한다.

sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
 

Docker GPG key 추가

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
 

Docker repository 설정

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
 

Docker 설치

apt update
sudo apt install docker-ce docker-ce-cli containerd.io
 

Docker 서비스 활성화

sudo systemctl start docker
sudo systemctl enable docker
 

10. NVIDIA Container Toolkit 설치

NVIDIA Container Toolkit을 설치하면 Docker container 내부에서 GPU 사용이 가능하다.

Repository 추가

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
 
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

 

설치

apt update
sudo apt install -y nvidia-container-toolkit
 

11. Docker Runtime 설정

Docker에서 NVIDIA runtime을 사용하도록 설정한다.

sudo nvidia-ctk runtime configure --runtime=docker
 

Docker 재시작

sudo systemctl restart docker
 

12. Docker GPU 동작 확인

컨테이너 내부에서 GPU가 정상 인식되는지 확인한다.

docker run --rm --gpus=1 nvidia/cuda:11.8.0-runtime-ubuntu20.04 nvidia-smi
 

정상적으로 동작하면 container 내부에서도 GPU 정보가 출력된다.

반응형
LIST