Pensebête
Setup
Mettre dans .login
export ATLAS_LOCAL_ROOT_BASE=/cvmfs/atlas.cern.ch/repo/ATLASLocalRootBase
alias
setupATLAS='source ${ATLAS_LOCAL_ROOT_BASE}/user/atlasLocalSetup.sh'
Sur lxplus, faire directement setupATLAS
Rucio
- Accès via WebdaV (curl ou browser)
- Nom du dataset avec l'adresse surl ou guid
dq2-list-parent-datasets 334e0b0f-6c57-4cc3-8b3f-b541aabc6939
dq2-list-parent-datasets srm://lapp-se01.in2p3.fr/dpm/in2p3.fr/home/atlas/atlasdatadisk/rucio/mc12_8TeV/ba/45/NTUP_SUSY.01487259._000001.root.1 ne fonctionne pas ?
Connection à la VObox
-
Production MC
lcg_env
voms-proxy-init -voms atlas:/atlas/Role=production -valid 96:0
gsissh -p 1975 cclcgatlas04
le login doit être atlassgm
-
Queues d'analyse
lcg_env
voms-proxy-init -voms atlas:/atlas/Role=pilot -valid 96:0
gsissh -p 1976 cclcgatlas04 (ou si déjà sur la machine taper atlasana -alias-)
New (01 et 05) VObox configs
-
Condor
-
the condor log file is in /var/log/condor
-
condor deamon restarts with sudo /etc/init.d/condor restart
-
-
APF SVN and configuration files
-
the factory configuration files are under the : svn co svn+ssh://svn.in2p3.fr/atlas/ccin2p3/panda_new
-
in pilot configuration file, local path for the log :
-
baseLogDir = /log/atlas/autopilot/logs/factory/analysis
-
baseLogDirUrl = http://HOSTNAMETOBESET.in2p3.fr :43210/autopilot/logs/factory/analysis
-
-
Also the variable analysisGridProxy ( GridProxy appears) for analysis file (production files) , only ones appears in the configuration files under the section [QueueDefaults] and points the corresponding proxy files e.g : analysisGridProxy = /opt/vobox/atlasana/atlas/proxy_repository/x509_atlasana
-
on each account atlassgm atlasana atlasfr we start the apf as previous cd /vo/atlas/panda_new ; sh Submit_pilots analysis
-
-
CronJobs
-
One each account we setup three cronjobs
-
01 */6 * * * /bin/bash /vo/atlas/panda_new/Submit_pilots production ( periodic submit of the factory)
-
30 1 * * * export PANDAC=/vo/atlas/panda_new ;python $PANDAC/current/bin/cleanLogs.py --conf=$PANDAC/factory_production.conf --verbose –delete=3 ( cleaning of old log file)
-
40 1 * * * /vo/atlas/panda_new/clean_factory_logs.sh production ( cleaning of old factory's logs )
-
-
Renouvellement du proxy
-
Production avec certificat robot sur nouvelles vobox (utiliser prod pour ana prod et t3) - doc Manoulis : squad/doc/opsatlasvobox_draft_v1.odt -
==> sur ccage :
avec le certif robot (changer lien dans .globus)
lcg_env
voms-proxy-init -voms atlas:/Role=production -valid 99:00
voms-proxy-info -all
myproxy-init -s myproxy.cern.ch -d -n -c 0 -t 96
sauvegarder le certif /tmp/x509up_xxx dans x509up_xxx-robot et vérifier chmod 600
voms-proxy-destroy
avec le certif perso (changer lien ds .globus)
voms-proxy-init -voms atlas:/Role=production -valid 99:00
voms-proxy-info -all
gsissh -p 1975 ccwlcgatlas02
scp crepe@ccali:x509up_xxx-robot /tmp/.
et vérifier chmod 600 x509up_u629-robot
export X509_USER_PROXY=/tmp/x509up_xxx-robot
voms-proxy-info
puis (! mail)
vobox-proxy --vo atlas --dn "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=atlasfr1/CN=445173/CN=Robot: ATLAS Fr Factory 1" --voms atlas:/atlas/Role=production --lifetime 96:00 --proxy-safe 3600 --myproxy-safe 259200 --email
cd /vo/atlas/apfv2/new_reg
vérifier que le fichier renewal_user contient le bon DN :
USER_DN="/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=atlasfr1/CN=445173/CN=Robot: ATLAS Fr Factory 1"
USER_MAIL="
Vieille commande ? ./register_new_renewer_ev.shvobox-proxy –vo atlas– dn all query
/vo/atlas/apfv2/new_reg/multi_register_ev.sh
-
Autres commandes utiles
vobox-proxy --vo atlas --dn "/O=GRID-FR/C=FR/O=CNRS/OU=CPPM/CN=Emmanuel Le Guirriec" unregister
desenregistrer tous les proxy :
vobox-proxy --dn all --vo atlas --force unregister
voir les certificats enregistrés :
Renouveler un certificat robot
Suivre le lien CERN lorsque le certificat a expiré (https://gridca.cern.ch/gridca/) : ! se connecter avec le vieux certifcat robot !
Récupérer le certificat (atlasfr1.p12)
Dans .globus
openssl pkcs12 -clcerts -nokeys -in atlasfr1.p12 -out usercert.pem
chmod 400 userkey.pem
chmod 440 usercert.pem
Se connecter sur ccage
Utiliser le certificat robot défini ci-dessus
export GT_PROXY_MODE=rfc
voms-proxy-init -rfc -voms atlas
run myproxy-info -dn -v (allow to see validity time)
myproxy-init -s myproxy.cern.ch -d -n -t 96 -c 6000
myproxy-info -d -v
La vobox doit se mettre à jour tte seule... (mail Manoulis 31/01/2015)
Récupérer un certificat robot
Quelques remarques :
chmod 440 usercert.pem
Autres commandes utiles
globus-job-run lpsc-ce.in2p3.fr:2119/jobmanager-pbs -q atlas /usr/bin/whoami
réponse sur cclcgatlas : atlp
globus-job-run lpsc-ce.in2p3.fr:2119/jobmanager-pbs -q atlas /bin/sh -c "id"
globus-job-run lpsc-ce.in2p3.fr:2119/jobmanager-pbs -q atlas /bin/hostname
globus-job-submit : soumet en batch (-s script)
globus-job-status avec l'url donné précédemment
globus-job-get-output
Jobs factory en queue :
condor_q -globus
condor_q -const 'GridResource=="cream cccreamceli05.in2p3.fr:8443/ce-cream/services/CREAM2 sge medium"' pour les creamce
condor_q atlasana -const 'GridResource=="cream cccreamceli05.in2p3.fr:8443/ce-cream/services/CREAM2 sge long"'
Changer le statut des queues
> voms-proxy-init
> récupérer le path et le nom de la queue ds le conf (pas besoin au moins sur lxplus)
> curl --capath $X509_CERT_DIR --cacert $X509_USER_PROXY --cert $X509_USER_PROXY "https://panda.cern.ch:25943/server/controller/query?tpmes=$status&queue=$queue&moduser=ShifterName&comment=$comment"
Changer le statut des spacetoken
> dq2-set-location-status -e GRIF-LAL_PRODDISK -p dfrwu -s auto -r 'https://savannah.cern.ch/support/index.php?130348'
> dq2-set-location-status -e GRIF-LAL_SCRATCHDISK -p dfrwu -s auto -r 'https://savannah.cern.ch/support/index.php?130348'
> dq2-set-location-status -e GRIF-LAL_HOTDISK -p dfrwu -s auto -r 'https://savannah.cern.ch/support/index.php?130348'
> dq2-set-location-status -e GRIF-LAL_PHYS-SUSY -p dfrwu -s auto -r 'https://savannah.cern.ch/support/index.php?130348'
> dq2-set-location-status -e GRIF-LAL_LOCALGROUPDISK -p dfrwu -s auto -r 'https://savannah.cern.ch/support/index.php?130348'
Espace dans les spacetoken
> lcg-stmd -b -s ATLASPRODDISK -e httpg://lpsc-se-dpm-server.in2p3.fr:8446/srm/managerv2duction -valid 96:
+ Space Token: 932c5e8c-f718-4e9b-a996-647338e74645
- Owner: atlas/Role=production
- Total Size: 388127604604928
- Guaranteed Size: 388127604604928
- Unused Size: 1246504732388
- Assigned Lifetime: 166822645
- Left Lifetime: -1
- Retention Policy: CUSTODIAL
- Access Latency: ONLINE
Notes :
- Limite d'espace libre pour blacklister un spacetoken : 5TB
- Limite d'espace libre pour arrêter les transferts FTS : 1TB
Il peut y avoir dans le buffer des transferts > à ces limites d'où des erreurs de transfert à la marge ...
Fichiers perdus ?
> dq2-list-dataset-replicas nom_dataset
INCOMPLETE: SITEXXXX_AAAADISK
COMPLETE: SITEYYYY_BBBBDISK, SITEZZZZ_CCCCDISK
> dq2-list-files nom_dataset | grep nom_fichier FILENAME GUID CHECKSUM FILESIZE
ou
> dq2-ls -f nom_dataset | grep nom_fichier [*] FILENAME GUID CHECKSUM FILESIZE
si [ ], le fichier n'existe pas
> dq2-ls -L SITEYYYY_BBBBDISK -fp "nom_dataset" | grep nom_fichier srm://xxxxx/dpm/lal.in2p3.fr/home/atlas/atlasscratchdisk/yyyyy/nom_dataset/nom_fichier
> lcg-cp --vo atlas srm://xxxxx/dpm/lal.in2p3.fr/home/atlas/atlasscratchdisk/yyyyy/nom_dataset/nom_fichier local.file [SE][Ls][SRM_INVALID_PATH]
No such file or directory lcg_cp: No such file or directory
Declarer le fichier perdu :
-
- Documentation : page DDM
- Créer un ticket JIRA ds DDMOPS avec la liste des fichiers en attaché (j'ai mis type=support et ajouté après la soumission le mel frcloudsupport au watchers)
- Déclarer les fichiers en utilisant le script python declareFiles.py
> cat listsrmfile.txt | python declareFiles.py -b -r "files lost due to dpm disk problem JIRA ATLDDMOPS-4735" - > & out.txt & !!! NE PAS OUBLIER LE "-" A LA FIN
> source listsrmfile.txt >& out.txt & fonctionne aussi en ajoutant devant chaque adresse srm :
python declareFiles.py -b -r "files lost due to dpm disk problem JIRA ATLDDMOPS-4735"
-
- Vérifier l'état sur le DDM consistency service (bourricot)
Tests LFC
export CSEC_TRACE=3
export LFC_HOST=<LFC_HOST> ## the host name you see in the error message of dq2
lfc-ping
lfc-ls /grid/atlas
Tests grid certificates
export ATLAS_LOCAL_ROOT_BASE=/cvmfs/atlas.cern.ch/repo/ATLASLocalRootBase
alias setupATLAS='source ${ATLAS_LOCAL_ROOT_BASE}/user/atlasLocalSetup.sh'
setupATLAS
diagnostics
gridCert
Récupérer l'adresse physique d'un fichier
> dq2-list-dataset-replicas nom_dataset
INCOMPLETE: SITEXXXX_AAAADISK
COMPLETE: SITEYYYY_BBBBDISK, SITEZZZZ_CCCCDISK
> dq2-ls -f -L SITEYYYY_BBBBDISK nom_dataset | grep nom_fichier [*] FILENAME GUID CHECKSUM FILESIZE
si [X] le fichier existe
> dq2-ls -f -p -L SITEYYYY_BBBBDISK nom_dataset | grep nom_fichier [*] FILENAME GUID CHECKSUM FILESIZE
> adresse srm : srm://lpsc-se-dpm-server.in2p3.fr/dpm/in2p3.fr/home/atlas/atlasdatadisk/mc10_7TeV/EVNT/e760/mc1blabla
> lcg-gt srm://lpsc-se-dpm-server.in2p3.fr/dpm/in2p3.fr/home/atlas/atlasdatadisk/mc10_7TeV/EVNT/e760/mc1blabla gsiftp
gsiftp://lpsc-se-dpm-disk7.in2p3.fr/lpsc-se-dpm-disk7.in2p3.fr:/disk7-7/atlas/2011-10-30/EVNTblabla
Effacer un dataset récalcitrant
Liste des datasets ds un site
Remplissage d'un spacetoken
+ Space Token: 164
- Owner: VoGroup=/atlas VoRole=production
- Total Size: 4377155790176256
- Guaranteed Size: 4377155790176256
- Unused Size: 40375726109515
- Assigned Lifetime: -1
- Left Lifetime: -1
- Retention Policy: REPLICA
- Access Latency: ONLINE
Lancer des jobs de tests
> source /afs/cern.ch/atlas/offline/external/GRID/ddm/DQ2Clients/setup.zsh
> voms-proxy-init -voms atlas:/atlas/Role=production -valid 96:0
Lancer le job :
> cd panda/test Vérifier ds le joboption la release > export PYTHONPATH=..:$PYTHONPATH
> python testEvgen15.py NOMQUEUE FR
Ajouter une nouvelle queue panda dans AGIS
Exemple : nouvelle queue pour WN SL6
Définir une bouvelle ressource (nom de la queue dans panda)
- Cliquer sur ATLASSite, chercher le site et cliquer sur le site
- Cliquer sur PANDA
- Dans le tableau qui s'ouvre, cliquer sur le nom du site dans la colonne PanDA site
- Cliquer sur Add PANDA resource for this PANDA site et la définir
Définir une nouvelle queue panda
- À partir du site, cliquer sur PANDA, sous PANDA sur le nom du site, puis sur le nom de la ressource
- Dans la partie droite, cliquer sur Define new PANDAQueue
- Cloner une queue proche, ex non SL6
- Pour une nouvelle queue SL6, changer localqueue et ce qui s'y rapporte ex jdl ou jdladd avec le nom de la queue fourni par le site
- Créer la queue
- Associer un CE (donné par le site) en cliquant à droite sur le nom du PANDAQueue name, puis sur
Find and associate another CE/Queue
Valider la queue
- Mettre la queue en test
- Demander de valider le soft (SL6) à atlas-grid-install
- Demander d'ajouter la queue à la DB de hammercloud à atlas-adc-hammercloud-support
Vieille procédure : Modifier les paramètres panda dans ScheduleConfig
> svn co svn+ssh://svn.cern.ch/reps/pandaconf/trunk pandaconf
> cd pandaconf/SchedConfigs/FR Ouvrir le fichier.py à mofifier, le modifier puis > svn ci -m "commentaire" fichier.py Si pas de -m, une fenetre s'ouvre pour entrer un commentaire
Pages web :
Modifier les paramètres panda directement
svn au CC
> cd atlas/grille/pandasvn
> svn co svn+ssh://
> cd panda Ouvrir le fichier à mofifier, le modifier puis > svn ci -m "commentaire" fichier Si pas de -m, une fenetre s'ouvre pour entrer un commentaire ...
page mère
Restart condor
> cd /vo/atlas/panda
> ./RestartCondor.sh
Rechercher les releases
Partage des travaux sur anasthasie
Répertoires utiles
Logs pilots Central: /var/www/html/autopilot/logs/factory/production/terminal/
Par site : /var/www/html/autopilot/logs/factory/production/date/nomdusite
Factory : /vo/atlas/panda/factory/current/
États des jobs dans panda
- defined : job-record inserted in PandaDB
- assigned : dispatchDBlock is subscribed to site
- waiting : input files are not ready
- activated: waiting for pilot requests
- sent : sent to a worker node
- running : running on a worker node
- holding : adding output files to DQ2 datasets
- transferring : output files are moving from T2 to BNL
- finished : completed successfully
- failed : failed due to errors
defined -> assigned -> activated -> sent -> running -> holding -> transferring -> finished/failed
- defined -> assigned/waiting : automatic
- assigned -> activated : received a callback for the dispatchDBlock. If jobs don't have input files, they get activated without a callback.
- activated -> sent : sent the job to a pilot
- sent -> running : the pilot received the job
- waiting -> assigned : received a callback for the destinationDBlock of upstream jobs
- running -> holding : received the final status report from the pilot
- holding -> transfering : added the outout files to destinationDBlocks
- transfering -> finished/failed : received callbacks for the destinationDBlocks
Vieilles procédures : Renouvellement du proxy
-
Analyse
lcg_env
grid-proxy-init -valid 9999:00
voms-proxy-init -voms atlas:/Role=pilot -valid 99:00
voms-proxy-info -all
myproxy-init -s myproxy.cern.ch -d -n -c 0 -t 96
gsissh -p 1976 cclcgatlas04
vobox-proxy --vo atlas --dn "/O=GRID-FR/C=FR/O=CNRS/OU=LPSC/CN=Sabine Crepe-Renaudin" --voms atlas:/atlas/Role=pilot --lifetime 96:00 --proxy-safe 3600 --myproxy-safe 259200 --email mon@email register
source /vo/atlas/panda/Renewproxy_2011.sh
-
Production
lcg_env
grid-proxy-init -valid 9999:00
voms-proxy-init -voms atlas:/Role=production -valid 99:00
voms-proxy-info -all
my proxy-init -s myproxy.cern.ch -d -n -c 0 -t 96
gsissh -p 1975 cclcgatlas03
vobox-proxy --vo atlas --dn "/O=GRID-FR/C=FR/O=CNRS/OU=LPSC/CN=Sabine Crepe-Renaudin" --voms atlas:/atlas/Role=production --lifetime 96:00 --proxy-safe 3600 --myproxy-safe 259200 --email mon@email register
source /vo/atlas/panda/Renewproxy_2011.sh
-
Vieille procédure
vobox-proxy --vo atlas --dn "/O=GRID-FR/C=FR/O=CNRS/OU=LPSC/CN=Sabine Crepe-Renaudin" --voms atlas:/atlas/Role=production --life 96:00 --proxy-safe 3600 --myproxy-safe 259200 --email mon@email register
bash /vo/atlas/panda/Renewproxy_production.sh
/bin/bash /vo/atlas/panda/Submit_production
Si n'arrive pas (! bricolage) : enlever le old du dernier proxy et refaire le vobox proxy et il demande de remplacer le précédent ...
mv /opt/vobox/atlas/atlasana/proxy_repository/+2fO+3dGRID-FR+2fC+3dFR+2fO+3dCNRS+2fOU+3dLPSC+2fCN+3dSabine+20Crepe-Renaudinatlas+3a+2fatlas+2fRole+3dpilot.old /opt/vobox/atlas/atlasana/proxy_repository/+2fO+3dGRID-FR+2fC+3dFR+2fO+3dCNRS+2fOU+3dLPSC+2fCN+3dSabine+20Crepe-Renaudinatlas+3a+2fatlas+2fRole+3dpilot
-
Vérification
myproxy-info -v -d : to see the status of ( long term proxy cert ) at server
-
Production avec certificat robot
==> sur ccali :
avec le certif robot (changer lien dans .globus)
lcg_env
grid-proxy-init -valid 9999:00 (still necessary ? old globus command ....)
voms-proxy-init -voms atlas:/Role=production -valid 99:00
voms-proxy-info -all
myproxy-init -s myproxy.cern.ch -d -n -c 0 -t 96
sauvegarder le certif /tmp/x509up_xxx dans x509up_xxx-robot et vérifier chmod 600
voms-proxy-destroy
avec le certif perso (changer lien ds .globus)
voms-proxy-init -voms atlas:/Role=pilot -valid 99:00
voms-proxy-info -all
gsissh -p 1975 cclcgatlas03
scp crepe@ccali:x509up_xxx-robotana /tmp/.
et vérifier chmod 600 x509up_u629-robotana
export X509_USER_PROXY=/tmp/x509up_xxx-robot
voms-proxy-info
vobox-proxy --vo atlas --dn "/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=atlasfr1/CN=445173/CN=Robot: ATLAS Fr Factory 1" --voms atlas:/atlas/Role=production --lifetime 96:00 --proxy-safe 3600 --myproxy-safe 259200 --email
register_new_renewer.sh squad@mail>
source /vo/atlas/panda/Renewproxy_2011.sh
rm /tmp/x509up_xxx-robotana