Infrastructure de stockage dans le nuage Mantis

<TL;DR>

Pour utiliser Mantis, vous devez exécuter une fois :

source /applis/site/nix.sh
/applis/site/mantis_init.sh

et, afin de maintenir votre token d’authentification actif, faire au moins une fois toutes les deux semaines :

source /applis/site/nix.sh
iinit

L’access depuis les clusters en ligne de commande se fait avec les iCommands (ils, iput, iget…) qui sont packagées avec Nix :

source /applis/site/nix.sh

</TL;DR>

Mantis

Mantis est un nuage de stockage distribué iRODS disponible depuis tous les nœuds de calcul de l’infrastructure HPC de GRICAD. C’est un moyen efficace de stocker les données d’entrée ou les résultats des jobs de calcul (stage-in/stage-out). Il est puissant (car le stockage est réparti entre plusieurs nœuds), capacitif et extensible (les laboratoires peuvent facilement contribuer à étendre la capacité de stockage en ajoutant de nouveaux nœuds de 250 To) et fournit un moteur de règles programmables.

L’accès et le débit de données ne sont pas aussi rapides que sur d’autres infrastructures telles que Bettik, mais il offre un point où charger les données avant de lancer un travail de calcul et stocker la sortie finale.

La plupart des infrastructures de stockage, en particulier le stockage en nuage, ne gèrent pas très bien les grandes collections de petits fichiers et c’est notamment le cas d’iRODS. Il est de loin préférable de faire un gros paquet de fichiers avec un outil tel que tar avant de les télécharger vers Mantis et de décompresser le paquet sur le nœud de calcul après son téléchargement plutôt que de télécharger une grande collection de petits fichiers. Chaque transaction de fichier (lecture, écriture, copie, déplacement) génère de nombreuses transactions de base de données associées dans iRODS, le surcoût sur l’opération de fichier proprement dite peut rapidement devenir très important et affecter négativement le temps de traitement de vos travaux de calcul.

Mantis est actuellement entièrement situé dans le centre de données IMAG et n’offre pas la multi-localité du pool de stockage des données.

Accès

Actuellement, l’accès au stockage Mantis est fourni depuis les clusters Dahu, Bigfoot, Luke, Froggy et Ceciccluster.

Tous les utilisateurs qui ont un compte Perseus ont automatiquement un espace de stockage dans Mantis.

L’utilisation de cette infrastructure est soumise à l’acceptation de la charte.

Initialisation

Avant d’utiliser le stockage de Mantis pour la première fois, vous devez initialiser un répertoire de configuration dans votre répertoire personnel sur chaque cluster de calcul. Pour ce faire, veuillez lancer :

/applis/site/mantis_init.sh

Cela créera un répertoire .irods avec une configuration par défaut et vous demandera votre mot de passe Perseus pour créer un jeton d’authentification. Il s’agit d’un processus unique.

Authentification

Si votre jeton d’authentification est expiré, vous pouvez avoir l’erreur suivante :

failed with error -826000 CAT_INVALID_AUTHENTICATION

La solution consiste à se ré-authentifier avec la commande iinit et à fournir votre mot de passe GRICAD perseus :

mylogin@mantis-cargo:~$ iinit
Enter your current PAM password:
mylogin@mantis-cargo:~$

Vous devriez normalement être en mesure de configurer un TTL d’un an (iinit -ttl 8640) mais il y a actuellement un bug qui empêche cette option de ttl de fonctionner avec notre schéma d’authentification.

Donc, pour l’instant, la durée de vie du token d’authentification est de 2 semaines. Cela signifie que vous devrez utiliser iinit au moins une fois toutes les deux semaines.

Quotas

Par défaut, un quota de 1To est établi pour chaque utilisateur. Si vous avez besoin de plus d’espace, veuillez ouvrir un ticket sur le helpdesk SOS-GRICAD helpdesk ou écrivant à sos-calcul-gricad.

Clients

iCommands

Pour accéder à Mantis via la ligne de commande, vous devez utiliser les clients iCommands. Ils sont disponibles sous la forme d’un paquet Nix qui est installé par défaut lorsque vous sourcez l’environnement Nix :

source /applis/site/nix.sh

Les iCommands communes sont : ils (pour lister les fichiers), iput (pour téléverser des fichiers), iget (pour télécharger des fichiers). Consultez la documentation irods pour plus d’informations.

Note : si vous ne souhaitez pas charger l’environnement Nix, veillez à ajouter /nix/var/nix/profiles/default/bin à votre variable d’environnement PATH (export PATH=/nix/var/nix/profiles/default/bin:$PATH)

Interface web

L’interface web Metalnx vous permet de naviguer et de gérer vos fichiers à partir d’un navigateur web. L’interface Matalnx de Mantis est accessible ici : Metalnx

Protocole webdav

Le protocole webdav peut être utile comme passerelle vers le monde extérieur au stockage en nuage de Mantis. Tout ce dont vous avez besoin est un client webdav et de le connecter à l’URL suivante :

https://mantis.univ-grenoble-alpes.fr/davrods/

Le slash final est important

Example de session avec le client Linux en ligne de commande cadaver:

[bzizou@bart:~]$ cadaver https://mantis.univ-grenoble-alpes.fr/davrods/
WARNING: Untrusted server certificate presented for `mantis.univ-grenoble-alpes.fr':
Issued to: Université Grenoble Alpes, 621 avenue Centrale, Saint-Martin-d'Hères, Auvergne-Rhône-Alpes, 38400, FR
Issued by: GEANT Vereniging, NL
Certificate is valid from Tue, 15 Dec 2020 00:00:00 GMT to Wed, 15 Dec 2021 23:59:59 GMT
Do you wish to accept the certificate? (y/n) y
Authentication required for DAV on server `mantis.univ-grenoble-alpes.fr':
Username: bzizou
Password: 
dav:/davrods/> ls
Listing collection `/davrods/': succeeded.
Coll:   povray_results_mantis2                 0  Jun  3  2020
Coll:   system                                 0  Jun 30 16:48
        10GBtestfile                  10485760000  Nov 13 14:26
        test1                          161886424  Aug 26 15:08
dav:/davrods/> get test1
Downloading `/davrods/test1' to test1:
Progress: [=============================>] 100.0% of 161886424 bytes succeeded.
dav:/davrods/> quit
Connection to `mantis.univ-grenoble-alpes.fr' closed.

Cargo

Un hôte spécifique a été mis en place pour certaines opérations de transfert à destination ou en provenance de Mantis : mantis-cargo.u-ga.fr. Cet hôte est directement accessible avec votre compte Perseus et fournit des clients iCommands par défaut.

Cet hôte “Cargo” fournit également répertoire local temporaire volumineux pour les opérations de transfert (situé dans /cargo).

Deux scripts spécifiques ont été mis en place pour permettre la registration irods ou la réplication centralisée :

~$ cireg.py -h
Usage: cireg.py [options]

Options:
  -h, --help            show this help message and exit
  -c COLLECTION, --collection=COLLECTION
                        Full path of the directory to register as an irods
                        collection
  -y, --yes             Answer yes to all questions
  -K, --checksum        Calculate a checksum on the iRODS server and store
                        with the file details
  -v, --verbose         Be verbose

~$ cipull.py -h
Usage: cipull.py [options]

Options:
  -h, --help            show this help message and exit
  -c COLLECTION, --collection=COLLECTION
                        Full path of the collection to centralize
  -y, --yes             Answer yes to all questions
  -v, --verbose         Be verbose

Accès direct à distance

L’accès direct à distance depuis les machines des laboratoires de recherche est possible, afin de permettre aux utilisateurs une plus grande souplesse dans la gestion de leurs données informatiques (génération initiale de données directement dans l’infrastructure, téléchargement des données produites par un équipement, téléchargement de la sortie de jobs de calcul etc.) ). Afin de mettre en place et d’optimiser ces accès, une évaluation au cas par cas doit être demandée. Pour ce faire, veuillez nous contacter, soit par email à sos-calcul-gricad ou via le helpdesk SOS-GRICAD.


Charte Mantis

Service offert par GRICAD/CIMENT

GRICAD/CIMENT offre à ses utilisateurs un système de stockage distribué accessible depuis tous les principaux clusters de calcul GRICAD/CIMENT.

Le cœur [1] de ce système est destiné principalement aux utilisateurs en mode “Grille” (principalement CiGri), c’est-à-dire aux utilisateurs qui exécutent des travaux de calcul impliquant plusieurs plateformes simultanément. Des accès en dehors du mode “Grille” sont toutefois également possibles, notamment lorsqu’un laboratoire a contribué à l’extension du système ou pour l’archivage afin de réduire la charge sur les systèmes de disques locaux.

[1]: le “noyau” correspond au volume initial de GRICAD/CIMENT financé en utilisant des fonds internes pour environ 750To.

Quotas

Tous les utilisateurs ayant un compte Perseus ont un espace de stockage par défaut de 1To sur Mantis afin de simplifier l’accès et de permettre de tester la solution.

Pour toute demande de prolongation de ce quota, veuillez nous contacter, soit par courriel à [sos-calcul-gricad] (mailto:sos-calcul-gricad@univ-grenoble-alpes.fr), soit via le [helpdesk SOS-GRICAD] (https://sos-gricad.univ-grenoble-alpes.fr/ “SOS-GRICAD”).

Participation à l’accroissement de la capacité

En tant qu’utilisateurs, vous pouvez participer à l’augmentation de la capacité de l’infrastructure. Vous pouvez contribuer, par le biais de votre laboratoire et de vos projets, à l’achat de matériel qui viendra s’ajouter au parc existant.

Le matériel acheté sera ajouté à la capacité existante sans aucune distinction afin d’augmenter la capacité globale. Toutefois, les utilisateurs ou groupes qui ont contribué verront leur quota augmenté du montant de leur contribution nette.

Les utilisateurs et groupes qui ont contribué pourront utiliser l’infrastructure sans nécessairement utiliser le mode grille.

Caveats

Aucune sauvegarde de données n’est effectuée par GRICAD. L’infrastructure est conçue pour résister à des défaillances matérielles mineures, mais nous ne pouvons être tenus pour responsables en cas de perte des données stockées sur l’infrastructure en cas de défaillance matérielle majeure.

Nous vous rappelons également que la résilience de l’infrastructure n’en fait pas une sauvegarde. Contrairement à un système de sauvegarde, elle n’empêche pas la perte de données due à une erreur de manipulation ou à une corruption de données causée par un logiciel.

La sécurité des données est assurée dans les limites de la capacité du middleware. En tant qu’utilisateur, vous avez le contrôle des règles d’accès aux données stockées sur l’infrastructure. En tant que tel, GRICAD ne peut être tenu responsable de la perte ou du vol de données par une mauvaise utilisation des mécanismes des règles d’accès aux données ou en cas de dysfonctionnement du système.

Engagement utilisateur

  • Les utilisateurs sont liés par la Charte d’utilisation des installations informatiques de l’UGA.

  • Seules les données étroitement liées au projet de recherche dans le cadre duquel ils ont accès à l’infrastructure y seront stockées.

  • Les utilisateurs doivent supprimer toutes les données obsolètes afin de libérer de l’espace au niveau global, quelle que soit l’utilisation de leur quota.

  • Les utilisateurs doivent signaler tout dysfonctionnement suspect au personnel de soutien par courrier à sos-calcul-gricad ou par l’intermédiaire du helpdesk SOS-GRICAD.

  • Les utilisateurs disposant de données sensibles nécessitant des mesures de protection particulières doivent le faire savoir au personnel de support par courrier à sos-calcul-gricad ou via le helpdesk SOS-GRICAD afin que des solutions appropriées puissent être envisagées et pour être correctement informés du niveau de protection accordé.