cpu_job_throw.sh
ʣΥۥФ֤ư륷륹ץ

ǽ
(a)ꤷۥȤˡ֤롣
  - ۥȤѲǽCPU100%̤λΥۥȤѤϸ󤷤ˤ롣
(b)ּ¹Ԥ
  - Ctrl+C򲡤ȡTerminate?[y/n]ɽ졢y򤹤ȡƤΥۥȾΥ֤kill롣

Ȥ
cpu_job_throw.sh JOBS_FILE HOSTS_FILE
or
cpu_job_throw.sh JOBS_FILE HOSTS_FILE ENV_FILE

ե
*JOBS_FILE
ƥȥե롣
1Ԥ򣱥֤ǧ롣
Linuxޥɥ饤Ǽ¹Բǽʥޥɤ򵭽Ҥ롣
  (MATLABΥޥɤμ¹ϡjob_matlab.txt򻲾ȡ)
ʣԤϤäơ֤򵭺ܤ뤳ȤǤʤΤߤ»ࡣ

*HOSTS_FILE
ƥȥե롣
1Ԥ1ۥȤǧ롣
JOB_FILE줿֤ܥե˵ܤ줿ۥȤ˥֤ꤲ롣
  (¹Խ뤳Ȥǡۥȿ)

*ENV_FILE
[ץʥ]֤¹Ԥ˼¹Ԥ륷륹ץȡ
  Ķѿѥ򵭺ܤƤȥǥ쥯ȥˤȤ롣

  Ūʻͤ񤯤ȡּ¹ˡ
  $>source ENV_FILE
  ¹Ԥ롣


ꤷۥȤˡ餫ѥ̵ǥǤ褦ˤƤɬפ롣

Τ褦ʴ
====
_rhayashi@ravel<101> ssh cbi-node01
Last login: Thu Feb 14 21:47:46 2013 from cbi-node01.cns.atr.jp
_rhayashi@cbi-node01<101>
====

ˡˤĤƤϡʲ򻲾ȤΤȡ
http://ravel.cns.atr.jp/~rhayashi/dynamic/vikiwiki.cgi?p=cbi_ssh_without_passwd


¹

*job.txt
hostname
hostname
hostname
hostname

*hosts.txt
cbi-node01
cbi-node02
cbi-node03
cbi-node04

*env.sh


* ¹
setenv PATH "$PATH":/home/cbi/rhayashi/cpu_job_throw
cd /home/cbi/rhayashi/cpu_job_throw/example
cpu_job_throw.sh job.txt hosts.txt env.sh
Checking host : cbi-node01      ... OK.
Checking host : cbi-node02      ... OK.
Checking host : cbi-node03      ... OK.
Checking host : cbi-node04      ... OK.
4 valid host(s) were found.
4 job(s) will run on the host(s).
==================================================
Started JOB_ID:1, HOST:cbi-node01 (2013ǯ  4 15  12:42:46 JST)
==================================================
hostname
==================================================
Started JOB_ID:2, HOST:cbi-node02 (2013ǯ  4 15  12:42:47 JST)
==================================================
hostname
==================================================
Started JOB_ID:3, HOST:cbi-node03 (2013ǯ  4 15  12:42:48 JST)
==================================================
hostname
==================================================
Started JOB_ID:4, HOST:cbi-node04 (2013ǯ  4 15  12:42:49 JST)
==================================================
hostname
[MSG]All job(s) are running. Please wait for the processing to complete.
[MSG]Finished (2013ǯ  4 15  12:42:49 JST).
========================================
Execusion result (ExitCode 0: success)
========================================
JOB_ID=1, HOST=cbi-node01, ExitCode=0
JOB_ID=2, HOST=cbi-node02, ExitCode=0
JOB_ID=3, HOST=cbi-node03, ExitCode=0
JOB_ID=4, HOST=cbi-node04, ExitCode=0
========================================

ǥ쥯ȥꡦե

*ǥ쥯ȥ
 JOB_FILEƱˡ"log"Ȥ̾Υǥ쥯ȥ꤬롣
 ǥ쥯ȥˡƥ֤μ¹ԾǼjobN.txtȤ
 ե뤬롣

*jobN.txt
 ¹ԥ֤ɸϡɸ२顼Ϥη̤ޤե롣
 ֤ۥȤ줿ִ֤˺롣ܤˤϡ¹
 ޥɤܤ롣༡ΤǡΥեǧ
 뤳Ȥǡ֤μ¹Ծǧ뤳ȤǤ롣

*result.txt
 ƤΥ֤μ¹Է̡ExitCodeϡ֥ץȤ֤ͤɽ
 ̾ｪλʳ֤ͤС顼Ȥʤ롣ִؿ
 顼ȯ⡢顼ϥɥ󥰤Ԥ鷺֤褦ˤƤȡ
 ExitCode0Ȥʤꡢｪλȶ̤դʤΤա
 ========================================
 Execusion result (ExitCode 0: success)
 ========================================
 JOB_ID=1, HOST=cbi-node01, ExitCode=0
 JOB_ID=2, HOST=cbi-node02, ExitCode=0
 JOB_ID=3, HOST=cbi-node03, ExitCode=0
 JOB_ID=4, HOST=cbi-node04, ExitCode=0
 ========================================

㡧
/home/cbi-data/rhayashi/cpu_job_throw/log20130423174150
job1.txt   (֤μ¹ɸϡɸ२顼)
job2.txt
job3.txt

jobN.txt
result.txt (Ƥμ¹Է)

֤μ¹Ctrl+Cǥ֤λϡ
λޤǤ˽񤫤줿Ƥեˤʤ롣

¾Υޥ
cpu_job_kill.sh HOSTS_FILE(or HOST_NAME)

HOSTS_FILE˵ܤ줿ۥȾäƤ른֤롣
⤷HOSTS_FILEեǤϤʤϡۥ̾Ȳᤵ졢
ΥۥȾΥ֤롣

* HOSTS_FILE
cpu_job_kill.sh hosts.txt
Terminate processes on cbi-node01?[y/n]y
Terminate processes on cbi-node02?[y/n]y
Terminate processes on cbi-node03?[y/n]y

* HOST_NAME
cpu_job_kill.sh cbi-node01
Terminate processes on cbi-node01[y/n]y
