iRODS

Le système iRODS (Integrated Rule-Oriented Data System) est un outil permettant un accès transparent aux données réparties sur différents sites et sur des supports hétérogènes (systèmes de fichiers sur disque, bases de données, systèmes de bandes, etc.)

Obtenir un compte

Vous devez disposer d’un compte iRODS pour pouvoir l’utiliser sur CC-IN2P3, ce que vous pouvez demander en contactant le support utilisateurs. Une fois votre demande approuvée, vous recevrez vos paramètres de connexion.

Utiliser les iCommands

Les iCommands sont les utilitaires en ligne de commande Unix et Windows qui assurent l’interface au système iRODS.

À partir d’un serveur interactif

Si vous avez un compte au CC-IN2P3, vous pouvez vous connecter aux serveurs interactifs et utiliser les iCommands :

% ssh cca.in2p3.fr
% ccenv irods --list
% ccenv irods [version]
% which iinit
/pbs/software/centos-7-x86_64/irods/3.3.1/bin/iinit

Depuis une machine externe

Veuillez vous reporter au paragraphe Obtenir le client iRODS pour télécharger les binaires nécessaires.

Créez les paramètres de connexion

Créez un répertoire ${HOME}/.irods et créez un fichier ${HOME}/.irods/.irodsEnv qui contient les informations nécessaires :

irodsHost <irods_hostname>
irodsPort <irods_port_number>
irodsHome <irods_home_dir>
irodsCwd <irods_home_dir>
irodsUserName <irods_username>
irodsZone <irods_zone_name>

Démarrer avec les iCommands

Tout d’abord, exécutez la commande iinit qui demande le mot de passe de votre compte iRODS défini dans le fichier .irodsEnv. iinit chiffre le mot de passe et le stocke dans un fichier nommé .irodsA.

Une fois fait, vous ne devriez plus avoir besoin de fournir votre mot de passe pour d’autres iCommands. Pour oublier le mot de passe crypté, exécutez la commande iexit.

Warning

Les noms de fichier ne doivent PAS contenir des accents ou des caractères spéciaux tels que #?! * etc.

Veuillez trouver ci-dessous la liste des iCommands les plus utilisés. Utilisez l’option -h avec la commande de votre choix pour avoir plus de détails.

iCommand Description
icd Change le répertoire de travail
ichmod Donne accès/accorde des autorisations à un autre utilisateur
iexit Se déconnecte de iRODS
iget Télécharge le fichier / répertoire de iRODS sur la machine locale
init Initialise et démarre la connexion à iRODS
ils Liste le contenu du répertoire de travail en cours
imeta Gère les métadonnées définies par l’utilisateur
imkdir Crée un nouveau répertoire
iput Télécharge le fichier / répertoire de la machine locale vers iRODS
ipwd Affiche le nom et le chemin du dossier distant actuel
irm Déplace un fichier dans la corbeille
irsync Synchroniser un dossier d’un répertoire local avec un répertoire dans iRODS

Vous trouverez plus d’informations au sujet des iCommands sur la page de documentation de iRODS.

Gérer les métadonnées

Les métadonnées sont des données relatives à vos données. Dans iRODS, les métadonnées incluent les attributs système et ceux définis au niveau utilisateur associés à un Data-Object, une collection, une ressource, etc. stockés dans la base de données iCAT.

Pour ajouter, supprimer, répertorier ou interroger des métadonnées définies par l’utilisateur, utilisez la commande imeta :

% imeta
Usage: imeta [-vVh] [command] Commands are:

add -d|C|R|u Name AttName AttValue [AttUnits] (Add new AVU triplet)
rm  -d|C|R|u Name AttName AttValue [AttUnits] (Remove AVU)
rmw -d|C|R|u Name AttName AttValue [AttUnits] (Remove AVU, use Wildcards)
ls  -d|C|R|u Name [AttName] (List existing AVUs for item Name)
lsw -d|C|R|u Name [AttName] (List existing AVUs, use Wildcards)
qu -d|C|R|u AttName Op AttVal  (Query objects with matching AVUs)
cp -d|C|R|u -d|C|R|u Name1 Name2 (Copy AVUs from item Name1 to Name2)

Avec imeta vous pouvez ajouter des métadonnées à : Data-Object, Collection, User.

Une métadonnée est définie par un triplet contenant :

  • le Attribute Name (AttName)
  • le Attribute Value (AttVal)
  • le Attribute Unit (AttUnits)

Ajouter une métadonnée à une collection /tempZone/home/calvat/images :

% imeta add -C /tempZone/home/calvat/images type tiff
% imeta add -C /tempZone/home/calvat/images zone isere

Répertorier des métadonnées :

% imeta ls -C /tempZone/home/calvat/images
AVUs defined for collection /tempZone/home/calvat/images:
attribute: type
value: tiff
unit:
----
attribute: zone
value: isere
unit:

Supprimer des métadonnées :

% imeta rm -C /tempZone/home/calvat/images/montagne type tiff

Rechercher des données à partir de métadonnées :

% imeta qu -C zone = isere
collection: /tempZone/home/calvat/images

Migration vers bandes magnétiques

Il est possible, sur demande, de déclencher une migration de vos données arrivant sur iRODS vers notre système de stockage hiérarchique sur bande HPSS . Merci de contacter le support utilisateurs pour demander l’activation de ce mécanisme.

Obtenir le client iRODS

Pour se connecter sur un serveur iRODS depuis votre machine, vous pouvez télécharger le client à partir de la version 4.0 depuis le site du projet ou utiliser le gestionnaire de paquets de votre machine.

Pour télécharger les clients en version 3.x, selectionnez l’archive correspondant à votre système d’exploitation depuis la liste ci-dessous. Extrayez ensuite l’archive et ajustez votre variable d’environnement PATH en conséquence.

On rappelle que les utilisateurs des serveurs en 3.3.1 doivent avoir un client en 3.3.1, de la même manière que les utilisateurs des serveurs 4.x doivent avoir un client en 4.x

Note

A partir de la version 3.0, il peut etre nécessaire d’installer les bibliothèques de Microsoft Visual Studio.

Il est aussi possible d’utiliser iRODS au travers d’API Java en utilisant le paquet jargon.

Pour Windows, il existe un client graphique qui permet de naviguer dans l’arborescence iRODS de façon conviviale.