locked
clusrun xcopy from fileserver does not works out as expected RRS feed

  • Question

  • Dear All,

    I have tried to deploy a webservice to the cluster, however, although the command by itself(without clusrun) runs well on each and every computers in the cluster, the clusrun does not work out. 

    1) clusrun /all hostname 

    The simple hostname command works out smoothly

    Microsoft Windows [Version 6.1.7601]
    Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

    C:\Windows\system32>clusrun /all hostname
    -------------------------- ZEUS returns 0 --------------------------
    ZEUS
    -------------------------- PAN returns 0 --------------------------
    Pan
    -------------------------- MATRIX returns 0 --------------------------
    MATRIX

    -------------------------- Summary --------------------------
    3 Nodes succeeded
    0 Nodes failed

    C:\Windows\system32>clusrun /all xcopy /y R:\HPCExpress\PiCalcServer.dll "%CCP_H
    OME%\NxR2"
    Command has failed on node ZEUS. Message:Task failed during execution with exit
    code 4. Please check task's output for error details.
    -------------------------- ZEUS returns 4 --------------------------
    Invalid drive specification
    0 File(s) copied
    Command has failed on node PAN. Message:Task failed during execution with exit c
    ode 4. Please check task's output for error details.
    -------------------------- PAN returns 4 --------------------------
    Invalid drive specification
    0 File(s) copied
    Command has failed on node MATRIX. Message:Task failed during execution with exi
    t code 4. Please check task's output for error details.
    -------------------------- MATRIX returns 4 --------------------------
    Invalid drive specification
    0 File(s) copied

    -------------------------- Summary --------------------------
    0 Nodes succeeded
    3 Nodes failed:MATRIX,PAN,ZEUS

    C:\Windows\system32>xcopy /y R:\HPCExpress\PiCalcServer.dll "%CCP_HOME%\NxR2"
    R:\HPCExpress\PiCalcServer.dll
    1 File(s) copied

    C:\Windows\system32>clusrun /all xcopy /y \\\\cypher\HPCExpress\PiCalcServer.dll
     "%CCP_HOME%\NxR2"
    Command has failed on node ZEUS. Message:Task failed during execution with exit
    code 4. Please check task's output for error details.
    -------------------------- ZEUS returns 4 --------------------------
    Invalid drive specification
    0 File(s) copied
    Command has failed on node PAN. Message:Task failed during execution with exit c
    ode 4. Please check task's output for error details.
    -------------------------- PAN returns 4 --------------------------
    Invalid drive specification
    0 File(s) copied
    Command has failed on node MATRIX. Message:Task failed during execution with exi
    t code 4. Please check task's output for error details.
    -------------------------- MATRIX returns 4 --------------------------
    Invalid drive specification
    0 File(s) copied

    -------------------------- Summary --------------------------
    0 Nodes succeeded
    3 Nodes failed:MATRIX,PAN,ZEUS

    C:\Windows\system32>

     

    Please help.  It looks like the fileserver mapping can't be understood by the clusrun, but how could I make it understood correctly by clusrun. Thanks for your time.


    Feng Wang
    Tuesday, June 14, 2011 5:00 PM

Answers

  • Yes, the process started by clusrun runs in session 0, and drive mappings such as the one you're using don't persist well across sessions and users. You can see whether your drive mapping is available within the clusrun command by running a command such as this:

    clusrun /all net use

    In your scenario, it's better to specify a UNC path instead of the drive mapping. e.g.

    clusrun /all xcopy /y \\fileserver\share\HPCExpress\PiCalcServer.dll "%CCP_HOME%\NxR2"

    Alternatively, if you absolutely have to use a drive mapping in your clusrun command, another solution might create the drive mapping as part of the command. This might look like the following:

    clusrun /all net use R: \\fileserver\share ^& xcopy /y R:\HPCExpress\PiCalcServer.dll "%CCP_HOME%\NxR2"

    Also, keep in mind that the %CCP_HOME% env var by default contains a terminating backslash. e.g.

    C:\>set ccp_home
    CCP_HOME=C:\Program Files\Microsoft HPC Pack 2008 R2\

    Regards,

    Patrick

    • Proposed as answer by scorpiotek Tuesday, June 21, 2011 10:36 AM
    • Marked as answer by 51gaoxing Friday, August 5, 2011 7:26 PM
    Thursday, June 16, 2011 6:05 PM

All replies

  • Yes, the process started by clusrun runs in session 0, and drive mappings such as the one you're using don't persist well across sessions and users. You can see whether your drive mapping is available within the clusrun command by running a command such as this:

    clusrun /all net use

    In your scenario, it's better to specify a UNC path instead of the drive mapping. e.g.

    clusrun /all xcopy /y \\fileserver\share\HPCExpress\PiCalcServer.dll "%CCP_HOME%\NxR2"

    Alternatively, if you absolutely have to use a drive mapping in your clusrun command, another solution might create the drive mapping as part of the command. This might look like the following:

    clusrun /all net use R: \\fileserver\share ^& xcopy /y R:\HPCExpress\PiCalcServer.dll "%CCP_HOME%\NxR2"

    Also, keep in mind that the %CCP_HOME% env var by default contains a terminating backslash. e.g.

    C:\>set ccp_home
    CCP_HOME=C:\Program Files\Microsoft HPC Pack 2008 R2\

    Regards,

    Patrick

    • Proposed as answer by scorpiotek Tuesday, June 21, 2011 10:36 AM
    • Marked as answer by 51gaoxing Friday, August 5, 2011 7:26 PM
    Thursday, June 16, 2011 6:05 PM
  • I had no idea you could run multiple commands in clusrun using '^&'.

    I assume this also works when you are trying to execute various commands in a node prep/node release task?

    Thanks!

    Tuesday, June 21, 2011 10:37 AM
  • Thank you so much for taking your time to answer this question. Yes, that helped a lot.
    Feng Wang
    Friday, August 5, 2011 7:27 PM