Condividi tramite


Configurare un cluster HPC (Hybrid High Performance Computing) con Microsoft HPC Pack e nodi di calcolo PaaS di Azure su richiesta

Usare Microsoft HPC Pack 2016 Update 1 (o versione successiva) e Azure per configurare un cluster HPC (Hybrid High Performance Computing) di piccole dimensioni. Il cluster illustrato in questo articolo è costituito da un nodo head HPC Pack locale e da alcuni nodi di calcolo distribuiti su richiesta in un servizio cloud di Azure. È quindi possibile eseguire processi di calcolo nel cluster ibrido.

cluster HPC ibrido

Questa esercitazione illustra un approccio, talvolta denominato "burst nel cloud", per usare risorse di Azure scalabili e su richiesta per eseguire applicazioni a elevato utilizzo di calcolo.

In questa esercitazione non si presuppone alcuna esperienza precedente con i cluster di calcolo o HPC Pack. È progettato solo per facilitare la distribuzione rapida di un cluster di calcolo ibrido a scopo dimostrativo. Per considerazioni e passaggi per distribuire un cluster HPC Pack ibrido su larga scala in un ambiente di produzione, vedere le indicazioni dettagliate . Se si vuole usare la versione precedente di HPC Pack, vedere documentazione di HPC Pack 2012 R2

Prerequisiti

  • sottoscrizione di Azure: se non si ha una sottoscrizione di Azure, è possibile creare un account gratuito in pochi minuti.

  • Un computer locale che esegue Windows Server 2012 R2 o Windows Server 2016: usare questo computer come nodo head del cluster HPC. Se windows Server non è già in esecuzione, è possibile scaricare e installare una versione di valutazione .

    • Il computer deve essere aggiunto a un dominio di Active Directory. A scopo di test, è possibile configurare il computer del nodo head come controller di dominio. Per aggiungere il ruolo del server Servizi di dominio Active Directory e alzare di livello il computer del nodo head come controller di dominio, vedere la documentazione per Windows Server.
    • Per supportare HPC Pack, il sistema operativo deve essere installato in una delle lingue seguenti: inglese, giapponese o cinese (semplificato).
    • Verificare che siano installati aggiornamenti importanti e critici.
  • HPC Pack 2016 - Scaricare pacchetto di installazione per la versione più recente gratuitamente e copiare i file nel computer del nodo head.

  • account di dominio: questo account deve essere configurato con autorizzazioni di amministratore locale nel nodo head per installare HPC Pack.

  • connettività TCP sulla porta 443 dal nodo head ad Azure (out-bound).

Installare HPC Pack nel nodo head

Installare prima Microsoft HPC Pack nel computer locale che esegue Windows Server. Questo computer diventa il nodo head del cluster.

  1. Accedere al nodo head usando un account di dominio con autorizzazioni di amministratore locale.

  2. Avviare l'Installazione guidata HPC Pack eseguendo Setup.exe dai file di installazione di HPC Pack.

  3. Nella schermata di installazione di HPC Pack 2016 fare clic su Nuova installazione o aggiungere nuove funzionalità a un'installazione esistente.

    di installazione di HPC Pack 2016

  4. Nella pagina Contratto utente software Microsoftfare clic su Avanti.

  5. Nella pagina Selezionare il tipo di installazione fare clic su Creare un nuovo cluster HPC creando un nodo heade quindi fare clic su Avanti.

  6. La procedura guidata esegue diversi test di preinstallazione. Fare clic su Avanti nella pagina regole di installazione se tutti i test vengono superati. In caso contrario, esaminare le informazioni fornite e apportare le modifiche necessarie nell'ambiente. Eseguire di nuovo i test o, se necessario, avviare nuovamente l'Installazione guidata.

  7. Nella pagina configurazione del database HPC assicurarsi che nodo head sia selezionato per tutti i database HPC e quindi fare clic su Avanti.

    di configurazione del database

  8. Accettare selezioni predefinite nelle pagine rimanenti della procedura guidata. Nella pagina Installa componenti necessari fare clic su Installa.

    Installare

  9. Al termine dell'installazione, deselezionare Avviare gestione cluster HPC e quindi fare clic su Fine. Avviare Gestione cluster HPC in un passaggio successivo.

    Fine

Preparare la sottoscrizione di Azure

Seguire questa procedura nel portale di Azure con la sottoscrizione di Azure. Dopo aver completato questi passaggi, è possibile distribuire i nodi di Azure dal nodo head locale.

Nota

Prendere nota anche dell'ID sottoscrizione di Azure, necessario in un secondo momento. Trovare l'ID nella delle sottoscrizioni nel portale.

Caricare il certificato di gestione predefinito

La versione precedente di HPC Pack installa un certificato autofirmato nel nodo head, denominato certificato di gestione di Microsoft HPC Azure predefinito, che è possibile caricare come certificato di gestione di Azure. Tuttavia, da HPC Pack 2016 Update 1 questo certificato non viene fornito per impostazione predefinita, pertanto è necessario preparare un certificato autofirmato con il comando nel nodo head ed esportare il certificato come tmpfolder\hpccert.cer:

New-SelfSignedCertificate -Subject "CN=HPC Pack Management" -KeySpec KeyExchange -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.1,1.3.6.1.5.5.7.3.2") -CertStoreLocation cert:\LocalMachine\My -KeyExportPolicy Exportable -NotAfter (Get-Date).AddYears(5) -NotBefore (get-Date).AddDays(-1)
  1. Dal computer del nodo head importare il certificato da tmpfolder\hpccert.cer a LocalMachine\My. Si noti che la versione precedente di HPC Pack non è simile a quella precedente, non è necessario importare il certificato in LocalMachine\Trusted Root più.

  2. Accedere al portale di Azure .

  3. Fare clic su Sottoscrizioni>your_subscription_name.

  4. Fare clic su Certificati di gestione>Carica, individuare il nodo head per il file tmpfolder\hpccert.cer. Fare quindi clic su Carica.

L'certificato di gestione di Azure HPC predefinito viene visualizzato nell'elenco dei certificati di gestione.

Creare un servizio cloud di Azure

Nota

Per ottenere prestazioni ottimali, creare il servizio cloud e l'account di archiviazione (in un passaggio successivo) nella stessa area geografica.

  1. Nel portale fare clic su Servizi cloud (versione classica)>+Aggiungi.

  2. Digitare un nome DNS per il servizio, scegliere un gruppo di risorse e una posizione e quindi fare clic su Crea.

Creare un account di archiviazione di Azure

  1. Nel portale fare clic su Account di archiviazione (versione classica)>+Aggiungi.

  2. Digitare un nome per l'account e selezionare il modello di distribuzione classico .

  3. Scegliere un gruppo di risorse e una posizione e lasciare le altre impostazioni in valori predefiniti. Fare quindi clic su Crea. Qui è necessario selezionare Nuovo o Selezionare un gruppo di risorse con prefisso Default-Storage-<your_picked_Location> altrimenti il servizio non sarà in grado di individuare l'account di archiviazione.

Configurare il nodo head

Per usare HPC Cluster Manager per distribuire i nodi di Azure e inviare processi, eseguire prima alcuni passaggi di configurazione del cluster necessari.

  1. Nel nodo head avviare Gestione cluster HPC. Se viene visualizzata la finestra di dialogo Seleziona nodo head , fare clic su Computer locale. Viene visualizzato il Deployment To-Do List .The Deployment To-do List.

  2. In Attività di distribuzione necessariefare clic su Configurare la rete.

    Configurare di rete

  3. Nella Configurazione guidata rete selezionare Tutti i nodi solo in una rete aziendale (topologia 5). Questa configurazione di rete è la più semplice a scopo dimostrativo.

    topologia 5

  4. Fare clic su Avanti per accettare i valori predefiniti nelle pagine rimanenti della procedura guidata. Quindi, nella scheda Rivedi fare clic su Configura per completare la configurazione di rete.

  5. Nell'Deployment To-Do List (Elenco attività di distribuzione ) fare clic su Specificare le credenziali di installazione.

  6. Nella finestra di dialogo credenziali di installazione digitare le credenziali dell'account di dominio usato per installare HPC Pack. Fare quindi clic su OK.

    credenziali di installazione

  7. Nell'Elenco attività distribuzione fare clic su Configurare la denominazione dei nuovi nodi.

  8. Nella finestra di dialogo Specificare la serie di denominazione dei nodi accettare la serie di denominazione predefinita e fare clic su OK. Completare questo passaggio anche se i nodi di Azure aggiunti in questa esercitazione vengono denominati automaticamente.

    di denominazione dei nodi

  9. Nell'Elenco attività di distribuzionefare clic su Creare un modello di nodo. Più avanti nell'esercitazione si userà il modello di nodo per aggiungere nodi di Azure al cluster.

  10. Nella Creazione guidata modello di nodo eseguire le operazioni seguenti:

    un. Nella pagina Scegliere tipo di modello di nodo fare clic su modello di nodo di Windows Azuree quindi su Avanti.

    modello di nodo

    b. Fare clic su Avanti per accettare il nome del modello predefinito.

    c. Nella pagina Specificare le informazioni sulla sottoscrizione immettere l'ID sottoscrizione di Azure (disponibile nelle informazioni sull'account Azure). Quindi, in Certificato di gestionecercare Gestione predefinita di Microsoft HPC Azure. Quindi fare clic su Avanti.

    modello di nodo

    d. Nella pagina Fornire informazioni sul servizio selezionare il servizio cloud e l'account di archiviazione creato in un passaggio precedente. Fare quindi clic su Avanti.

    modello di nodo

    e. Fare clic su Avanti per accettare i valori predefiniti nelle pagine specificare i nodi proxy, Specificare ruolo di lavoro e Specificare script di avvio della procedura guidata. Si noti che questo script verrà eseguito durante il provisioning prima che il nodo sia pronto come offline. Sono disponibili due registri per ottimizzare il comportamento predefinito. Ad esempio, se la chiave del Registro di sistema impostata dall'amministratore Microsoft.Hpc.Azure.AzureStartupTaskFailureEnable su 1, la distribuzione attenderà fino al termine dell'esecuzione dello script di avvio prima di impostare il nodo raggiungibile per i processi: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HPC Name:Microsoft.Hpc.Azure.AzureStartupTaskFailureEnable Type:REG_DWORD; (default is 0) e HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HPC Name:Microsoft.Hpc.Azure.AzureStartupTaskTimeoutSec Type:REG_DWORD; (default is 1800)

    f. Fare clic su Avanti per accettare i valori predefiniti nella pagina Configura rete virtuale di Microsoft Azure. Se si usa la VPN di Azure o expressroute con il tunnel forzato, è necessario usare il bilanciamento del carico interno di Azure, è sufficiente selezionare un indirizzo IP statico valido e gratuito dalla subnet.

    modello di nodo

    g. Fare clic su Avanti per fornire le credenziali nella pagina Configurare le credenziali di Desktop remoto. Fare clic su Avanti per configurare i criteri di disponibilità. Se si vuole abilitare la riduzione automatica in un secondo momento, è sufficiente scegliere Start and stop nodes manually. Quindi, nella scheda Rivedi fare clic su Crea per creare il modello di nodo.

    Nota

    Per impostazione predefinita, il modello di nodo di Azure include le impostazioni per l'avvio (provisioning) e l'arresto manuale dei nodi tramite Gestione cluster HPC, che in un secondo momento è possibile configurare aumento automatico. Facoltativamente, è possibile configurare una pianificazione per avviare e arrestare automaticamente i nodi di Azure.

Aggiungere nodi di Azure al cluster

Usare ora il modello di nodo per aggiungere nodi di Azure al cluster. L'aggiunta dei nodi al cluster archivia le informazioni di configurazione in modo che sia possibile avviarle (eseguirne il provisioning) in qualsiasi momento nel servizio cloud. La sottoscrizione viene addebitata solo per i nodi di Azure dopo l'esecuzione delle istanze nel servizio cloud.

Seguire questa procedura per aggiungere due nodi di piccole dimensioni.

  1. In Gestione cluster HPC fare clic su gestione dei nodi (denominata Resource Management nelle versioni correnti di HPC Pack) Aggiungi nodo.

    Aggiungi nodo

  2. Nella pagina Selezione metodo di distribuzione della procedura guidata Aggiungi nodo fare clic su Aggiungi nodi di Windows Azuree quindi fare clic su Avanti.

    Aggiungere node di Azure

  3. Nella pagina Specificare nuovi nodi selezionare il modello di nodo di Azure creato in precedenza (chiamato per impostazione predefinita modello predefinito di AzureNode). Specificare quindi 2 nodi di dimensioniSmalle quindi fare clic su Avanti.

    specificare i nodi

  4. Nella pagina Completamento della procedura guidata Aggiungi nodo fare clic su Fine.

    Due nodi di Azure, denominati AzureCN-0001 e AzureCN-0002, ora vengono visualizzati in HPC Cluster Manager. Entrambi si trovano nello stato non distribuito .

    aggiunti nodi

Avviare i nodi di Azure

Quando si vogliono usare le risorse del cluster in Azure, usare Gestione cluster HPC per avviare (effettuare il provisioning) dei nodi di Azure e portarli online.

  1. In Gestione cluster HPC fare clic su Node Management (denominata Resource Management nelle versioni correnti di HPC Pack) e selezionare i nodi di Azure.

  2. Fare clic su Starte quindi su OK.

    nodi start

    I nodi passano allo stato provisioning. Visualizzare il log di provisioning per tenere traccia dello stato di avanzamento del provisioning.

    effettuare il provisioning dei nodi

  3. Dopo alcuni minuti, i nodi di Azure completano il provisioning e si trovano nello stato offline. In questo stato, le istanze del ruolo sono in esecuzione ma non possono ancora accettare processi del cluster.

  4. Per verificare che le istanze del ruolo siano in esecuzione, nel portale di Azure fare clic su Servizi cloud (versione classica)>your_cloud_service_name.

    Verranno visualizzati due HpcWorkerRole istanze (nodi) in esecuzione nel servizio. HPC Pack distribuisce automaticamente anche due istanze HpcProxy (dimensioni medie) per gestire la comunicazione tra il nodo head e Azure.

    istanze in esecuzione

  5. Per portare online i nodi di Azure per eseguire i processi del cluster, selezionare i nodi, fare clic con il pulsante destro del mouse e quindi scegliere Bring Online.

    nodi offline

    Gestione cluster HPC indica che i nodi si trovano nello stato Online.

Eseguire un comando nel cluster

Per controllare l'installazione, usare il comando HPC Pack clusrun per eseguire un comando o un'applicazione in uno o più nodi del cluster. Come esempio semplice, usare clusrun per ottenere la configurazione IP dei nodi di Azure.

  1. Nel nodo head aprire un prompt dei comandi come amministratore.

  2. Digitare il comando seguente:

    clusrun /nodes:azurecn* ipconfig

  3. Se richiesto, immettere la password dell'amministratore del cluster. L'output dei comandi dovrebbe essere simile al seguente.

    Clusrun

Eseguire un processo di test

Inviare ora un processo di test eseguito nel cluster ibrido. Questo esempio è un semplice processo di sweep parametrico (un tipo di calcolo intrinsecamente parallelo). In questo esempio vengono eseguite sottoattività che aggiungono un numero intero a se stesso usando il comando impostare /a. Tutti i nodi del cluster contribuiscono a completare le sottoattività per i numeri interi da 1 a 100.

  1. In Gestione cluster HPC fare clic su Gestione processi >Nuovo processo di sweep parametrico.

    nuovo processo

  2. Nella finestra di dialogo nuovo processo di sweep parametrico riga di comandodigitare (sovrascrivendo la riga di comando predefinita visualizzata). Lasciare i valori predefiniti per le impostazioni rimanenti e quindi fare clic su Invia per inviare il processo.

    sweep parametrico

  3. Al termine del processo, fare doppio clic sul processo 'attività Sweep personale.

  4. Fare clic su Visualizza attivitàe quindi su una sottoattività per visualizzare l'output calcolato di tale sottoattività.

    risultati attività

  5. Per vedere quale nodo ha eseguito il calcolo per tale sottoattività, fare clic su nodi allocati. Il cluster potrebbe visualizzare un nome di nodo diverso.

    risultati attività

Arrestare i nodi di Azure

Dopo aver provato il cluster, arrestare i nodi di Azure per evitare addebiti non necessari per l'account. Questo passaggio arresta il servizio cloud e rimuove le istanze del ruolo di Azure.

  1. In Gestione cluster HPC, in Node Management (denominato Resource Management nelle versioni precedenti di HPC Pack), selezionare entrambi i nodi di Azure. Fare quindi clic su Arresta.

    arrestare i nodi

  2. Nella finestra di dialogo Arrestare i nodi di Windows Azure fare clic su Arresta.

  3. I nodi passano allo stato Arresto. Dopo alcuni minuti, Gestione cluster HPC mostra che i nodi sono Non distribuito.

    nodi non distribuiti

  4. Per verificare che le istanze del ruolo non siano più in esecuzione in Azure, nel portale di Azure fare clic su Servizi cloud (versione classica)>your_cloud_service_name. Nessuna istanza viene distribuita nell'ambiente di produzione.

    Questa operazione completa l'esercitazione.

Abilitare la riduzione automatica delle dimensioni per i nodi del ruolo di lavoro di Azure

Se non si vuole avviare e arrestare manualmente i nodi del ruolo di lavoro di Azure, è possibile abilitare la riduzione della crescita automatica per avviare automaticamente i nodi quando sono presenti processi nella coda e arrestare automaticamente i nodi quando è inattiva.

Per abilitare la proprietà AutoGrowShrink

Set-HpcClusterProperty –EnableGrowShrink 1

Dopo aver abilitato questa proprietà, è possibile inviare di nuovo il processo e verificare se i nodi del ruolo di lavoro di Azure vengono avviati automaticamente. Aprire di Gestione cluster HPC e passare a riquadro Gestione risorse, selezionare l'operazione di >azureOperations visualizzazione. Verranno visualizzate tutte le operazioni di riduzione di Azure Grow. Per altri dettagli, vedere anche hpcpack auto grow shrink.

Passaggi successivi