Configurare lo stack di cluster HPC da Oracle Cloud Marketplace

Lo stack di cluster HPC utilizza Terraform per distribuire le risorse Oracle Cloud Infrastructure. Lo stack creerà nodi GPU, storage, networking standard e networking cluster a elevate prestazioni e un nodo bastion/head per l'accesso e la gestione del cluster.

Distribuisci cluster GPU

L'account Oracle Cloud deve appartenere a un gruppo con l'autorizzazione per distribuire e gestire queste risorse. Per ulteriori dettagli sui requisiti dei criteri, vedere le istruzioni d'uso del cluster HPC.

Puoi distribuire lo stack in un compartimento esistente, ma potrebbe essere più pulito se crei un compartimento specifico per il cluster.

Nota

Sebbene non vi sia alcun costo per utilizzare lo stack del Marketplace per eseguire il provisioning di un ambiente, al momento dell'avvio dello stack verranno addebitate le risorse di cui è stato eseguito il provisioning.
  1. Creare un compartimento per la tenancy e l'area e verificare che i criteri siano disponibili.
    1. Eseguire il login a OCI Console come utente Oracle Cloud per la tenancy e l'area in cui si desidera lavorare.
    2. Creare un compartimento per le risorse del cluster.
    3. Assicurarsi che i criteri OCI siano in atto per consentire la creazione del cluster.
      Ciò potrebbe richiedere assistenza all'amministratore della sicurezza o della rete. Di seguito è riportato un criterio di esempio: "consenti al gruppo myGroup di gestire tutte le risorse nel compartimento compartment".
  2. Utilizzare lo stack di cluster HPC per distribuire il cluster GPU.
    1. Passare al Marketplace, quindi fare clic su Tutte le applicazioni.
    2. Nella casella Cerca elenchi immettere Cluster HPC.

      Nota

      Se lo stack del cluster HPC non è disponibile in OCI Marketplace nella tenancy, è possibile duplicare lo stack da GitHub (git clone https://github.com/oracle-quickstart/oci-hpc.git) e importarlo in OCI Resource Manager. Ciò fornisce le stesse funzionalità, ma richiede l'accesso a una "immagine del sistema operativo personalizzata" adatta per i nodi GPU.
    3. Fare clic su Cluster HPC.
    4. Selezionare una versione.
      Abbiamo usato la versione predefinita v2.10.4.1.
    5. Selezionare un compartimento in cui creare il cluster
    6. Fare clic su Avvia stack.

Configura il cluster.

Quando viene avviato lo stack, completare le pagine Informazioni sullo stack e Configurazione per iniziare a configurare il cluster.

  1. Completare la pagina Informazioni sullo stack:
    1. Immettere un nome per il cluster.
    2. (Opzionale) Aggiungere una breve descrizione.
    3. Fare clic su Avanti.

    Viene visualizzata la pagina Variabili di configurazione.

  2. Configurare il cluster.
    La pagina Variabili di configurazione offre numerose opportunità per personalizzare il cluster in base alle proprie esigenze. Non copriamo ogni opzione in dettaglio. Piuttosto, forniamo indicazioni su dove sono necessarie impostazioni non predefinite per creare un cluster GPU che supporti il software cluster NVIDIA.
    1. In Chiave SSH pubblica aggiungere una chiave pubblica che consenta di eseguire il login al cluster.
    2. Selezionare la casella di controllo utilizza nome cluster personalizzato, quindi immettere un nome host di base.
      Utilizzato come prefisso per i nomi host del bastion e del nodo di login.
  3. Utilizzare le opzioni Headnode per personalizzare il bastion.
    Questa istanza funge da nodo di login principale, il controller Slurm, e può essere utilizzata anche per alcune build e altre attività a supporto del cluster. Qui è possibile regolare la capacità della CPU, della memoria e del volume di avvio in base alle proprie esigenze
  4. Utilizzare le opzioni del nodo di calcolo per selezionare il tipo e la quantità di nodi di lavoro nel cluster. Puoi distribuire questi nodi con un'immagine del sistema operativo dal Marketplace o fornire un'immagine personalizzata con la build del sistema operativo preferita.
    • Dominio di disponibilità: se stai lavorando in un'area con più domini di disponibilità (AD), seleziona l'AD con la migliore disponibilità delle risorse GPU.
    • Selezionare Usa rete cluster.
    • Forma dei nodi di calcolo: selezionare la forma GPU Bare Metal in uso in questo cluster. ad esempio BM.GPU4.8.
    • Dimensione cluster iniziale: immettere il numero di nodi Bare Metal di cui eseguire il provisioning.
    • Per creare con un'immagine del sistema operativo preconfigurata dal Marketplace, seleziona usa l'immagine di marketplace. Quindi, in Versione immagine, selezionare una delle immagini GPU per un sistema operativo preconfigurato con driver per le GPU e il networking RDMA.
    • Usa immagine di marketplace: se si sta creando il cluster con un'immagine personalizzata, deselezionare questa casella di controllo e selezionare Usa immagine non supportata, quindi in OCID immagine fornire l'OCID dell'immagine personalizzata già caricata nella tenancy.
    • Usa agente di calcolo: questa opzione potrebbe essere necessaria per le immagini del Marketplace.
  5. (Facoltativo) Nodo di login aggiuntivo fornisce un secondo host per consentire agli utenti del cluster di interagire con il cluster. Forma, ocpus e memoria possono essere personalizzati per soddisfare le proprie esigenze.
  6. Le opzioni di storage avanzate offrono diversi modi per preconfigurare lo storage condiviso che sarà disponibile nel cluster. Fare clic su Mostra opzioni di memorizzazione avanzate per espandere le selezioni.
    • La directory home del bastion è un file NFS condiviso su tutti i nodi del cluster. Fa parte del volume di avvio di Headnode, che è possibile personalizzare nelle opzioni Headnode.
    • Per più storage condiviso, selezionare Volume a blocchi aggiuntivo per lo spazio condiviso e immettere la capacità. Questo volume è collegato al bastion e condiviso nel cluster come /nfs/cluster.
    • Lo spazio vuoto NFS condiviso dal volume NVME o a blocchi condivide la capacità NVMe del primo nodo di calcolo nel cluster come /nfs/scratch. Ciò fornisce uno storage con prestazioni più elevate rispetto ai volumi headnode, ma può fornire minore capacità e disponibilità.
    • Attiva disco locale creerà un file system da NVMe su ciascun nodo di calcolo e lo eseguirà in locale su tale nodo.
    • One Logical Volume utilizza LVM per creare un volume più grande da più dispositivi NVMe.
    • La ridondanza aumenta l'affidabilità (ma dimezza la capacità utilizzabile) dello storage NVMe eseguendo il mirroring dei dispositivi.
  7. Utilizzare le opzioni di rete per selezionare la VCN.
    • Usa VCN esistente: deselezionata per impostazione predefinita. Se deselezionata, viene eseguito il provisioning di una nuova VCN. Selezionare questa casella di controllo per eseguire il provisioning del cluster all'interno di una VCN e di una subnet esistenti. Ciò potrebbe semplificare l'integrazione di questo cluster e di altre risorse della tenancy.
  8. Utilizzare Software per selezionare il software da installare.
    • Selezionare Install SLURM per fornire la pianificazione e la gestione dei job SLURM.
    • (Facoltativo) Selezionare Installa strumenti di monitoraggio cluster HPC per fornire ulteriori informazioni sull'attività e sull'utilizzo del cluster.
    • Selezionare Installa NVIDIA Enroot per carichi di lavoro GPU containerizzati. In questo modo, l'ambiente viene preparato per eseguire carichi di lavoro in NVIDIA PyTorch, NVIDIA NeMo Platform e altri container.

      Nota

      È importante selezionare questa opzione.
    • Selezionare Installa plugin NVIDIA Pyxis per Slurm.
    • Selezionare Abilita PAM per limitare l'accesso di login ai nodi di calcolo.
  9. Debug: assicurarsi che l'opzione Configura sistema sia selezionata (impostazione predefinita).
  10. Fare clic su Avanti per esaminare le impostazioni di configurazione.

    In revisione, Configurazione cluster mostra tutte le selezioni non predefinite. È possibile tornare alla pagina Precedente per apportare modifiche e rivedere tutte le impostazioni.

  11. Selezionare Esegui applicazione, quindi fare clic su Crea per avviare lo stack nella tenancy e creare il cluster.
    Lo stack viene creato in OCI Resource Manager e avviato con le specifiche per iniziare immediatamente il provisioning.

    Il processo richiederà alcuni minuti. Il provisioning dei nodi richiede solo alcuni minuti per nodo di calcolo, ma l'installazione di software aggiuntivo nei nodi aggiunge tempo alla build. È possibile monitorare lo stato di avanzamento della build in OCI Console. Andare a Resource Manager, quindi Job per esaminare il log job più recente per individuare attività ed eventuali errori. Quando lo stato del job di Resource Manager riporta Riuscito, la distribuzione è stata completata.

    Se lo stato finale non riesce, rivedere il log job per i dettagli. Per i problemi relativi alle istanze di computazione e alle reti cluster, ulteriori informazioni possono essere disponibili nelle richieste di lavoro di rete cluster. Per passare alla pagina, andare a Compute, Reti cluster, Dettagli rete cluster, quindi Richieste di lavoro di rete cluster. Selezionare la richiesta di lavoro più recente per visualizzare i dettagli.

  12. Per le build riuscite, l'indirizzo IP del bastion viene segnalato alla fine del log del job. Se è stato configurato un nodo di login aggiuntivo, viene visualizzato anche l'indirizzo IP del nodo di login. Di seguito sono riportati alcuni esempi.
    Apply complete! Resources: 23 added, 0 changed, 0 destroyed.
    
    Outputs:
    RDMA_NIC_metrics_url = "https://objectstorage.us-gov-phoenix-1.oraclecloud.com
    backup = "No Slurm Backup Defined"
    bastion = 139.87.214.247
    login = "No Login Node Defined"
    private_ips = 172.16.6.4 172.16.7.109"
  13. Prendere nota dell'indirizzo IP pubblico del bastion, in quanto necessario per eseguire il login al cluster.
    Puoi anche individuare gli indirizzi IP nella console OCI in Compute, quindi in Istanze.