Changes between Version 47 and Version 48 of Tutorial/JobSubm


Ignore:
Timestamp:
Jun 6, 2008, 11:03:10 AM (17 years ago)
Author:
/C=FR/O=CNRS/OU=UMR8608/CN=Christophe Diarra/emailAddress=diarra@…
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Tutorial/JobSubm

    v47 v48  
    240240}}}
    241241
     242=== La delegation automatique de proxy au WMSProxy ===
     243
     244Il suffit d'utiliser l'option -a comme vu ci-dessous avec les commandes
     245glite-wms-job-submit ou glite-wms-job-list-match.
     246
    242247=== La délégation explicite de proxy au WMSProxy ===
    243248
     
    462467Les commandes glite-wms-job-cancel et glite-wms-job-logging-info s'appliquent également sur les collections.
    463468
    464 
    465 === Examen en temps réel des fichiers de sortie ===
    466 
     469=== Examen en temps réel des fichiers de sortie : Job Perusal ===
     470
     471Avec le gLite WMS, on peut voir les fichiers produits par un job pendant qu'il est encore en exécution.
     472C'est la fonctionnalité Job Perusal. Avec le RB il fallait attendre que le job soit terminé.
     473
     474Pour activer le Job Perusal pour un job, il faut mettre les deux lignes suivantes dans le .jdl :
     475
     476{{{
     477PerusalFileEnable = true;
     478PerusalTimeInterval = 120;
     479}}}
     480
     481La valeur fournie à PerusalTimeInterval est en secondes. C'est l'intervalle
     482entre deux uploads des fichiers sur le WMS par le WN. Eviter de mettre des
     483valeurs trop petites. Mettre plutôt plusieurs minutes. Pour des jobs courts, cen'est pas la peine d'utiliser cette fonctionnalité sauf pour debugger des problèmes de plantage de job. De facçon générale, ne pas abuser de cette
     484fonctionnalité car elle est augmente la charge du WMS.
     485
     486Dans l'exemple ci-dessous nous allons lancer le job perusal.jdl et récupérer des fichiers pendant que le job tourne.
     487
     488{{{
     489diarra@ipnlinux2 ~/work]$ cat perusal.jdl
     490Executable    = "perusal.sh";
     491Arguments     = "10";
     492StdOutput     = "std.out";
     493StdError      = "std.err";
     494InputSandbox = {"perusal.sh"};
     495OutputSandbox = {"std.out","std.err", "perusal.log"};
     496PerusalFileEnable = true;
     497PerusalTimeInterval = 120;
     498#Requirements = RegExp("ipnls2001.*\.fr:2119/jobmanager.*ipno$", other.GlueCEUniqueID);
     499}}}
     500
     501La soumission :
     502
     503{{{
     504[diarra@ipngrid01 ~/work]$ glite-wms-job-submit -o pjid -a perusal.jdl
     505https://grid02.lal.in2p3.fr:9000/1nX3gfh6Ba9NLtxy5FKe2g
     506The job identifier has been saved in the following file:
     507/home/diarra/work/pjid
     508}}}
     509 
     510On indique au WMS avec la commande 'glite-wms-job-perusal --set -f ... jodID', la liste des fichiers qu'on veut inspecter (ici std.err, std.out, perusal.log) :
     511
     512{{{
     513[diarra@ipngrid01 ~/work]$ glite-wms-job-perusal --set -f std.err -f std.out -f perusal.log -i pjid
     514Connecting to the service https://grid09.lal.in2p3.fr:7443/glite_wms_wmproxy_server
     515====================== glite-wms-job-perusal Success ======================
     516Files perusal has been successfully enabled for the job:
     517https://grid02.lal.in2p3.fr:9000/1nX3gfh6Ba9NLtxy5FKe2g
     518==========================================================================
     519}}}
     520
     521On récupère par exemple le fichier perusal.log :
     522
     523{{{
     524[diarra@ipngrid01 ~/work]$ glite-wms-job-perusal --get --nodisplay -f perusal.log -i pjid
     525
     526Connecting to the service https://grid09.lal.in2p3.fr:7443/glite_wms_wmproxy_server
     527
     528====================== glite-wms-job-perusal Success ======================
     529
     530The retrieved files have been successfully stored in:
     531/home/diarra/JobOutput/diarra_1nX3gfh6Ba9NLtxy5FKe2g
     532
     533==========================================================================
     534}}}
     535
     536Ici, le fichier se trouvera dans /home/diarra/JobOutput/diarra_1nX3gfh6Ba9NLtxy5FKe2g . Le nom du fichier contient en plus
     537la fenêtre de temps couverte. A chaque récupération, un nouveau fichier est créé. Après plusieurs inspection des fichiers, on a par exemple :
     538
     539
     540{{{
     541[diarra@ipngrid01 ~/work]$ ls -l /home/diarra/JobOutput/diarra_1nX3gfh6Ba9NLtxy5FKe2g
     542total 6900
     543-rw-r--r--  1 diarra sii 1689998 Jun  5 11:34 perusal.log-20080605094053_1-20080605100318_12
     544-rw-r--r--  1 diarra sii 5207599 Jun  5 11:34 perusal.log-20080605100520_13-20080605111856_49
     545-rw-r--r--  1 diarra sii     213 Jun  5 09:41 std.err-20080605094051_1-20080605094051_1
     546-rw-r--r--  1 diarra sii    6887 Jun  6 10:41 std.err-20080605094254_2-20080605111855_49
     547-rw-r--r--  1 diarra sii   21097 Jun  5 09:56 std.out-20080605094052_1-20080605095508_8
     548-rw-r--r--  1 diarra sii  103003 Jun  6 10:42 std.out-20080605095710_9-20080605111856_49
     549}}}
     550     
     551Si l'option --nodisplay n'est pas utilisé, le fichier sera en plus affiché à l'écran (pas toujours
     552commode). Par ailleurs à chaque récupération, seule le delta depuis le dernier upload est transmis.
     553Pour récupérer à chaque fois l'intégralité du fichier, utiliser l'option --all de glite-wms-job-perusal.
     554
     555L'option --unset de glite-wms-job-perusal permet de desactiver le Job Perusal :
     556
     557{{{
     558
     559[diarra@ipngrid01 ~/work]$ glite-wms-job-perusal --unset -i pjid
     560
     561Reading the jobId from the input file: /home/diarra/work/pjid
     562Connecting to the service https://grid09.lal.in2p3.fr:7443/glite_wms_wmproxy_server
     563====================== glite-wms-job-perusal Success ======================
     564File(s) perusal has been successfully disabled for the job:
     565https://grid02.lal.in2p3.fr:9000/1nX3gfh6Ba9NLtxy5FKe2g
     566==========================================================================
     567}}}
     568                                                             
    467569=== Le renouvellement automatique de proxy ===
    468570=== Ressoumission automatique ===