KVM GPU

Prev Next

VPC 환경에서 이용 가능합니다.

네이버 클라우드 플랫폼 콘솔에서 KVM 기반 GPU 서버를 생성하고 관리하는 방법을 설명합니다.

참고
  • 예기치 못한 서버의 장애 또는 예정된 변경 작업 등에 대하여 중단 없이 서비스 연속성을 보장할 수 있도록 서버는 기본적으로 존 간 이중화 구성을 권장합니다. Load Balancer 개요를 참고하여 이중화 설정을 진행해 주십시오.
  • 네이버 클라우드 플랫폼에서는 메모리, CPU, 전원 공급 등 물리 서버의 장애에 대비하기 위해 High Availability(HA) 구조를 제공합니다. HA는 하드웨어에서 발생한 장애가 Virtual Machine(VM) 서버로 확대되는 것을 방지하기 위한 정책으로 호스트 서버에 장애가 발생하면 자동으로 호스트 서버 안에 있는 VM 서버를 안정된 다른 호스트 서버로 옮기는 Live Migration을 지원합니다. 하지만 Live Migration을 진행할 수 없는 오류가 발생하면 VM 서버가 재시작됩니다. VM 서버 한 대로 서비스를 운영하면 VM 서버 재시작으로 장애가 발생할 수 있으므로 장애 발생 빈도를 줄이기 위해서는 위 안내와 같이 VM 서버를 다중화하는 것을 권장합니다.

서버 정보 확인

GPU 서버 정보를 확인하는 방법은 일반 서버 정보를 확인하는 방법과 같습니다. 자세한 내용은 서버 정보 확인을 참고해 주십시오.

주의
  • GPU 서버는 정지 상태에서도 전체 서버 요금이 과금됩니다.

GPU 서버 생성

GPU 서버는 콘솔 VPC 환경의 Menu > All Services > Compute > Server 메뉴에서 생성할 수 있습니다. 자세한 생성 방법은 서버 생성을 참고해 주십시오.

참고
  • GPU 서버는 드라이버 및 관련 소프트웨어가 사전 설치된 NCP GPU 이미지를 사용하실 수 있습니다.
  • GPU 타입별 생성 가능한 Region은 아래의 표를 참고해 주시기 바랍니다.
GPU 타입 Region
NVIDIA H100 KRS-1
NVIDIA L4 KR-1
NVIDIA L40S KR-1

서버 관리

GPU 서버 관리 및 설정 변경 방법은 일반 서버 관리 및 설정 변경 방법과 같습니다. 자세한 내용은 서버 관리를 참고해 주십시오.

참고
  • KVM GPU 서버는 스펙 변경이 불가합니다.
  • GPU 서버는 일반 서버로 전환할 수 없습니다. 일반 서버로 변경하려면 서버 이미지를 생성한 후, 서버 이미지를 사용해 일반 서버를 새로 생성해야 합니다.
  • 일반 서버로 만들어진 서버 이미지를 사용해 GPU 서버를 생성할 수 있습니다.

GPU 드라이버 설치

아래 두 가지 옵션 중 하나를 선택해 주십시오.

옵션 1. 드라이버가 사전 설치된 NCP GPU 이미지 사용

NVIDIA 드라이버 및 관련 소프트웨어가 사전 설치된 NCP GPU 서버 생성 방법은 다음과 같습니다.

참고
  • NVIDIA H100 GPU 서버 생성시 Infiniband를 사용하기 위한 MLNX_OFED가 사전 설치되어 있습니다.
  1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > All Services > Compute > Server 메뉴를 차례대로 클릭해 주십시오.
  2. 서버 이미지가 표시된 탭에서 NCP 서버 이미지 탭을 선택해 주십시오.
  3. 이미지 타입에서 KVM GPU를 선택해 주십시오.
  4. 사용하실 서버 이미지 이름을 선택해 주십시오.

옵션 2. NVIDIA 가이드를 사용하여 GPU 드라이버 및 CUDA 설치

주의
  • GPU 서버 생성 시, 부팅 디스크 크기는 최소 100GB 이상으로 설정해 주십시오.
  • NVIDIA H100 GPU 서버는 NVIDIA Fabric Manager를 반드시 설치해 주십시오.
  • NVIDIA H100 GPU 서버에서 Infiniband를 사용하실 경우 NVIDIA MLNX_OFED를 반드시 설치해 주십시오.
참고
GPU 타입 최소 권장 드라이버 릴리즈
NVIDIA H100 R535 이상
NVIDIA L4 R535 이상
NVIDIA L40S R535 이상

2.1 GPU Driver 설치

GPU 타입별 최소 권장 드라이버 버전을 확인하신 후 NVIDIA Driver 설치 가이드를 참고하여 설치해 주십시오.

참고
  • NVIDIA H100 GPU 서버는 NVLink 지원을 위해 NVIDIA Fabric Manger가 반드시 함께 설치되어야 합니다.
    • NVIDIA Fabric Manager 문서를 참고하여 설치해 주십시오.
    • 반드시 GPU Driver 버전과 동일한 버전의 NVIDIA Fabric Manager를 설치해 주십시오.

2.2 CUDA Toolkit 설치

CUDA를 설치하는 방법은 다음과 같습니다.

  1. NVIDIA CUDA Toolkit 웹사이트에 접속해 주십시오.
  2. 설치하고자 하는 버전의 CUDA Runtime 설치 파일을 선택하여 다운로드 하십시오.
    • Installer Type은 runfile (local)을 선택해 주십시오.
  3. 다음 명령어를 입력해 CUDA Toolkit을 설치해 주십시오.
    # chmod +x [다운로드한 설치 파일명]
    # ./[다운로드한 설치 파일명] --toolkit --toolkitpath=/usr/local/cuda-[버전] --samples --samplespath=/usr/local/cuda --silent
    

GPU 드라이버 및 필수 소프트웨어 점검

서버의 GPU 드라이버와 필수 소프트웨어를 점검해 주십시오.

드라이버 버전 확인

GPU 드라이버의 버전을 확인하려면 nvidia-smi 명령어를 입력해 주십시오.

  • 설치된 드라이버 버전과 GPU 모델 및 수량을 확인할 수 있습니다.
    • 아래는 NVIDIA H100 GPU 서버의 예시입니다.
# nvidia-smi
Wed Aug 12 20:02:19 2026       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.159.04             Driver Version: 580.159.04     CUDA Version: 13.0     |
+-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA H100 80GB HBM3          On  |   00000000:A1:00.0 Off |                    0 |
| N/A   43C    P0            133W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
|   1  NVIDIA H100 80GB HBM3          On  |   00000000:A2:00.0 Off |                    0 |
| N/A   38C    P0            127W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
|   2  NVIDIA H100 80GB HBM3          On  |   00000000:B1:00.0 Off |                    0 |
| N/A   37C    P0            127W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
|   3  NVIDIA H100 80GB HBM3          On  |   00000000:B2:00.0 Off |                    0 |
| N/A   42C    P0            133W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
|   4  NVIDIA H100 80GB HBM3          On  |   00000000:C1:00.0 Off |                    0 |
| N/A   42C    P0            123W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
|   5  NVIDIA H100 80GB HBM3          On  |   00000000:C2:00.0 Off |                    0 |
| N/A   38C    P0            123W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
|   6  NVIDIA H100 80GB HBM3          On  |   00000000:D1:00.0 Off |                    0 |
| N/A   41C    P0            129W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+
|   7  NVIDIA H100 80GB HBM3          On  |   00000000:D2:00.0 Off |                    0 |
| N/A   38C    P0            125W /  700W |       0MiB /  81559MiB |      0%      Default |
|                                         |                        |             Disabled |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+

CUDA Toolkit 버전 확인

CUDA Toolkit 버전을 확인하려면 nvcc --version 명령어를 입력해 주십시오.

# nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2025 NVIDIA Corporation
Built on Wed_Aug_20_01:58:59_PM_PDT_2025
Cuda compilation tools, release 13.0, V13.0.88
Build cuda_13.0.r13.0/compiler.36424714_0

MIG 비활성화

MIG가 활성화되어 있다면 nvidia-smi -mig 0 명령어를 입력해 주십시오.

참고
  • MIG 활성화 여부는 nvidia-smi -L 또는 nvidia-smi -q | grep MIG 명령어로 확인 가능합니다.
  • MIG 비활성화는 nvidia-smi -mig disable 명령어로도 가능합니다.
  • 설정 변경 후에는 GPU 리셋 또는 시스템 재부팅이 필요합니다.
  • MIG가 활성화되어 있으면 GPU Metric 일부가 표시되지 않을 수 있습니다.

NVLink 상태 확인

참고
  • 아래 내용은 NVIDIA H100 GPU 서버만 해당합니다.

nvidia-smi topo -m 명령어를 입력하여 GPU간 NVLink 상태를 확인하십시오.

  • 정상적인 경우 NVIDIA H100 GPU간 NVLink 상태는 NV18로 표시됩니다.
  • GPU간 NVLink 상태가 SYS로 표시될 경우 NVIDIA Fabric Manager가 설치되어 정상 동작 중인지 확인하십시오.
    • NVIDIA Fabric Manager 상태는 systemctl status nvidia-fabricmanager 명령으로 확인하실 수 있습니다.
# nvidia-smi topo -m
        GPU0    GPU1    GPU2    GPU3    GPU4    GPU5    GPU6    GPU7    NIC0    NIC1    NIC2    NIC3    CPU Affinity    NUMA Affinity   GPU NUMA ID
GPU0     X      NV18    NV18    NV18    NV18    NV18    NV18    NV18    SYS     SYS     NODE    PHB     0-59    0               N/A
GPU1    NV18     X      NV18    NV18    NV18    NV18    NV18    NV18    SYS     SYS     NODE    PHB     0-59    0               N/A
GPU2    NV18    NV18     X      NV18    NV18    NV18    NV18    NV18    SYS     SYS     PHB     NODE    0-59    0               N/A
GPU3    NV18    NV18    NV18     X      NV18    NV18    NV18    NV18    SYS     SYS     PHB     NODE    0-59    0               N/A
GPU4    NV18    NV18    NV18    NV18     X      NV18    NV18    NV18    NODE    PHB     SYS     SYS     60-119  1               N/A
GPU5    NV18    NV18    NV18    NV18    NV18     X      NV18    NV18    NODE    PHB     SYS     SYS     60-119  1               N/A
GPU6    NV18    NV18    NV18    NV18    NV18    NV18     X      NV18    PHB     NODE    SYS     SYS     60-119  1               N/A
GPU7    NV18    NV18    NV18    NV18    NV18    NV18    NV18     X      PHB     NODE    SYS     SYS     60-119  1               N/A
NIC0    SYS     SYS     SYS     SYS     NODE    NODE    PHB     PHB      X      NODE    SYS     SYS
NIC1    SYS     SYS     SYS     SYS     PHB     PHB     NODE    NODE    NODE     X      SYS     SYS
NIC2    NODE    NODE    PHB     PHB     SYS     SYS     SYS     SYS     SYS     SYS      X      NODE
NIC3    PHB     PHB     NODE    NODE    SYS     SYS     SYS     SYS     SYS     SYS     NODE     X 

Infiniband

Infiniband 사용을 위한 준비 및 점검 절차를 설명합니다.

주의
  • Infiniband는 NVIDIA H100 GPU 서버에서 사용 가능합니다.
  • Fabric Cluster 상품이 필요합니다. Fabric Cluster 문서를 참고하십시오.
참고
  • NVIDIA H100 GPU 서버는 4개의 400Gb/s Infiniband NDR 인터페이스로 합계 1600Gbps 대역폭이 제공됩니다.

1. Infiniband 사용 준비

서버간 Infiniband 통신을 위해 준비해야 할 내용은 다음과 같습니다.

  • Infiniband 드라이버(MLNX_OFED)를 설치 하십시오.
    • OS 버전에 맞는 MLNX_OFED를 설치 하십시오.
  • Infiniband를 사용하기 전 모든 통신 대상 서버가 Cluster Mode로 설정되어 있어야 합니다.
    • Fabric Cluster 메뉴에서 클러스터를 생성하고, 생성된 Fabric Cluster에 통신 대상 서버를 Cluster Mode로 추가하십시오.
    • 자세한 설정 방법은 Fabric Cluster 문서를 참고하십시오.

2. Infiniband 연결 상태 확인

Infiniband 연결 상태를 확인하려면 ibstat 명령어를 입력하여 서버에 연결된 Infiniband 포트 상태를 확인해 주십시오.

  • Physical state 항목은 LinkUp, State 항목은 Active가 정상 상태입니다.
  • 서버 부팅 직후 잠시 동안 Physical state 항목이 Polling 상태로 표시될 수 있으나, 연결을 수립하는 과정으로 이는 정상입니다.
  • NVIDIA H100 타입 GPU 서버의 경우, Rate400으로 표시되어야 합니다.
# ibstat
CA 'mlx5_0'
        CA type: MT4129
        Number of ports: 1
        Firmware version: 28.39.1002
        Hardware version: 0
        Node GUID: 0x58a2e1030022be58
        System image GUID: 0x58a2e1030022be58
        Port 1:
                State: Active
                Physical state: LinkUp
                Rate: 400
                Base lid: 6
                LMC: 0
                SM lid: 1
                Capability mask: 0xa751e848
                Port GUID: 0x58a2e1030022be58
                Link layer: InfiniBand
CA 'mlx5_1'
        CA type: MT4129
        Number of ports: 1
        Firmware version: 28.39.1002
        Hardware version: 0
        Node GUID: 0x58a2e1030022be3c
        System image GUID: 0x58a2e1030022be3c
        Port 1:
                State: Active
                Physical state: LinkUp
                Rate: 400
                Base lid: 4
                LMC: 0
                SM lid: 1
                Capability mask: 0xa751e848
                Port GUID: 0x58a2e1030022be3c
                Link layer: InfiniBand
CA 'mlx5_2'
        CA type: MT4129
        Number of ports: 1
        Firmware version: 28.39.1002
        Hardware version: 0
        Node GUID: 0x58a2e1030022be40
        System image GUID: 0x58a2e1030022be40
        Port 1:
                State: Active
                Physical state: LinkUp
                Rate: 400
                Base lid: 5
                LMC: 0
                SM lid: 1
                Capability mask: 0xa751e848
                Port GUID: 0x58a2e1030022be40
                Link layer: InfiniBand
CA 'mlx5_3'
        CA type: MT4129
        Number of ports: 1
        Firmware version: 28.39.1002
        Hardware version: 0
        Node GUID: 0x58a2e1030022e634
        System image GUID: 0x58a2e1030022e634
        Port 1:
                State: Active
                Physical state: LinkUp
                Rate: 400
                Base lid: 3
                LMC: 0
                SM lid: 1
                Capability mask: 0xa751e848
                Port GUID: 0x58a2e1030022e634
                Link layer: InfiniBand

3. 통신 테스트

서버간 Infiniband 통신은 ibping으로 테스트할 수 있으며, 데이터를 주고받는 Client와 Server 역할의 두 서버를 모두 구동해야 합니다. 먼저 데이터를 받는 Server 역할의 서버에 대한 LID 정보를 확인한 후, ibping 테스트를 진행해 주십시오.

3-1. LID 정보 확인

Server 역할의 서버에서 ibstat 명령어를 입력해 mlx5_0 및 mlx5_1에 대한 LID 정보를 확인해 주십시오.

[root@test01 ~]# ibstat mlx5_0 | grep 'Base lid'
                Base lid: 210

[root@test01 ~]# ibstat mlx5_1 | grep 'Base lid'
                Base lid: 209

3-2. mlx5_0 테스트

mlx5_0 테스트를 진행하는 방법은 다음과 같습니다.

  1. Server 역할의 서버에서 ibping -S -C mlx5_0 명령을 실행해 주십시오.
  2. Client 역할의 서버에서 ibping -c5 -C mlx5_0 -L {확인된 mlx5_0 LID 값} 명령을 실행해 주십시오.
root@test02:~# ibping -c5 -C mlx5_0 -L 210
Pong from test01.(none) (Lid 210): time 0.027 ms
Pong from test01.(none) (Lid 210): time 0.013 ms
Pong from test01.(none) (Lid 210): time 0.012 ms
Pong from test01.(none) (Lid 210): time 0.017 ms
Pong from test01.(none) (Lid 210): time 0.013 ms

--- test01.(none) (Lid 210) ibping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 5000 ms
rtt min/avg/max = 0.012/0.016/0.027 ms
  • 정상인 경우 다음과 같이 모든 ping 패킷에 대한 응답이 정상적으로 수신됩니다.

3-3. mlx5_1 테스트

mlx5_0 테스트를 진행하는 방법은 다음과 같습니다.

  1. Server 역할의 서버에서 ibping -S -C mlx5_1 명령을 실행해 주십시오.
  2. Client 역할의 서버에서 ibping -c5 -C mlx5_1 -L {확인된 mlx5_1 LID 값} 명령을 실행해 주십시오.
root@test02~# ibping -c5 -C mlx5_1 -L 209
Pong from test01.(none) (Lid 209): time 0.024 ms
Pong from test01.(none) (Lid 209): time 0.013 ms
Pong from test01.(none) (Lid 209): time 0.009 ms
Pong from test01.(none) (Lid 209): time 0.009 ms
Pong from test01.(none) (Lid 209): time 0.014 ms

--- test01.(none) (Lid 209) ibping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 5000 ms
rtt min/avg/max = 0.009/0.013/0.024 ms
  • 정상인 경우 다음과 같이 모든 ping 패킷에 대한 응답이 정상적으로 수신됩니다.

3-4. IP over Infiniband (IPoIB) 설정

NVIDIA의 IPoIB 설정 가이드를 참고하여 IPoIB 설정을 진행해 주십시오.