Instalar a extensão de GPU em VMs do dispositivo de GPU do Azure Stack Edge Pro
APLICA-SE A: Azure Stack Edge Pro - GPUAzure Stack Edge Pro 2Azure Stack Edge Pro R
Este artigo descreve como instalar a extensão do driver GPU para instalar os drivers Nvidia apropriados nas VMs de GPU em execução no dispositivo do Azure Stack Edge. O artigo aborda as etapas de instalação para instalar uma extensão de GPU usando modelos do Azure Resource Manager em VMs do Windows e do Linux.
Observação
- No portal do Azure, você pode instalar uma extensão de GPU durante a criação da VM ou depois que a VM for implantada. Para ver as etapas e os requisitos, confira Implantar máquinas virtuais de GPU.
- Se você estiver executando um VHD do Windows 2016, habilite o TLS 1.2 dentro da VM antes de instalar a extensão de GPU em 2205 e superior. Para obter as etapas detalhadas, confira Solução de problemas de extensão de GPU para VMs com GPU no Azure Stack Edge Pro GPU.
Pré-requisitos
Antes de instalar a extensão de GPU nas VMs de GPU em execução no dispositivo, verifique se:
Você tem acesso a um dispositivo do Azure Stack Edge no qual implantou uma ou mais VMs de GPU. Consulte como Implantar uma VM de GPU no dispositivo.
Verifique se a porta habilitada para rede de computação no dispositivo esteja conectada à Internet e tenha acesso. Os drivers GPU são baixados por meio do acesso à Internet.
Veja um exemplo em que a Porta 2 foi conectada à Internet e usada para habilitar a rede de computação. Se o Kubernetes não estiver implantado no ambiente, é possível ignorar o IP do nó do Kubernetes e a atribuição do IP do serviço externo.
Baixe os modelos de extensão de GPU e os arquivos de parâmetros na máquina cliente. Descompacte-o em um diretório que você usa como um diretório de trabalho.
Verifique se o cliente que será usado para acessar o dispositivo ainda está conectado ao Azure Resource Manager pelo Azure PowerShell. A conexão com o Azure Resource Manager expira a cada 1,5 horas, ou se o dispositivo Azure Stack Edge for reiniciado. Se isso acontecer, todos os cmdlets que forem executados retornarão mensagens de erro informando que você não está mais conectado ao Azure. Você precisa entrar novamente. Para obter instruções detalhadas, consulte Conectar-se a Azure Resource Manager no dispositivo Azure Stack Edge.
Editar arquivo de parâmetros
Dependendo do sistema operacional da VM, é possível instalar a extensão de GPU para Windows ou para Linux.
Para implantar drivers GPU da Nvidia para uma VM existente, edite o addGPUExtWindowsVM.parameters.json
arquivo de parâmetros e implante o modelo addGPUextensiontoVM.json
.
Versão 2205 e superiores
O arquivo addGPUExtWindowsVM.parameters.json
usa os seguintes parâmetros:
"parameters": {
"vmName": {
"value": "<name of the VM>"
},
"extensionName": {
"value": "<name for the extension. Example: windowsGpu>"
},
"publisher": {
"value": "Microsoft.HpcCompute"
},
"type": {
"value": "NvidiaGpuDriverWindows"
},
"typeHandlerVersion": {
"value": "1.5"
},
"settings": {
"value": {
"DriverURL" : "http://us.download.nvidia.com/tesla/511.65/511.65-data-center-tesla-desktop-winserver-2016-2019-2022-dch-international.exe",
"DriverCertificateUrl" : "https://go.microsoft.com/fwlink/?linkid=871664",
"DriverType":"CUDA"
}
}
}
Versões inferiores à 2205
O arquivo addGPUExtWindowsVM.parameters.json
usa os seguintes parâmetros:
"parameters": {
"vmName": {
"value": "<name of the VM>"
},
"extensionName": {
"value": "<name for the extension. Example: windowsGpu>"
},
"publisher": {
"value": "Microsoft.HpcCompute"
},
"type": {
"value": "NvidiaGpuDriverWindows"
},
"typeHandlerVersion": {
"value": "1.3"
},
"settings": {
"value": {
"DriverURL" : "http://us.download.nvidia.com/tesla/442.50/442.50-tesla-desktop-winserver-2019-2016-international.exe",
"DriverCertificateUrl" : "https://go.microsoft.com/fwlink/?linkid=871664",
"DriverType":"CUDA"
}
}
}
Implantar modelo
Implante o modelo addGPUextensiontoVM.json
para instalar a extensão em uma VM existente.
Execute o comando a seguir:
$templateFile = "<Path to addGPUextensiontoVM.json>"
$templateParameterFile = "<Path to addGPUExtWindowsVM.parameters.json>"
RGName = "<Name of your resource group>"
New-AzureRmResourceGroupDeployment -ResourceGroupName $RGName -TemplateFile $templateFile -TemplateParameterFile $templateParameterFile -Name "<Name for your deployment>"
Observação
A implantação da extensão é um trabalho de execução prolongada e demora cerca de 10 minutos para ser concluída.
Aqui está um exemplo de saída:
PS C:\WINDOWS\system32> "C:\12-09-2020\ExtensionTemplates\addGPUextensiontoVM.json"
C:\12-09-2020\ExtensionTemplates\addGPUextensiontoVM.json
PS C:\WINDOWS\system32> $templateFile = "C:\12-09-2020\ExtensionTemplates\addGPUextensiontoVM.json"
PS C:\WINDOWS\system32> $templateParameterFile = "C:\12-09-2020\ExtensionTemplates\addGPUExtWindowsVM.parameters.json"
PS C:\WINDOWS\system32> $RGName = "myasegpuvm1"
PS C:\WINDOWS\system32> New-AzureRmResourceGroupDeployment -ResourceGroupName $RGName -TemplateFile $templateFile -TemplateParameterFile $templateParameterFile -Name "deployment3"
DeploymentName : deployment3
ResourceGroupName : myasegpuvm1
ProvisioningState : Succeeded
Timestamp : 12/16/2020 12:18:50 AM
Mode : Incremental
TemplateLink :
Parameters :
Name Type Value
=============== ========================= ==========
vmName String VM2
extensionName String windowsgpuext
publisher String Microsoft.HpcCompute
type String NvidiaGpuDriverWindows
typeHandlerVersion String 1.3
settings Object {
"DriverURL": "http://us.download.nvidia.com/tesla/442.50/442.50-tesla-desktop-winserver-2019-2016-international.exe",
"DriverCertificateUrl": "https://go.microsoft.com/fwlink/?linkid=871664",
"DriverType": "CUDA"
}
Outputs :
DeploymentDebugLogLevel :
PS C:\WINDOWS\system32>
Acompanhar a implantação
Para verificar o estado de implantação de extensões de uma determinada VM, abra outra sessão do PowerShell (execute como administrador) e execute o seguinte comando:
Get-AzureRmVMExtension -ResourceGroupName <Name of resource group> -VMName <Name of VM> -Name <Name of the extension>
Aqui está um exemplo de saída:
PS C:\WINDOWS\system32> Get-AzureRmVMExtension -ResourceGroupName myasegpuvm1 -VMName VM2 -Name windowsgpuext
ResourceGroupName : myasegpuvm1
VMName : VM2
Name : windowsgpuext
Location : dbelocal
Etag : null
Publisher : Microsoft.HpcCompute
ExtensionType : NvidiaGpuDriverWindows
TypeHandlerVersion : 1.3
Id : /subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/myasegpuvm1/providers/Microsoft.Compute/virtualMachines/VM2/extensions/windowsgpuext
PublicSettings : {
"DriverURL": "http://us.download.nvidia.com/tesla/442.50/442.50-tesla-desktop-winserver-2019-2016-international.exe",
"DriverCertificateUrl": "https://go.microsoft.com/fwlink/?linkid=871664",
"DriverType": "CUDA"
}
ProtectedSettings :
ProvisioningState : Creating
Statuses :
SubStatuses :
AutoUpgradeMinorVersion : True
ForceUpdateTag :
PS C:\WINDOWS\system32>
A saída de execução da extensão é registrada no arquivo a seguir. Consulte este arquivo C:\Packages\Plugins\Microsoft.HpcCompute.NvidiaGpuDriverWindows\1.3.0.0\Status
para acompanhar o status da instalação.
Uma instalação bem-sucedida exibe um message
com Enable Extension
e status
de success
.
"status": {
"formattedMessage": {
"message": "Enable Extension",
"lang": "en"
},
"name": "NvidiaGpuDriverWindows",
"status": "success",
Verificar a instalação de drivers
Entre na VM e execute o utilitário de linha de comando nvidia-smi instalado com o driver.
Versão 2205 e superiores
O nvidia-smi.exe
está localizado em C:\Windows\System32\nvidia-smi.exe
. Se você não visualizar o arquivo, talvez a instalação do driver ainda esteja em execução em segundo plano. Aguarde 10 minutos e verifique novamente.
Versões inferiores à 2205
O nvidia-smi.exe
está localizado em C:\Program Files\NVIDIA Corporation\NVSMI\nvidia-smi.exe
. Se você não visualizar o arquivo, talvez a instalação do driver ainda esteja em execução em segundo plano. Aguarde 10 minutos e verifique novamente.
Se o driver estiver instalado, você verá uma saída semelhante ao seguinte exemplo:
PS C:\Users\Administrator> cd "C:\Program Files\NVIDIA Corporation\NVSMI"
PS C:\Program Files\NVIDIA Corporation\NVSMI> ls
Directory: C:\Program Files\NVIDIA Corporation\NVSMI
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2/26/2020 12:00 PM 849640 MCU.exe
-a---- 2/26/2020 12:00 PM 443104 nvdebugdump.exe
-a---- 2/25/2020 2:06 AM 81823 nvidia-smi.1.pdf
-a---- 2/26/2020 12:01 PM 566880 nvidia-smi.exe
-a---- 2/26/2020 12:01 PM 991344 nvml.dll
PS C:\Program Files\NVIDIA Corporation\NVSMI> .\nvidia-smi.exe
Wed Dec 16 00:35:51 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 442.50 Driver Version: 442.50 CUDA Version: 10.2 |
|-------------------------------+----------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Tesla T4 TCC | 0000503C:00:00.0 Off | 0 |
| N/A 35C P8 11W / 70W | 8MiB / 15205MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
PS C:\Program Files\NVIDIA Corporation\NVSMI>
Para obter mais informações, consulte Extensão de driver GPU da Nvidia para Windows.
Observação
Depois de concluir a instalação do driver de GPU e da extensão de GPU, você não precisará mais usar uma porta com acesso à Internet para computação.
Remover a extensão de GPU
Para remover a extensão de GPU, use o seguinte comando:
Remove-AzureRmVMExtension -ResourceGroupName <Resource group name> -VMName <VM name> -Name <Extension name>
Aqui está um exemplo de saída:
PS C:\azure-stack-edge-deploy-vms> Remove-AzureRmVMExtension -ResourceGroupName rgl -VMName WindowsVM -Name windowsgpuext
Virtual machine extension removal operation
This cmdlet will remove the specified virtual machine extension. Do you want to continue? [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): y
Requestld IsSuccessStatusCode StatusCode ReasonPhrase
--------- ------------------- ---------- ------------
True OK OK
Próximas etapas
Saiba como: