Configurare InfiniBand
Questo articolo fa riferimento a CentOS, una distribuzione Linux prossima allo stato EOL (End of Life, fine del ciclo di vita). Valutare le proprie esigenze e pianificare di conseguenza. Per ulteriori informazioni, consultare la Guida alla fine del ciclo di vita di CentOS.
Si applica a: ✔️ macchine virtuali Linux ✔️ macchine virtuali Windows ✔️ set di scalabilità flessibili ✔️ set di scalabilità uniformi
Suggerimento
Provare lo strumento Selettore di macchine virtuali per trovare altre dimensioni più adatte per il carico di lavoro.
Questo articolo condivide alcune informazioni sulle istanze con supporto per RDMA da usare su una rete InfiniBand (IB). L'architettura di rete InfiniBand include una struttura ad albero fat completo(ovvero una topologia di rete che fornisce larghezza di banda elevata e bassa latenza), garantendo una simmetria bisezione non bloccante. Questa configurazione offre una larghezza di banda uguale tra due macchine virtuali (VM) nello stesso set di scalabilità di macchine virtuali.This configuration provides equal bandwidth between any two virtual machines (VMS) within the same virtual machine scale set (VMSS).
Istanze con supporto per RDMA
La maggior parte delle dimensioni delle macchine virtuali HPC include un'interfaccia di rete per la connettività RDMA (Remote Direct Memory Access). Anche le dimensioni delle serie N selezionate designate con 'r' sono compatibili con RDMA. Questa interfaccia è oltre all'interfaccia di rete Ethernet standard di Azure disponibile nelle altre dimensioni della macchina virtuale.
Questa interfaccia secondaria consente alle istanze con supporto per RDMA di comunicare tramite una rete InfiniBand, che opera a velocità HDR per HBv4, HBv3, HBv2, frequenze EDR per HB, HC, HX, NDv2 e FDR per H16r, H16mr e altre macchine virtuali serie N con supporto per RDMA. Queste funzionalità RDMA possono migliorare la scalabilità e le prestazioni delle applicazioni basate su Message Passing Interface (MPI).
Nota
Supporto SR-IOV: in Azure HPC sono attualmente disponibili due classi di macchine virtuali a seconda che siano abilitate per InfiniBand. Attualmente, quasi tutte le macchine virtuali abilitate per RDMA o InfiniBand in Azure sono abilitate per SR-IOV, ad eccezione di H16r, H16mr e NC24r. RDMA è abilitato solo sulla rete InfiniBand ed è supportato per tutte le macchine virtuali con supporto per RDMA. L'indirizzo IP su IB è supportato solo nelle macchine virtuali abilitate per SR-IOV. RDMA non è abilitato tramite la rete Ethernet.
Sistema operativo: vengono comunemente usate distribuzioni Linux come CentOS, RHEL, AlmaLinux, Ubuntu, SUSE. Windows Server 2016 e versioni più recenti sono supportati in tutte le macchine virtuali della serie HPC. Si noti che Windows Server 2012 R2 non è supportato in HBv2 a partire da quando le dimensioni delle macchine virtuali con più di 64 core (virtuali o fisici) non sono supportate. Per un elenco delle immagini di macchine virtuali Linux supportate in Azure Marketplace, vedere Immagini di macchine virtuali per un elenco di immagini di macchine virtuali Linux supportate e come possono essere configurate in modo appropriato. Le rispettive pagine delle dimensioni della macchina virtuale elencano anche il supporto dello stack software.
InfiniBand e driver : nelle macchine virtuali abilitate per InfiniBand sono necessari i driver appropriati per abilitare RDMA. Vedere Abilitazione di InfiniBand per informazioni sulle estensioni delle macchine virtuali o sull'installazione manuale dei driver InfiniBand.
MPI : le dimensioni delle macchine virtuali abilitate per SR-IOV in Azure consentono di usare quasi qualsiasi tipo di MPI con Mellanox OFED. Per altre informazioni sulla configurazione di MPI in macchine virtuali HPC in Azure, vedere Configurare MPI per HPC .
Nota
Spazio indirizzi di rete RDMA: la rete RDMA in Azure riserva lo spazio indirizzi 172.16.0.0/16. Per eseguire applicazioni MPI in istanze distribuite in una rete virtuale di Azure, assicurarsi che lo spazio degli indirizzi di rete virtuale non si sovrapponga alla rete RDMA.
Opzioni di configurazione del cluster
Azure offre diverse opzioni per creare cluster di macchine virtuali HPC in grado di comunicare tramite la rete RDMA, tra cui:
Macchine virtuali: distribuire le macchine virtuali HPC con supporto per RDMA nello stesso set di scalabilità o nello stesso set di disponibilità (quando si usa il modello di distribuzione azure Resource Manager). Se si usa il modello di distribuzione classico, distribuire le macchine virtuali nello stesso servizio cloud.
Set di scalabilità di macchine virtuali: in un set di scalabilità di macchine virtuali assicurarsi di limitare la distribuzione a un singolo gruppo di posizionamento per la comunicazione InfiniBand all'interno del set di scalabilità. In un modello di Resource Manager, ad esempio, impostare la proprietà
singlePlacementGroup
sutrue
.
Si noti che le dimensioni massime del set di scalabilità che possono essere attivate con singlePlacementGroup=true
sono limitate a 100 macchine virtuali per impostazione predefinita. Se le esigenze di scalabilità dei processi HPC sono superiori a 100 macchine virtuali in un singolo tenant, è possibile richiedere un aumento, aprire una richiesta di supporto clienti online senza costi aggiuntivi. Il limite per il numero di macchine virtuali in un singolo set di scalabilità può essere aumentato a 300. Si noti che quando si distribuiscono macchine virtuali usando set di disponibilità, il limite massimo è di 200 macchine virtuali per ogni set di disponibilità.
Il set di scalabilità di macchine virtuali funge anche da limite di isolamento tra i carichi di lavoro all'interno dello stesso cluster, assicurando che le istanze in vmSS diverse rimangano isolate l'una dall'altra per garantire la sicurezza.
Nota
MPI tra le macchine virtuali: se RDMA (ad esempio tramite la comunicazione MPI) è necessario tra le macchine virtuali, assicurarsi che le macchine virtuali si trovino nello stesso set di scalabilità di macchine virtuali o nello stesso set di disponibilità.
Azure CycleCloud : creare un cluster HPC usando Azure CycleCloud per eseguire processi MPI.
Azure Batch : creare un pool di Azure Batch per eseguire carichi di lavoro MPI. Per usare istanze a elevato uso di calcolo quando si eseguono applicazioni MPI con Azure Batch, vedere Usare le attività a istanze multiple per eseguire applicazioni MPI (Message Passing Interface) in Azure Batch.
Microsoft HPC Pack HPC Pack - include un ambiente di runtime per MS-MPI che usa la rete RDMA di Azure quando viene distribuito in macchine virtuali Linux con supporto per RDMA. Per le distribuzioni di esempio, vedere Configurare un cluster LINUX RDMA con HPC Pack per eseguire applicazioni MPI.
Considerazioni sulla distribuzione
Sottoscrizione di Azure: per distribuire numerose istanze a elevato utilizzo di calcolo, prendere in considerazione una sottoscrizione con pagamento in base al consumo o altre opzioni di acquisto. Con un account gratuito di Azureè possibile usare solo un numero limitato di core di calcolo di Azure.
Prezzi e disponibilità: controllare i prezzi e la disponibilità delle macchine virtuali in base alle aree di Azure.
Quota di core: potrebbe essere necessario aumentare la quota di core nella sottoscrizione di Azure rispetto al valore predefinito. La sottoscrizione può anche limitare il numero di core che è possibile distribuire in alcune famiglie di dimensioni di macchina virtuale, inclusa la serie H. Per richiedere un aumento della quota, è possibile aprire una richiesta di assistenza clienti online senza alcun addebito. I limiti predefiniti possono variare in base alla categoria della sottoscrizione.
Nota
Se si hanno esigenze di capacità su larga scala, contattare il supporto di Azure. Le quote di Azure sono limiti di credito e non garanzie di capacità. A prescindere dalla quota, viene addebitato solo l'uso dei core effettivamente impiegati.
Rete virtuale: non è necessaria una rete virtuale di Azure per usare le istanze a elevato utilizzo di calcolo. Per molte distribuzioni è tuttavia necessaria almeno una rete virtuale di Azure basata sul cloud. Per l'accesso alle risorse locali, è necessaria anche una connessione da sito a sito. Quando è necessaria, creare una nuova rete virtuale per distribuire le istanze. L'aggiunta di una VM a elevato uso di calcolo a una rete virtuale in un gruppo di affinità non è supportata.
Ridimensionamento : grazie all'hardware specializzato, è possibile ridimensionare solo le istanze a elevato utilizzo di calcolo all'interno della stessa famiglia di dimensioni (serie H o serie N). Ad esempio, è possibile ridimensionare una VM della serie H solo da una dimensione della serie H a un'altra. Potrebbero essere necessarie considerazioni aggiuntive sul supporto dei driver InfiniBand e sui dischi NVMe per determinate macchine virtuali.
Passaggi successivi
- Altre informazioni sulla configurazione delle macchine virtuali, l'abilitazione di InfiniBand, la configurazione di MPI e l'ottimizzazione delle applicazioni HPC per Azure in Carichi di lavoro HPC.
- Esaminare la panoramica della serie HBv3 e la panoramica della serie HC.
- Per informazioni sugli annunci più recenti, sugli esempi di carico di lavoro HPC e sui risultati delle prestazioni, vedere i Blog della community tecnica di Calcolo di Azure.
- Per un quadro generale sull'architettura per l'esecuzione di carichi di lavoro HPC, vedere HPC (High Performance Computing) in Azure.