Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Atenção
Este artigo referencia o CentOS, uma distribuição do Linux cujo status é EOL (fim do serviço). Considere seu uso e planeje de acordo. Para obter mais informações, consulte as diretrizes de Fim de Vida do CentOS.
Aplica-se a: ✔️ Linux VMs
Importante
Para alinhar com as práticas de linguagem inclusivas, substituímos o termo "lista negra" por "lista de bloqueios" ao longo desta documentação. Essa mudança reflete nosso compromisso de evitar terminologias que possam conter conotações negativas não intencionais ou viés racial percebido. No entanto, em trechos de código e referências técnicas em que "blacklist" faz parte da sintaxe ou ferramentas (por exemplo, arquivos de configuração, parâmetros de linha de comando), o termo original é mantido para preservar a precisão funcional. Esse uso é estritamente técnico e não implica nenhuma intenção discriminatória.
Para aproveitar as funcionalidades de GPU das VMs da série N do Azure que contam com GPUs da NVIDIA, é preciso instalar os drivers para GPU NVIDIA. A Extensão de Driver de GPU NVIDIA instala os drivers NVIDIA CUDA ou GRID apropriados em uma VM da série N. Instale ou gerencie a extensão usando o portal do Azure ou ferramentas, como a CLI do Azure ou os modelos do Azure Resource Manager. Consulte a documentação da Extensão de Driver de GPU NVIDIA para ver as distribuições e as etapas de implantação com suporte.
Se você optar por instalar os drivers de GPU da NVIDIA manualmente, este artigo fornecerá as distribuições compatíveis, os drivers e as etapas de instalação e verificação. Informações manuais de instalação do driver também estão disponíveis para VMs do Windows.
Para obter especificações de VM da série N, capacidades de armazenamento e detalhes do disco, consulte os tamanhos de VM GPU Linux.
Aviso
Instalar drivers NVIDIA usando métodos diferentes daqueles descritos neste guia pode resultar em falha na instalação do driver pretendido. Para garantir a funcionalidade e o suporte adequados, siga apenas as etapas de instalação e use as versões de driver especificadas nesta documentação.
Distribuições e drivers com suporte
Drivers NVIDIA CUDA
Para obter os drivers cuda mais recentes e sistemas operacionais com suporte, visite o site da NVIDIA . Certifique-se de instalar ou atualizar para os drivers CUDA mais recentes com suporte para a sua distribuição.
Observação
O driver CUDA mais recente suportado para VMs SKU da série NC original é atualmente 470.82.01. Não há suporte para versões posteriores do driver nos cartões K80 no NC.
Observação
As VMs do Azure NVads A10 v5 só dão suporte a versões de driver GRID 17.x ou superiores. O driver de vGPU para o SKU A10 é um driver unificado que dá suporte a cargas de trabalho de computação e elementos gráficos.
Atenção
A Inicialização Segura e o vTPM devem ser desabilitados porque o processo trava quando eles estão habilitados.
Dica
Como alternativa à instalação manual do driver CUDA em uma VM do Linux, você pode implantar uma imagem da Máquina Virtual de Ciência de Dados do Azure. A edição DSVM para Ubuntu 16.04 LTS pré-instala os drivers NVIDIA CUDA, a Biblioteca CUDA de Rede Neural Profunda e outras ferramentas.
Drivers NVIDIA GRID
Observação
VGPU18 está disponível para a série NCasT4_v3.
O vGPU18 agora está disponível apenas para a série NVadsA10_v5 em regiões públicas. A vGPU18 para a série NValsA10_v5 ainda não é suportada nas regiões Mooncake e Fairfax. Forneceremos uma atualização assim que o vGPU18 se tornar compatível com a série NVadsA10_v5 nas regiões Mooncake e Fairfax.
A Microsoft redistribui os instaladores do driver NVIDIA GRID para VMs das séries NV e NVv3 usadas como estações de trabalho virtuais ou para aplicativos virtuais. Instale somente esses drivers de grade em VMs do Azure NV, apenas em sistemas operacionais listados na tabela a seguir. Esses drivers incluem o licenciamento de Software de GPU Virtual de GRID no Azure. Você não precisa configurar um servidor de licença de software VGPU NVIDIA.
Os drivers GRID redistribuídos pelo Azure não funcionam na maioria das VMs não NV, como NC, NCv2, NCv3, ND e VMs das séries NDv2, mas funcionam nas séries NCasT4v3.
Para obter mais informações sobre as versões específicas do vGPU e do driver, visite o site da NVIDIA.
| Distribuição | Motorista |
|---|---|
| Ubuntu 20.04 LTS, 22.04 LTS, 24.04 LTS Red Hat Enterprise Linux 8.6, 8.8, 8.9, 8.10, 9.0, 9.2, 9.3, 9.4, 9.5 SUSE Linux Enterprise Server 15 SP2, 12 SP2, 12 SP5 Rocky Linux 8.4 |
NVIDIA vGPU 18.5, ramificação do drive R570 NVIDIA vGPU 18.5, ramificação do drive R570 |
Observação
Para VMs do Azure NVads A10 v5, recomendamos que você use a versão mais recente do driver. A ramificação principal ramificação (n) de drivers NVIDIA mais recente é compatível somente com a ramificação principal anterior (n-1). Por exemplo, o vGPU 17.x é compatível retroativamente somente com o vGPU 16.x. Falhas de driver podem ocorrer em quaisquer VMs que ainda executem n-2 ou inferior quando a ramificação de driver mais recente é distribuída para hosts do Azure.
NVs_v3 VMs dão suporte apenas a versões de driver vGPU 16 ou inferior .
Atualmente, o GRID Driver 17.3 dá suporte apenas à série NCasT4_v3 de VMs. Para usar esse driver, baixe e instale o GRID Driver 17.3 manualmente.
Os drivers GRID estão tendo problemas com a instalação no kernel do Azure 6.11. Para desbloquear, faça downgrade do kernel para a versão 6.8. Para obter mais informações, consulte Problemas Conhecidos.
Visite o GitHub para obter a lista completa de todos os links de driver Nvidia GRID anteriores.
Aviso
A instalação de software de terceiros em produtos do Red Hat pode afetar os termos de suporte do Red Hat. Consulte o artigo da Base de Dados de Conhecimento do Red Hat.
Instalar drivers de CUDA em VMs série N
Aqui estão as etapas para instalar os drivers CUDA a partir do NVIDIA CUDA Toolkit em VMs série N.
Os desenvolvedores de C e C++ podem opcionalmente instalar o Kit de ferramentas completo para criar aplicativos com aceleração de GPU. Para obter mais informações, consulte o Guia de Instalação do CUDA.
Para instalar os drivers de CUDA, realize uma conexão SSH para cada VM. Para verificar se o sistema tem uma GPU compatível com CUDA, execute o seguinte comando:
lspci | grep -i NVIDIA
O lspci lista os dispositivos PCIe na VM, incluindo o InfiniBand NIC e GPUs, se houver. Se o lspci não retornar com sucesso, talvez seja necessário instalar o LIS no CentOS/RHEL.
Em seguida, execute os comandos de instalação específicos para a sua distribuição.
Ubuntu
O Ubuntu empacota drivers proprietários da NVIDIA. Esses drivers vêm diretamente da NVIDIA e são simplesmente empacotados pelo Ubuntu para que possam ser gerenciados automaticamente pelo sistema. Baixar e instalar drivers de outra fonte pode levar a um sistema quebrado. Além disso, a instalação de drivers de terceiros requer etapas extras em VMs com TrustedLaunch e Inicialização Segura habilitadas. Eles exigem que o usuário adicione uma nova Chave de Proprietário do Computador para o sistema ser inicializado. Os drivers do Ubuntu são assinados pela Canonical e funcionarão com a Inicialização Segura.
Instalar o utilitário
ubuntu-drivers:sudo apt update && sudo apt install -y ubuntu-drivers-commonInstale os drivers NVIDIA mais recentes:
sudo ubuntu-drivers installReinicie a VM após a instalação do driver de GPU:
sudo rebootBaixe e instale o kit de ferramentas CUDA da NVIDIA:
Observação
O exemplo mostra o caminho do pacote CUDA para o Ubuntu 24.04 LTS. Use o caminho específico para a versão que você planeja usar.
Visite o NVIDIA Download Center ou a página NVIDIA CUDA Resources para obter o caminho completo específico para cada versão.
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.1-1_all.deb sudo apt install -y ./cuda-keyring_1.1-1_all.deb sudo apt update sudo apt -y install cuda-toolkit-12-5A instalação poderá levar vários minutos.
Reinicialize a VM após a conclusão da instalação:
sudo rebootVerifique se a GPU foi reconhecida corretamente (após a reinicialização):
nvidia-smi
Atualizações do driver NVIDIA
É recomendável que você atualize periodicamente os drivers NVIDIA após a implantação.
sudo apt update
sudo apt full-upgrade
CentOS ou Red Hat Enterprise Linux
Atualize o kernel (recomendado). Se você optar por não atualizar o kernel, verifique se as versões de
kernel-develedkmssão apropriadas para o seu kernel.sudo yum install kernel kernel-tools kernel-headers kernel-devel sudo rebootInstale os Serviços de Integração do Linux mais recentes para Hyper-V e Azure. Verifique se o LIS é necessário verificando os resultados do lspci. Se todos os dispositivos GPU estiverem listados como esperado, não é necessário instalar o LIS.
O LIS é aplicável ao Red Hat Enterprise Linux, CentOS e ao kernel compatível com o Red Hat do Oracle Linux 5.2-5.11, 6.0-6.10 e 7.0-7.7. Consulte a documentação do Linux Integration Services para obter mais detalhes. Pule essa etapa se quiser usar o CentOS/RHEL 7.8 (ou versões superiores), pois o LIS não é mais obrigatório para essas versões.
wget https://aka.ms/lis tar xvzf lis cd LISISO sudo ./install.sh sudo rebootReconecte-se à VM e continue a instalação com os seguintes comandos:
sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo yum-config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo sudo yum clean all sudo yum -y install nvidia-driver-latest-dkms cuda-driversA instalação poderá levar vários minutos.
Observação
Visite o repositório Fedora e Nvidia CUDA para escolher o pacote correto para a versão centOS ou RHEL que você deseja usar.
Por exemplo, CentOS 8 e RHEL 8 precisam das etapas a seguir.
sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo yum install dkms
sudo wget https://developer.download.nvidia.com/compute/cuda/repos/rhel8/x86_64/cuda-rhel8.repo -O /etc/yum.repos.d/cuda-rhel8.repo
sudo yum install cuda-drivers
Para opcionalmente instalar o Kit de ferramentas CUDA completo, digite:
sudo yum install cudaObservação
Se você vir uma mensagem de erro relacionada a pacotes ausentes, como vulkan-filesystem, talvez seja necessário editar /etc/yum.repos.d/rh-cloud, procurar rpms opcionais e definir habilitado como 1.
Reinicie a VM e prossiga para verificar a instalação.
Verificar a instalação de drivers
Para consultar o estado do dispositivo GPU, SSH para a VM e execute o utilitário de linha de comando nvidia-smi instalado com o driver.
Se o driver estiver instalado, o Nvidia SMI listará o GPU-Util como N/A até que você execute uma carga de trabalho de GPU na VM.
Conectividade de rede RDMA
A conectividade de rede RDMA pode ser habilitada em VMs da série N com capacidade de RDMA, como o NC24r implementada no mesmo conjunto de disponibilidade ou em um único grupo de posicionamento em um conjunto de dimensionamento de máquina virtual (VM). A rede RDMA dá suporte ao tráfego da Interface de Passagem de Mensagem (MPI) para aplicativos executados com Intel MPI 5.x ou uma versão posterior:
Distribuições
Implante VMs da série N habilitadas para RDMA de uma das imagens no Azure Marketplace que é compatível com a conectividade RDMA nas VMs da série N:
Ubuntu 16.04 LTS – Configurar drivers RDMA na VM e registrar-se na Intel para baixar o Intel MPI:
Instalar dapl, rdmacm, ibverbs e mlx4
sudo apt-get update sudo apt-get install libdapl2 libmlx4-1Em /etc/waagent.conf, habilite o RDMA removendo as marcas de comentários das seguintes linhas de configuração. Você precisa de acesso à raiz para editar esse arquivo.
OS.EnableRDMA=y OS.UpdateRdmaDriver=yAdicione ou altere as seguintes configurações de memória em KB no arquivo /etc/security/limits.conf. Você precisa de acesso à raiz para editar esse arquivo. Para fins de teste, é possível definir memlock como ilimitado. Por exemplo:
<User or group name> hard memlock unlimited.<User or group name> hard memlock <memory required for your application in KB> <User or group name> soft memlock <memory required for your application in KB>Instalar a Intel MPI Library. Compre e baixe a biblioteca da Intel ou baixe a versão de avaliação gratuita.
wget http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9278/l_mpi_p_5.1.3.223.tgzHá suporte apenas para runtimes MPI Intel 5.x.
Para obter as etapas de instalação, consulte o Guia de Instalação da Biblioteca intel MPI.
Habilite ptrace para os processos que não são de depuração e não são da raiz (necessária para as versões mais recentes da Intel MPI).
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
CentOS-based 7.4 HPC – Os drivers de RDMA e Intel MPI 5.1 estão instalados na VM.
HPC baseado em CentOS - CentOS-HPC 7.6 e posterior (para SKUs onde o InfiniBand é suportado por SR-IOV). Essas imagens têm bibliotecas Mellanox OFED e MPI pré-instaladas.
Observação
Cartões CX3-Pro têm suporte somente por meio de versões LTS do Mellanox OFED. Use o LTS Mellanox OFED versão 4.9-0.1.7.0 nas VMs da série N com cartões ConnectX3-Pro. Para obter mais informações, consulte Drivers do Linux.
Além disso, algumas das imagens mais recentes do Azure Marketplace HPC têm o Mellanox OFED 5.1 e posterior, que não oferecem suporte a cartões ConnectX3-Pro. Verifique a versão do Mellanox OFED na imagem HPC antes de usá-lo em VMs com cartões ConnectX3-Pro.
As imagens a seguir são as mais recentes do CentOS-HPC que dão suporte a cartões de ConnectX3-Pro:
- OpenLogic:CentOS-HPC:7.6:7.6.2020062900
- OpenLogic:CentOS-HPC:7_6gen2:7.6.2020062901
- OpenLogic:CentOS-HPC:7.7:7.7.2020062600
- OpenLogic:CentOS-HPC:7_7-gen2:7.7.2020062601
- OpenLogic:CentOS-HPC:8_1:8.1.2020062400
- OpenLogic:CentOS-HPC:8_1-gen2:8.1.2020062401
Instalar drivers de GRID em VMs da série NVv3 ou NV
Para instalar drivers NVIDIA GRID em VMs da série NVv3 ou NV, faça uma conexão SSH para cada VM e siga as etapas para a sua distribuição do Linux.
Ubuntu
Execute o comando
lspci. Verifique se a placa ou placas NVIDIA M60 estão visíveis como dispositivos PCI.Instale as atualizações.
sudo apt-get update sudo apt-get upgrade -y sudo apt-get dist-upgrade -y sudo apt-get install build-essential ubuntu-desktop -y sudo apt-get install linux-azure -yDesabilite o driver de kernel Nouveau, que é incompatível com o driver NVIDIA. (Use apenas o driver NVIDIA em VMs NV ou NVv2.) Para desabilitar o driver, crie um arquivo nomeado
/etc/modprobe.dnouveau.confcom o seguinte conteúdo:blacklist nouveau blacklist lbm-nouveauReinicie a VM e reconecte. Saia do servidor X:
sudo systemctl stop lightdm.serviceBaixe e instale o driver GRID:
wget -O NVIDIA-Linux-x86_64-grid.run https://go.microsoft.com/fwlink/?linkid=874272 chmod +x NVIDIA-Linux-x86_64-grid.run sudo ./NVIDIA-Linux-x86_64-grid.runQuando for perguntado se deseja executar o utilitário nvidia-xconfig para atualizar o arquivo de configuração X, selecione Sim.
Após a conclusão da instalação, copie /etc/nvidia/gridd.conf.template para um novo arquivo gridd.conf no local /etc/nvidia/.
sudo cp /etc/nvidia/gridd.conf.template /etc/nvidia/gridd.confAdicione o seguinte a
/etc/nvidia/gridd.conf:IgnoreSP=FALSE EnableUI=FALSERemova o seguinte do
/etc/nvidia/gridd.confcaso ele esteja presente:FeatureType=0Reinicie a VM e prossiga para verificar a instalação.
Instale o driver do GRID no Ubuntu com a Inicialização Segura habilitada
O processo de instalação do driver do GRID não oferece nenhuma opção para ignorar a compilação e a instalação do módulo do kernel e selecionar uma fonte diferente de módulos do kernel assinados, portanto, a inicialização segura deve ser desabilitada nas VMs do Linux para usá-las com o GRID, após a instalação dos módulos do kernel assinados.
CentOS ou Red Hat Enterprise Linux
Atualize o kernel e o DKMS (recomendado). Se você optar por não atualizar o kernel, verifique se as versões
kernel-develedkmssão apropriadas para seu kernel.sudo yum update sudo yum install kernel-devel sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm sudo yum install dkms sudo yum install hyperv-daemonsDesabilite o driver de kernel Nouveau, que é incompatível com o driver NVIDIA. (Use apenas o driver NVIDIA em VMs NV ou NV3.) Para fazer isso, crie um arquivo em
/etc/modprobe.dnomenouveau.confcom o seguinte conteúdo:blacklist nouveau blacklist lbm-nouveauReinicialize a VM, reconecte e instale os Serviços de Integração do Linux mais recentes para Hyper-V e Azure. Verifique se o LIS é necessário verificando os resultados do lspci. Se todos os dispositivos GPU estiverem listados como esperado, não é necessário instalar o LIS.
Pule essa etapa se quiser usar o CentOS/RHEL 7.8 (ou versões superiores), pois o LIS não é mais obrigatório para essas versões.
wget https://aka.ms/lis tar xvzf lis cd LISISO sudo ./install.sh sudo rebootReconecte-se à VM e execute o comando
lspci. Verifique se a placa ou placas NVIDIA M60 estão visíveis como dispositivos PCI.Baixe e instale o driver GRID:
wget -O NVIDIA-Linux-x86_64-grid.run https://go.microsoft.com/fwlink/?linkid=874272 chmod +x NVIDIA-Linux-x86_64-grid.run sudo ./NVIDIA-Linux-x86_64-grid.runQuando for perguntado se deseja executar o utilitário nvidia-xconfig para atualizar o arquivo de configuração X, selecione Sim.
Após a conclusão da instalação, copie /etc/nvidia/gridd.conf.template para um novo arquivo gridd.conf no local /etc/nvidia/.
sudo cp /etc/nvidia/gridd.conf.template /etc/nvidia/gridd.confAdicione duas linhas ao
/etc/nvidia/gridd.conf:IgnoreSP=FALSE EnableUI=FALSERemova uma linha de
/etc/nvidia/gridd.confse ela estiver presente:FeatureType=0Reinicie a VM e prossiga para verificar a instalação.
Verificar a instalação de drivers
Para consultar o estado do dispositivo GPU, SSH para a VM e execute o utilitário de linha de comando nvidia-smi instalado com o driver.
Se o driver estiver instalado, o Nvidia SMI listará o GPU-Util como N/A até que você execute uma carga de trabalho de GPU na VM.
Servidor X11
Se você precisar de um servidor X11 para conexões remotas com uma VM NV ou NVv2, o x11vnc será recomendado porque ele permite a aceleração de hardware de elementos gráficos. O BusID do dispositivo M60 deve ser adicionado manualmente ao arquivo de configuração X11 (geralmente etc/X11/xorg.conf). Adicione uma seção "Device" semelhante à seguinte:
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "Tesla M60"
BusID "PCI:0@your-BusID:0:0"
EndSection
Além disso, atualize sua seção "Screen" para usar este dispositivo.
Você pode encontrar o BusID decimal ao executar
nvidia-xconfig --query-gpu-info | awk '/PCI BusID/{print $4}'
A BusID pode mudar quando uma VM é realocada ou reinicializada. Portanto, convém criar um script para atualizar a BusID na configuração do X11 quando uma VM é reiniciada. Por exemplo, crie um script chamado busidupdate.sh (ou outro nome que desejar) com um conteúdo semelhante ao seguinte:
#!/bin/bash
XCONFIG="/etc/X11/xorg.conf"
OLDBUSID=`awk '/BusID/{gsub(/"/, "", $2); print $2}' ${XCONFIG}`
NEWBUSID=`nvidia-xconfig --query-gpu-info | awk '/PCI BusID/{print $4}'`
if [[ "${OLDBUSID}" == "${NEWBUSID}" ]] ; then
echo "NVIDIA BUSID not changed - nothing to do"
else
echo "NVIDIA BUSID changed from \"${OLDBUSID}\" to \"${NEWBUSID}\": Updating ${XCONFIG}"
sed -e 's|BusID.*|BusID '\"${NEWBUSID}\"'|' -i ${XCONFIG}
fi
Em seguida, crie uma entrada para o seu script de atualização em /etc/rc.d/rc3.d para que o script seja invocado como raiz na inicialização.
Solução de problemas
Você pode definir o modo de persistência usando
nvidia-smi, de modo que o resultado do comando seja mais rápido quando você precisar consultar cartões. Para definir o modo de persistência, executenvidia-smi -pm 1. Se a VM for reiniciada, a configuração do modo desaparecerá. Você sempre pode gerar um script da configuração de modo para execução na inicialização.Se você atualizou os drivers NVIDIA CUDA para a versão mais recente e descobrir que a conectividade RDMA não está mais funcionando, reinstale os drivers RDMA para restabelecer essa conectividade.
Durante a instalação do LIS, se uma determinada versão do sistema operacional CentOS/RHEL OS (ou kernel) não for compatível com o LIS, será gerado um erro “Versão do kernel sem suporte”. Relate esse erro junto com as versões do sistema operacional e do kernel.
Se os trabalhos forem interrompidos por erros de ECC na GPU (corrigível ou não executável), primeiro verifique se a GPU atende a qualquer um dos critérios de RMA da Nvidia para erros de ECC. Se a GPU estiver qualificada para RMA, entre em contato com o suporte para que ela seja atendida; caso contrário, reinicie sua VM para reanexar a GPU, conforme descrito aqui. Métodos menos invasivos, como
nvidia-smi -r, não funcionam com a solução de virtualização implantada no Azure.
Próximas etapas
- Para capturar uma imagem de VM do Linux com os drivers NVIDIA instalados, confira Como generalizar e capturar uma máquina virtual do Linux.