Linux용 NVIDIA GPU 드라이버 확장
이 확장은 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 |
참고 항목
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 확장을 배포할 수 있습니다.
브라우저에서 Azure 포털로 이동합니다.
드라이버를 설치할 가상 머신으로 이동합니다.
왼쪽 메뉴에서 확장을 선택합니다.
추가를 선택합니다.
스크롤하여 NVIDIA GPU 드라이버 확장을 찾아 선택한 후 다음을 선택합니다.
검토 + 만들기를 선택하고 만들기를 선택합니다. 드라이버가 배포될 때까지 몇 분 정도 기다리세요.
확장이 설치된 확장 목록에 추가되었는지 확인합니다.
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 | 작업 실패 | 실행 출력 로그를 확인합니다. |
알려진 문제
NvidiaGpuDriverLinux
현재 인증서 문제로 인해 최신 드라이버17.x
GRID 드라이버를 설치하지 못합니다. Azure에서 이 문제를 해결하기 위해 작업하는 동안 확장에 런타임 설정을 전달하여 GRID 드라이버를16.5
사용합니다.
az vm extension set --resource-group <rg-name> --vm-name <vm-name> --name NvidiaGpuDriverLinux --publisher Microsoft.HpcCompute --settings "{'driverVersion':'535.161'}"
{
"name": "NvidiaGpuDriverLinux",
"type": "extensions",
"apiVersion": "2015-06-15",
"location": "<location>",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', <myVM>)]"
],
"properties": {
"publisher": "Microsoft.HpcCompute",
"type": "NvidiaGpuDriverLinux",
"typeHandlerVersion": "1.11",
"autoUpgradeMinorVersion": true,
"settings": {
"driverVersion": "535.161"
}
}
}
- GRID 드라이버 버전은
17.x
NVv3(NVIDIA Tesla M60)에서 호환되지 않습니다. 버전16.5
까지 GRID 드라이버가 지원됩니다.NvidiaGpuDriverLinux
는 NVv3 SKU에서 호환되지 않는 최신 드라이버를 설치합니다. 대신 다음 런타임 설정을 사용하여 확장에서 이전 버전의 드라이버를 설치하도록 강제합니다. 드라이버 버전에 대한 자세한 내용은 NVIDIA GPU 리소스를 참조 하세요.
az vm extension set --resource-group <rg-name> --vm-name <vm-name> --name NvidiaGpuDriverLinux --publisher Microsoft.HpcCompute --settings "{'driverVersion':'535.161'}"
{
"name": "NvidiaGpuDriverLinux",
"type": "extensions",
"apiVersion": "2015-06-15",
"location": "<location>",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', <myVM>)]"
],
"properties": {
"publisher": "Microsoft.HpcCompute",
"type": "NvidiaGpuDriverLinux",
"typeHandlerVersion": "1.11",
"autoUpgradeMinorVersion": true,
"settings": {
"driverVersion": "535.161"
}
}
}
지원
이 문서의 어디서든 도움이 필요한 경우 MSDN Azure 및 Stack Overflow 포럼에서 Azure 전문가에게 문의하세요. 또는 Azure 기술 지원 인시던트를 제출할 수 있습니다. Azure 지원으로 이동하여 지원받기를 선택합니다. Azure 지원 사용에 대한 자세한 내용은 Azure 지원 FAQ를 참조하세요.
다음 단계
- 확장에 대한 자세한 내용은 Linux용 가상 머신 확장 및 기능을 참조하세요.
- N 시리즈 VM에 대한 자세한 내용은 GPU 최적화 가상 머신 크기를 참조하세요.