Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'esecuzione di Azure CycleCloud in un'istanza di contenitore è una soluzione eccellente per i clienti che usano CycleCloud in modo intermittente e desiderano arrestarlo tra le esecuzioni dei processi per evitare i costi associati alle macchine virtuali a esecuzione prolungata.
Prerequisiti
Dovrai avere Docker installato e in esecuzione sulla macchina o sul server da cui accederai a CycleCloud. Scarica il pacchetto di installazione appropriato per il tuo sistema operativo e segui le istruzioni di installazione di Docker.
Immagine del contenitore CycleCloud
Una volta che Docker è configurato e funzionante, è possibile eseguire il seguente comando per estrarre l'immagine del contenitore CycleCloud dal Registro contenitori di Microsoft:
docker run mcr.microsoft.com/hpc/azure-cyclecloud
Questo è tutto! Il contenitore verrà avviato e CycleCloud sarà accessibile tramite browser Web all'indirizzo https://localhost. Da lì, segui i menu di configurazione.
Configurazione
Il contenitore esegue applicazioni Web per http (80) e https (443). Poiché CycleCloud esegue una JVM (Java Virtual Machine), è necessario coordinare l'HeapSize della JVM e la memoria allocata al container. È consigliabile impostare HeapSize su metà dell'allocazione di memoria del contenitore. Utilizzare il comando docker run -m
con una variabile di ambiente specificata in MB. Per esempio:
docker run -m 2G -e "JAVA_HEAP_SIZE=1024" -p 8080:80 -p 8443:443 myrepo/cyclecloud:$ver
Avvertimento
Se il servizio CycleCloud non riesce, il processo del contenitore verrà terminato e tutti i dati del cluster andranno persi. Per evitare questo scenario, configurare l'istanza di container in modo che venga supportata con l'archiviazione permanente.
Archiviazione permanente
Se l'istanza di Azure Container dovesse avere esito negativo, i dati potrebbero andare persi e il ripristino dello stato di esecuzione gestito dei cluster HPC non sarebbe possibile. È consigliabile configurare Istanza di Azure Container per il backup con l'archiviazione durevole da Condivisione file di Azure.
A condizione che una condivisione file di Azure sia montata in /azurecyclecloud
, il contenitore CycleCloud userà l'archiviazione durevole per:
- Registrazioni
- Punti di ripristino del backup
Per una migliore comprensione di Condivisione file di Azure, vedere la documentazione che illustra l'integrazione con Istanza di Azure Container.
Nell'esempio seguente verrà montata una condivisione di archiviazione in /azurecyclecloud e raccoglierà i log e i punti di backup. Con questa configurazione, i dati di Azure CycleCloud possono essere recuperati da un errore o usati per eseguire la migrazione all'hosting in un altro servizio, ad esempio una macchina virtuale.
az container create \
--resource-group ${ResourceGroup} \
--location ${Location} \
--name ${Name} \
--dns-name-label ${DNSName} \
--image mcr.microsoft.com/hpc/azure-cyclecloud \
--ip-address public \
--ports 80 443 \
--cpu 2 \
--memory 4 \
-e JAVA_HEAP_SIZE=2048 \
--azure-file-volume-account-name ${STORAGE_ACCOUNT_NAME} \
--azure-file-volume-account-key ${STORAGE_KEY} \
--azure-file-volume-share-name ${SHARE_NAME} \
--azure-file-volume-mount-path /azurecyclecloud
Versioni supportate
Le versioni supportate dell'immagine del contenitore CycleCloud sono disponibili nella pagina dockerhub del prodotto. L'immagine può essere avviata come istanza di Azure Container (usando il gruppo di risorse, la posizione e i nomi DNS e contenitori preferiti) esistenti. CycleCloud include la generazione di certificati SSL, quindi se si specificano gli argomenti due volte (una volta per az cli e di nuovo per impostare le variabili di ambiente), il contenitore è in grado di stabilire automaticamente certificati SSL validi.
#!/bin/bash
ResourceGroup="rg-name"
Location="westus2"
CIName="ci-name"
CIDNSName="ci-name"
az container create -g ${ResourceGroup} \
--location ${Location} \
--name ${CIName} \
--dns-name-label ${CIDNSName} \
--image mcr.microsoft.com/hpc/azure-cyclecloud \
--ip-address public \
--ports 80 443 \
--cpu 2 --memory 4 \
-e JAVA_HEAP_SIZE=2048
Nell'esempio precedente, il contenitore e l'interfaccia utente di cyclecloud saranno disponibili all'indirizzo https://${CIDNSName}.${Location}.azurecontainer.io
.
Configurazione aggiuntiva
Il contenitore esegue applicazioni Web per http (80) e https (443). Poiché CycleCloud esegue una JVM (Java Virtual Machine), è necessario coordinare l'HeapSize della JVM e la memoria allocata al container. È consigliabile impostare HeapSize su metà dell'allocazione di memoria del contenitore. Utilizzare il comando docker run -m
con una variabile di ambiente specificata in MB. Per esempio:
docker run -m 2G -e "JAVA_HEAP_SIZE=1024" -p 8080:80 -p 8443:443 mcr.microsoft.com/hpc/azure-cyclecloud