User talk:LEROY

Un article de lcgwiki.
Revision as of 14:58, 12 octobre 2007 by LEROY (talk | contribs) (Test Performance Lecture/ecriture)
Jump to: navigation, search

Sommaire

Installation et Configuration d'une VO-BOX ALICE

TracNav

TOC(inline)

Introduction

Un site grille qui souhaite supporter l'expérience ALICE, doit installer une VO-BOX. ALICE utilise AliEN (Alice ENvironment) comme plateforme logicielle pour la simulation et l'analyse des données. Alien est installé sur chaque VO-BOX. C'est le CE d'Alien qui soumet les Job Agents (JAs) au CE du site. Les JAs vont ensuite chercher les jobs dans central Task Queue de Alien. Les jobs écrivent via xrootd (directement vers le CERN pour le moment). Comme il n'y a pas encore d'interface xrootd/SRM, chaque VO-BOX doit fournir un stockage xrootd qui peut être sur un disque local.

Les documents à lire impérativement (en plus de ce guide) sont:

* ALICE LCG VO-Box Installation Guide
* VOBOX Security and Operations Questionnaires

La VO-BOX n'est pas consommatrice en CPU et RAM. N'importe quel PC récent(Pentium+) avec 2GB+ de RAM peut faire l'affaire. Cependant un bon hardware est recommandé pour minimiser la fréquence des pannes.

Ressources disques requises

* Partition / (root) : au moins 2 GB
* Partition /var : y prévoir 10-15 GB d'espace pour les logs d'Alien
* /data (ou un autre nom) : partition local pour xrootd (prévoir 3G par job slot)

Remarques:

 1. xrootd: sur un site avec plus de 30 job slots, passer si possible au mode "head node + xrootd servers" pour des raisons de performances
 2. "/home" doit être local pour des raisons de performances et de gestion des "locks"

Les ports à ouvrir pour la VO-BOX au niveau du router

* 1975/tcp (gsissh): inbound from 137.138.0.0/16 and 192.16.186.192/26
* 1094/tcp(xrootd)
* 8082/tcp (Storage Adapter)
* 8083 (FTD)
* 8084/tcp (Site Proxy)
* 9991/tcp (PackMan) : Inbound from 137.138.0.0/16
* 1093/tcp (proofd)

Le profile de la VO-BOX sous Quattor

Dans clusters/<nom_site>-glite-x.y.z/profiles/profile_<nom_vobox>.tpl, faire:

{{{

include pro_<nom_site>_alice_glite_vobox; (voir cfg/clusters/ipno-glite-3.0.0/profiles/profile_ipnvobox.tpl)

}}}

Dans sites/<nom_site>/machine-types, créer pro_<nom_site>_alice_glite_vobox.tpl et pro_<nom_site>_alice_vobox_config.tpl

Vous pouvez copier et adpater les templates de l'IPNO ou du DAPNIA.

Après l'installation via Quattor de la machine

* Demander et installer le certificat serveur GRID-FR de la mchine
* Vérifier que les utilisateurs alis et alip existent dans /etc/passwd
* Verifier que Patricia Lorenzo Mendez et Artem Trunov sont bien mappés sur
 alis dans /etc/grid-security/grid-mapfile et qu'il y a quelqu'un mappé
 sur alip. Question ouverte: faut-il creer les pool accounts ? Ou faut-il
 créer uniqument les comptes alis, alip nécessaires pour ALICE ?
* Dans /etc/shadow vous devez avoir '*' dans le champ 'password', sinon le logingsissh ne marchera pas. Donc il faut remplacer '!!' ou '!*NP*' par '*'
{{{

[root@ipnvobox etc]# grep alis /etc/shadow alis:*:13574:0:99999:7:::

}}}
* Vérifier que le serveur GSISSH tourne sur la VOBOX sur le port 1975.
* Vérifier que $MYPROXY_SERVER pointe bien sur myproxy.cern.ch
* Vérifier que la expérimental software area ($VO_ALICE_SW_DIR) est bien accessible via NFS depuis la VO-BOX et writeable par alis. Il faut au moins 5GB d'espace libre pour le soft d'ALICE.
* Vérifier que la partition /data pour xrootd existe et appartient à alis (/data doit être crée sous Quattor ou à la main)
{{{

[root@ipnvobox root]# ls -ld /data drwxr-xr-x 19 alis alice 4096 Dec 14 13:22 /data

}}}
* Créer un directory pour les logs d'Alien (ex: /var/log/alis). Il doit appartenir à alis et nécessite 10-15 GB libre.
{{{

[root@ipnvobox root]# ls -ld /var/log/alis drwxrwxrwx 10 alis alice 4096 Mar 2 16:54 /var/log/alis

}}}
* Configurer le proxy-renewal service. MAIS, le script /opt/vobox/templates/voname-box-proxyrenewal n'est pas encore exécuté automatiquement. Cal a prévu de corriger le probleme. Donc si après l'installation de la VO-BOX, il manque alice-box-proxyrenewal dans /etc/cron.d/ et dans /etc/init.d/ ainsi que start, stop, agents et info-provider dans /opt/vobox/alice/, alors faire:
 1. créer /etc/cron.d/alice-box-proxyrenewal:
{{{

[root@ipnvobox root]# cat /etc/cron.d/alice-box-proxyrenewal

  1. !/bin/sh

20 2,8,14,20 * * * root (PATH=/sbin:/bin:/usr/sbin:/usr/bin; /sbin/service alice-box-proxyrenewal proxy)

}}}
 2. copier /opt/vobox/templates/voname-box-proxyrenewal dans
   /tmp/alice-proxy-renewal.sh, adpatez-le et exécutez-le (le script que j'ai
   utilisé est en attachement: alice-proxy-renewal.sh).
 3. vous devez alors retrouver les directories qui manquaient:
{{{

[root@ipnvobox alice]# ls -l total 44 drwx------ 2 alis alice 4096 Jul 19 2006 agents -rw-rw-rw- 1 alis alice 0 Nov 14 09:09 edglog.log drwx------ 2 alis alice 4096 Jul 19 2006 info-provider drwx------ 2 alis alice 4096 Mar 1 04:02 log drwx------ 2 alis alice 4096 Mar 2 17:19 proxy_repository -rw------- 1 alis alice 13750 Mar 2 17:04 _registerer_proxies.db -r-------- 1 alis alice 2690 Mar 2 14:20 renewal-proxy.pem drwx------ 2 alis alice 4096 Aug 6 2006 start drwx------ 2 alis alice 4096 Aug 5 2006 stop

}}}
* Envoyer un e-mail à: Patricia.Mendez@cern.ch, latchezar.betev@cern.ch et trunov@cc.in2p3.fr :

1. demander que la machine soit enregistrée 'as trusted host' dans myproxy.cern.ch dans LDAP (il faut fournir le DN de la VOBOX). 2. fournir les informations suivantes dans le mail:

 * hostname de la VO-BOX
 * le nom des users: alicesgm (alis dans GRIF), alip (ALICE Production)
 * le nom directory pour xrootd (ex: /data)
 * le nom du SE/DPM Server (ex: ipnsedpm.in2p3.fr)
 * le nom du serveur LFC (ex: grid14.lal.in2p3.fr) et le catalogue pour
   ALICE (/grid/alice)
 * le nom du RB (ex: grid09.lal.in2p3.fr)
 * le nom du CE et de la queue batch
   (ex: ipnls2001.in2p3.fr:2119/jobmanager-pbs-alice)
 * le path pour le experiment software area
   (ex:VO_ALICE_SW_DIR=/ipn/storage1/exp_soft/alis, zone "NFS shared" avec les WNs)
* Installer Alien ou demander que Artem ou Patricia vous l'installe.
* S'inscrire individullement dans le projet ALICE (voir avec un physicien d'ALICE du Labo et avec le Secrétariat d'ALICE) :
 1. demander un logon au CERN (si vous n'en avez pas déjà)
 2. demander à être enregistré comme membre du projet ALICE
* Inscrivez-vous dans AliEn en suivant les étapes sur la page http://alien.cern.ch/twiki/bin/view/Alice/UserRegistration
 1. Vous serez amenés à vous inscrire dans la VO ALICE (si ce n'est pas déjà fait)  sur https://lcg-voms.cern.ch:8443/vo/alice/vomrs
 2. Ensuite vous pourrez vous inscrire dans AliEn ("5. Register with AliEn" sur
   https://alien.cern.ch:8443/twiki/bin/UserReg
* Demander ensuite à être mapé sur 'alidprod' si vous voulez pouvoir utiliser AliEn sous votre nom (ALIEN_USER=user_name dans ~alis/.alien/Environment) la VO-BOX (start/stop des services par exemples)
* Mettre dans /etc/motd des informations utiles à afficher lors de la connexion [gsi]ssh: LFC server, catalog pour alice, zone pour xrootd, etc.

Durée du proxy

Vérifier dans /opt/lcg/sbin/vobox-renewd qu'on a '-t 48' :

{{{

${GLOBUS_LOCATION}/bin/myproxy-get-delegation -a ${VOBOX_PROXY_REPOSITORY}/${CERT} -d -o $TMP_PROXY -t 48 2>&1 > /dev/null

}}}

Il s'agit d'un problème qui devrait être résolu dans le futur

Backup

Faire régulièrement des sauvegardes de ~alis, /opt/vobox et des logs d'Alien (ex: /var/log/alis)

Se connecter à la VO-BOX depuis le UI

Faire 'gsissh -l user -p port_GSISSH <vobox_name> '

{{{

[diarra@ipngrid01 ~]$ gsissh -l alis -p 1975 ipnvobox

}}}

Utiliser le serveur myproxy

Sur le UI:

{{{

myproxy-init -s myproxy.cern.ch -d -n -t 48 -c 720 gsissh -l alis -p 1975 <vobox_name>

}}}

Sur la VO-BOX:

{{{

vobox-proxy --vo alice --proxy-safe 3600 --myproxy-safe 259200 --email <votre_e-mail> register

}}}

Pour s'assurer que le proxy est renouveler automatiquement, vérifier que vous avez dans /opt/vobox/alice/log/events.log une ligne du genre:

{{{

9/07/06 14:35:56 : Proxy for DN "/O=GRID-FR/C=FR/O=CNRS/OU=IPNO/CN=Christophe Diarra/CN=proxy/CN=proxy/CN=proxy" successfully renewed

}}}

Dans /opt/vobox/alice/proxy_repository/ vous trouverez le proxy.

Start/Stop des services

Les services peuvent être démarrés un par un. Les services disponibles sont : Monitor, SE, CE, PackMan, Monalisa.

Un script permet de les démarrer ou de les arrêter dans le bon ordre:

stop

Pour démarrer ou arreter un seul service :

StopServiceName

Exemple: $VO_ALICE_SW_DIR/alien/scripts/lcg/lcgAlien.sh StopCE $VO_ALICE_SW_DIR/alien/scripts/lcg/lcgAlien.sh StartCE


Expiration du proxy

Quand vous recevez un mail indiquant que le proxy est sur le point d'expirer (3 jours avant ?), ou si les logs le signalent, il faut renouveler le proxy sur le serveur myproxy depuis le UI.

{{{

[root@ipnvobox log]# more /opt/vobox/alice/log/events.log ... 11/26/06 15:03:05 : Myproxy lifetime (256228 sec) shorter than security threshol d (259200 sec) 11/26/06 15:03:05 : ... for DN /O=GRID-FR/C=FR/O=CNRS/OU=IPNO/CN=Christophe Diar ra 11/26/06 15:03:05 : sendind notification email to diarra@ipno.in2p3.fr. SUCCESSF ULL

}}}

Sur le UI:

{{{

[diarra@ipnls2011 my]$ myproxy-info -d -s myproxy.cern.ch username: /O=GRID-FR/C=FR/O=CNRS/OU=IPNO/CN=Christophe Diarra owner: /O=GRID-FR/C=FR/O=CNRS/OU=IPNO/CN=Christophe Diarra

 timeleft: 52:25:26  (2.2 days)

[diarra@ipnls2011 my]$ myproxy-init -s myproxy.cern.ch -d -n -t 48 -c 720 Your identity: /O=GRID-FR/C=FR/O=CNRS/OU=IPNO/CN=Christophe Diarra Enter GRID pass phrase for this identity: Creating proxy ............................................ Done Proxy Verify OK Your proxy is valid until: Wed Dec 27 09:56:25 2006 A proxy valid for 720 hours (30.0 days) for user /O=GRID-FR/C=FR/O=CNRS/OU=IPNO/CN=Christophe Diarra now exists on myproxy.cern.ch.

}}}

Monitoring / Accounting

* ALICE Monitoring with MonALISA
* ALICE Dashboard : Job Summary

Liens Utiles

Debugging & Troubleshooting the ALICE LCG Vo-Box

VO-box HowTo - description, installation, testing

Page Alice LCG-France

VOBOX Security and Operations Questionnaires

Pages sur les VOboxes

LCG VOBox Operations Recommendations and Questionnaire

How to install xrootd on data servers

XROOTD


LEMON : Sytème de Monitoring Client/Serveur

TracNav

http://lemon.web.cern.ch/lemon/ http://lemon.web.cern.ch/lemon/doc/installation/installation.html

TOC(inline)


Installation du Serveur Lemon via quattor en SL4

Utilser les 2 templates : {{{ pro_software_lemon_server_sl4_i386; pro_service_lemon_server; }}}


Qui vont:

1) installer les RPMs necessaires

{{{ ("edg-fabricMonitoring-server","2.13.0-3","i386"); ("rrdtool","1.0.49-2.1.el3.rf","i386"); ("lrf","1.0.7-15","i386"); ("ncm-fmonagent","1.0.32-1","noarch"); ("perl-TimeDate","2.22-1","noarch"); ("httpd","2.0.52-22.ent","i386"); ("httpd-suexec","2.0.52-22.ent","i386"); ("system-config-httpd","1.3.1-1","noarch"); ("php-ldap","4.3.9-3.15","i386"); ("php-gd","4.3.9-3.15","i386"); ("php-imap","4.3.9-3.15","i386"); ("php-pear","4.3.9-3.15","i386"); ("php","4.3.9-3.15","i386"); ("oracle-xe-univ","10.2.0.1-1.0","i386"); ("cx_Oracle","4.1-1","i386"); ("lemon-ora-admin","1.0.4-96","noarch");

  1. lemon-OraMon probleme de dependance: l'installer avec --nodeps (info from Miroslav Sicket CERN)

("lemon-OraMon","1.2.0-1","i386");}}} }}}



2) configurer les fichiers suivant : {{{ /etc/lemon/server/lemon-oramon-server.conf /var/www/html/lrf/config.php /var/spool/edg-fmon-server/nodes.map /etc/lemon/lemonmrd.conf }}}



 3) et demarrer les 2 demons :

{{{ /etc/init.d/OraMon /etc/init.d/lemonmrd }}}




Configuration Hors Quattor

1) Configuration de la Base de Donée:


{{{ /etc/init.d/oracle-xe configure . /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh sqlplus system

SQL> EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);       

/etc/init.d/oracle-xe start }}}


2) Ajouter l'utilisateur lemon via l'interface http://ma_machine:port_choisi/apex


3) Configuration de Oramon :

{{{ lemon-ora.admin --create-schema -d xe --data-tablespace=USERS --index-tablespace=USERS lemon-ora.admin --file=/etc/oramon-server.conf -d xe --all --data-tablespace=USERS --index-tablespace=USERS lemon-ora.admin --file=/etc/oramon-server.conf -d xe -u lemon --create-las --data-tablespace=USERS --index-tablespace=USERS }}}


4) exporter les variables Oracle : {{{ export LD_LIBRARY_PATH=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/lib:/usr/lib/oracle/10.2.0.3/client/lib export ORACLE_SID=XE export PATH=$PATH:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin export ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server export TNS_ADMIN=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin export PYTHONPATH=/usr/lib/python2.2/site-packages export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

}}}

    Dans tous les fichiers de demarrage suivant :
  {{{
  /etc/init.d/lemonmrd
  /etc/init.d/httpd
  /etc/sysconfig/OraMon
  }}}

5) Et verifier ensuite les logs, et que le serveur collecte bien des données :

{{{ /var/log/lemonmrd.log /var/www/html/lrf/data }}}


Ajout de nouvelles sondes/metriques

I) Sur le client

a)


[root@node07 sensor-example]# cat /etc/lemon/agent/sensors/torque_maui.conf
torque_maui
       CommandLine /usr/bin/perl /usr/libexec/sensors/lemon-sensor.pl RunningJobs
       MetricClasses
               torque_maui.RunningJobs

b)


[root@node07 sensor-example]# cat /etc/lemon/agent/metrics/torque_maui.conf
20047
       MetricName     Jobsrunning
       MetricClass    torque_maui.RunningJobs
       Timing  3600   0


c)


[root@node07 sensor-example]# cat /usr/libexec/sensors/RunningJobs.pm
#!/usr/bin/perl -w
package torque_maui;
# modules
use diagnostics;
use strict;
# the sensor API interface
use sensorAPI;
# register module name and version
registerVersion("lemon-sensor-torque_maui", "1.0.0-1");
# register the sensors metric classes
registerMetric("torque_maui.RunningJobs", "report the Running Jobs", "torque_maui::RunningJobs");
sub RunningJobs_sample() {
   # All function hooks in the sensor API: _sample(), _initialise(), _periodicCheck(), _destroy()
   # are passed a hash as the first argument. This hash provides the function with the ability to
   # access the methods and variables of the metric instance/object. This is Perls implementation
   # of Object Orientation
   my $obj  = shift;
   # variables
   my $line = `/usr/bin/showq -r | echo \$((\$(wc -l)-4))`;
           $obj->storeSample01($line);
   # All functions called by the sensor API must return a value
   #  - if the sampling was successful you the return code should be 0 and -1 on error
    return 0;
     }
1;
#-- End-of-File --------------------------------------------------------------------------------------#

II) Pour le serveur

1) Pour Oramon

a) modifier le fichier /etc/oramon-server.conf



………..
               torque_maui.RunningJobs
                       Description Running jobs on the CE?
                       Fields
                               Running_Jobs
                                       Type INTEGER
                                       MetricUnit count
                                       MetricScale 1
……………..
               20047
                       MetricClass torque_maui.RunningJobs
                       MetricName Jobsrunning
                       Description Running Jobs on the CE?
                       TableName _20047



Metric classes part into corresponding metric class part, metric instance into metric instances (be carefull about the tabs).


b) sourcer laes variables d'environnement oracle :

. /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/bin/oracle_env.sh

c) mettre a jour la Database:

lemon-ora.admin --file=/etc/oramon-server.conf -d xe  -u lemon --all --data-tablespace=USERS --index-tablespace=USERS


2) Pour LRF

a) # tail -3 /var/spool/edg-fmon-server/metrics.map

182 20015     /home.use
183 30050     exitCodeNFS
184 20047     RunningJobs



b)# more /etc/lemon/lemonmrd.conf



……………..
RunningJobs=Jobsrunning:Running_Jobs
……………..


[node07.datagrid.cea.fr]
type=host
metrics=+RunningJobs


c) #grep -i job /var/www/html/lrf/metric_map.php


                  "RunningJobs"        => array("RunningJobs","Jobs   running","count",1,0,'Jobsrunning.Running_Jobs'),
                       1 => array('name' => 'JOBS STATISTICS', 'y-axis' => 'count', 'stack' => false, 'base' => 1,
                           'metrics' => array( 0 => array('name' =>  'RunningJobs', 'summary' => true, 'title' => 'Running Jobs')






Pour configurer les alarmes

a) créer un fichier xml par machine:

{{{

  1. cat /tmp/my_cnf_node07.xml

<?xml version = '1.0'?> <CDBSEARCHLIST> <HOST ID="node07.datagrid.cea.fr" CLUSTER ="GRID_SERVICES" SUBCLUSTER ="" IMPORTANCE ="0" SURESTATUS ="TRUE" NOCONTACTTIMEOUT ="660" PINGTIMEOUT ="" /> </CDBSEARCHLIST>

}}}

b) mettre a jour la Database:


{{{

  1. lemon-ora.entities -u lemon -d xe -c /tmp/my_cnf_node07.xml

}}}


Problemes rencontrés

ne pas oublier d'exporter les variables oracles

le fichies nodes.map ne doit pas avoir de lignes vides

Les Symlink avec cette version d'apache ne fonctionne pas (on utlisie /var/www/html/lrf/data au lieu de /var/spool/data)

Php avec oci8 tres sensibles aux versions (plus de soucis avec les versions SL4 ci dessus)

Test sur le réseaux datagrid.cea.fr: Iperf

Le 20/03/2007


Avec 5 threads :

Lyon -> Saclay : 550Mb/s (peu variable) ;

Saclay -> Lyon : 600 Mb/s (très variables de 250 Mb/s à 750 Mb/s)).


Avec 1 thread : 300 Mb/s dans les 2 sens

Test sur le réseaux datagrid.cea.fr: Transfert de fichiers -1ere PHASE-

Sites impliqués

  • T1 CC-IN2P3
    • Contacts : David Bouvet, Lionel Schwarz
    • SE : ccsrm.in2p3.fr
      • Endpoint transferts DAPNIA-CC : /pnfs/in2p3.fr/data/dteam/disk/dapnia/
  • T2 GRIF
    • Contacts : Christine Leroy
    • SE-DAPNIA : node12.datagrid.cea.fr
      • GlueServiceEndpoint: httpg://node12.datagrid.cea.fr:8443/srm/managerv1
      • GlueSAPath: /dpm/datagrid.cea.fr/home/dteam
    • SE-LAL : grid05.lal.in2p3.fr

conditions de transferts pour FTS

Les transferts sont initiés depuis node02.datagrid.cea.fr

  • Avant tout transfert, il faut un proxy valide déposé sur un serveur MyProxy pour permettre au serveur FTS de renouveler un proxy expiré en cours de transfert
myproxy-init -s cclcgproxli01.in2p3.fr -d


glite-transfer-channel-list -s https://cclcgftsprod01.in2p3.fr:8443/glite-data-transfer-fts/services/ChannelManagement GRIF-IN2P3


glite-transfer-channel-set -s https://cclcgftsprod01.in2p3.fr:8443/glite-data-transfer-fts/services/ChannelManagement -f 10 -T 1 GRIF-IN2P3

Les tests de transferts

-Script de test des transferts FTS proposé par GridPP à l'adresse : http://www.gridpp.ac.uk/wiki/Transfer_Test_Python_Script_HOWTO
-Le wiki GriPP est une mine d'informations : http://www.gridpp.ac.uk/wiki/Main_Page


CC->DAPNIA

set SourceURL="srm://ccsrm.in2p3.fr:8443/"
set DestURL="srm://node12.datagrid.cea.fr:8443/dpm/datagrid.cea.fr/home/dteam/"

liste des fichiers:


srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00007
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00008
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00009
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00011
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00012
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00013
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00014
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00015
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00016
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00017
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00018
srm/managerv1?SFN=/pnfs/in2p3.fr/data/dteam/dapnia/cleroy/ATLAS-file00019

DAPNIA -> CC

set SourceURL="srm://node12.datagrid.cea.fr:8443/dpm/datagrid.cea.fr/home/dteam/dapnia/"
set DestURL="srm://ccsrm.in2p3.fr:8443/pnfs/in2p3.fr/data/dteam/disk/dapnia/"

liste des fichiers (1 seul SE-DISK)

cleroy/ATLAS-file00007
cleroy/ATLAS-file00008
cleroy/ATLAS-file00009
cleroy/ATLAS-file00011
cleroy/ATLAS-file00012
cleroy/ATLAS-file00013
cleroy/ATLAS-file00014
cleroy/ATLAS-file00015
cleroy/ATLAS-file00016
cleroy/ATLAS-file00017
cleroy/ATLAS-file00018
cleroy/ATLAS-file00019


en parrallele avec n=10 pour les 2 type de transfet, pour durer environ 20 minutes (1Gb/s). FTS configuré avec (f6;T2).

ESSAI du nbre de  |
(fichier;stream)  | Bande passante(Mb/s)  | 
------------------+-----------------------+
| (f8;T1)         | 242                   |
| (f6;T1)         | 301                   |
| (f3;T1)         | 302                   |
| (f2;T1)         | 185                   |
| (f6;T2)         | 312                   |
| (f6;T6)         | 284                   |
| (f6;T4)         | 280                   |


Resultat 26/04/2007 :

D-CC

Transfer Bandwidth Report:
110/120 transferred in 2668.16920614 seconds
81081938300.0 bytes transferred.
Bandwidth: 243.108834667Mb/s

CC-D

Transfer Bandwidth Report:
120/120 transferred in 3033.88385892 seconds
88453023600.0 bytes transferred.
Bandwidth: 233.240368355Mb/s


Débit réseaux pour le SE DISK du DAPNIA (derriere node12):

http://lcg2.in2p3.fr/wiki/images/Node11_net_fts_26042007.gif

Débit réseaux routeur datagrid.cea.fr:

http://lcg2.in2p3.fr/wiki/images/Routeur_datagridceafr_26042007.png


utilisation de:

  • filetransfer.py entre DAPNIA <-> Lyon (SE <-> SE)
  • globus_url_copy et lcg-cr entre DAPNIA <-> Orsay (UI <-> SE)


Le 02/05/2007: Meme occupation réseaux :300Mb/s


CONCLUSION PRELIMINIARE

=> Ces tests avaient pour but d'occuper le plus possible la bande passante de notre réseaux datagrid.cea.fr, pour s'assurer que le routeur tenait bien la charge

=> Nous n'avons pas reussi à occuper toute la bande passante: tests à poursuivre avec plus de client/serveur => Le comble de l'informaticien: réussir à faire mieux que ses utilisateurs:

One day, One atlas physicit, Many jobs:

http://lcg2.in2p3.fr/wiki/images/Node11.datagrid.cea.fr.rrd_NUMKBREADAVG_d.gif

Débit réseaux SE DISK, le 16/06/2006


Test sur le réseaux datagrid.cea.fr: Transfert de fichiers -2eme PHASE (3 SE-DISK au DAPNIA et multi threading)-

Transfert FTS: (CC->DAPNIA) // (DAPNIA->CC) avec plusieurs SE-DISK du DAPNIA (node11, node18, node20)

Transfert: FTS (CC->DAPNIA) // FTS (DAPNIA->CC) ) // globus-url-copy (UI DAPNIA -> SE LAL) // globus-url-copy (SE LAL -> UI DAPNIA)

Priorites locales Filtre TORQUE-

http://lcg2.in2p3.fr/wiki/images/Submit_filter.txt


Configuration thumper

La DOc: http://www.sun.com/products-n-solutions/hardware/docs/pdf/820-1151-10.pdf

http://doc.fedora-fr.org/RAID_Logiciel:_Comment_Installer_et_G%C3%A9rer_un_System_Raid


Formatage des disks:

Il faut des partitions du type type Linux raid autodetect (type fd)


for i in   
/dev/sda /dev/sdaa /dev/sdab /dev/sdad /dev/sdae /dev/sdaf /dev/sdag /dev/sdah /dev/sdai /dev/sdaj /dev/sd    /dev/sdal /dev/sdam /dev/sdan /dev/sdao /dev/sdap /dev/sdaq /dev/sdar /dev/sdas /dev/sdat /dev/sdau /dev/sdav /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh /dev/sdi /dev/sdj /dev/sdk /dev/sdl /dev/sdm /dev/sdn /dev/sdo 
/dev/sdp /dev/sdq /dev/sdr /dev/sds /dev/sdt /dev/sdu /dev/sdv /dev/sdw /dev/sdx /dev/sdz; do export  
$i; /root/script_raid $i; done


[root@node23 ~]# more /root/script_raid
sfdisk -f $1 << EOF
0 60801 fd
;
;
;
EOF

Pour verifier:

# for i  
   
in  /dev/sda /dev/sdaa /dev/sdab /dev/sdad /dev/sdae /dev/sdaf /dev/sdag /dev/sdah /dev/sdai /dev/sdaj 
/dev/sdak /dev/sdal /dev/sdam /dev/sdan /dev/sdao /dev/sdap /dev/sdaq /dev/sdar /dev/sdas /dev/sdat /dev/sdau /dev/sdav /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdh /dev/sdi /dev/sdj /dev/sdk /dev/sdl /dev/sdm /dev/sdn  /dev/sdo /dev/sdp /dev/sdq /dev/sdr /dev/sds /dev/sdt /dev/sdu /dev/sdv /dev/sdw /dev/sdx /dev/sdz; do  
sfdisk --list $i ; done | more

Creation des Raids logiciel:

Conseil de SUN:

"Diff Raid 5 config does not change the availability that much, Raid 5 is one way parity, if you lose two disks in the same raid group, you lose the data. The difference is probability of losing two disks is higher when you have higher number of disks in a raid group. We usually suggest using one disk out of each controller for parity, (six controller total), 5+1 configuration, 8 raid groups. Overhead is 1/6 about 16% capacity loss. add the OS disk, 20TB."


mdadm --create /dev/md1 --level=5 --raid- 
devices=6 /dev/sdab1 /dev/sdt1 /dev/sdar1 /dev/sdaj1 /dev/sdl1 /dev/sdd1
mdadm --create /dev/md2 --level=5 --raid- 
devices=6 /dev/sdaf1 /dev/sdx1 /dev/sdav1 /dev/sdan1 /dev/sdp1 /dev/sdh
mdadm --create /dev/md3 --level=5 --raid- 
devices=6 /dev/sdaa1 /dev/sds1 /dev/sdaq1 /dev/sdai1 /dev/sdk1 /dev/sdc1
mdadm --create /dev/md4 --level=5 --raid- 
devices=6 /dev/sdae1 /dev/sdw1 /dev/sdau1 /dev/sdam1 /dev/sdo1 /dev/sdg1
mdadm --create /dev/md5 --level=5 --raid- 
devices=6 /dev/sdz1 /dev/sdr1 /dev/sdap1 /dev/sdah1 /dev/sdj1 /dev/sdb1
mdadm --create /dev/md6 --level=5 --raid- 
devices=6 /dev/sdad1 /dev/sdv1 /dev/sdat1 /dev/sdal1 /dev/sdn1 /dev/sdf1
mdadm --create /dev/md7 --level=5 --raid-devices=5 /dev/sdq1 /dev/sdao1 /dev/sdag1 /dev/sdi1 /dev/sda1
mdadm --create /dev/md8 --level=5 --raid-devices=5 /dev/sdu1 /dev/sdas1 /dev/sdak1 /dev/sdm1 /dev/sde1


Sinon il est possible d'avoir un disk de spare pour tous les raids, cf doc : [1] mais je n'ai pas eu le temps de tester.

Pour verifier:


cat /proc/mdstat
mdadm --query /dev/md1


Pour supprimer:

mdadm /dev/md1 stop
mdadm /dev/md1 --remove
mdadm --zero-superblock /dev/hdxx1



mkfs -t ext3 /dev/md1
mount /dev/md1 /scratch

Pour les drivers:

telecharger les outils et driver linux:

http://www.sun.com/servers/x64/x4500/downloads.jsp

telecharger: kernel-largesmp-devel-2.6.9-42.0.3.EL.x86_64

Par contre il crée /usr/src/kernels/2.6.9-42.0.3.EL-largesmp-x86_64 au lieu de /usr/src/kernels/2.6.9-42.0.3.ELlargesmp-x86_64

faire donc un:


cp -r /usr/src/kernels/2.6.9-42.0.3.EL-largesmp-x86_64 /usr/src/kernels/2.6.9-42.0.3.ELlargesmp-x86_64

Ensuite:


rpmbuild --rebuild   mvSatalinux-3.6.3_2-2.6.9_42.ELsmp_1.src.rpm
rpm -e (de tous les rpm: "rpm -qa | grep -i mvsata")
rpm -ivh /usr/src/redhat/RPMS/x86_64/mvSatalinux-3.6.3_2-2.6.9_42.0.3.ELlargesmp_1.x86_64.rpm
rpm -ivh /usr/src/redhat/RPMS/x86_64/mvSatalinux-debuginfo-3.6.3_2-2.6.9_42.0.3.ELlargesmp_1.x86_64.rpm


verifier:


# modinfo mv_sata
filename:       /lib/modules/2.6.9-42.0.3.ELlargesmp/kernel/drivers/scsi/mv_sata.ko
description:    Marvell Serial ATA PCI-X Adapter version: 3.6.3_2
license:        BSD
alias:          pci:v000011ABd00007042sv*sd*bc*sc*i*
alias:          pci:v000011ABd00006042sv*sd*bc*sc*i*
alias:          pci:v000011ABd00006041sv*sd*bc*sc*i*
alias:          pci:v000011ABd00006081sv*sd*bc*sc*i*
alias:          pci:v000011ABd00005041sv*sd*bc*sc*i*
alias:          pci:v000011ABd00005040sv*sd*bc*sc*i*
alias:          pci:v000011ABd00005081sv*sd*bc*sc*i*
alias:          pci:v000011ABd00005080sv*sd*bc*sc*i*
depends:        scsi_mod
vermagic:       2.6.9-42.0.3.ELlargesmp SMP gcc-3.4
}}}

Test Performance Lecture/ecriture

# more /proc/mdstat
Personalities : [raid5]
md7 : active raid5 sdao1[1] sdag1[2] sdq1[0] sdi1[3]
     1953535744 blocks level 5, 64k chunk, algorithm 2 [5/4] [UUUU_]
md5 : active raid5 sdap1[2] sdah1[3] sdz1[0] sdr1[1] sdj1[4] sdb1[5]
     2441919680 blocks level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU]
md3 : active raid5 sdaq1[2] sdai1[3] sdaa1[0] sds1[1] sdk1[4]
     2441919680 blocks level 5, 64k chunk, algorithm 2 [6/5] [UUUUU_]
md8 : active raid5 sdas1[1] sdak1[2] sdu1[0] sdm1[3] sde1[4]
     1953535744 blocks level 5, 64k chunk, algorithm 2 [5/5] [UUUUU]
md6 : active raid5 sdat1[2] sdal1[3] sdad1[0] sdv1[1] sdn1[4] sdf1[5]
     2441919680 blocks level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU]
md4 : active raid5 sdau1[2] sdam1[3] sdae1[0] sdw1[1] sdo1[4] sdg1[5]
     2441919680 blocks level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU]
md2 : active raid5 sdav1[2] sdan1[3] sdaf1[0] sdx1[1] sdp1[4]
     2441919680 blocks level 5, 64k chunk, algorithm 2 [6/5] [UUUUU_]
md1 : active raid5 sdar1[2] sdaj1[3] sdab1[0] sdt1[1] sdl1[4] sdd1[5]
     2441919680 blocks level 5, 64k chunk, algorithm 2 [6/6] [UUUUUU]


en MB/s
Volumétrie: 19TB utile
|	   md1    md2     md3	  md4    md5   md6      md7    md8    MOY     TOT (Mb/s)   Mb/s/TB	
Write//    71,22  69,31  68,13  71,26  70,14   69,56   62,56  65,89   68,50     4384,56     230,76
write seq 111,01 103,42  102,24 109,77	112,58	107,02	84,61  89,6   102,53125			
read //   99,62   98,75   98,22  99,78	100,93	100,01	85,7   86,69   96,2125	 6157,6	     324,08
read seq  275,4  254,28  250,69 267,62	274,16	280,52	188,37 197,58 248,5775

Configuration Reseaux avec 2 intefaces bond

{{{ [root@node23 ~]# more /etc/modprobe.conf alias eth0 e1000 alias eth1 e1000 alias eth2 e1000 alias eth3 e1000 alias eth4 e1000 alias eth5 e1000 alias eth6 e1000 alias eth7 e1000 install ipw3945 /sbin/modprobe --ignore-install ipw3945 ; sleep 0.5 ; /sbin/ipw3 945d --quiet remove ipw3945 /sbin/ipw3945d --kill ; /sbin/modprobe -r --ignore-remove ipw3945 alias usb-controller ehci-hcd alias usb-controller1 ohci-hcd

        1. BONDING

alias bond0 bonding alias bond1 bonding

  1. options bond0 -o bond0 mode=0 miimon=100

options bond0 mode=0 miimon=100 max_bonds=2 options bond1 -o bond1 mode=0 miimon=100

        1. END BONDING
  1. Added mv_sata binary driver rpm installation

alias scsi_hostadapter mv_sata alias sata_mv off [root@node23 ~]#

}}}


{{{ [root@node23 ~]# more /etc/sysconfig/network-scripts/ifcfg-*

/etc/sysconfig/network-scripts/ifcfg-bond0

ONBOOT=yes DEVICE=bond0 TYPE=Ethernet BOOTPROTO=static IPADDR=192.54.208.82 NETMASK=255.255.255.0 BROADCAST=192.54.208.255

/etc/sysconfig/network-scripts/ifcfg-bond1

ONBOOT=yes DEVICE=bond1 TYPE=Ethernet BOOTPROTO=static IPADDR=192.54.208.101 NETMASK=255.255.255.0 BROADCAST=192.54.208.255

/etc/sysconfig/network-scripts/ifcfg-eth0

ONBOOT=yes DEVICE=eth0 TYPE=Ethernet BOOTPROTO=none MASTER=bond0 SLAVE=yes

/etc/sysconfig/network-scripts/ifcfg-eth1

ONBOOT=yes DEVICE=eth1 TYPE=Ethernet BOOTPROTO=none MASTER=bond0 SLAVE=yes

/etc/sysconfig/network-scripts/ifcfg-eth2

ONBOOT=yes DEVICE=eth2 TYPE=Ethernet BOOTPROTO=none MASTER=bond0 SLAVE=yes

/etc/sysconfig/network-scripts/ifcfg-eth3

ONBOOT=yes DEVICE=eth3 TYPE=Ethernet BOOTPROTO=none MASTER=bond0 SLAVE=yes

/etc/sysconfig/network-scripts/ifcfg-eth4

ONBOOT=yes DEVICE=eth4 TYPE=Ethernet BOOTPROTO=none MASTER=bond1 SLAVE=yes

/etc/sysconfig/network-scripts/ifcfg-eth5

ONBOOT=yes DEVICE=eth5 TYPE=Ethernet BOOTPROTO=none MASTER=bond1 SLAVE=yes

/etc/sysconfig/network-scripts/ifcfg-eth6

ONBOOT=yes DEVICE=eth6 TYPE=Ethernet BOOTPROTO=none MASTER=bond1 SLAVE=yes

/etc/sysconfig/network-scripts/ifcfg-eth7

ONBOOT=yes DEVICE=eth7 TYPE=Ethernet BOOTPROTO=none MASTER=bond1 SLAVE=yes

}}}


{{{

  1. ifconfig

bond0 Link encap:Ethernet HWaddr 00:14:4F:20:FC:B0

         inet addr:192.54.208.82  Bcast:192.54.208.255  Mask:255.255.255.0
         inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link
         UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
         RX packets:96129841 errors:2 dropped:0 overruns:0 frame:1
         TX packets:86702743 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:144510750072 (134.5 GiB)  TX bytes:7460167641 (6.9 GiB)

bond1 Link encap:Ethernet HWaddr 00:15:17:2A:09:A6

         inet addr:192.54.208.101  Bcast:192.54.208.255  Mask:255.255.255.0
         inet6 addr: fe80::200:ff:fe00:0/64 Scope:Link
         UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
         RX packets:934011 errors:0 dropped:0 overruns:0 frame:0
         TX packets:33 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:62926730 (60.0 MiB)  TX bytes:2572 (2.5 KiB)

eth0 Link encap:Ethernet HWaddr 00:14:4F:20:FC:B0

         inet6 addr: fe80::214:4fff:fe20:fcb0/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:73871160 errors:2 dropped:0 overruns:0 frame:1
         TX packets:21675694 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:110757099435 (103.1 GiB)  TX bytes:1865279045 (1.7 GiB)
         Base address:0xac00 Memory:fd2e0000-fd300000

eth1 Link encap:Ethernet HWaddr 00:14:4F:20:FC:B0

         inet6 addr: fe80::214:4fff:fe20:fcb0/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:22109357 errors:0 dropped:0 overruns:0 frame:0
         TX packets:21675683 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:33554660288 (31.2 GiB)  TX bytes:1864208904 (1.7 GiB)
         Base address:0xa800 Memory:fd2c0000-fd2e0000

eth2 Link encap:Ethernet HWaddr 00:14:4F:20:FC:B0

         inet6 addr: fe80::214:4fff:fe20:fcb0/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:55195 errors:0 dropped:0 overruns:0 frame:0
         TX packets:21675683 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:68939873 (65.7 MiB)  TX bytes:1865275229 (1.7 GiB)
         Base address:0xbc00 Memory:fd3e0000-fd400000

eth3 Link encap:Ethernet HWaddr 00:14:4F:20:FC:B0

         inet6 addr: fe80::214:4fff:fe20:fcb0/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:94129 errors:0 dropped:0 overruns:0 frame:0
         TX packets:21675683 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:130050476 (124.0 MiB)  TX bytes:1865404463 (1.7 GiB)
         Base address:0xb800 Memory:fd3c0000-fd3e0000

eth4 Link encap:Ethernet HWaddr 00:15:17:2A:09:A6

         inet6 addr: fe80::215:17ff:fe2a:9a6/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:0 errors:0 dropped:0 overruns:0 frame:0
         TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:0 (0.0 b)  TX bytes:758 (758.0 b)
         Base address:0xec00 Memory:fe4e0000-fe500000

eth5 Link encap:Ethernet HWaddr 00:15:17:2A:09:A6

         inet6 addr: fe80::215:17ff:fe2a:9a6/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:5 errors:0 dropped:0 overruns:0 frame:0
         TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:390 (390.0 b)  TX bytes:714 (714.0 b)
         Base address:0xe800 Memory:fe4c0000-fe4e0000

eth6 Link encap:Ethernet HWaddr 00:15:17:2A:09:A6

         inet6 addr: fe80::215:17ff:fe2a:9a6/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:1 errors:0 dropped:0 overruns:0 frame:0
         TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:66 (66.0 b)  TX bytes:628 (628.0 b)
         Base address:0xfc00 Memory:fe7e0000-fe800000

eth7 Link encap:Ethernet HWaddr 00:15:17:2A:09:A6

         inet6 addr: fe80::215:17ff:fe2a:9a6/64 Scope:Link
         UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1
         RX packets:934005 errors:0 dropped:0 overruns:0 frame:0
         TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:1000
         RX bytes:62926274 (60.0 MiB)  TX bytes:472 (472.0 b)
         Base address:0xf800 Memory:fe7c0000-fe7e0000

lo Link encap:Local Loopback

         inet addr:127.0.0.1  Mask:255.0.0.0
         inet6 addr: ::1/128 Scope:Host
         UP LOOPBACK RUNNING  MTU:16436  Metric:1
         RX packets:294 errors:0 dropped:0 overruns:0 frame:0
         TX packets:294 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:46053 (44.9 KiB)  TX bytes:46053 (44.9 KiB)

}}}


Exemple de connection avec iperf (4 client pour chacune des interfaces)

{{{ tcp 0 0 *:20008 *:* LISTEN

tcp 0 0 *:20009 *:* LISTEN

tcp 0 0 node23.datagrid.cea.f:20008 wn048.datagrid.cea.fr:51269 ESTABLISHED

tcp 0 0 node27.datagrid.cea.f:20009 node02.datagrid.cea.f:39957 ESTABLISHED

tcp 0 0 node23.datagrid.cea.f:20008 wn004.datagrid.cea.fr:35417 ESTABLISHED

tcp 0 0 node23.datagrid.cea.f:20008 node01.datagrid.cea.f:38544 ESTABLISHED

tcp 0 0 node27.datagrid.cea.f:20009 wn049.datagrid.cea.fr:34206 ESTABLISHED

tcp 0 0 node23.datagrid.cea.f:20008 wn005.datagrid.cea.fr:35380 ESTABLISHED

tcp 0 0 node27.datagrid.cea.f:20009 wn050.datagrid.cea.fr:34567 ESTABLISHED

tcp 0 0 node27.datagrid.cea.f:20009 wn006.datagrid.cea.fr:42137 ESTABLISHED


}}}


Exemple de configuration pour le SE DPM

{{{ [root@node24 root]# dpm-qryconf POOL CMS_SC DEFSIZE 200.00M GC_START_THRESH 0 GC_STOP_THRESH 0 DEF_LIFETIME 7.0d DEFPINTIME 2.0h MAX_LIFETIME 1.0m MAXPINTIME 12.0h FSS_POLICY maxfreespace GC_POLICY lru RS_POLICY fifo GIDS 0 S_TYPE - MIG_POLICY none RET_POLICY R

                             CAPACITY 23.51T FREE 22.27T ( 94.7%)
 node25.datagrid.cea.fr /pool_node25 CAPACITY 4.48T FREE 4.39T ( 98.1%)
 node26.datagrid.cea.fr /pool_node26 CAPACITY 233.71G FREE 216.23G ( 92.5%)
 node26.datagrid.cea.fr /pool_node26_2 CAPACITY 1.79T FREE 1.69T ( 94.5%)
 node23.datagrid.cea.fr /dteam1 CAPACITY 2.24T FREE 2.09T ( 93.2%)
 node23.datagrid.cea.fr /dteam2 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node23.datagrid.cea.fr /dteam3 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node23.datagrid.cea.fr /dteam7 CAPACITY 1.79T FREE 1.68T ( 93.8%)
 node27.datagrid.cea.fr /dteam4 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node27.datagrid.cea.fr /dteam5 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node27.datagrid.cea.fr /dteam6 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node27.datagrid.cea.fr /dteam8 CAPACITY 1.79T FREE 1.68T ( 93.8%)

}}}

Configuration Reseaux avec 1 intefaces bond

{{{

  1. more /etc/modprobe.conf

alias eth0 e1000 alias eth1 e1000 alias eth2 e1000 alias eth3 e1000 alias eth4 e1000 alias eth5 e1000 alias eth6 e1000 alias eth7 e1000 options e1000 InterruptThrottleRate=3000 install ipw3945 /sbin/modprobe --ignore-install ipw3945 ; sleep 0.5 ; /sbin/ipw3 945d --quiet remove ipw3945 /sbin/ipw3945d --kill ; /sbin/modprobe -r --ignore-remove ipw3945 alias usb-controller ehci-hcd alias usb-controller1 ohci-hcd

        1. BONDING

alias bond0 bonding options bond0 mode=0 miimon=100

        1. END BONDING
  1. Added mv_sata binary driver rpm installation

alias scsi_hostadapter mv_sata alias sata_mv off }}}


recharger les modules, redemarrer le reseaux, et verifier que tout est OK:

{{{

  1. more /proc/net/bonding/bond0

Ethernet Channel Bonding Driver: v2.6.3 (June 8, 2005)

Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0

Slave Interface: eth0 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:14:4f:20:fc:b0

Slave Interface: eth1 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:14:4f:20:fc:b1

Slave Interface: eth2 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:14:4f:20:fc:b2

Slave Interface: eth3 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:14:4f:20:fc:b3

Slave Interface: eth4 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:15:17:2a:09:a6

Slave Interface: eth5 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:15:17:2a:09:a7

Slave Interface: eth6 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:15:17:2a:07:8c

Slave Interface: eth7 MII Status: up Link Failure Count: 0 Permanent HW addr: 00:15:17:2a:07:8d }}}



Probleme sur les cartes reseaux supplémentaires:

{{{ Oct 9 16:40:36 node23 kernel: e1000: eth4: e1000_clean_tx_irq: Detected Tx Unit Hang Oct 9 16:40:36 node23 kernel: Tx Queue <0> Oct 9 16:40:36 node23 kernel: TDH <2> Oct 9 16:40:36 node23 kernel: TDT <2> Oct 9 16:40:36 node23 kernel: next_to_use <2> Oct 9 16:40:36 node23 kernel: next_to_clean <0> Oct 9 16:40:36 node23 kernel: buffer_info[next_to_clean] Oct 9 16:40:36 node23 kernel: time_stamp <1144b73ba> Oct 9 16:40:36 node23 kernel: next_to_watch <0> Oct 9 16:40:36 node23 kernel: jiffies <1144b7a09> Oct 9 16:40:36 node23 kernel: next_to_watch.status <0> Oct 9 16:40:38 node23 kernel: e1000: eth5: e1000_clean_tx_irq: Detected Tx Unit Hang Oct 9 16:40:38 node23 kernel: Tx Queue <0> Oct 9 16:40:38 node23 kernel: TDH <1> Oct 9 16:40:38 node23 kernel: TDT <1> Oct 9 16:40:38 node23 kernel: next_to_use <1> Oct 9 16:40:38 node23 kernel: next_to_clean <0> Oct 9 16:40:38 node23 kernel: buffer_info[next_to_clean] Oct 9 16:40:38 node23 kernel: time_stamp <1144b77fa> Oct 9 16:40:38 node23 kernel: next_to_watch <0> Oct 9 16:40:38 node23 kernel: jiffies <1144b817b> Oct 9 16:40:38 node23 kernel: next_to_watch.status <0> Oct 9 16:40:38 node23 kernel: e1000: eth4: e1000_clean_tx_irq: Detected Tx Unit Hang Oct 9 16:40:38 node23 kernel: Tx Queue <0> Oct 9 16:40:38 node23 kernel: TDH <2> Oct 9 16:40:38 node23 kernel: TDT <2> Oct 9 16:40:38 node23 kernel: next_to_use <2> Oct 9 16:40:38 node23 kernel: next_to_clean <0> Oct 9 16:40:38 node23 kernel: buffer_info[next_to_clean] Oct 9 16:40:38 node23 kernel: time_stamp <1144b73ba> Oct 9 16:40:38 node23 kernel: next_to_watch <0> Oct 9 16:40:38 node23 kernel: jiffies <1144b81d9> Oct 9 16:40:38 node23 kernel: next_to_watch.status <0> Oct 9 16:40:38 node23 kernel: e1000: eth7: e1000_clean_tx_irq: Detected Tx Unit Hang Oct 9 16:40:38 node23 kernel: Tx Queue <0> Oct 9 16:40:38 node23 kernel: TDH <1> Oct 9 16:40:38 node23 kernel: TDT <1> }}}

on n'avait pas le bon driver e1000, voir paragraphe suivant pour loader le bon driver



driver carte réseaux

Pour voir le driver adapté aux cartes:

[2]

tail -4

0d:01.0 Ethernet controller: Intel Corporation 82546GB Gigabit Ethernet Controller (rev 03) 0d:01.1 Ethernet controller: Intel Corporation 82546GB Gigabit Ethernet Controller (rev 03) 0e:01.0 Ethernet controller: Intel Corporation 82546GB Gigabit Ethernet Controller (rev 03) 0e:01.1 Ethernet controller: Intel Corporation 82546GB Gigabit Ethernet Controller (rev 03) [root@node23 ~]#


telecharger le bon driver puis l'installer:


{{{

  1. rpmbuild -tb e1000-7.6.9.tar.gz
  2. rpm -ivh /usr/src/redhat/RPMS/x86_64/e1000-7.6.9-1.x86_64.rpm

Preparing... ########################################### [100%]

  1:e1000                  ########################################### [100%]

original pci.ids saved in /usr/local/share/e1000 original pcitable saved in /usr/local/share/e1000 [root@node23 BONDING]# }}}


Dans le README, il preconnise de loader le module avec l'option interruptThrottleRate=3000:

tout recharger correctement:


{{{


ifconfig bond0 down; ifconfig bond1 down; rmmod e1000; modprobe e1000 InterruptThrottleRate=3000,3000,3000,3000,3000,3000,3000,3000 ; rmmod bond0 ; rmmod bond1; modprobe bonding -o bond0 mode=0 miimon=100; modprobe bonding -o bond1 -o bond1 mode=0 miimon=100; /etc/init.d/network restart


}}}


et modifier le fichier modprobe:

{{{

  1. more /etc/modprobe.conf

alias eth0 e1000 alias eth1 e1000 alias eth2 e1000 alias eth3 e1000 alias eth4 e1000 alias eth5 e1000 alias eth6 e1000 alias eth7 e1000 options e1000 InterruptThrottleRate=3000 install ipw3945 /sbin/modprobe --ignore-install ipw3945 ; sleep 0.5 ; /sbin/ipw3945d --quiet remove ipw3945 /sbin/ipw3945d --kill ; /sbin/modprobe -r --ignore-remove ipw3945 alias usb-controller ehci-hcd alias usb-controller1 ohci-hcd

        1. BONDING

alias bond0 bonding alias bond1 bonding

  1. options bond0 -o bond0 mode=0 miimon=100

options bond0 mode=0 miimon=100 max_bonds=2 options bond1 -o bond1 mode=0 miimon=100

        1. END BONDING
  1. Added mv_sata binary driver rpm installation

alias scsi_hostadapter mv_sata alias sata_mv off }}}

Test iperf

1 interface bond0 (eth0, eth1, eth2, eth3): ~ 2,7 Gb/s

{{{ [ 4] 10.0-20.0 sec 557 MBytes 467 Mbits/sec [ 5] 10.0-20.0 sec 1.10 GBytes 941 Mbits/sec [ 6] 10.0-20.0 sec 976 MBytes 819 Mbits/sec [ 7] 10.0-20.0 sec 567 MBytes 476 Mbits/sec

[ 4] 20.0-30.0 sec 564 MBytes 473 Mbits/sec [ 5] 20.0-30.0 sec 1.10 GBytes 941 Mbits/sec [ 6] 20.0-30.0 sec 969 MBytes 813 Mbits/sec [ 7] 20.0-30.0 sec 558 MBytes 468 Mbits/sec

[ 4] 30.0-40.0 sec 561 MBytes 470 Mbits/sec [ 5] 30.0-40.0 sec 1.10 GBytes 941 Mbits/sec [ 6] 30.0-40.0 sec 986 MBytes 827 Mbits/sec [ 7] 30.0-40.0 sec 550 MBytes 461 Mbits/sec }}}


Test iperf 2 interfaces : bond0 (eth0, eth1) et bond1 (eth2,eth3): ~900 Mb/s !!


grep 200

tcp 0 0 *:20008 *:* LIST EN tcp 0 0 *:20010 *:* LIST EN tcp 0 0 node27.datagrid.cea.f:20010 wn049.datagrid.cea.fr:41057 ESTA BLISHED tcp 0 0 node27.datagrid.cea.f:20010 wn005.datagrid.cea.fr:44065 ESTA BLISHED tcp 0 0 node23.datagrid.cea.f:20008 node01.datagrid.cea.f:34342 ESTA BLISHED tcp 0 0 node23.datagrid.cea.f:20008 wn048.datagrid.cea.fr:34032 ESTA BLISHED


{{{ sur node 23:

[  4] 20.0-25.0 sec    146 MBytes    244 Mbits/sec

[ 5] 20.0-25.0 sec 149 MBytes 251 Mbits/sec [ 4] 25.0-30.0 sec 143 MBytes 240 Mbits/sec [ 5] 25.0-30.0 sec 160 MBytes 268 Mbits/sec [ 4] 30.0-35.0 sec 117 MBytes 196 Mbits/sec [ 5] 30.0-35.0 sec 149 MBytes 250 Mbits/sec sur node27:

[  4] 20.0-25.0 sec    101 MBytes    170 Mbits/sec

[ 5] 20.0-25.0 sec 164 MBytes 275 Mbits/sec [ 4] 25.0-30.0 sec 108 MBytes 181 Mbits/sec [ 5] 25.0-30.0 sec 180 MBytes 303 Mbits/sec [ 4] 30.0-35.0 sec 102 MBytes 172 Mbits/sec [ 5] 30.0-35.0 sec 162 MBytes 272 Mbits/sec }}}


Test iperf 2 interfaces : bond0 (eth0, eth1, eth2,eth3) et bond1 (eth4, eth5, eth6,eth7): ~3,8Gb/s


{{{ sur node27: [ 4] 20.0-30.0 sec 337 MBytes 283 Mbits/sec [ 5] 20.0-30.0 sec 393 MBytes 329 Mbits/sec [ 6] 20.0-30.0 sec 425 MBytes 357 Mbits/sec [ 7] 20.0-30.0 sec 758 MBytes 636 Mbits/sec sur node23: [ 4] 20.0-30.0 sec 727 MBytes 610 Mbits/sec [ 5] 20.0-30.0 sec 1.10 GBytes 941 Mbits/sec [ 6] 20.0-30.0 sec 360 MBytes 302 Mbits/sec [ 7] 20.0-30.0 sec 359 MBytes 301 Mbits/sec }}}

1 interface bond0 (eth0, eth1, eth2, eth3, eth4, eth5, eth6, eth7): ~5Gb/s

voir aussi:


[3]

{{{ [ 4] 10.0-20.0 sec 841 MBytes 705 Mbits/sec [ 5] 10.0-20.0 sec 1001 MBytes 840 Mbits/sec [ 6] 10.0-20.0 sec 671 MBytes 563 Mbits/sec [ 7] 10.0-20.0 sec 581 MBytes 487 Mbits/sec [ 8] 10.0-20.0 sec 431 MBytes 362 Mbits/sec [ 9] 10.0-20.0 sec 535 MBytes 449 Mbits/sec [ 10] 10.0-20.0 sec 986 MBytes 827 Mbits/sec [ 11] 10.0-20.0 sec 878 MBytes 736 Mbits/sec

[ 4] 20.0-30.0 sec 903 MBytes 758 Mbits/sec [ 5] 20.0-30.0 sec 1.04 GBytes 894 Mbits/sec [ 6] 20.0-30.0 sec 263 MBytes 221 Mbits/sec [ 7] 20.0-30.0 sec 169 MBytes 142 Mbits/sec [ 8] 20.0-30.0 sec 731 MBytes 614 Mbits/sec [ 9] 20.0-30.0 sec 916 MBytes 769 Mbits/sec [ 10] 20.0-30.0 sec 922 MBytes 774 Mbits/sec [ 11] 20.0-30.0 sec 395 MBytes 332 Mbits/sec }}}

Test Performance DISK+NETWORK avec DPM

{{{ [root@node24 root]# dpm-qryconf POOL CMS_SC DEFSIZE 200.00M GC_START_THRESH 0 GC_STOP_THRESH 0 DEF_LIFETIME 7.0d DEFPINTIME 2.0h MAX_LIFETIME 1.0m MAXPINTIME 12.0h FSS_POLICY maxfreespace GC_POLICY lru RS_POLICY fifo GIDS 0 S_TYPE - MIG_POLICY none RET_POLICY R

                             CAPACITY 17.01T FREE 15.98T ( 93.9%)
 node23.datagrid.cea.fr /dteam1 CAPACITY 2.24T FREE 2.09T ( 93.2%)
 node23.datagrid.cea.fr /dteam2 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node23.datagrid.cea.fr /dteam3 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node23.datagrid.cea.fr /dteam7 CAPACITY 1.79T FREE 1.68T ( 93.8%)
 node23.datagrid.cea.fr /dteam4 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node23.datagrid.cea.fr /dteam5 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node23.datagrid.cea.fr /dteam6 CAPACITY 2.24T FREE 2.11T ( 94.1%)
 node23.datagrid.cea.fr /dteam8 CAPACITY 1.79T FREE 1.68T ( 93.8%)

[root@node24 root]# }}}


sur l'UI:


{{{ [cleroy@node02 2_IPbonding]$ time ./transfert_concurrent_client_node24.py globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA2 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA2_Trf00000 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA4 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA4_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA5 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA5_Trf00000 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA4 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA4_Trf00000 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA3 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA3_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA5 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA5_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA3 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA3_Trf00000 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA_Trf00000 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA2 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA2_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA6 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA6_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA7 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA7_Trf00000 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA7 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA7_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA8 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA8_Trf00001 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA8 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA8_Trf00000 globus-url-copy file:/home/cleroy/DTEAM_2004/4_Tt2t1/ATLAS_DATA6 gsiftp://node24.datagrid.cea.fr/dpm/datagrid.cea.fr/home/dteam/dapnia/cleroy/TO_BE_REMOVED/ATLAS_DATA6_Trf00000

real 2m13.017s user 1m4.270s sys 0m48.790s }}}


Sur le SE disk: {{{ [root@node23 ~]# ll /dteam*/dteam/2007-10-10 /dteam1/dteam/2007-10-10: total 1441096 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA2_Trf00001.4189.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA3_Trf00000.4181.0

/dteam2/dteam/2007-10-10: total 1441104 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:37 ATLAS_DATA_Trf00000.4182.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:37 ATLAS_DATA_Trf00001.4174.0 -rw-r--r-- 1 root root 5 Oct 10 17:27 essai

/dteam3/dteam/2007-10-10: total 1441096 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA4_Trf00001.4175.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:37 ATLAS_DATA8_Trf00001.4183.0

/dteam4/dteam/2007-10-10: total 1441096 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:37 ATLAS_DATA7_Trf00001.4184.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA8_Trf00000.4176.0

/dteam5/dteam/2007-10-10: total 1441096 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA2_Trf00000.4177.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:37 ATLAS_DATA7_Trf00000.4185.0

/dteam6/dteam/2007-10-10: total 1441096 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA5_Trf00001.4178.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:37 ATLAS_DATA6_Trf00000.4188.0

/dteam7/dteam/2007-10-10: total 1441096 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA3_Trf00001.4186.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA6_Trf00001.4180.0

/dteam8/dteam/2007-10-10: total 1441096 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA4_Trf00000.4179.0 -rw-rw---- 1 dpmmgr dpmmgr 737108530 Oct 10 17:38 ATLAS_DATA5_Trf00000.4187.0 }}}


16 fichiers en paralleles de 737 MB:

11792 MB en 133 s = 88 MB/s = 709 Mb/s


autre test: (16 * 20 = 320 )fichiers de 737MB : 235840 MB en 30m29.512s : 128 MB/s : 1024 Mb/s