--- title: "KVM GPU" slug: "kvm-gpu" updated: 2026-08-20T09:03:22Z published: 2026-08-20T09:03:22Z canonical: "guide-gov.ncloud-docs.com/kvm-gpu" --- > ## Documentation Index > Fetch the complete documentation index at: https://guide-gov.ncloud-docs.com/llms.txt > Use this file to discover all available pages before exploring further. # KVM GPU VPC 환경에서 이용 가능합니다. 네이버 클라우드 플랫폼 콘솔에서 KVM 기반 GPU 서버를 생성하고 관리하는 방법을 설명합니다. 참고 - 예기치 못한 서버의 장애 또는 예정된 변경 작업 등에 대하여 중단 없이 서비스 연속성을 보장할 수 있도록 서버는 기본적으로 존 간 이중화 구성을 권장합니다. [Load Balancer 개요](/docs/networking-loadbalancer-loadbalanceroverview)를 참고하여 이중화 설정을 진행해 주십시오. - 네이버 클라우드 플랫폼에서는 메모리, CPU, 전원 공급 등 물리 서버의 장애에 대비하기 위해 High Availability(HA) 구조를 제공합니다. HA는 하드웨어에서 발생한 장애가 Virtual Machine(VM) 서버로 확대되는 것을 방지하기 위한 정책으로 호스트 서버에 장애가 발생하면 자동으로 호스트 서버 안에 있는 VM 서버를 안정된 다른 호스트 서버로 옮기는 Live Migration을 지원합니다. 하지만 Live Migration을 진행할 수 없는 오류가 발생하면 VM 서버가 재시작됩니다. VM 서버 한 대로 서비스를 운영하면 VM 서버 재시작으로 장애가 발생할 수 있으므로 장애 발생 빈도를 줄이기 위해서는 위 안내와 같이 VM 서버를 다중화하는 것을 권장합니다. ## 서버 정보 확인 GPU 서버 정보를 확인하는 방법은 일반 서버 정보를 확인하는 방법과 같습니다. 자세한 내용은 [서버 정보 확인](/docs/server-screen-vpc)을 참고해 주십시오. 주의 - GPU 서버는 정지 상태에서도 전체 서버 요금이 과금됩니다. ## GPU 서버 생성 GPU 서버는 콘솔 VPC 환경의 **Menu** > **All Services** > **Compute** > **Server** 메뉴에서 생성할 수 있습니다. 자세한 생성 방법은 [서버 생성](/docs/server-create-vpc)을 참고해 주십시오. 참고 - GPU 서버는 드라이버 및 관련 소프트웨어가 사전 설치된 NCP GPU 이미지를 사용하실 수 있습니다. - GPU 타입별 생성 가능한 Region은 아래의 표를 참고해 주시기 바랍니다. | GPU 타입 | Region | | --- | --- | | NVIDIA H100 | KRS-1 | | NVIDIA L4 | KR-1 | | NVIDIA L40S | KR-1 | - NVIDIA 드라이버 및 필수 소프트웨어 설치 방법은 [GPU 서버 소프트웨어 설치 가이드](/docs/kvm-gpu#GPU%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84%EC%84%A4%EC%B9%98)를 참고해 주십시오. ## 서버 관리 GPU 서버 관리 및 설정 변경 방법은 일반 서버 관리 및 설정 변경 방법과 같습니다. 자세한 내용은 [서버 관리](/docs/compute-server-manage-vpc)를 참고해 주십시오. 참고 - KVM GPU 서버는 스펙 변경이 불가합니다. - GPU 서버는 일반 서버로 전환할 수 없습니다. 일반 서버로 변경하려면 서버 이미지를 생성한 후, 서버 이미지를 사용해 일반 서버를 새로 생성해야 합니다. - 일반 서버로 만들어진 서버 이미지를 사용해 GPU 서버를 생성할 수 있습니다. ## GPU 드라이버 설치 아래 두 가지 옵션 중 하나를 선택해 주십시오. - [옵션 1. 드라이버가 사전 설치된 NCP GPU 이미지 사용](/docs/kvm-gpu#%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84%EA%B0%80%EC%82%AC%EC%A0%84%EC%84%A4%EC%B9%98%EB%90%9CNCPGPU%EC%9D%B4%EB%AF%B8%EC%A7%80%EC%82%AC%EC%9A%A9) - [옵션 2. 수동으로 GPU 드라이버 및 관련 소프트웨어 설치](/docs/kvm-gpu#NVIDIA%EA%B0%80%EC%9D%B4%EB%93%9C%EB%A5%BC%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%ACGPU%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84%EB%B0%8FCUDA%EC%84%A4%EC%B9%98) ### 옵션 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를 반드시 설치해 주십시오. 참고 - [NVIDIA 드라이버 문서](https://docs.nvidia.com/datacenter/tesla/drivers/index.html) - GPU 타입별 최소 권장 드라이버 버전은 아래 표와 같습니다. | GPU 타입 | 최소 권장 드라이버 릴리즈 | | --- | --- | | NVIDIA H100 | R535 이상 | | NVIDIA L4 | R535 이상 | | NVIDIA L40S | R535 이상 | #### 2.1 GPU Driver 설치 GPU 타입별 최소 권장 드라이버 버전을 확인하신 후 [NVIDIA Driver 설치 가이드](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/)를 참고하여 설치해 주십시오. 참고 - NVIDIA H100 GPU 서버는 NVLink 지원을 위해 NVIDIA Fabric Manger가 반드시 함께 설치되어야 합니다. - [NVIDIA Fabric Manager](https://docs.nvidia.com/datacenter/tesla/fabric-manager-user-guide/index.html) 문서를 참고하여 설치해 주십시오. - 반드시 GPU Driver 버전과 동일한 버전의 NVIDIA Fabric Manager를 설치해 주십시오. #### 2.2 CUDA Toolkit 설치 CUDA를 설치하는 방법은 다음과 같습니다. 1. [NVIDIA CUDA Toolkit 웹사이트](https://developer.nvidia.com/cuda-downloads?target_os=Linux)에 접속해 주십시오. 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 드라이버와 필수 소프트웨어를 점검해 주십시오. - [드라이버 버전](/docs/kvm-gpu#%EB%93%9C%EB%9D%BC%EC%9D%B4%EB%B2%84%EB%B2%84%EC%A0%84%ED%99%95%EC%9D%B8) - [CUDA 버전](/docs/kvm-gpu#CUDAToolkit%EB%B2%84%EC%A0%84%ED%99%95%EC%9D%B8) - [NVLink 상태](/docs/kvm-gpu#NVLink%EC%83%81%ED%83%9C%ED%99%95%EC%9D%B8) ### 드라이버 버전 확인 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](/docs/server-fabriccluster-vpc) 문서를 참고하십시오. 참고 - NVIDIA H100 GPU 서버는 4개의 400Gb/s Infiniband NDR 인터페이스로 합계 1600Gbps 대역폭이 제공됩니다. - [1. Infiniband 사용 준비](/docs/kvm-gpu#1%EC%84%9C%EB%B2%84%EA%B0%84Infiniband%ED%86%B5%EC%8B%A0%EC%9D%84%EC%9C%84%ED%95%9C%EC%A4%80%EB%B9%84) - [2. Infiniband 연결 상태 확인](/docs/kvm-gpu#2Infiniband%EC%97%B0%EA%B2%B0%EC%83%81%ED%83%9C%ED%99%95%EC%9D%B8) - [3. Infiniband 연결 테스트](/docs/kvm-gpu#3%ED%86%B5%EC%8B%A0%ED%85%8C%EC%8A%A4%ED%8A%B8) ### 1. Infiniband 사용 준비 서버간 Infiniband 통신을 위해 준비해야 할 내용은 다음과 같습니다. - Infiniband 드라이버(MLNX_OFED)를 설치 하십시오. - OS 버전에 맞는 [MLNX_OFED](https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/)를 설치 하십시오. - Infiniband를 사용하기 전 모든 통신 대상 서버가 **Cluster Mode**로 설정되어 있어야 합니다. - **Fabric Cluster** 메뉴에서 클러스터를 생성하고, 생성된 Fabric Cluster에 통신 대상 서버를 Cluster Mode로 추가하십시오. - 자세한 설정 방법은 [Fabric Cluster](/docs/server-fabriccluster-vpc) 문서를 참고하십시오. ### 2. Infiniband 연결 상태 확인 Infiniband 연결 상태를 확인하려면 `ibstat` 명령어를 입력하여 서버에 연결된 Infiniband 포트 상태를 확인해 주십시오. - `Physical state` 항목은 `LinkUp`, `State` 항목은 `Active`가 정상 상태입니다. - 서버 부팅 직후 잠시 동안 `Physical state` 항목이 `Polling` 상태로 표시될 수 있으나, 연결을 수립하는 과정으로 이는 정상입니다. - NVIDIA H100 타입 GPU 서버의 경우, `Rate`는 `400`으로 표시되어야 합니다. ``` # 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 설정 가이드](https://docs.nvidia.com/networking/display/mlnxofedv583070lts/ip+over+infiniband+%28ipoib%29#src-132449116_safe-id-SVBvdmVySW5maW5pQmFuZChJUG9JQiktSVBvSUJDb25maWd1cmF0aW9u)를 참고하여 IPoIB 설정을 진행해 주십시오.