Sauvegarde

TSM (Tivoli Storage Manager) est un service de stockage sur bande qui permet une sauvegarde régulière des données. Les répertoires HOME et THRONG accessibles depuis les serveurs interactifs et les noeuds de calcul du CC-IN2P3 sont sauvegardés automatiquement chaque jour. Les utilisateurs et expériences ont également la possibilité de demander une sauvegarde sur des espaces de stockage spécifiques en contactant le support utilisateurs.

Utilisation

Le logiciel de sauvegarde utilisé par le CC-IN2P3 est IBM TSM.

Conditions d’utilisation

Les conditions d’utilisation du service de sauvegarde fourni par le CC-IN2P3 sont formalisées dans ce document.

Signature numérique.

Installation

Machines Windows

La procédure d’installation du client TSM pour les machines Windows est disponible ici.

Machines Unix

L’automatisation de la tâche de sauvegarde doit se faire côté client via cron par exemple. Les informations relatives à la mise en place d’un job cron est disponible ici.

Le client TSM se configure principalement au travers de deux fichiers :

/opt/tivoli/tsm/client/ba/bin/dsm.opt
/opt/tivoli/tsm/client/ba/bin/dsm.sys

Afin d’éviter qu’une mise à jour du client n’affecte la configuration que vous avez faite, nous recommandons de déporter toute la configuration de TSM dans une arborescence distincte. Nous avons pour habitude d’utiliser /var/spool/tsm.

Création de l’arborescence

Créer le répertoire de configuration du client TSM :

% mkdir -p /var/spool/tsm/{etc,log,lock,bin}

Copier les fichiers de configuration d’exemple d’IBM ou ceux présents dans le package tsm-ccin2p3 :

% cp /opt/tivoli/tsm/client/ba/bin/dsm.{opt,sys} /var/spool/tsm/etc/

ou :

% cp /usr/share/doc/tsm-ccin2p3/etc/* /var/spool/tsm/etc/
Edition des fichiers de configuration

Adresse du serveur de sauvegarde

Lors du premier contact avec les administrateurs TSM, ces derniers vous ont attribué un alias tsm${NOM_DU_LABORATOIRE}.in2p3.fr (exemple : tsmlpnhe.in2p3.fr).

Warning

Cet alias est à utiliser impérativement. Pour la suite de cette documentation ${SERVER_NAME} sera à remplacer par le nom du serveur qui vous est propre.

Identifiants de sauvegarde

Lors de votre contact avec les administrateurs TSM du CC-IN2P3, ces derniers vous ont communiqué un nom de noeud (identifiant de sauvegarde) ainsi qu’un mot de passe associé.

Warning

Pour la suite de cette documentation ${NODE_NAME} sera à remplacer par le nom de noeud qui vous est propre.

Fichier dsm.opt

Ce fichier spécifie le serveur que le client TSM cherche à contacter lorsque vous lancer votre sauvegarde :

% cat /var/spool/tsm/etc/dsm.opt
************************************************************************
* IBM Tivoli Storage Manager                                           *
*                                                                      *
* Sample Client User Options file for UNIX (dsm.opt.smp)               *
************************************************************************

*  This file contains an option you can use to specify the TSM
*  server to contact if more than one is defined in your client
*  system options file (dsm.sys).  Copy dsm.opt.smp to dsm.opt.
*  If you enter a server name for the option below, remove the
*  leading asterisk (*).

************************************************************************

* SErvername       A server name defined in the dsm.sys file

SErvername  ccin2p3

Fichier dsm.sys

Ce fichier permet de définir les profils de sauvegarde connus de TSM :

% cat /var/spool/tsm/etc/dsm.sys
************************************************************************
* IBM Tivoli Storage Manager                                           *
*                                                                      *
* Sample Client System Options file for UNIX (dsm.sys.smp)             *
************************************************************************

*  This file contains the minimum options required to get started
*  using TSM.  Copy dsm.sys.smp to dsm.sys.  In the dsm.sys file,
*  enter the appropriate values for each option listed below and
*  remove the leading asterisk (*) for each one.

*  If your client node communicates with multiple TSM servers, be
*  sure to add a stanza, beginning with the SERVERNAME option, for
*  each additional server.

************************************************************************

SErvername ccin2p3
        COMMMethod                      TCPip
        TCPPort                         1500
        NodeName                        ${NODE_NAME}
        PasswordAccess                  generate
        TCPServeraddress                ${SERVER_NAME}
        errorlogname                    "/var/spool/tsm/log/dsmerror.log"

Warning

Attention à bien modifier la valeur de l’option NodeName ainsi que celle de l’option TCPServeraddress.

Lier le profil de sauvegarde aux répertoires IBM :

% ln -s /var/spool/tsm/etc/dsm.{sys,opt} /opt/tivoli/tsm/client/ba/bin/

Saisie initiale du mot de passe TSM

L’option PasswordAccess Generate du fichier de configuration dsm.sys permet au client TSM de se souvenir du mot de passe TSM utilisé pour vous authentifier sur les serveurs de sauvegarde du CC-IN2P3. Cependant lors de la première configuration, vous devez saisir ce mot de passe au moins une fois :

% /usr/bin/dsmc

IBM Tivoli Storage Manager
Command Line Backup-Archive Client Interface
  Client Version 5, Release 5, Level 3.0
  Client date/time: 11/01/2012 22:15:12
(c) Copyright by IBM Corporation and other(s) 1990, 2010. All Rights Reserved.

Node Name: DEMO
Please enter your user id <DEMO>: (1)

Please enter password for user id "DEMO": (2)

Session established with server CCADSM2: AIX-RS/6000
  Server Version 5, Release 5, Level 5.0
  Server date/time: 11/01/2012 22:15:12  Last access: 11/01/2012 22:15:11

tsm>

Note

  1. Juste appuyer sur Entrée ou saisir le nom du noeud TSM qui doit être utilisé.
  2. Entrer le mot de passe initial qui vous a été communiqué par les administrateurs TSM.

Machines Red-Hat like

Pour les systèmes utilisant le couple RPM, YUM, le CC-IN2P3 met à disposition un dépot permettant de maintenir vos paquets TSM dans une version connue pour être compatible avec la version utilisée sur les serveurs TSM du CC-IN2P3.

Importation de la clef de signature des paquets

Le dépot mis à disposition par le CC-IN2P3 pour distribuer les paquets relatifs au service de sauvegarde se base sur la signature numérique des paquets et des méta-données du dépot pour assurer l’intégrité des paquets qui seront installés sur vos machines.

Note

Pour voir comment récupérer la clef utilisée pour la signature, merci de vous reporter ici.

Vous devez :

  • récupérer la clef et la placer dans le répertoire /etc/pki/rpm-gpg/ sous le nom RPM-GPG-KEY-tsm_ccin2p3.

  • importer la clef dans le trousseau rpm :

    % rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-tsm_ccin2p3
    
  • vérifier que la clé a bien été importée :

    % rpm -qa '*gpg*'
    [...]
    gpg-pubkey-18877579-50bf2103.(none)
    [...]
    
Dépot de paquets

Mise en place du dépot :

% cat > /etc/yum.repos.d/tsm_ccin2p3.repo
[tsm-ccin2p3]
name=tsm-ccin2p3
baseurl=https://ccrepository.in2p3.fr/pulp/repos/el/all/x86_64/tsm/
enabled=1
priority=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-tsm_ccin2p3

Note

Si vous êtes en R.H.E.L < 6.x, il peut être nécessaire d’installer le paquet pygpgme.

Installation du client TSM et des fichiers d’exemple :

% yum install tsm-ccin2p3
[...]
Dependencies Resolved

===================================================================================================================================================================================
 Package                                      Arch                                    Version                                   Repository                                    Size
===================================================================================================================================================================================
Installing:
 tsm-ccin2p3                                  noarch                                  1.0-0                                     tsm-ccin2p3                                  4.5 k
Installing for dependencies:
 TIVsm-API                                    i586                                    6.2.4-0                                   tsm-ccin2p3                                  7.6 M
 TIVsm-BA                                     i586                                    6.2.4-0                                   tsm-ccin2p3                                   15 M
 gskcrypt32                                   i386                                    8.0-14.6                                  tsm-ccin2p3                                  1.1 M
 gskssl32                                     i386                                    8.0-14.6                                  tsm-ccin2p3                                  7.1 M

Transaction Summary
===================================================================================================================================================================================
Install       5 Package(s)
Upgrade       0 Package(s)
[...]

Note

Les RPMs d’installation vont installer le client TSM ainsi que ses bibliothèques sous l’arborescence /opt/tivoli/tsm/client.

Utilisation du client TSM

En ligne de commande

Pour exécuter le client TSM en mode interactif, il suffit d’appeler la commande dsmc (ou dsmc.exe). Le prompt tsm> indique que vous êtes dans le shell interactif du client TSM.

Changer votre mot de passe :

tsm> set password
Please enter password for user id "DEMO": (1)

Please enter a new password: (2)
Enter new password for verification: (3)
Password updated.

Session established with server CCADSM2: AIX-RS/6000
  Server Version 5, Release 5, Level 5.0
  Server date/time: 11/01/2012 22:21:07  Last access: 11/01/2012 22:21:07

tsm>

Il faut ici :

  • saisir le mot de passe initial qui vous a été communiqué par les administrateurs TSM du CC-IN2P3,
  • saisir votre nouveau mot de passe,
  • saisir votre nouveau mot de passe une seconde fois.

Consulter les classes de gestion disponibles pour ma sauvegarde :

tsm> query mgmt -detail

Consulter les options utilisées pour ma sauvegarde :

tsm> query options
IBM Tivoli Storage Manager
Command Line Backup-Archive Client Interface
  Client Version 6, Release 2, Level 1.0
  Client date/time: 11/26/2012 14:07:23
(c) Copyright by IBM Corporation and other(s) 1990, 2010. All Rights Reserved.

Node Name: DEMO
Session established with server CCTSM2: AIX
  Server Version 6, Release 2, Level 4.0
  Server date/time: 11/26/2012 14:07:24  Last access: 11/26/2012 14:07:21

              ACTIVATEKEY: YES
          AFSBACKUPMNTPNT: YES
          ALLOWWILDCARDCH: NO
                   ARCHMC:
        ARCHSYMLINKASFILE: YES
               ASNODENAME:
             ASRFILESPATH:
                  ASRMODE: NO
             AUTOFSRENAME: PROMPT
             AUDITLOGGING: OFF
             AUDITLOGNAME: /tmp/dsmaudit.log
                AUTOMOUNT:
               AUTODEPLOY: YES
                   BACKMC:
           BACKUPREGISTRY: YES
       CANDIDATESINTERVAL: 1
       CASESENSITIVEAWARE: NO
          CHANGINGRETRIES: 4
          CHECKFORORPHANS: NO
          CHECKTHRESHOLDS: 5
               CLIENTVIEW: STANDARD
         CLUSTERDISKSONLY: NO
              CLUSTERNODE: NO
               COMMMETHOD: TCP/IP
      COLLOCATEBYFILESPEC: NO
      COMMRESTARTDURATION: 60
[...]
                   DOMAIN:
                           /home
                           /etc
[...]
        VIRTUALMOUNTPOINT:
                           /home
                           /etc

Note

Pour plus d’informations sur l’utilisation des directives VirtualMountPoint ou Domain, veuillez consulter la FAQ.

Consulter les options utilisées pour ma sauvegarde :

tsm> query inclexcl
IBM Tivoli Storage Manager
Command Line Backup-Archive Client Interface
  Client Version 6, Release 2, Level 1.0
  Client date/time: 11/26/2012 14:09:21
(c) Copyright by IBM Corporation and other(s) 1990, 2010. All Rights Reserved.

Node Name: DEMO
Session established with server CCTSM2: AIX
  Server Version 6, Release 2, Level 4.0
  Server date/time: 11/26/2012 14:09:22  Last access: 11/26/2012 14:07:24

*** FILE INCLUDE/EXCLUDE ***
Mode Function  Pattern (match from top down)  Source File
---- --------- ------------------------------ -----------------
No exclude filespace statements defined.
Excl Directory /.../*no_backup*               Server
Excl Directory /.../*NO_BACKUP*               Server
Excl Directory /.../.beagle                   Server
Excl Directory /.../.[Cc]ache                 Server
Excl Directory /.../[Cc]ache.Trash            Server
Excl Directory /.../Cache                     Server
Excl Directory /usr/lib64                     Server
Excl Directory /usr/lib32                     Server
Excl Directory /usr/lib                       Server
Excl Directory /usr/bin                       Server
Excl Directory /var/lock                      Server
Excl Directory /var/run                       Server
Excl Directory /var/tmp                       Server
Excl Directory /boot                          Server
Excl Directory /lib64                         Server
Excl Directory /lib32                         Server
Excl Directory /lib                           Server
Excl Directory /sbin                          Server
Excl Directory /bin                           Server
[...]

Par exemple, la ligne suivante signifie que tout ce qui se trouve sous /bin ne sera pas sauvegardé :

Excl Directory /bin                           Server

L’information Server indique que ce filtre provient du serveur de sauvegarde (et n’est donc pas modifiable sans intervention des administrateurs TSM du CC-IN2P3).

Consulter la liste des FileSpaces rattachés à son noeud de sauvegarde :

tsm> query files

Sauvegarder le contenu d’un répertoire :

% dsmc incremental /PATH/TO/DIR/ -subdir=yes

Sauvegarder un fichier :

% dsmc incremental /PATH/TO/FILE

Prévisualiser le contenu d’un répertoire tel qu’il sera sauvegardé par le client TSM :

% dsmc preview backup /PATH/TO/DIR/ -subdir=yes
IBM Tivoli Storage Manager
Command Line Backup-Archive Client Interface
  Client Version 6, Release 2, Level 1.0
  Client date/time: 11/01/2012 22:47:48
(c) Copyright by IBM Corporation and other(s) 1990, 2010. All Rights Reserved.

Node Name: DEMO
Session established with server CCADSM1: AIX-RS/6000
  Server Version 5, Release 5, Level 5.0
  Server date/time: 11/01/2012 22:47:48  Last access: 11/01/2012 22:46:51

Preview function invoked.
Depending on the number of objects to query, this operation could take a while to complete.

Are you sure you want to continue? (Yes (Y)/No (N)) Y
Preview output has been successfully written to file '/var/spool/tsm/log/dsmprev.txt'.

Cette commande génère une liste des fichiers et répertoires dans $PWD/dsmprev.txt, et précise si TSM les sauvegardera ou non. Le fichier de prévisualisation dsmprev.txt peut dans certains cas vous être demandé par les administrateurs du CC-IN2P3 afin de vous aider à résoudre vos problèmes de sauvegarde.

Consulter les fichiers sauvegardés ainsi que leur état dans TSM :

Dans TSM, un fichier peut avoir deux états :

  • A pour Active lorsque le fichier est encore présent sur la machine qui effectue la sauvegarde ;

  • I pour Inactive lorsque le fichier n’est plus présent sur la machine effectuant la sauvegarde ou n’est plus la dernière version du fichier :

    % dsmc query backup /var/spool/tsm/etc/dsm.sys -inactive
    
    IBM Tivoli Storage Manager
    Command Line Backup-Archive Client Interface
      Client Version 6, Release 2, Level 1.0
      Client date/time: 11/01/2012 23:13:06
    (c) Copyright by IBM Corporation and other(s) 1990, 2010. All Rights Reserved.
    
    Node Name: DEMO
    Session established with server CCADSM1: AIX-RS/6000
      Server Version 5, Release 5, Level 5.0
      Server date/time: 11/01/2012 23:13:06  Last access: 11/01/2012 23:12:50
    
               Size        Backup Date                Mgmt Class           A/I File
               ----        -----------                ----------           --- ----
             2 206  B  20/09/2011 17:10:36              PCMGM               A  /var/spool/tsm/etc/dsm.sys
             1 929  B  01/06/2011 17:06:08              PCMGM               I  /var/spool/tsm/etc/dsm.sys
             2 010  B  18/07/2011 17:52:02              PCMGM               I  /var/spool/tsm/etc/dsm.sys
             2 178  B  19/07/2011 17:13:58              PCMGM               I  /var/spool/tsm/etc/dsm.sys
    

Restaurer la dernière version d’un fichier :

% dsmc restore /var/spool/tsm/etc/dsm.sys /tmp/dsm.sys.restored

IBM Tivoli Storage Manager
Command Line Backup-Archive Client Interface
  Client Version 6, Release 2, Level 1.0
  Client date/time: 11/01/2012 23:17:10
(c) Copyright by IBM Corporation and other(s) 1990, 2010. All Rights Reserved.

Node Name: DEMO
Session established with server CCADSM1: AIX-RS/6000
  Server Version 5, Release 5, Level 5.0
  Server date/time: 11/01/2012 23:17:10  Last access: 11/01/2012 23:13:06

Restore function invoked.

 ** Interrupted **
ANS1114I Waiting for mount of offline media.
Restoring           2 206 /var/spool/tsm/etc/dsm.sys --> /tmp/dsm.sys.restored [Done]

Restore processing finished.

Total number of objects restored:         1
Total number of objects failed:           0
Total number of bytes transferred:    2,17 KB
Data transfer time:                    0,00 sec
Network data transfer rate:        90 779,62 KB/sec
Aggregate data transfer rate:          0,02 KB/sec
Elapsed processing time:           00:01:37

Cette commande restaure la dernière version du fichier /var/spool/tsm/etc/dsm.sys à l’emplacement /tmp/dsm.sys.restored. Si aucun nouvel emplacement n’avait été spécifié, la restauration se serait faite directement dans /var/spool/tsm/etc/dsm.sys et aurait écrasé notre fichier si ce dernier existait déjà.

Comme l’indique le message ANS1114I Waiting for mount of offline media, une cartouche a besoin d’être montée si les données ne sont plus présentes sur le cache disque. Les temps de restauration peuvent de ce fait être (très) longs.

Restaurer la dernière version d’un répertoire et son contenu :

% dsmc restore /var/spool/tsm/ -verbose -subdir=yes

Comme pour les fichiers, vous pouvez préciser un nouvel emplacement pour la restauration :

% dsmc restore /var/spool/tsm/ /tmp/tsm.restored/ -subdir=yes

Restaurer une ancienne version d’un fichier en utilisant une date :

% dsmc query backup /var/spool/tsm/etc/dsm.sys -inactive -pitd=09/01/2011

IBM Tivoli Storage Manager
Command Line Backup-Archive Client Interface
  Client Version 6, Release 2, Level 1.0
  Client date/time: 01/11/2012 23:29:14
(c) Copyright by IBM Corporation and other(s) 1990, 2010. All Rights Reserved.

Node Name: DEMO
Session established with server CCADSM1: AIX-RS/6000
  Server Version 5, Release 5, Level 5.0
  Server date/time: 01/11/2012 23:29:13  Last access: 01/11/2012 23:28:57

           Size        Backup Date                Mgmt Class           A/I File
           ----        -----------                ----------           --- ----
         2,178  B  07/19/2011 17:13:58              PCMGM               I  /var/spool/tsm/etc/dsm.sys

L’option -pitd signifie Point In Time Date et permet de préciser une date précise pour la restauration. Dans la commande donnée en exemple, nous souhaitons voir quelle version du fichier /var/spool/tsm/etc/dsm.sys était présente dans TSM le 1er septembre 2011. Le format de la date tel que spécifié dans l’option -pitd est MM/DD/YYYY (format par défaut si LANG=C).

Nous pouvons voir que le fichier /var/spool/tsm/etc/dsm.sys du 1er septembre 2011 est une version inactive du fichier qui a été sauvegardée le 19 juillet 2011 et n’avait pas été modifiée depuis. Pour la restaurer, il suffit d’utiliser l’option -pitd conjointement à la fonction de restauration de dsmc :

% dsmc restore /var/spool/tsm/etc/dsm.sys -inactive -pitd=09/01/2011

Restaurer des données entre deux dates :

% dsmc restore /path/to/restore/ -fromdate=06/01/2014 -todate=06/11/2014 -subdir=yes

Restaurer une liste de fichiers :

Soit le fichier to_restore.txt avec le contenu suivant :

/tmp/file1.txt
/tmp/file2.txt
[...]
/var/tmp/files/fileN.txt

Pour restaurer l’ensemble des fichiers listés dans to_restore.txt, il suffit d’utiliser l’option -filelist du client TSM :

% dsmc restore -filelist=to_restore.txt
[...]

Obtenir un report sur l’installation et la configuration du client TSM :

% dsmc query systeminfo
IBM Tivoli Storage Manager
Command Line Backup-Archive Client Interface
  Client Version 7, Release 1, Level 2.0
  Client date/time: 12/07/2015 10:31:15
(c) Copyright by IBM Corporation and other(s) 1990, 2015. All Rights Reserved.

Node Name: NODE_NAME
Session established with server SERVERTSM: Solaris
  Server Version 7, Release 1, Level 3.100
  Server date/time: 12/07/2015 10:31:15  Last access: 12/07/2015 10:27:06

QUERY SYSTEMINFO output has been written to file /var/spool/tsm/etc/CCAFS/dsminfo.txt.

Le fichier dsminfo.txt généré par cette commande peut dans certains cas vous être demandé par les administrateurs du CC-IN2P3 afin de vous aider à résoudre vos problèmes de sauvegarde.

Autres variantes

Pour l’installation du client TSM sur des systèmes Unix non Red-Hat like, merci de vous adresser à vos administrateurs de machines.

Statistiques de sauvegarde

Des statistiques détaillées par laboratoire peuvent être obtenues en interrogeant l’API à l’adresse https://tsmlabapi.in2p3.fr. Pour toutes demandes d’accès à cette API, merci de contacter notre support utilisateurs.

Description

Les informations retournées par cette API sont :

  • la date de dernière mise à jour des données donnée au format timestamp Unix ;
  • des statistiques relatives à l’ensemble du laboratoire ;
  • des statistiques relatives à un noeud donné du laboratoire ;
  • des statistiques relatives à un filespace donné d’un noeud spécifique du laboratoire.

Les informations retournées au niveau global du laboratoire sont :

  • le nom du laboratoire ;
  • le nombre total de noeuds de sauvegarde rattachés à ce laboratoire ;
  • le nombre total de fichiers de ce laboratoire présents dans le système de sauvegarde (copie primaire + copie secondaire) ;
  • l’espace total en Bytes occupé par la sauvegarde de ce laboratoire dans le système de sauvegarde (copie primaire + copie secondaire) ;
  • la liste des noeuds de sauvegarde rattachés à ce laboratoire ;
  • l’espace total en Bytes occupé par la sauvegarde de ce laboratoire dans le système de sauvegarde (copie primaire + copie secondaire).

Les informations retournées au niveau d’un noeud de sauvegarde sont :

  • le nom du noeud
  • le nombre total de fichiers de ce noeuds présents dans le système de sauvegarde (copie primaire + copie secondaire) ;
  • l’espace total en Bytes occupé par la sauvegarde de ce noeud dans le système de sauvegarde (copie primaire + copie secondaire) ;
  • la liste de personnes enregistrées comme contact officiel de ce noeud (personne que les administrateurs de sauvegarde du CC-IN2P3 contacteront en cas de besoin) ;
  • la date de dernier accès de ce noeud au service de sauvegarde du CC-IN2P3, donnée au format timestamp Unix ;
  • le nombre de jours comptés depuis le dernier accès de ce noeud au système de sauvegarde (<1 signifiant qu’un accès à été fait dans les dernières 24 heures) ;
  • la liste des filespaces rattachés à ce noeud.

Les informations retournées au niveau du filespace d’un noeud de sauvegarde sont :

  • le nom du filespace ;
  • le nombre total de fichiers de ce filespace présents dans le système de sauvegarde (copie primaire + copie secondaire) ;
  • l’espace total en bytes occupé par la sauvegarde de ce filespace dans le système de sauvegarde (copie primaire + copie secondaire).

Interrogation de l’API

L’accès à cette API nécessite des identifiants qui doivent vous être communiqués par les administrateurs du service de sauvegarde du CC-IN2P3.

L’API fournit par le CC-IN2P3 se présente sous la forme d’un Web Service REST. Les différents formats de sortie (ou serializer) supportés sont :

Exemples d’utilisation

Avec un navigateur Web

  1. Pointer votre navigateur Web sur l’adresse https://tsmlabapi.in2p3.fr en vérifiant bien le certificat SSL présenté par le site Web avant de saisir vos identifiants.
  2. Saisir les identifiants qui vous ont communiqué par les administrateurs du service de sauvegarde du CC-IN2P3.

L’interface Web qui est actuellement affichée n’est que le résultat d’un rendu basique effectué par votre navigateur Web du document XML retourné par l’API.

En ligne de commande

L’outil qui sera utilisé à titre d’exemple est cURL. Les options qui seront utilisées dans les exemples suivants sont :

  • -H "Accept: application/json" qui permet de rajouter le header HTTP Accept: application/json à la requête ;
  • -u "username:password" qui permet de s’authentifier auprès du serveur Web avec le login “username” et le mot de passe “password” ;
  • -L qui indique à cURL de suivre les redirections HTTP.

Exemple de récupération des données au format JSON :

% curl -L -H 'Accept: application/json' -u 'username:password' https://tsmlabapi.in2p3.fr
{
    "details": {
        "generated_in": "0.66ms",
        "last_cache_update": 1406551433
    },
    "results": [
        {
            "laboratory": "CCIN2P3",
            "nodes": [
                {
                    "contacts": [
                        "no-reply@cc.in2p3.fr"
                    ],
                    "days_since_last_access": "<1",
                    "filespaces": [
                        {
                            "filespace_name": "/backup/volume1",
                            "num_files": 6,
                            "physical_b": 21
                        },
                        {
                            "filespace_name": "/backup/volume2",
                            "num_files": 6,
                            "physical_b": 21
                        }
                    ],
                    "last_access": 1406524790,
                    "node_name": "DEMO_NODE",
                    "total": {
                        "num_files": 12,
                        "physical_b": 42
                    }
                }
            ],
            "total": {
                "nodes": 1,
                "num_files": 12,
                "physical_b": 42
            }
        }
    ]
}

Note

La sortie de cette commande a été formatée avec curl | python -mjson.tool.

Signatures numériques

Les documents mis à disposition par les administrateurs TSM sont numériquements signés en utilisant OpenGPG.

Détails de la clef utilisée pour les signatures

La clef publique utilisée pour l’ensemble des signatures numériques peut-être trouvée ici.

Détail de la clef :

pub   2048R/18877579 2012-12-05
      Key fingerprint = 1868 E312 47B4 610A CC8A  CD67 14A7 1D76 1887 7579
uid                  CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>

Importation dans votre trousseau de la clef publique permettant de vérifier les signatures numériques

Soit ${PUBLICKEY_PATH} le chemin sous lequel vous avez sauvegardé la clef publique. Cela peut-être par exemple C:\Documents and settings\Administrator\CC-IN2P3_public_key.gpg ou encore /tmp/CC-IN2P3_public_key.gpg.

  1. Vérifier le fingerprint de la clef publique :

    % gpg --with-fingerprint ${PUBLICKEY_PATH}
    pub  2048R/18877579 2012-12-05 CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>
          Key fingerprint = 1868 E312 47B4 610A CC8A  CD67 14A7 1D76 1887 7579
    
  2. Importation de la clef publique dans votre keyring :

    % gpg --verbose --import ${PUBLICKEY_PATH}
    gpg: armor header: Version: GnuPG v2.0.14 (GNU/Linux)
    gpg: pub  2048R/18877579 2012-12-05  CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>
    gpg: using PGP trust model
    gpg: key 18877579: public key "CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>" imported
    gpg: Total number processed: 1
    gpg:               imported: 1  (RSA: 1)
    
  3. Modification de la confiance attribuée à la clef du service de sauvegarde du CC-IN2P3 :

    % gpg --edit "CC-IN2P3 TsmMaster"
    gpg (GnuPG) 1.4.11; Copyright (C) 2010 Free Software Foundation, Inc.
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.
    
    pub  2048R/18877579  created: 2012-12-05  expires: never       usage: SC
                         trust: unknown       validity: unknown
    [ unknown] (1). CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>
    
    gpg> trust
    pub  2048R/18877579  created: 2012-12-05  expires: never       usage: SC
                         trust: unknown       validity: unknown
    [ unknown] (1). CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>
    
    Please decide how far you trust this user to correctly verify other users' keys
    (by looking at passports, checking fingerprints from different sources, etc.)
    
      1 = I don't know or won't say
      2 = I do NOT trust
      3 = I trust marginally
      4 = I trust fully
      5 = I trust ultimately
      m = back to the main menu
    
    Your decision? 5
    Do you really want to set this key to ultimate trust? (y/N) y
    
    pub  2048R/18877579  created: 2012-12-05  expires: never       usage: SC
                         trust: ultimate          validity: unknown
    [ unknown] (1). CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>
    Please note that the shown key validity is not necessarily correct
    unless you restart the program.
    
    gpg> quit
    
    % gpg --verbose --list-key "CC-IN2P3 TsmMaster"
    gpg: using PGP trust model
    pub   2048R/18877579 2012-12-05
    uid                  CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>
    

Vérification d’une signature numérique

Soit :

  • MY_FILE.pdf le fichier dont on souhaite vérifier la signature ;

  • MY_FILE.asc le fichier de signature :

    % gpg --verbose --verify MY_FILE.asc
    gpg: armor header: Version: GnuPG v2.0.14 (GNU/Linux)
    gpg: assuming signed data in `MY_FILE.pdf'
    gpg: Signature made Tue 26 Feb 2013 02:28:03 PM CET using RSA key ID 18877579
    gpg: using PGP trust model
    gpg: Good signature from "CC-IN2P3 TsmMaster <tsmmaster@cc.in2p3.fr>"
    gpg: binary signature, digest algorithm SHA1
    

Compatibilité des versions

La matrice de compatibilité client/serveur des versions supportées par IBM est décrite dans ce document.

Outils

Générateur de données pour la sauvegarde de nouvelles arborescences

Ce générateur permet de fixer un format d’échange lors des demandes d’ajout de nouvelles arborescences à votre sauvegarde.