hpcsync
Copia i pacchetti OPC da un account di archiviazione di Windows Azure e li decomprime in un nodo di Windows Azure.
Nota
Questo comando è stato introdotto in HPC Pack 2008 R2 con Service Pack 1 e non è supportato nelle versioni precedenti.
Sintassi
hpcsync [<storageAccountName> <storageKey>] [<packageRoot>] [/packageName:<packageNameFilter>]
[/container:<Container name>] [/blocksize:<blockSize>] [/usehttp]
hpcsync {/? | /help}
Parametri
In alcuni casi, un amministratore del cluster può eseguire clusrun hpcsync senza specificare parametri per il comando hpcsync
.
Parametro | Descrizione |
---|---|
<storageAccountName> | Specifica il nome pubblico dell'account di archiviazione di Windows Azure (lo stesso nome di archiviazione specificato nel modello di nodo di Windows Azure). Questo è il valore di <storageAccountName> nell'URL pubblico dell'account: https://<storageAccountName>.blob.core.windows.net. Se si specifica <storageAccountName>, è necessario specificare anche <storageKey>Nota: Se un amministratore del cluster esegue il comando clusrun hpcsync, non è necessario specificare il nome e la chiave dell'account di archiviazione. I valori vengono forniti dalla variabile di ambiente CCP_AZURE_CONNECTIONSTRING (impostata a livello di processo solo per clusrun processi). Se un amministratore del cluster esegue hpcsync senza clusruno se un utente del cluster esegue hpcsync, le informazioni sull'account di archiviazione devono essere fornite nei parametri del comando. |
<storageKey> | Specifica la chiave di accesso per l'account di archiviazione di Windows Azure. Se si specifica <storageKey>, è necessario specificare anche <storageAccountName>. Nota: Se un amministratore del cluster esegue il comando clusrun hpcsync, non è necessario specificare il nome e la chiave dell'account di archiviazione. I valori vengono forniti dalla variabile di ambiente CCP_AZURE_CONNECTIONSTRING ,impostata solo a livello di processo per i processi clusrun. Se un amministratore del cluster esegue hpcsync senza clusruno se un utente del cluster esegue hpcsync, le informazioni sull'account di archiviazione devono essere fornite nei parametri del comando. |
<packageRoot> | Specifica la directory radice di destinazione per la distribuzione dei pacchetti. Il valore predefinito quando un amministratore del cluster esegue il comando è %CCP_PACKAGE_ROOT%. Il valore predefinito per un utente del cluster è la directory utente, %USERPROFILE%\Packages. Per il corretto funzionamento dei servizi SOA e delle dll, la directory radice deve essere il valore predefinito (%CCP_PACKAGE_ROOT% o %USERPROFILE%\Packages). La variabile di ambiente %CCP_PACKAGE_ROOT% punta a una posizione gestita da Windows Azure. HPC Pack usa le API di Windows Azure per impostare un valore per questa variabile dopo la distribuzione dei nodi di Windows Azure. Il valore di %CCP_PACKAGE_ROOT% è coerente all'interno di una distribuzione di Windows Azure, ma può variare tra le distribuzioni. Nota: Quando si carica un pacchetto in un account di archiviazione (usando hpcpack upload), è possibile definire l'attributo relativo path. Se il pacchetto specifica un percorso relativo, il pacchetto viene distribuito in <packageRoot>\<relativePath>, ad esempio %CCP_PACKAGE_ROOT%\myDir. |
/packageName | Specifica il pacchetto da scaricare. Se non si specifica questo parametro, vengono scaricati tutti i pacchetti OPC. |
/contenitore | Specifica il nome del contenitore nell'account di archiviazione di Windows Azure da cui si vuole scaricare il file. Se non si specifica questo parametro, i pacchetti vengono scaricati dal percorso predefinito: un contenitore denominato hpcpackages nell'account di archiviazione. |
/blocksize | Specifica le dimensioni del blocco, in byte, in cui il file verrà separato durante il download. La dimensione predefinita del blocco è 4 MB (4194304 byte). 4 MB è anche la dimensione massima del blocco. Se si verifica una connessione di rete instabile, potrebbe essere necessario specificare una dimensione del blocco inferiore. |
/usehttp | Specifica che si vuole eseguire l'override del canale HTTPS predefinito sulla porta 443 e provare a usare http sulla porta 80. In caso di errore, verrà ripristinata la porta 443. Nota: Questo parametro è stato introdotto in HPC Pack 2008 R2 con Service Pack 3 e non è supportato nelle versioni precedenti. |
/? | Visualizza la Guida al prompt dei comandi. |
/help | Visualizza la Guida al prompt dei comandi. |
Osservazioni:
hpcsync è disponibile nelle risorse di calcolo di Windows Azure aggiunte a un cluster locale che esegue almeno Microsoft HPC Pack 2008 R2 con SP1 o risorse di calcolo di Windows Azure che fanno parte di una distribuzione 'Utilità di pianificazione HPC di Windows Azure.
hpcsync viene eseguito automaticamente quando si avviano nodi di Windows Azure da HpC Cluster Manager e viene eseguito automaticamente se una delle istanze del nodo viene eseguito nuovamente come parte della manutenzione di Windows Azure. Questo meccanismo consente di garantire che i file necessari siano disponibili nei nodi all'avvio o se le istanze dei nodi vengono riprovisionate. Il hpcsync automatico chiamate all'esecuzione del provisioning dei nodi senza parametri. Ciò significa che i pacchetti vengono copiati dal percorso predefinito nella risorsa di archiviazione alla posizione predefinita nei nodi. Per altre informazioni, vedere Uso delle chiamate hpcsync automatiche per la distribuzione di applicazioni più avanti in questo argomento.
Poiché viene eseguito automaticamente durante le distribuzioni burst in Windows Azure, non è necessariamente necessario eseguire direttamente hpcsync. Tuttavia, se si esegue lo staging dei pacchetti nell'archiviazione dopo la distribuzione dei nodi di Windows Azure o se si distribuiscono pacchetti in una distribuzione di Utilità di pianificazione HPC di Windows Azure, è possibile eseguire manualmente hpcsync con clusrun. hpcsync fornisce anche alcuni parametri per la copia di pacchetti da contenitori di archiviazione diversi e per distribuire i pacchetti in directory di destinazione alternative.
hpcsync è ideale per la distribuzione di servizi SOA, file XLL e script di avvio da Archiviazione di Windows Azure ai percorsi previsti nei nodi di Windows Azure. In alternativa, è possibile usare i comandi hpcpack
( caricamento hpcpack edownload hpcpack ) per spostare altri tipi di file, applicazioni o dati di processo tra l'archiviazione di Windows Azure e i nodi di Windows Azure. Per altre informazioni, vedere hpcpack.Per usare questo comando, gli utenti del cluster devono conoscere il nome dell'account di archiviazione e la chiave di accesso primaria.
Esempi
Affinché un amministratore del cluster distribuisca tutti i file OPC dal contenitore predefinito in un account di archiviazione di Windows Azure a un set di nodi di lavoro di Windows Azure:
clusrun /nodegroup:AzureWorkerNodes hpcSync
Affinché un utente del cluster distribuisca tutti i file OPC da un contenitore specifico in un account di archiviazione di Windows Azure (myContainer) nella directory predefinita in un set di nodi di Windows Azure (nodi 1-3):
job submit /requestednodes:node1,node2,node3 hpcSync myAccount myKey /container:myContainer
Per risolvere i problemi di distribuzione dei file, è possibile testare il comando provando a distribuire i file nel computer locale in C:\temp:
hpcsync myAccount myKey C:\temp
Uso delle chiamate hpcsync automatiche per la distribuzione dell'applicazione
Per sfruttare le chiamate automatiche hpcsync durante il provisioning dei nodi, è necessario eseguire il staging dei pacchetti OPC nei contenitori hpcpackage nell'account di archiviazione di Windows Azure prima di distribuire i nodi. È possibile usare i comandi hpcpack
Per impostazione predefinita, per gli amministratori del cluster hpcsync distribuisce i file in un percorso nei nodi di Windows Azure determinati in parte dalla variabile di ambiente %CCP_PACKAGE_ROOT%. Questa variabile viene impostata nei nodi di Windows Azure durante il processo di provisioning. I file estratti vengono inseriti in una cartella determinata nel modo seguente: %CCP_PACKAGE_ROOT%\<packageName>\<uploadTimeStamp>. Si tratta del percorso previsto per servizi SOA, XLLs, cartelle di lavoro di Excel e script di avvio chiamati dal modello di nodo. Tuttavia, ciò non è utile per le applicazioni che gli utenti del cluster chiameranno nelle righe di comando.
Per semplificare la struttura di cartelle per i file eseguibili, è possibile impostare la proprietà relativa path per il pacchetto quando la si carica nella risorsa di archiviazione. hpcsync applica il percorso relativo durante l'estrazione dei file, in modo che il percorso sia determinato nel modo seguente: %CCP_PACKAGE_ROOT%\<relativePath>. Gli utenti possono quindi specificare il percorso dell'applicazione come nell'esempio seguente di un comando di invio del processo: invio processo %CCP_PACKAGE_ROOT%\myRelativePath\myapp.exe
Per altre informazioni, vedere Deploying Applications to Windows Azure Nodes in a Windows HPC Cluster.
Considerazioni importanti su %CCP_PACKAGE_ROOT%
Nei nodi di Windows Azure la cartella %CCP_PACKAGE_ROOT% viene creata in una partizione disco da 10 GB. Ciò significa che tutti i file dell'applicazione in un'istanza del nodo non possono superare 10 GB. Se un'applicazione dispone di notevoli file di input e output, è possibile usare uno script di avvio per concedere autorizzazioni utente sulle unità C:\ in modo che gli utenti possano scrivere in tutto lo spazio disponibile sul nodo.
Quando si esegue hpcsync manualmente, è possibile eseguire l'override del percorso predefinito (%CCP_PACKAGE_ROOT%). Ad esempio, è possibile creare una cartella in ogni nodo di Windows Azure e quindi specificare tale percorso quando si esegue hpcsync. Tutti i pacchetti verranno estratti in tale cartella. Tuttavia, tutte le nuove istanze del nodo distribuite (o automaticamente di cui viene eseguito il provisioning) non includeranno tale cartella e i pacchetti verranno distribuiti automaticamente nel percorso predefinito.
Gli utenti del cluster dispongono solo delle autorizzazioni di scrittura per le cartelle in %CCP_PACKAGE_ROOT%. A meno che non si modifichi le autorizzazioni per le cartelle nei nodi di Windows Azure, solo gli amministratori del cluster possono eseguire applicazioni all'esterno di %CCP_PACKAGE_ROOT%.
Quando hpcsync distribuisce un pacchetto, nessuno dei file estratti può avere un percorso completo su 256 caratteri. Le directory radice in cui i file estratti sono temporaneamente e infine inseriti possono contenere fino a 136 caratteri, lasciando 120 caratteri per il nome file, le sottodirectory (se presenti) e il relativePath (se specificato). Se il percorso dei file estratti supera i 256 caratteri, la distribuzione del pacchetto ha esito negativo.
Vedi anche
hpcpack
clusrun
burst in istanze di lavoro di Azure con Microsoft HPC Pack