Microsoft HPC Pack

Microsoft HPC Pack è una soluzione HPC gratuita basata su Microsoft Azure con tecnologie Windows Server e supporta un'ampia gamma di carichi di lavoro HPC. Questa pagina articola le funzionalità e i dettagli di configurazione per l'integrazione di HPC Pack con Cyclecloud.

Limitazioni e versioni supportate

Microsoft HPC Pack 2016 (con l'aggiornamento 3) e Microsoft HPC Pack 2019 sono supportati in CycleCloud con limitazioni seguenti:

  • Il cluster deve essere creato in un Dominio di Active Directory.
  • Il cluster può contenere solo un singolo nodo head.
  • La disponibilità elevata nel nodo head non è ancora supportata.
  • La personalizzazione dell'immagine della macchina virtuale del nodo head non è supportata.
  • I nodi di calcolo Linux non sono ancora supportati.
  • Il nodo head richiede l'accesso a Internet in uscita per scaricare il file binario Nuget e Python3.
  • La configurazione dell'interfaccia della riga di comando e cloud-init non è ancora supportata.

Prerequisiti

Dominio di Active Directory

Attualmente tutti i nodi HPC Pack devono essere aggiunti a un Dominio di Active Directory. Se si distribuisce il cluster HPC Pack in una rete virtuale che dispone di una connessione VPN da sito a sito o ExpressRoute con la rete aziendale, in genere esiste già un Dominio di Active Directory esistente. Se non si dispone ancora di un dominio AD nella rete virtuale, è possibile scegliere di creare un nuovo dominio DI ACTIVE promuovendo il nodo head come controller di dominio.

Azure Key Vault

Microsoft HPC Pack richiede un certificato PFX per proteggere la comunicazione del nodo e richiede anche le credenziali utente del dominio AD per aggiungere i nodi al dominio AD. Anche se è possibile specificare direttamente un file PFX, la password di protezione e la password utente nel modello, è consigliabile usare Azure Key Vault per la gestione sicura del certificato e della password utente. Fare riferimento a Crea un certificato di Key Vault di Azure.

Il cluster richiede anche nome utente e password di un account amministratore di Active Directory per aggiungere i nodi al dominio durante la creazione. È consigliabile usare Azure Key Vault.

Identità gestita assegnata dall'utente di Azure

Per usare azure Key Vault per il certificato e le credenziali, è necessario creare un'identità gestita assegnata dall'utente di Azure e concedere l'autorizzazione Get per il segreto e il certificato dell'Key Vault di Azure.

È possibile fare riferimento a questa esercitazione Key Vault per la creazione di Key Vault e un'identità gestita con accesso Key Vault.

È consigliabile usare Azure Role-Based Controllo di accesso per assegnare le autorizzazioni di Key Vault all'identità gestita.

Ruoli del nodo HPC Pack

Nel cluster HPC Pack sono disponibili tre ruoli di nodo diversi:

  • Nodo head: fornisce i servizi di gestione e pianificazione dei processi del cluster. Attualmente è supportato solo un singolo nodo head con database locali.
  • Nodo broker: riceve le richieste da un client SOA, le distribuisce agli host del servizio nei nodi di calcolo e quindi raccoglie le risposte e le invia al client. I nodi broker verranno creati nella matrice di nodi broker. È necessario creare nodi broker se si vuole eseguire un carico di lavoro SOA nel cluster.
  • Nodo di calcolo: accetta ed esegue processi del cluster. I nodi di calcolo verranno creati nella matrice di nodi cn .

Creare un nuovo cluster HPC Pack

È possibile fare clic sull'icona Microsoft HPC Pack in Utilità di pianificazione per creare un nuovo cluster Microsoft HPC Pack.

Nella pagina Informazioni specificare un nome cluster univoco per il cluster, poiché verrà usato come nome computer NetBIOS del nodo head, assicurarsi che sia univoco nel dominio DI ACTIVE e conforme alle convenzioni di denominazione.

Basic Settings

  • Versione di HPC Pack: è possibile selezionare HPC Pack 2019 o HPC Pack 2016 (con l'aggiornamento 3). È consigliabile usare la versione più recente di HPC Pack, ad esempio HPC Pack 2019.
  • Macchine virtuali: è possibile selezionare l'area di Azure in cui si vuole creare il cluster HPC Pack e il tipo di macchina virtuale per ogni ruolo del nodo del cluster. È anche possibile specificare Num. Broker per creare uno o più nodi broker se si desidera eseguire carichi di lavoro SOA nel cluster.

Ridimensionamento automatico

Il cluster viene avviato senza nodi di calcolo. È possibile abilitare la scalabilità automatica per aumentare o ridurre automaticamente i nodi di calcolo a seconda dei carichi di lavoro del cluster, è possibile usare Max Core per specificare il numero massimo di core di calcolo vCPU del cluster. Il ridimensionamento automatico viene eseguito ogni minuto come attività pianificata di Windows nel nodo head.

Esistono due opzioni di ridimensionamento per i nodi di calcolo: Deallocate o Termina. Se si sceglie l'opzione Termina , il cluster HPC Pack rimuoverà sempre le macchine virtuali del nodo di calcolo su larga scala. Se si sceglie l'opzione Deallocate , il cluster HPC Pack deallocaterà le macchine virtuali del nodo di calcolo su larga scala e le gestirà per un numero massimo di giorni configurabile (giorni di conservazione vm). I nodi di calcolo deallocati non verranno rimossi dal cluster HPC Pack purché siano ancora conservati. Tuttavia, verranno prese offline e visualizzate come non raggiungibile nel cluster HPC Pack. L'opzione Deallocate è consigliata per il cluster HPC Pack perché può ridurre significativamente il tempo di preparazione del nodo su larga scala e si paga solo per l'archiviazione su disco delle macchine virtuali deallocate.

Impostazioni dell'infrastruttura

  • Rete virtuale: è possibile selezionare una rete virtuale esistente e una subnet in cui verrà creato il cluster HPC Pack.
  • Dominio di Active Directory: se nella rete virtuale è già presente un dominio ACTIVE, specificare il nome di dominio completo e il percorso dell'unità organizzativa in cui verranno aggiunti i nodi del cluster. In alternativa, selezionare Nuovo dominio AD per creare un nuovo dominio DI ACTIVE promuovendo il nodo head come controller di dominio.
  • Segreti e certificati: è consigliabile selezionare Usa KeyVault per usare Azure Key Vault per passare il certificato di comunicazione del nodo e la password utente. In Identità msi selezionare Identità assegnata dall'utente di Azure creata nell'elenco a discesa e specificare il nome dell'insieme di credenziali delle chiavi di Azure creato nei prerequisiti.
  • Credenziali utente: in Nome utente specificare il nome utente di dominio. In Segreto password specificare il nome segreto di Azure Key Vault creato in Prerequisiti per archiviare la password utente del dominio.
  • Certificato PFX: in Nome certificato specificare il nome del certificato di Azure Key Vault creato nei prerequisiti.

Impostazioni avanzate

  • Impostazioni di Azure: selezionare le credenziali cloud di Azure dall'elenco a discesa.
  • Software del cluster: specificare il sistema operativo per ogni ruolo del nodo del cluster.
  • Rete avanzata: per impostazione predefinita, i server DNS configurati nella rete virtuale verranno applicati a tutti i nodi HPC, è possibile specificare facoltativamente il server DNS se si vuole usare un server DNS diverso. È anche possibile selezionare HN Public IP per assegnare un indirizzo IP pubblico per il nodo head.

interfaccia della riga di comando di azhpcpack

L'interfaccia della riga di comando diazhpcpack.ps1 è l'interfaccia principale per tutto il comportamento di scalabilità automatica (chiamate azhpcpack.ps1 autoscaleattività pianificate). L'interfaccia della riga di comando è disponibile in C:\cycle\hpcpack-autoscaler\bin)

L'interfaccia della riga di comando può essere usata per diagnosticare i problemi relativi alla scalabilità automatica o per controllare manualmente il ridimensionamento del cluster dall'interno del nodo Head.

Comando Descrizione
scalabilità automatica Processo di scalabilità automatica end-to-end, tra cui creazione, eliminazione e aggiunta di nodi.
bucket Stampa le informazioni sul bucket di scalabilità automatica, ad esempio limiti e così via
config Scrive la configurazione di scalabilità automatica effettiva, dopo qualsiasi pre-elaborazione, in stdout
create_nodes Creare un set di nodi con vari vincoli. Versione dell'interfaccia nodemanager.
default_output_columns Output delle colonne di output predefinite per un comando facoltativo.
delete_nodes Eliminare il nodo ed espellere dal cluster.
initconfig Crea una configurazione di scalabilità automatica iniziale. Scrive in stdout.
limiti Scrive un set dettagliato di limiti per ogni bucket. Impostazione predefinita in json a causa del numero di campi.
nodes Nodi di query.
refresh_autocomplete Aggiorna le informazioni di completamento automatico locale per le risorse e i nodi specifici del cluster.
retry_failed_nodes Esegue il tentativo di tentativo di tutti i nodi in uno stato non riuscito.
validate_constraint Convalida quindi gli output come JSON uno o più vincoli.