Configurar e otimizar VMs

Cuidado

Este artigo faz referência ao CentOS, uma distribuição do Linux que está se aproximando do status de EOL (fim da vida útil). Considere seu uso e planejamento adequadamente. Para obter mais informações, veja as Diretrizes sobre fim da vida útil do CentOS.

Aplica-se a: ✔️ VMs do Linux ✔️ VMs do Windows ✔️ Conjuntos de dimensionamento flexíveis ✔️ Conjuntos de dimensionamento uniformes

Este artigo oferece diretrizes para configurar e otimizar as VMs das séries HB e Nhabilitadas para InfiniBand para HPC.

Imagens de VM

Nas VMs habilitadas para InfiniBand (IB), os drivers IB apropriados são necessários para habilitar o RDMA.

Essas imagens de VM são baseadas nas imagens base de VM de marketplace do Ubuntu e do AlmaLinux. Os scripts usados para criar essas imagens de VM a partir de sua imagem base do marketplace estão no repositório azhpc-images.

Em VMs série N habilitadas para GPU, os drivers de GPU adequados são adicionalmente necessários. Isso pode ser disponibilizado pelos seguintes métodos:

  • Use as imagens de VM do Ubuntu-HPC e a imagem de VM do AlmaLinux-HPC que vêm pré-configuradas com os drivers de GPU NVIDIA e a pilha de software de computação de GPU (CUDA, NCCL).
  • Adicione os drivers de GPU por meio das extensões de VM.
  • Instalar os drivers de GPU manualmente.
  • Algumas outras imagens de VM do Marketplace também vêm com os drivers de GPU NVIDIA pré-instalados, incluindo algumas imagens de VM da NVIDIA.

Dependendo das necessidades da carga de trabalho quanto à distribuição e versão do Linux, as imagens de VM do Ubuntu-HPC e as imagens de VM do AlmaLinux-HPC no Marketplace são a maneira mais fácil de começar a usar cargas de trabalho de HPC e de IA no Azure. Recomendamos também criar imagens de VM personalizadas com personalização e configuração específicas de carga de trabalho para reutilização.

Tamanhos de VM suportados pelas imagens de VM de HPC

Suporte a InfiniBand OFED

As imagens mais recentes do Azure HPC Marketplace vêm com Mellanox OFED 5.1 e superior, que não dão suporte a placas InfiniBand ConnectX3-Pro. Os cartões ConnectX-3 Pro InfiniBand exigem o MOFED versão 4.9 LTS. Essas imagens de VM só dão suporte a cartões ConnextX-5 e InfiniBand mais novos. A seguinte matriz de suporte de tamanho de VM para o InfiniBand OFED nessas imagens de VM de HPC:

Suporte de driver de GPU

Atualmente, apenas as imagens de VM do Ubuntu-HPC e as imagens de VM do AlmaLinux-HPC vêm pré-configuradas com os drivers de GPU NVIDIA e com a pilha de software de computação de GPU (CUDA, NCCL).

A matriz de suporte de tamanho de VM para os drivers de GPU em imagens de VM de HPC suportadas é a seguinte:

  • Série N: há suporte para os tamanhos de VM NDv2 e NDv4 com os drivers da GPU NVIDIA e a pilha de software de computação da GPU (CUDA, NCCL).
  • Há suporte para os outros tamanhos de VM 'NC' e 'ND' na série N com os drivers de GPU NVIDIA.

Todos os tamanhos de VM na série N dão suporte a VMs Gen 2, embora alguns mais antigos também tenham suporte para VMs Gen 1. O suporte para Gen 2 também é indicado com um "01" no final da versão ou URN da imagem.

VMs habilitadas para SR-IOV

Imagens de VM do Ubuntu-HPC

Para as VMs compatíveis com RDMA habilitadas para SR-IOV, são adequadas as imagens da VM Ubuntu-HPC versões 18.04, 20.04 e 22.04. Essas imagens de VM vêm pré-configuradas com os drivers Mellanox OFED para RDMA, drivers de GPU NVIDIA, pilha de software de computação de GPU (CUDA, NCCL) e bibliotecas MPI e pacotes de computação científica comumente usados. Consulte a matriz de suporte de tamanho de VM.

  • As versões disponíveis ou mais recentes das imagens de VM podem ser listadas com as informações a seguir, usando CLI ou Marketplace.

    "publisher": "Microsoft-DSVM",
    "offer": "Ubuntu-HPC",
    
  • O repositório azhpc-images. contém scripts usados para criar as imagens de VM de Ubuntu-HPC a partir de uma imagem básica do Ubuntu Marketplace.

Imagens de VM do AlmaLinux-HPC

Para as VMs compatíveis com RDMA habilitadas para SR-IOV, são adequadas as imagens de VM do AlmaLinux-HPC versão 8.5, 8.6 e 8.7. Essas imagens de VM vêm pré-configuradas com os drivers Mellanox OFED para RDMA, drivers de GPU NVIDIA, pilha de software de computação de GPU (CUDA, NCCL) e bibliotecas MPI e pacotes de computação científica comumente usados. Consulte a matriz de suporte de tamanho de VM.

  • As versões disponíveis ou mais recentes das imagens de VM podem ser listadas com as informações a seguir, usando CLI ou Marketplace.

    "publisher": "AlmaLinux",
    "offer": "AlmaLinux-HPC",
    
  • Os scripts usados na criação das imagens de VM do AlmaLinux-HPC de uma imagem base do AlmaLinux no Marketplace estão no repositório azhpc-images.

Additionally, detalhes sobre o que está incluído nas imagens de VM do Ubuntu-HPC e nas imagens de VM do AlmaLinux-HPC e como implantá-las estão em um artigo da TechCommunity.

Observação

Costumávamos dar suporte a imagens de VM do CentOS-HPC. Devido à eliminação gradativa do CentOS (atualmente, a única versão com suporte do CentOS 7 continuará a receber patches de segurança da comunidade e atualizações de correção de bugs até junho de 2024), não estamos liberando novas imagens HPC do CentOS para o Azure Marketplace. Sugerimos aos usuários do CentOS/RHEL que usem nossas alternativas de imagens HPC do AlmaLinux no Azure Marketplace, que têm o mesmo conjunto de drivers instalados que outras imagens HPC.

Imagens de VM RHEL/CentOS

As imagens de VM básicas não HPC baseadas em RHEL ou CentOS no Marketplace podem ser configuradas para uso em VMs compatíveis com RDMA habilitadas para SR-IOV. Saiba como habilitar o InfiniBand e configurar o MPI nas VMs.

Imagens de VM do Ubuntu

As imagens base de VM do Ubuntu Server 20.04 LTS e 22.04 LTS do Marketplace têm suporte das VMs compatíveis com RDMA SR-IOV e não SR-IOV. Saiba como habilitar o InfiniBand e configurar o MPI nas VMs.

Observação

O Mellanox OFED 5.1 e versões superiores não dão suporte a placas ConnectX3-Pro InfiniBand em tamanhos de VM da série N habilitados para SR-IOV com InfiniBand FDR (por exemplo, NCv3). Use o LTS Mellanox OFED versão 4.9-0.1.7.0 ou mais antigo nas VMs da Série N com placas ConnectX3-Pro. Para obter mais informações, consulte Drivers do Linux InfiniBand.

Imagens de VM do SUSE Linux Enterprise Server

Estas imagens de VM do Marketplace têm suporte: SLES 12 SP3 para HPC, SLES 12 SP3 para HPC (Premium), SLES 12 SP1 para HPC, SLES 12 SP1 para HPC (Premium), SLES 12 SP4 e SLES 15. Essas imagens de VM vêm pré-carregadas com os drivers Network Direct para RDMA (nos tamanho de VM não SR-IOV) e Intel MPI versão 5.1. Saiba como Configurar o MPI nas VMs.

Otimizar VMs

A seguir estão algumas configurações de otimização opcionais para melhorar o desempenho na VM.

Atualizar LIS

Se necessário para funcionalidade ou desempenho, é possível instalar ou atualizar os drivers do Integration Services do Linux (LIS) em distribuições do sistema operacional com suporte, especialmente implantando usando uma imagem personalizada ou uma versão mais antiga do sistema operacional, como CentOS/RHEL 6.x ou versão anterior do 7.x.

wget https://aka.ms/lis
tar xzf lis
pushd LISISO
sudo ./upgrade.sh

Recuperar memória

Recupere memória automaticamente para melhorar o desempenho e evitar o acesso remoto a ela.

sudo echo 1 >/proc/sys/vm/zone_reclaim_mode

Mantenha o modo de recuperação de memória após a reinicialização da VM:

sudo echo "vm.zone_reclaim_mode = 1" >> /etc/sysctl.conf sysctl -p

Desabilitar Firewall e SELinux

sudo systemctl stop iptables.service
sudo systemctl disable iptables.service
sudo systemctl mask firewalld
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
sudo iptables -nL
sudo sed -i -e's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

Desabilitar cpupower

sudo service cpupower status

Se habilitado, desabilite-o:

sudo service cpupower stop
sudo systemctl disable cpupower

Configurar o WALinuxAgent

sudo sed -i -e 's/# OS.EnableRDMA=y/OS.EnableRDMA=y/g' /etc/waagent.conf

Opcionalmente, é possível desabilitar o WALinuxAgent antes de executar um trabalho e habilitá-lo após o trabalho para maximizar a disponibilidade de recursos da VM à carga de trabalho de HPC.

Próximas etapas