Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Atenção
Este artigo faz referência ao CentOS, uma distribuição Linux com status de Fim de Vida (EOL). Por favor, considere o seu uso e planeje de acordo. Para obter mais informações, consulte as diretrizes de Fim da Vida Útil do CentOS.
Aplica-se a: ✔️ Linux VMs
Importante
Para nos alinharmos com as práticas linguísticas inclusivas, substituímos o termo "lista negra" por "lista de bloqueio" ao longo desta documentação. Essa mudança reflete nosso compromisso em evitar terminologia que possa ter conotações negativas não intencionais ou preconceito racial percebido. No entanto, em trechos de código e referências técnicas onde "lista negra" faz parte da sintaxe estabelecida ou ferramentas (por exemplo, arquivos de configuração, parâmetros de linha de comando), o termo original é mantido para preservar a precisão funcional. Esta utilização é estritamente técnica e não implica qualquer intenção discriminatória.
Para tirar partido das capacidades de GPU das VMs da série N do Azure suportadas por GPUs NVIDIA, tem de instalar controladores de GPU NVIDIA. A NVIDIA GPU Driver Extension instala 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 NVIDIA GPU Driver Extension para obter as distribuições suportadas e as etapas de implantação.
Se você optar por instalar drivers NVIDIA GPU manualmente, este artigo fornece distribuições suportadas, drivers e etapas de instalação e verificação. Informações de configuração manual 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 de disco, consulte Tamanhos de VM GPU Linux.
Aviso
A instalação de drivers NVIDIA usando métodos diferentes dos 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 controladores suportados
Controladores NVIDIA CUDA
Para obter os drivers CUDA mais recentes e sistemas operacionais suportados, visite o site da NVIDIA . Certifique-se de instalar ou atualizar para os drivers CUDA suportados mais recentes para sua distribuição.
Nota
O driver CUDA mais recente suportado para VMs SKU originais da série NC é atualmente 470.82.01. Versões posteriores do driver não são suportadas nas placas K80 no NC.
Nota
As VMs Azure NVads A10 v5 suportam apenas versões de driver GRID 17.x ou superiores. O driver vGPU para o A10 SKU é um driver unificado que suporta cargas de trabalho gráficas e de computação.
Atenção
A Inicialização Segura e o vTPM devem ser desativados porque o processo trava quando eles estão habilitados.
Gorjeta
Como alternativa à instalação manual do driver CUDA em uma VM Linux, você pode implantar uma imagem da Máquina Virtual do Azure Data Science . A edição DSVM para Ubuntu 16.04 LTS pré-instala drivers NVIDIA CUDA, a CUDA Deep Neural Network Library e outras ferramentas.
Drivers NVIDIA GRID
Nota
vGPU18 está disponível para a série NCasT4_v3.
O vGPU18 está agora disponível apenas para a série NVadsA10_v5 em regiões públicas. O vGPU18 para a série NVadsA10_v5 ainda não é suportado nas regiões Mooncake e Fairfax. Forneceremos uma atualização assim que o vGPU18 for suportado para a série NVadsA10_v5 nas regiões Mooncake e Fairfax.
A Microsoft redistribui instaladores de driver NVIDIA GRID para VMs das séries NV e NVv3 usadas como estações de trabalho virtuais ou para aplicativos virtuais. Instale apenas esses drivers GRID em VMs do Azure NV, somente nos sistemas operacionais listados na tabela a seguir. Esses drivers incluem o licenciamento para o software de GPU virtual GRID no Azure. Não precisas de configurar um servidor de licenças de software NVIDIA vGPU.
Os drivers GRID redistribuídos pelo Azure não funcionam na maioria das VMs que não são da série NV, como VMs das séries NC, NCv2, NCv3, ND e NDv2, mas funcionam nas séries NCasT4v3.
Para obter mais informações sobre as versões específicas de vGPU e ramificação 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, versão do driver R570 NVIDIA vGPU 18.5, versão do driver R570 |
Nota
Para VMs Azure NVads A10 v5, recomendamos que utilize a versão mais recente do driver. O ramo principal mais recente da NVIDIA (n) só é compatível retroativamente com o ramo principal anterior (n-1). Por exemplo, o vGPU 17.x é compatível apenas com o vGPU 16.x. Falhas de driver podem ocorrer em VMs que ainda estejam a correr n-2 ou inferiores quando a última ramificação do disco for implementada para os hosts Azure.
NVs_v3 VMs só suportam versões de controladores vGPU 16 ou inferiores.
O GRID Driver 17.3 suporta atualmente apenas a série NCasT4_v3 de VMs. Para usar este driver, descarregue e instale manualmente o GRID Driver 17.3.
Os drivers GRID estão tendo problemas com a instalação no kernel 6.11 do Azure. Para desbloquear, faça o 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 drivers Nvidia GRID anteriores.
Aviso
A instalação de software de terceiros em produtos Red Hat pode afetar os termos de suporte do Red Hat. Consulte o artigo da Base de conhecimento Red Hat.
Instalar drivers CUDA em VMs da série N
Aqui estão as etapas para instalar drivers CUDA do NVIDIA CUDA Toolkit em VMs da série N.
Os desenvolvedores de C e C++ podem, opcionalmente, instalar o Toolkit completo para criar aplicativos acelerados por GPU. Para obter mais informações, consulte o Guia de Instalação CUDA.
Para instalar drivers CUDA, faça 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
lspci lista os dispositivos PCIe na VM, incluindo a NIC InfiniBand e GPUs, se houver. Se o lspci não retornar com êxito, talvez seja necessário instalar o LIS no CentOS/RHEL.
Em seguida, execute comandos de instalação específicos para a sua distribuição.
Ubuntu
O Ubuntu empacota os controladores 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, instalar drivers de terceiros requer passos adicionais nas VMs com TrustedLaunch e Secure Boot ativados. Eles exigem que o usuário adicione uma nova chave de proprietário da máquina para o sistema inicializar. Os drivers do Ubuntu são assinados pela Canonical e funcionarão com a Inicialização Segura.
Instalar utilitário
ubuntu-drivers:sudo apt update && sudo apt install -y ubuntu-drivers-commonInstale os drivers NVIDIA mais recentes:
sudo ubuntu-drivers installReinicialize a VM após a instalação do driver da GPU:
sudo rebootBaixe e instale o kit de ferramentas CUDA da NVIDIA:
Nota
O exemplo mostra o caminho do pacote CUDA para o Ubuntu 24.04 LTS. Usa o caminho específico para a versão que planeias usar.
Visite o Centro de Downloads da NVIDIA ou a página de Recursos CUDA da NVIDIA para o percurso completo específico de 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 pode demorar alguns minutos.
Reinicialize a VM após a conclusão da instalação:
sudo rebootVerifique se a GPU é reconhecida corretamente (após a reinicialização):
nvidia-smi
Atualizações do driver NVIDIA
Recomendamos 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, certifique-se de que as versões do
kernel-devel, edkmssão apropriadas para o seu kernel.sudo yum install kernel kernel-tools kernel-headers kernel-devel sudo rebootInstale o Linux Integration Services mais recente para Hyper-V e Azure. Verifique se o LIS é necessário, verificando os resultados do lspci. Se todos os dispositivos GPU estiverem listados conforme o esperado, a instalação do LIS não será necessária.
O LIS é aplicável ao Red Hat Enterprise Linux, CentOS e ao Oracle Linux Red Hat Compatible Kernel 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. Ignore esta etapa se você planeja usar o CentOS/RHEL 7.8 (ou versões superiores), pois o LIS não é mais necessá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 pode demorar alguns minutos.
Nota
Visite o repositório Fedora e Nvidia CUDA para escolher o pacote correto para a versão do CentOS ou RHEL que você deseja usar.
Por exemplo, o CentOS 8 e o 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 instalar opcionalmente o kit de ferramentas CUDA completo, digite:
sudo yum install cudaNota
Se vires uma mensagem de erro relacionada com pacotes em falta como vulkan-filesystem, podes precisar de editar /etc/yum.repos.d/rh-cloud, procurar optional-rpm e definir ativado para 1.
Reinicialize a VM e prossiga para verificar a instalação.
Verificar a instalação do driver
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, a Nvidia SMI indica o GPU-Util como N/A até executares uma carga de trabalho da GPU na VM.
Conectividade de rede RDMA
A conectividade de rede RDMA pode ser habilitada em VMs da série N compatíveis com RDMA, como NC24r, implantadas no mesmo conjunto de disponibilidade ou em um único grupo de posicionamento em um conjunto de escala de máquina virtual (VM). A rede RDMA suporta tráfego MPI (Message Passing Interface) para aplicativos executados com Intel MPI 5.x ou uma versão posterior:
Distribuições
Implante VMs da série N compatíveis com RDMA a partir de uma das imagens no Azure Marketplace que oferece suporte à conectividade RDMA em VMs da série N:
Ubuntu 16.04 LTS - Configure os drivers RDMA na VM e registre-se com a Intel para baixar o Intel MPI:
Instale dapl, rdmacm, ibverbs e mlx4
sudo apt-get update sudo apt-get install libdapl2 libmlx4-1Em /etc/waagent.conf, habilite o RDMA descomentando as seguintes linhas de configuração. Você precisa de acesso root para editar este 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 root para editar este arquivo. Para fins de teste, você pode 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>Instale a Intel MPI Library. Compre e faça o download da biblioteca da Intel ou faça o download da versão de avaliação gratuita.
wget http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9278/l_mpi_p_5.1.3.223.tgzSomente os tempos de execução do Intel MPI 5.x são suportados.
Para conhecer as etapas de instalação, consulte o Guia de instalação da biblioteca Intel MPI.
Habilite o ptrace para processos que não sejam root nem depuradores (necessário para as versões mais recentes do Intel MPI).
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
CentOS 7.4 baseado em HPC - drivers RDMA e Intel MPI 5.1 estão instalados na VM.
HPC baseado em CentOS - CentOS-HPC 7.6 e posterior (para SKUs onde InfiniBand é suportado em relação a SR-IOV). Estas imagens têm as bibliotecas Mellanox OFED e MPI pré-instaladas.
Nota
As placas CX3-Pro são suportadas apenas através das versões LTS do Mellanox OFED. Use a versão LTS Mellanox OFED (4.9-0.1.7.0) nas VMs da série N com placas ConnectX3-Pro. Para obter mais informações, consulte Drivers Linux.
Além disso, algumas das imagens HPC mais recentes do Azure Marketplace têm Mellanox OFED 5.1 e versões posteriores, que não suportam placas ConnectX3-Pro. Verifique a versão do Mellanox OFED na imagem HPC antes de usá-la em VMs com placas ConnectX3-Pro.
As imagens a seguir são as imagens mais recentes do CentOS-HPC que suportam placas 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 GRID em VMs NV ou NVv3-series
Para instalar drivers NVIDIA GRID em VMs NV ou NVv3-series, faça uma conexão SSH para cada VM e siga as etapas para sua distribuição Linux.
Ubuntu
Execute o comando
lspci. Verifique se a placa ou placas NVIDIA M60 estão visíveis como dispositivos PCI.Instale 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 -yDesative o driver do kernel Nouveau, que é incompatível com o driver NVIDIA. (Use o driver NVIDIA apenas em VMs NV ou NVv2.) Para desativar o driver, crie um ficheiro em
/etc/modprobe.dnomeadonouveau.confcom o seguinte conteúdo:blacklist nouveau blacklist lbm-nouveauReinicialize a VM e reconecte-se. 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 você for perguntado se deseja executar o utilitário nvidia-xconfig para atualizar seu arquivo de configuração X, selecione Sim.
Depois de terminar a instalação, copie /etc/nvidia/gridd.conf.template para um novo ficheiro gridd.conf na localização /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 de
/etc/nvidia/gridd.confcaso esteja presente:FeatureType=0Reinicialize a VM e prossiga para verificar a instalação.
Instale o driver GRID no Ubuntu com a Inicialização Segura ativada
O processo de instalação do driver GRID não oferece nenhuma opção para pular a construção e instalação do módulo do kernel e selecionar uma fonte diferente de módulos do kernel assinados, portanto, a inicialização segura tem que ser desativada em VMs Linux para usá-las com GRID, depois de instalar módulos de kernel assinados.
CentOS ou Red Hat Enterprise Linux
Atualize o kernel e o DKMS (recomendado). Se você optar por não atualizar o kernel, certifique-se de que as versões de
kernel-develedkmssão apropriadas para o 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-daemonsDesative o driver do kernel Nouveau, que é incompatível com o driver NVIDIA. (Use o driver NVIDIA apenas em VMs NV ou NV3.) Para isso, crie um ficheiro com
/etc/modprobe.dnomenouveau.confcom o seguinte conteúdo:blacklist nouveau blacklist lbm-nouveauReinicialize a VM, reconecte-se e instale o Linux Integration Services mais recente para Hyper-V e Azure. Verifique se o LIS é necessário, verificando os resultados do lspci. Se todos os dispositivos GPU estiverem listados conforme o esperado, a instalação do LIS não será necessária.
Ignore esta etapa se você planeja usar o CentOS/RHEL 7.8 (ou versões superiores), pois o LIS não é mais necessá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
lspcicomando. 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 você for perguntado se deseja executar o utilitário nvidia-xconfig para atualizar seu arquivo de configuração X, selecione Sim.
Depois de terminar a instalação, copie /etc/nvidia/gridd.conf.template para um novo ficheiro gridd.conf na localização /etc/nvidia/.
sudo cp /etc/nvidia/gridd.conf.template /etc/nvidia/gridd.confAdicione duas linhas a
/etc/nvidia/gridd.conf:IgnoreSP=FALSE EnableUI=FALSERemova uma linha de
/etc/nvidia/gridd.confse estiver presente:FeatureType=0Reinicialize a VM e prossiga para verificar a instalação.
Verificar a instalação do driver
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, a Nvidia SMI vai listar o GPU-Util como N/A até executares uma carga de trabalho da GPU na VM.
Servidor X11
Se você precisar de um servidor X11 para conexões remotas com uma VM NV ou NVv2, o x11vnc é recomendado porque permite a aceleração de hardware de gráficos. O BusID do dispositivo M60 deve ser adicionado manualmente ao ficheiro de configuração X11 (normalmente etc/X11/xorg.conf). Adicione uma "Device" seção 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 "Screen" seção para usar este dispositivo.
Pode encontrar o BusID decimal ao executar
nvidia-xconfig --query-gpu-info | awk '/PCI BusID/{print $4}'
O BusID pode mudar quando uma VM é realocada ou reinicializada. Portanto, convém criar um script para atualizar o BusID na configuração X11 quando uma VM é reinicializada. Por exemplo, crie um script chamado busidupdate.sh (ou outro nome escolhido) com 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
Depois cria uma entrada para o teu script /etc/rc.d/rc3.d de atualização para que o script seja invocado como root no arranque.
Resolução de Problemas
Você pode definir o modo de persistência usando
nvidia-smipara que a saída do comando seja mais rápida 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 de modo desaparecerá. Podes sempre programar a definição do modo para correr ao arrancar.Se você atualizou os drivers NVIDIA CUDA para a versão mais recente e achar 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 (ou kernel) do CentOS/RHEL OS não for suportada para o LIS, será lançado um erro "Versão não suportada do kernel". Reporte este erro juntamente com as versões do SO e do kernel.
Se os trabalhos forem interrompidos por erros ECC na GPU (corrigíveis ou incorrigíveis), primeiro verifique se a GPU atende a algum dos critérios de RMA da Nvidia para erros ECC. Se a GPU for elegível para RMA, entre em contato com o suporte para obter a manutenção; caso contrário, reinicie a VM para reconectar a GPU conforme descrito aqui. Métodos menos invasivos, como
nvidia-smi -r, não funcionam com a solução de virtualização implementada no Azure.
Próximos passos
- Para capturar uma imagem de VM Linux com os drivers NVIDIA instalados, consulte Como generalizar e capturar uma máquina virtual Linux.