0
我正在为2个群集上的操作编写脚本。如何使用ssh在两个群集之间的qsub脚本中运行本地脚本?
我的目标是只关注一个集群,这意味着每个脚本源代码只在其中一个集群上。
例如,在集群AI已经安装了所有的脚本,现在我想ssh到集B运行这些脚本,而不必在群集B.重新安装它们
我知道有像ssh [email protected] 'bash -s' < local_ClusterA_script.sh
然后集B bash脚本从ClusterA运行local_ClusterA_script.sh。
现在有,我必须使用ssh从集群一对集B提交批作业的另一项挑战,这个批处理作业从集群A.需要一个脚本
# run.sh :
#!/bin/bash
INPUT_ARGS="[email protected]"
qsub -v argv="$INPUT_ARGS" -l arch=x86_64 -l walltime=10:00:00 -l vmem=8GB -l nodes=1:ppn=6 $CLUSTERA_BIN/run.script
# run.script
runprogram()
{
#Input
INPUT_ARGS=`echo $argv`
$CLUSTERA_BIN/runprogram.py "$INPUT_ARGS" ;
}
所以我的问题出在哪里集群B发现$CLUSTERA_BIN/runprogram.py
?如何使run.script中的代码在群集B上成功运行?
一个命令我认为它会是ssh [email protected] 'bash -s' < run.sh $MYARGS
,但显然它不会像这样工作。
我的经验是把脚本在可通过网络访问的文件系统上,人们通常会这样做。 – dbeer 2013-03-28 16:23:34