TakTuk

From Grid5000
Revision as of 11:01, 26 March 2007 by Plemoine (talk | contribs)
Jump to navigation Jump to search

Short Explanation about how it work

By default, TakTuk uses a tree to launch programs on all reserved nodes. it initiates a few connections in parallel (the deployment window) and distributes the remaining deployment work to already deployed peers using an adaptive work-stealing algorithm (Extract of A guide of TakTuk use by Guillaume Huard).

Taktuk schema.png

Using TakTuk with the base environment

Prerequisites

Starting with a reservation:

Terminal.png users@frontale.site.grid5000.fr:
oarsub -I -l nodes=4

Now you should have:

Terminal.png users@node-15.site.grid5000.fr:


Using Taktuk to launch scripts

To launch scripts simultaneously on each node:

Terminal.png users@node-15.site.grid5000.fr:
taktuk -f $OAR_FILE_NODES broadcast exec [/home/site/user/testScript.sh]

Note: do not forget to type the characters [ and ]

By default, Taktuk displays a lot of informations but it might not be necessary. So you can add some options on command line to modify correctly the output:

-o connector -o status -o output='"$host: $line\n"'

Example:

To know if time clock are synchronised on each node (Result formated correctly)

Terminal.png users@node-15.site.grid5000.fr:
taktuk -o connector -o status -o output='"$host: $line\n"' -f $OAR_FILE_NODES broadcast exec [date]

Output

node-101.bordeaux.grid5000.fr: Fri Mar 23 09:38:46 CET 2007
node-23.bordeaux.grid5000.fr: Fri Mar 23 09:38:46 CET 2007
node-24.bordeaux.grid5000.fr: Fri Mar 23 09:38:46 CET 2007
node-67.bordeaux.grid5000.fr: Fri Mar 23 09:38:46 CET 2007
node-97.bordeaux.grid5000.fr: Fri Mar 23 09:38:46 CET 2007

To know cpu's installed on nodes:

plemoine@node-101:$ taktuk -o connector -o status -o output='"$host: $line\n"' -f $OAR_FILE_NODES broadcast exec ["cat /proc/cpuinfo | grep 'model name'"] | uniq

Output

node-101.bordeaux.grid5000.fr: model name       :                   Intel(R) Xeon(TM) CPU 3.00GHz
node-23.bordeaux.grid5000.fr: model name        : AMD Opteron(tm) Processor 248
node-24.bordeaux.grid5000.fr: model name        : AMD Opteron(tm) Processor 248
node-67.bordeaux.grid5000.fr: model name        :                   Intel(R) Xeon(TM) CPU 3.00GHz
node-97.bordeaux.grid5000.fr: model name        :                   Intel(R) Xeon(TM) CPU 3.00GHz

Using TakTuk with your own environment and no taktuk installation on it

Prerequisites

Starting to make a reservation:

Terminal.png users@frontale.site.grid5000.fr:
oarsub -I -l nodes=4 -q deploy

Deploy environment:

Terminal.png users@frontale.site.grid5000.fr:
kadeploy -p part -f $OAR_FILE_NODES -e sid-x64-nfs-1.0

Using Taktuk to launch programs

To execute command as root for update , you have to use the following option: "-l root" as the first one used on the command line:

Terminal.png users@frontale.site.grid5000.fr:
taktuk -l root -s -o connector -o status -o output='"$host: $line\n"' -f $OAR_FILE_NODES broadcast exec ["apt-get update"]