hpcsync
Copia paquetes OPC desde una cuenta de almacenamiento de Windows Azure y los descomprime en un nodo de Windows Azure.
Nota:
Este comando se introdujo en HPC Pack 2008 R2 con Service Pack 1 y no se admite en versiones anteriores.
Sintaxis
hpcsync [<storageAccountName> <storageKey>] [<packageRoot>] [/packageName:<packageNameFilter>]
[/container:<Container name>] [/blocksize:<blockSize>] [/usehttp]
hpcsync {/? | /help}
Parámetros
En algunos casos, un administrador de clústeres puede ejecutar clusrun hpcsync sin especificar ningún parámetro para el comando hpcsync
.
Parámetro | Descripción |
---|---|
<storageAccountName> | Especifica el nombre público de la cuenta de almacenamiento de Windows Azure (el mismo nombre de almacenamiento que especifique en la plantilla de nodo de Windows Azure). Este es el valor de <storageAccountName> en la dirección URL pública de la cuenta: https://<storageAccountName>.blob.core.windows.net. Si especifica <storageAccountName>, también debe especificar <storageKey>Nota: Si un administrador de clúster ejecuta el comando clusrun hpcsync, no es necesario especificar el nombre y la clave de la cuenta de almacenamiento. Los valores se proporcionan mediante la variable de entorno CCP_AZURE_CONNECTIONSTRING (que se establece en el nivel de proceso solo para trabajos clusrun). Si un administrador de clúster ejecuta hpcsync sin clusrun o si un usuario del clúster ejecuta hpcsync, la información de la cuenta de almacenamiento debe proporcionarse en los parámetros del comando. |
<storageKey> | Especifica la clave de acceso de la cuenta de almacenamiento de Windows Azure. Si especifica <storageKey>, también debe especificar <storageAccountName>. Nota: Si un administrador de clúster ejecuta el comando clusrun hpcsync, no es necesario especificar el nombre y la clave de la cuenta de almacenamiento. Los valores se proporcionan mediante la variable de entorno CCP_AZURE_CONNECTIONSTRING (que se establece en el nivel de proceso solo para trabajos de clusrun). Si un administrador de clúster ejecuta hpcsync sin clusrun o si un usuario del clúster ejecuta hpcsync, la información de la cuenta de almacenamiento debe proporcionarse en los parámetros del comando. |
<packageRoot> | Especifica el directorio raíz de destino para implementar los paquetes. El valor predeterminado cuando un administrador de clúster ejecuta el comando es %CCP_PACKAGE_ROOT%. El valor predeterminado de un usuario de clúster es su directorio de usuario, %USERPROFILE%\Packages. Para que los servicios y xlL de SOA funcionen correctamente, el directorio raíz debe ser el valor predeterminado (%CCP_PACKAGE_ROOT% o %USERPROFILE%\Packages). La variable de entorno %CCP_PACKAGE_ROOT% apunta a una ubicación administrada por Windows Azure. HPC Pack usa las API de Windows Azure para establecer un valor para esta variable después de implementar los nodos de Windows Azure. El valor de %CCP_PACKAGE_ROOT% es coherente dentro de una implementación de Windows Azure, pero puede variar entre implementaciones. Nota: Al cargar un paquete en una cuenta de almacenamiento (mediante carga de hpcpack), puede definir el atributo de ruta de acceso relativa. Si el paquete especifica una ruta de acceso relativa, el paquete se implementa en <packageRoot>\<relativePath> ( por ejemplo, %CCP_PACKAGE_ROOT%\myDir. |
/packageName | Especifica el paquete que desea descargar. Si no especifica este parámetro, se descargan todos los paquetes de OPC. |
/contenedor | Especifica el nombre del contenedor en la cuenta de almacenamiento de Windows Azure desde la que desea descargar el archivo. Si no especifica este parámetro, los paquetes se descargan desde la ubicación predeterminada: un contenedor denominado hpcpackages en la cuenta de almacenamiento. |
/blocksize | Especifica el tamaño del bloque, en bytes, en el que se separará el archivo al descargar. El tamaño de bloque predeterminado es de 4 MB (4194304 bytes). 4 MB también es el tamaño máximo de bloque. Es posible que desee especificar un tamaño de bloque más pequeño si experimenta una conexión de red inestable. |
/usehttp | Especifica que desea invalidar el canal https predeterminado a través del puerto 443 e intentar la comunicación mediante http a través del puerto 80. Si se produce un error, volverá al puerto 443. Nota: Este parámetro se introdujo en HPC Pack 2008 R2 con Service Pack 3 y no se admite en versiones anteriores. |
/? | Muestra ayuda en el símbolo del sistema. |
/Ayuda | Muestra ayuda en el símbolo del sistema. |
Comentarios
hpcsync está disponible en los recursos de proceso de Windows Azure que estánunidos a que ejecuta al menos Microsoft HPC Pack 2008 R2 con SP1 o recursos de proceso de Windows Azure que forman parte de una implementación programador de HPC de Windows Azure.un clúster local hpcsync se ejecuta automáticamente al iniciar nodos de Windows Azure desde el Administrador de clústeres de HPC y también se ejecuta automáticamente si alguna de las instancias de nodo se vuelve a aprovisionar como parte del mantenimiento de Windows Azure. Este mecanismo ayuda a garantizar que los archivos necesarios estén disponibles en los nodos en el inicio o si se vuelven a aprovisionar las instancias de nodos. El automático llama a hpcsync en la ejecución de aprovisionamiento de nodos sin parámetros. Esto significa que los paquetes se copian de la ubicación predeterminada en el almacenamiento a la ubicación predeterminada en los nodos. Para obtener más información, consulte Aprovechamiento de llamadas automáticas de hpcsync para la implementación de aplicaciones más adelante en este tema.
Dado que se ejecuta automáticamente durante la expansión a las implementaciones de Windows Azure, no es necesario ejecutar hpcsync directamente. Sin embargo, si almacena provisionalmente paquetes en el almacenamiento después de que los nodos de Windows Azure ya estén implementados, o si va a implementar paquetes en una implementación de Programador de HPC de Windows Azure, puede ejecutar manualmente hpcsync con clusrun. hpcsync también proporciona algunos parámetros para copiar paquetes de contenedores de almacenamiento diferentes e implementar los paquetes en directorios de destino alternativos.
hpcsync es ideal para implementar servicios SOA, archivos XLL y scripts de inicio desde almacenamiento de Windows Azure a sus ubicaciones esperadas en los nodos de Windows Azure. Como alternativa, puede usar los comandos de de hpcpack
( carga de hpcpack yhpcpack descargar ) para mover otros tipos de archivos, aplicaciones o datos de trabajo entre el almacenamiento de Windows Azure y los nodos de Windows Azure. Para obtener más información, consulte hpcpack.Para usar este comando, los usuarios del clúster deben conocer el nombre de la cuenta de almacenamiento y la clave de acceso principal.
Ejemplos
Para que un administrador de clúster implemente todos los archivos OPC desde el contenedor predeterminado en una cuenta de almacenamiento de Windows Azure en un conjunto de nodos de trabajo de Windows Azure:
clusrun /nodegroup:AzureWorkerNodes hpcSync
Para que un usuario de clúster implemente todos los archivos OPC desde un contenedor específico en una cuenta de almacenamiento de Windows Azure (myContainer) en su directorio predeterminado en un conjunto de nodos de Windows Azure (nodos 1-3):
job submit /requestednodes:node1,node2,node3 hpcSync myAccount myKey /container:myContainer
Para ayudar a solucionar problemas de implementación de archivos, puede probar el comando intentando implementar los archivos en el equipo local en C:\temp:
hpcsync myAccount myKey C:\temp
Aprovechamiento de llamadas automáticas de hpcsync para la implementación de aplicaciones
Para aprovechar las llamadas automáticas de hpcsync
De forma predeterminada, para los administradores de clústeres hpcsync implementa archivos en una ubicación en los nodos de Windows Azure determinados en parte por la variable de entorno %CCP_PACKAGE_ROOT%. Esta variable se establece en los nodos de Windows Azure durante el proceso de aprovisionamiento. Los archivos extraídos se colocan en una carpeta que se determina de la siguiente manera: %CCP_PACKAGE_ROOT%\<packageName>\<uploadTimeStamp>. Esta es la ubicación esperada para los servicios SOA, las XLL, los libros de Excel y los scripts de inicio de a los que se llama desde la plantilla de nodo. Sin embargo, esto no es cómodo para las aplicaciones a las que los usuarios del clúster llamarán en sus líneas de comandos.
Para simplificar la estructura de carpetas de los archivos ejecutables, puede establecer la propiedad de ruta de acceso relativa del paquete al cargarla en el almacenamiento. hpcsync aplica la ruta de acceso relativa al extraer los archivos, de modo que la ruta de acceso se determine de la siguiente manera: %CCP_PACKAGE_ROOT%\<relativePath>. A continuación, los usuarios pueden especificar la ruta de acceso a su aplicación como en el ejemplo siguiente de un comando de envío de trabajo: job submit %CCP_PACKAGE_ROOT%\myRelativePath\myapp.exe
Para obtener más información, consulte Implementación de aplicaciones en nodos de Windows Azure en un clúster de HPC de Windows.
Consideraciones importantes sobre %CCP_PACKAGE_ROOT%
En los nodos de Windows Azure, la carpeta %CCP_PACKAGE_ROOT% se crea en una partición de disco de 10 GB. Esto significa que todos los archivos de aplicación de una instancia de nodo no pueden superar los 10 GB. Si una aplicación tiene archivos de entrada y salida considerables, puede usar un script de inicio para conceder permisos de usuario en las unidades C:\ para que los usuarios puedan escribir en todo el espacio temporal disponible en el nodo.
Al ejecutar hpcsync manualmente, puede invalidar la ubicación predeterminada (%CCP_PACKAGE_ROOT%). Por ejemplo, puede crear una carpeta en cada nodo de Windows Azure y, a continuación, especificar esa ubicación al ejecutar hpcsync. Todos los paquetes se extraerán en esa carpeta. Sin embargo, las nuevas instancias de nodo que se implementan (o se vuelven a aprovisionar automáticamente) no incluirán esa carpeta y los paquetes se implementarán automáticamente en la ubicación predeterminada.
Los usuarios del clúster solo tienen permisos de escritura en carpetas en %CCP_PACKAGE_ROOT%. A menos que modifique los permisos de carpeta en los nodos de Windows Azure, solo los administradores de clúster pueden ejecutar aplicaciones fuera de %CCP_PACKAGE_ROOT%.
Cuando hpcsync implementa un paquete, ninguno de los archivos extraídos puede tener una ruta de acceso completa de más de 256 caracteres. Los directorios raíz en los que los archivos extraídos se colocan temporalmente y, después, se pueden colocar hasta 136 caracteres, dejando 120 caracteres para el nombre de archivo, subdirectorios (si los hay) y el relativePath (si se especifica). Si la ruta de acceso de los archivos extraídos supera los 256 caracteres, se produce un error en la implementación del paquete.
Vea también
hpcpack
clusrun
Ráfaga a instancias de trabajo de Azure con Microsoft HPC Pack