Solução de problemas com a Máquina Virtual de Ciência de Dados do Azure
Este artigo explica como localizar e corrigir erros ou falhas que você pode encontrar ao usar a Máquina Virtual de Ciência de Dados do Azure.
Ubuntu
Corrigir GPU no chip de GPU NVIDIA A100 - Azure NDasrv4 Series
A máquina virtual da série ND A100 v4 é uma adição emblemática à família de GPUs do Azure. Ele lida com treinamento de Deep Learning high-end e cargas de trabalho HPC firmemente acopladas, ampliadas e dimensionadas.
Devido à sua arquitetura exclusiva, ele precisa de uma configuração diferente para cargas de trabalho de alta demanda, para se beneficiar da aceleração da GPU usando estruturas TensorFlow ou PyTorch.
Estamos criando suporte pronto para uso para GPUs de máquinas ND A100. Enquanto isso, sua GPU pode lidar com o Ubuntu se você adicionar o NVIDIA Fabric Manager e atualizar os drivers. Siga estes passos no terminal:
Adicione o repositório NVIDIA para instalar ou atualizar drivers - encontre instruções passo a passo neste recurso
[OPCIONAL] Você também pode atualizar seus drivers CUDA, a partir desse repositório
Instale os drivers do NVIDIA Fabric Manager:
sudo apt-get install cuda-drivers-460 sudo apt-get install cuda-drivers-fabricmanager-460
Reinicialize sua VM (para preparar os drivers)
Habilite e inicie o serviço NVIDIA Fabric Manager recém-instalado:
sudo systemctl enable nvidia-fabricmanager sudo systemctl start nvidia-fabricmanager
Execute este exemplo de código para verificar se a GPU e os drivers funcionam:
systemctl status nvidia-fabricmanager.service
Esta captura de tela mostra o serviço Fabric Manager em execução:
Falha na conexão com o ambiente de desktop
Se você puder se conectar à DSVM pelo terminal SSH, mas não puder se conectar pelo x2go, o x2go pode ter a configuração de tipo de sessão errada. Para se conectar ao ambiente de desktop DSVM, defina o tipo de sessão em x2go/session preferences/session como XFCE. No momento, não há suporte para outros ambientes de área de trabalho.
As fontes parecem erradas ao se conectar à DSVM usando x2go
Uma configuração de sessão x2go específica pode fazer com que algumas das fontes pareçam erradas quando você se conecta ao x2go. Antes de se conectar à DSVM, desmarque a caixa de seleção "Definir DPI de exibição" na guia "Entrada/Saída" da caixa de diálogo de preferências de sessão.
Palavra-passe desconhecida solicitada
Você pode definir a configuração Tipo de autenticação DSVM como Chave Pública SSH. Isso é recomendado, em vez da autenticação por senha. Você não receberá uma senha se usar a Chave Pública SSH. No entanto, em alguns cenários, alguns aplicativos ainda solicitam uma senha. Execute sudo passwd <user_name>
para criar uma nova senha para um usuário específico. Com sudo passwd
o , você pode criar uma nova senha para o usuário root.
A execução deste comando não altera a configuração SSH e os mecanismos de entrada permitidos permanecem os mesmos.
Senha solicitada ao executar o comando sudo
Quando você executa um sudo
comando em uma máquina Ubuntu, você pode receber uma solicitação para digitar repetidamente sua senha para verificar se você é o usuário conectado. Este é esperado comportamento padrão do Ubuntu. No entanto, em algumas situações, uma autenticação repetida não é necessária e bastante irritante.
Para desativar a reautenticação para a maioria dos casos, você pode executar este comando em um terminal:
echo -e "\n$USER ALL=(ALL) NOPASSWD: ALL\n" | sudo tee -a /etc/sudoers
Depois de reiniciar o terminal, o sudo não pedirá outro login e considerará a autenticação do login da sessão como suficiente.
Não é possível usar o docker como usuário não-root
Para usar o docker como um usuário não-root, seu usuário precisa ser membro do grupo docker. O getent group docker
comando retorna uma lista de usuários que pertencem a esse grupo. Para adicionar seu usuário ao grupo do docker, execute sudo usermod -aG docker $USER
.
Os contêineres do Docker não podem interagir com o exterior via rede
Por padrão, o Docker adiciona novos contêineres à chamada "rede ponte": 172.17.0.0/16
. A sub-rede dessa rede de ponte pode sobrepor-se à sub-rede da sua DSVM ou a outra sub-rede privada que tenha na sua subscrição. Nesse caso, nenhuma comunicação de rede entre o host e o contêiner é possível. Além disso, os aplicativos da Web que são executados no contêiner não podem ser acessados e o contêiner não pode atualizar pacotes do apt.
Para corrigir o problema, você deve reconfigurar o Docker para usar um espaço de endereço IP para sua rede de ponte que não se sobreponha a outras redes de sua assinatura. Por exemplo, se você adicionar
"default-address-pools": [
{
"base": "10.255.248.0/21",
"size": 21
}
]
ao arquivo JSON, o /etc/docker/daemon.json
Docker atribui outra sub-rede à rede bridge. Você deve editar o arquivo com sudo, por exemplo, executando sudo nano /etc/docker/daemon.json
.
Após a alteração, execute service docker restart
para reiniciar o serviço Docker. Para determinar se as alterações entraram ou não em vigor, pode executar docker network inspect bridge
. O valor sob IPAM. Config.Subnet deve corresponder ao pool de endereços especificado anteriormente.
GPU(s) não disponível(is) no contêiner docker
O recurso Docker instalado na DSVM suporta GPUs por padrão. No entanto, esse apoio exige alguns pré-requisitos.
- O tamanho da VM da DSVM deve incluir pelo menos uma GPU.
- Ao iniciar o contêiner do docker com
docker run
, você deve adicionar um parâmetro --gpus : por exemplo,--gpus all
. - Os tamanhos de VM que incluem GPUs NVIDIA A100 exigem outros pacotes de software instalados, especialmente o NVIDIA Fabric Manager. Esses pacotes podem não estar pré-instalados na sua imagem.
Windows
Máquina Virtual Geração 2 (Gen 2) não funciona
Quando você tenta criar VM de Ciência de Dados com base na Geração 2 de Máquina Virtual (Gen 2), ela falha.
No momento, mantemos e fornecemos imagens para Máquinas Virtuais de Ciência de Dados (DSVMs) baseadas no Windows 2019 Server, apenas para DSVMs de Geração 1. Os Gen 2 ainda não são suportados, mas planeamos apoiá-los num futuro próximo.
Acessando o SQL Server
Quando você tenta se conectar à instância pré-instalada do SQL Server, você pode encontrar um erro "falha de logon". Para se conectar com êxito à instância do SQL Server, você deve executar o programa ao qual deseja se conectar - por exemplo, SQL Server Management Studio (SSMS) - no modo de administrador. O modo de administrador é necessário porque, pelo comportamento padrão da DSVM, apenas os administradores podem se conectar.
O Hyper-V não funciona
Como comportamento esperado, o Hyper-V inicialmente não funciona no Windows. Para melhor desempenho, desativamos alguns serviços. Para habilitar o Hyper-V:
- Abra a barra de pesquisa na DSVM do Windows
- Digite "Serviços,"
- Defina todos os serviços do Hyper-V como "Manual"
- Defina "Gerenciamento de máquina virtual Hyper-V" como "Automático"
Sua tela final deve ter esta aparência: