Extensão de Driver NVIDIA GPU para Linux
Essa extensão instala drivers de GPU NVIDIA em VMs (máquinas virtuais) da série N do Linux. Dependendo da família VM, a extensão instala drivers CUDA ou grade. Ao instalar drivers NVIDIA usando esta extensão,você aceita e concorda com os termos do Contrato de Licença de Usuário Final da NVIDIA. Durante o processo de instalação, a VM pode ser reinicializada para concluir a configuração do driver.
Instruções sobre a instalação manual dos drivers e as versões atuais com suporte estão disponíveis. Uma extensão também está disponível para instalar drivers NVIDIA GPU em VMs da série N do Windows.
Observação
Com a Inicialização Segura habilitada, todos os componentes de inicialização do sistema operacional (carregador de inicialização, kernel, drivers de kernel) devem ser assinados por fornecedores confiáveis. Não há suporte para a Inicialização Segura usando extensões Windows ou Linux. Para obter mais informações sobre a instalação manual de drivers de GPU com a Inicialização Segura habilitada, consulte Configuração de driver de GPU da série N do Azure para Linux.
Observação
As extensões de driver de GPU não atualizam automaticamente o driver depois que a extensão é instalada. Se você precisar mover para uma versão mais recente do driver, baixe e instale manualmente o driver ou remova e adicione a extensão novamente.
Pré-requisitos
Sistema operacional
Esta extensão é compartível com as seguintes distribuições do sistema operacional, dependendo do suporte do driver para a versão específica do sistema operacional:
Distribuição | Versão |
---|---|
Linux: Ubuntu | 20.04 LTS |
Linux: Red Hat Enterprise Linux | 7.9 |
Observação
Atualmente, os drivers CUDA mais recentes com suporte para VMs da série NC são 470.82.01. Não há suporte para versões posteriores do driver nos cartões K80 no NC. Enquanto a saída está sendo atualizada com esse fim de suporte para NC, instale os drivers CUDA manualmente para cartões K80 na série NC.
Importante
Este documento faz referência a uma versão de lançamento do Linux que está se aproximando do Fim da Vida Útil (EOL). Considere atualizar para uma versão mais recente.
Conectividade com a Internet
A extensão do Microsoft Azure para drivers de GPU NVIDIA requer que a VM de destino esteja conectada à Internet e tenha acesso.
Esquema de extensão
O JSON a seguir mostra o esquema para a extensão:
{
"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": {
}
}
}
Propriedades
Nome | Valor/exemplo | Tipo de dados |
---|---|---|
apiVersion | 2015-06-15 | date |
publicador | Microsoft.HpcCompute | string |
type | NvidiaGpuDriverLinux | string |
typeHandlerVersion | 1.6 | INT |
Configurações
Todas as configurações são opcionais. O comportamento padrão é não atualizar o kernel se não for necessário para a instalação do driver e instalar o driver mais recente com suporte e o CUDA toolkit (conforme aplicável).
Nome | Descrição | Valor padrão | Valores válidos | Tipo de dados |
---|---|---|---|---|
updateOS | Atualize o kernel, mesmo que não seja necessário para instalação do driver. | false | verdadeiro, falso | booleano |
driverVersion | NV: versão do driver de grade. NC/ND: versão do Kit de ferramentas CUDA. Os drivers mais recentes para o CUDA escolhido são instalados automaticamente. |
mais recente | Lista de versões de driver com suporte | string |
installCUDA | Instale o kit de ferramentas CUDA. Só é relevante para as VMs da série NC/ND. | true | verdadeiro, falso | booleano |
Implantação
Portal do Azure
Você pode implantar extensões de VM NVIDIA do Azure no portal do Azure.
Em um navegador, acesse o portal do Azure.
Acesse a máquina virtual em que você deseja instalar o driver.
No menu esquerdo, selecione Extensões.
Selecione Adicionar.
Role para localizar e selecione Extensão do Driver NVIDIA GPU e, em seguida, selecione Avançar.
Selecione Examinar + Criar e escolha Criar. Aguarde alguns minutos até que o driver seja implantado.
Verifique se a extensão foi adicionada à lista de extensões instaladas.
Modelo do Azure Resource Manager
É possível usar modelos do Azure Resource Manager para implantar extensões de VM do Azure. Modelos são ideais quando você implanta uma ou mais máquinas virtuais que exigem configuração pós-implantação.
A configuração do JSON para uma extensão da máquina virtual pode ser aninhado dentro do recurso de máquina virtual ou localizado no nível de raiz ou superior de um modelo JSON do Resource Manager. O posicionamento da configuração do JSON afeta o valor do tipo e nome do recurso. Para obter mais informações, consulte Definir o nome e o tipo de recursos filho.
O exemplo a seguir pressupõe que a extensão está aninhada dentro do recurso de máquina virtual. Quando o recurso de extensão está aninhado, o JSON é colocado no objeto "resources": []
da máquina virtual.
{
"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 '{ `
}'
CLI do Azure
O exemplo a seguir reflete os exemplos do Resource Manager e PowerShell anteriores:
az vm extension set \
--resource-group myResourceGroup \
--vm-name myVM \
--name NvidiaGpuDriverLinux \
--publisher Microsoft.HpcCompute \
--version 1.6
O exemplo a seguir também adiciona configurações personalizadas como um exemplo para instalação de driver não padrão. Mais especificamente, ele atualiza o kernel do sistema operacional mais atual e instala um driver de versão específico do kit de ferramentas CUDA. Novamente, observe que --settings
são opcionais e padrão. Atualizar o kernel pode aumentar o tempo de instalação da extensão. Além disso, escolher uma versão específica (mais antiga) do kit de ferramentas CUDA pode nem sempre ser compatível com os kernels mais recentes.
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" \
}'
Solução de problemas e suporte
Solucionar problemas
Você pode recuperar dados sobre o estado das implantações de extensão no portal do Azure e usando o Azure PowerShell e a CLI do Azure. Para ver o estado da implantação das extensões de uma determinada VM, execute o comando a seguir:
Get-AzVMExtension -ResourceGroupName myResourceGroup -VMName myVM -Name myExtensionName
az vm extension list --resource-group myResourceGroup --vm-name myVM -o table
A saída de execução da extensão é registrada no arquivo a seguir. Confira este arquivo para acompanhar o status de instalação (qualquer execução prolongada) e para solucionar quaisquer falhas.
/var/log/azure/nvidia-vmext-status
Códigos de saída
Código de saída | Significado | Ação possível |
---|---|---|
0 | Operação concluída com êxito | |
1 | Uso incorreto de extensão | Verifique o log de saída de execução. |
10 | Serviços de integração do Linux para Hyper-V e o Azure não disponível ou instalado | Verifique a saída de lspci. |
11 | GPU NVIDIA não encontrado nesse tamanho de VM | Use um tamanho da VM e sistema operacional com suporte. |
12 | Oferta de imagem não suportada | |
13 | Tamanho de VM não suportado | Use uma VM da série N para implantar. |
14 | Operação falhou | Verifique o log de saída de execução. |
Problemas conhecidos
NvidiaGpuDriverLinux
atualmente não instala os drivers mais recentes17.x
drivers GRID devido a problemas de certificado. Enquanto o Azure está trabalhando para resolver esse problema, use o driver GRID16.5
passando uma configuração de runtime para a extensão.
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"
}
}
}
- O
17.x
de versão do GRID Driver é incompatível com o NVv3 (NVIDIA Tesla M60). Há suporte para drivers GRID até a versão16.5
.NvidiaGpuDriverLinux
instala os drivers mais recentes incompatíveis com o SKU do NVv3. Em vez disso, use as seguintes configurações de runtime para forçar a extensão a instalar uma versão mais antiga do driver. Para obter mais informações sobre as versões do driver, consulte recursos de GPU NVIDIA.
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"
}
}
}
Suporte
Caso precise de mais ajuda a qualquer momento neste artigo, entre em contato com os especialistas do Azure nos fóruns do Azure e do Stack Overflow no MSDN. Como alternativa, você pode registrar um incidente de suporte do Azure. Acesse o Suporte do Azure e selecione Obter suporte. Para saber mais sobre como usar o suporte do Azure, leia as Perguntas frequentes sobre o suporte do Azure.
Próximas etapas
- Para obter mais informações sobre extensões, consulte Recursos e extensões da máquina virtual para Linux.
- Para obter mais informações sobre VMs série N, consulte tamanhos de máquinas virtuais otimizados para GPU.