Linux용 NVIDIA GPU 드라이버 확장

주의

이 문서에서는 EOL(수명 종료) 상태에 가까워진 Linux 배포판인 CentOS를 참조하세요. 이에 따라 사용 및 플랜을 고려하세요. 자세한 내용은 CentOS 수명 종료 지침을 참조하세요.

이 확장은 Linux N 시리즈 VM(가상 머신)에 NVIDIA GPU 드라이버를 설치합니다. 확장은 VM 제품군에 따라 CUDA 또는 GRID 드라이버를 설치합니다. 이 확장을 사용하여 NVIDIA 드라이버를 설치하면 NVIDIA 최종 사용자 라이선스 계약 약관에 동의하게 됩니다. 설치 프로세스 중에 VM이 다시 부팅되어 드라이버 설정이 완료될 수 있습니다.

드라이버의 수동 설치 및 현재 지원되는 버전에 대한 지침을 확인할 수 있습니다. 확장은 Windows N 시리즈 VM에서 NVIDIA GPU 드라이버를 설치하는 데 지원됩니다.

참고 항목

보안 부팅을 사용하도록 설정하면 신뢰할 수 있는 게시자(시스템에서 신뢰하는 키)가 모든 OS 부팅 구성 요소(부트 로더, 커널, 커널 드라이버)에 서명해야 합니다. 보안 부팅은 Windows 또는 Linux 확장을 사용하여 지원되지 않습니다. 보안 부팅을 사용하도록 설정된 GPU 드라이버를 수동으로 설치하는 방법에 대한 자세한 내용은 Linux용 Azure N 시리즈 GPU 드라이버 설정을 참조하세요.

참고 항목

GPU 드라이버 확장은 확장이 설치된 후 드라이버를 자동으로 업데이트하지 않습니다. 최신 드라이버 버전으로 이동해야 하는 경우 드라이버를 수동으로 다운로드하여 설치하거나 확장을 제거하고 다시 추가합니다.

필수 조건

운영 체제

이 확장은 특정 OS 버전의 드라이버 지원에 따라 다음 OS 배포판을 지원합니다.

배포 버전
Linux Ubuntu: 20.04 LTS
Linux: Red Hat Enterprise Linux 7.9
Linux: CentOS 7

참고 항목

NC 시리즈 VM용으로 지원되는 최신 CUDA 드라이버는 현재 470.82.01입니다. 최신 드라이버 버전은 NC의 K80 카드에서 지원되지 않습니다. 이 NC 지원 종료로 확장이 업데이트되는 동안 NC 시리즈의 K80 카드용 CUDA 드라이버를 수동으로 설치합니다.

Important

이 문서에서는 EOL(수명 종료)에 도달했거나 근접하는 Linux의 릴리스 버전을 참조합니다. 최신 버전으로 업데이트하는 것이 좋습니다.

인터넷 연결

NVIDIA GPU 드라이버용 Microsoft Azure 확장을 사용하려면 대상 VM이 인터넷에 연결되어 있고 액세스 권한이 있어야 합니다.

확장 스키마

확장에 대한 스키마를 보여 주는 JSON은 다음과 같습니다.

{
  "name": "<myExtensionName>",
  "type": "extensions",
  "apiVersion": "2015-06-15",
  "location": "<location>",
  "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', <myVM>)]"
  ],
  "properties": {
    "publisher": "Microsoft.HpcCompute",
    "type": "NvidiaGpuDriverLinux",
    "typeHandlerVersion": "1.6",
    "autoUpgradeMinorVersion": true,
    "settings": {
    }
  }
}

속성

이름 값/예제 데이터 형식
apiVersion 2015-06-15 날짜
publisher Microsoft.HpcCompute string
type NvidiaGpuDriverLinux string
typeHandlerVersion 1.6 int

설정

모든 설정은 선택 사항입니다. 기본 동작은 드라이버 설치에 필요하지 않은 경우 커널을 업데이트하지 않고 지원되는 최신 드라이버와 CUDA 도구 키트(해당되는 경우)를 설치하는 것입니다.

이름 설명 기본값 유효한 값 데이터 형식
updateOS 드라이버 설치에 필요하지 않은 경우에도 커널을 업데이트합니다. false true, false 부울 값
driverVersion NV: GRID 드라이버 버전
NC/ND: CUDA 도구 키트 버전입니다. 선택한 CUDA에 대한 최신 드라이버가 자동으로 설치됩니다.
latest 지원되는 드라이버 버전 목록 string
installCUDA CUDA 도구 키트를 설치합니다. NC/ND 시리즈 VM에만 관련됩니다. true true, false 부울 값

배포

Azure Portal

Azure Portal에서 Azure NVIDIA VM 확장을 배포할 수 있습니다.

  1. 브라우저에서 Azure 포털로 이동합니다.

  2. 드라이버를 설치할 가상 머신으로 이동합니다.

  3. 왼쪽 메뉴에서 확장을 선택합니다.

    Azure Portal 메뉴에서 확장 선택을 보여 주는 스크린샷

  4. 추가를 선택합니다.

    선택한 VM에 대한 VM 확장 추가를 보여 주는 스크린샷

  5. 스크롤하여 NVIDIA GPU 드라이버 확장을 찾아 선택한 후 다음을 선택합니다.

    NVIDIA GPU 드라이버 확장 선택을 보여 주는 스크린샷

  6. 검토 + 만들기를 선택하고 만들기를 선택합니다. 드라이버가 배포될 때까지 몇 분 정도 기다리세요.

    검토 + 만들기 단추 선택을 보여 주는 스크린샷

  7. 확장이 설치된 확장 목록에 추가되었는지 확인합니다.

    VM에 대한 확장 목록에서 새 확장을 보여 주는 스크린샷

Azure Resource Manager 템플릿

Azure Resource Manager 템플릿을 사용하여 Azure VM 확장을 배포할 수 있습니다. 템플릿은 배포 후 구성이 필요한 하나 이상의 가상 머신을 배포할 때 이상적입니다.

가상 머신 확장에 대한 JSON 구성은 가상 머신 리소스 내에 중첩되거나 루트 또는 최상위 수준의 Resource Manager JSON 템플릿에 배치될 수 있습니다. JSON 구성의 배치는 리소스 이름 및 형식 값에 영향을 줍니다. 자세한 내용은 자식 리소스의 이름 및 형식 설정을 참조하세요.

다음 예제에서는 확장이 가상 머신 리소스 내에 중첩되어 있다고 가정합니다. 확장 리소스가 중첩되면 JSON은 가상 머신의 "resources": [] 개체에 배치됩니다.

{
  "name": "myExtensionName",
  "type": "extensions",
  "location": "[resourceGroup().location]",
  "apiVersion": "2015-06-15",
  "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', myVM)]"
  ],
  "properties": {
    "publisher": "Microsoft.HpcCompute",
    "type": "NvidiaGpuDriverLinux",
    "typeHandlerVersion": "1.6",
    "autoUpgradeMinorVersion": true,
    "settings": {
    }
  }
}

PowerShell

Set-AzVMExtension
    -ResourceGroupName "myResourceGroup" `
    -VMName "myVM" `
    -Location "southcentralus" `
    -Publisher "Microsoft.HpcCompute" `
    -ExtensionName "NvidiaGpuDriverLinux" `
    -ExtensionType "NvidiaGpuDriverLinux" `
    -TypeHandlerVersion 1.6 `
    -SettingString '{ `
	}'

Azure CLI

다음 예제는 이전 Resource Manager 및 PowerShell 예제를 미러링합니다.

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name NvidiaGpuDriverLinux \
  --publisher Microsoft.HpcCompute \
  --version 1.6

또한 다음 예에서는 사용자 지정 설정을 기본이 아닌 드라이버 설치의 예가 추가됩니다. 특히, OS 커널을 최신으로 업데이트하고 특정 CUDA 도구 키트 버전 드라이버를 설치합니다. 다시 말하지만 --settings는 선택 사항이며 기본값입니다. 커널을 업데이트하면 확장 설치 시간이 늘어날 수 있습니다. 또한 특정(이전) CUDA 도구 키트 버전을 선택하는 것이 항상 최신 커널과 호환되는 것은 아닙니다.

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name NvidiaGpuDriverLinux \
  --publisher Microsoft.HpcCompute \
  --version 1.6 \
  --settings '{ \
    "updateOS": true, \
    "driverVersion": "10.0.130" \
  }'

문제 해결 및 지원

문제 해결

Azure Portal과 Azure PowerShell 및 Azure CLI를 사용하여 확장 배포 상태에 대한 데이터를 검색할 수 있습니다. 지정된 VM에 대한 확장의 배포 상태를 보려면 다음 명령을 실행합니다.

Get-AzVMExtension -ResourceGroupName myResourceGroup -VMName myVM -Name myExtensionName
az vm extension list --resource-group myResourceGroup --vm-name myVM -o table

확장 실행 출력은 다음 파일에 기록됩니다. 장기 실행 설치의 상태를 추적하고 오류를 해결하려면 이 파일을 참조하세요.

/var/log/azure/nvidia-vmext-status

종료 코드

종료 코드 의미 가능한 작업
0 작업이 성공했습니다.
1 확장의 사용이 잘못되었습니다. 실행 출력 로그를 확인합니다.
10 Hyper-V 및 Azure에 대한 Linux Integration Services를 사용하거나 설치할 수 없습니다. lspci의 출력을 확인합니다.
11 NVIDIA GPU는 이 VM 크기에서 찾을 수 없습니다. 지원되는 VM 크기 및 OS를 사용합니다.
12 지원되지 않는 이미지 제품
13 지원되지 않는 VM 크기 배포하려면 N 시리즈 VM 사용
14 작업 실패 실행 출력 로그를 확인합니다.

지원

이 문서의 어디서든 도움이 필요한 경우 MSDN Azure 및 Stack Overflow 포럼에서 Azure 전문가에게 문의하세요. 또는 Azure 기술 지원 인시던트를 제출할 수 있습니다. Azure 지원으로 이동하여 지원받기를 선택합니다. Azure 지원 사용에 대한 자세한 내용은 Azure 지원 FAQ를 참조하세요.

다음 단계