Jean Zay : quotas disques et commandes de visualisation des taux d'occupation

Principe

Les quotas garantissent un accès équitable aux ressources disques. Ils évitent qu'un groupe d'utilisateurs ne consomme tout l'espace et n'empêche les autres groupes de travailler. À l'IDRIS, les quotas limitent à la fois la quantité d'espace disque et le nombre de fichiers (inodes). Ces limites s'appliquent par utilisateur pour votre HOME (un HOME par utilisateur même si votre login est rattaché à plusieurs projets) et par projet pour le WORK et le STORE (autant de WORK et de STORE que de projets pour un même utilisateur).

Vous pouvez consulter l'occupation de vos espaces disques en utilisant l'une des deux commandes présentées dans cette page :

  • idr_quota_user pour une vue de votre utilisation personnelle en tant qu'utilisateur ;
  • idr_quota_project pour une vue d'ensemble de votre projet et de la consommation de chacun de ses membres.

Vous avez également toujours accès à la commande idrquota. Il s'agit de la première commande de visualisation de quotas qui avait été déployée sur Jean Zay, et dont idr_quota_user et idr_quota_project sont une évolution.

Dépassement des quotas

Lorsqu'un utilisateur ou un projet est en dépassement de quota, aucun email d'avertissement n'est envoyé. Vous êtes néanmoins informé par des messages d'erreur du type Disk quota exceeded lorsque vous manipulez des fichiers dans l'espace disque concerné.

Lorsque l'un des quotas est atteint, vous ne pouvez plus créer de fichiers dans l'espace disque concerné. Cela peut donc perturber les travaux en cours d'exécution s'ils ont été lancés depuis cet espace.

Attention, éditer un fichier en étant en limite de quota disque peut ramener sa taille a zéro, donc en effacer le contenu.

Lorsque vous êtes bloqués ou en passe de l’être :

  • Essayez de faire du ménage dans l'espace disque concerné en supprimant les fichiers devenus obsolètes.
  • Archivez les répertoires auxquels vous n'accédez plus ou rarement.
  • Déplacez vos fichiers dans un autre espace en fonction de leurs usages (voir la page sur les espaces disques).
  • Le chef de projet ou son suppléant peuvent demander une augmentation des quotas de l'espace STORE via l'interface Extranet.

Remarques:

  1. Il faut penser à vérifier les espaces disques communs $ALL_CCFRWORK et $ALL_CCFRSTORE.
  2. Une cause récurrente de dépassement de quota est l'utilisation d'environnements Anaconda personnels. Veuillez vous référer à la page Environnement Python personnel pour connaître les bonnes pratiques sur Jean Zay.

La commande idr_quota_user

Par défaut, la commande idr_quota_user renvoie votre occupation personnelle en tant qu'utilisateur pour l'ensemble des espaces disques de votre projet actif. Par exemple, si votre projet actif est abc, vous verrez une sortie similaire à celle-ci :

$ idr_quota_user
 HOME
INODE:   |██-------------------------------| U: 9419/150000  6.28%                                     
STORAGE: |████████████████████████████████-| U: 2.98 GiB/3.00 GiB  99.31%                              
 
ABC STORE
INODE:   |---------------------------------| U: 1/100000  0.00%           G: 12/100000  0.01%          
STORAGE: |---------------------------------| U: 4.00 KiB/50.00 TiB  0.00% G: 48.00 KiB/50.00 TiB  0.00%
 
ABC WORK
INODE:   |███▒▒▒---------------------------| U: 50000/500000 10.00%       G: 100000/500000  20.00%        
STORAGE: |██████████▒▒▒▒▒▒▒▒▒▒-------------| U: 1.25 TiB/5.00 TiB  25.00% G: 2.5 TiB/5.00 TiB 50.00%
 
The quotas are refreshed daily. All the information is not in real time and may not reflect your real
storage occupation.

Sur cet exemple de sortie, votre occupation personnelle est représentée par la barre noire et quantifiée sur la droite après la lettre U (pour User). Votre occupation personnelle est aussi comparée à l'occupation globale du projet qui est représentée par la barre grise (sur cet exemple de sortie). et quantifiée après la lettre G (pour Groupe).

Notez que les couleurs peuvent être différentes suivant les paramètres et/ou le type de votre terminal.

Vous pouvez affiner l'information retournée par la commande idr_quota_user en ajoutant un ou plusieurs des arguments suivants :

  • --project def pour afficher l'occupation d'un projet différent de votre projet actif (ici def) ;
  • --all-projects pour afficher l'occupation de l'ensemble des projets auxquels vous êtes rattaché ;
  • --space home work pour afficher l'occupation d'un (ou plusieurs) espace(s) disque(s) en particulier (ici le HOME et le WORK).

L'aide complète de la commande idr_quota_user est accessible en lançant :

$ idr_quota_user -h

La commande idr_quota_project

Par défaut, la commande idr_quota_project renvoie l'occupation disque de chaque membre de votre projet actif pour l'ensemble des espaces disques associés au projet. Par exemple, si votre projet actif est abc, vous verrez une sortie similaire à celle-ci :

$ idr_quota_project
PROJECT: abc SPACE: WORK
PROJECT USED INODE: 34373/500000 6.87%
PROJECT USED STORAGE: 1.42 GiB/5.00 TiB 0.03%
┌─────────────────┬─────────────────┬─────────────────┬─────────────────┬──────────────────────┐
│      LOGIN      │     INODE ▽     │     INODE %     │     STORAGE     │      STORAGE %       │
├─────────────────┼─────────────────┼─────────────────┼─────────────────┼──────────────────────┤
│      abc001     │            29852│            5.97%│       698.45 MiB│                 0.01%│
│      abc002     │             4508│            0.90%│       747.03 MiB│                 0.01%│
│      abc003     │                8│            0.00%│         6.19 MiB│                 0.00%│
│      abc004     │                1│            0.00%│           0.00 B│                 0.00%│
│      abc005     │                1│            0.00%│           0.00 B│                 0.00%│
└─────────────────┴─────────────────┴─────────────────┴─────────────────┴──────────────────────┘
PROJECT: abc SPACE: STORE
PROJECT USED INODE: 13/100000 0.01%
PROJECT USED STORAGE: 52.00 KiB/50.00 TiB 0.00%
┌─────────────────┬─────────────────┬─────────────────┬─────────────────┬──────────────────────┐
│      LOGIN      │     INODE ▽     │     INODE %     │     STORAGE     │      STORAGE %       │
├─────────────────┼─────────────────┼─────────────────┼─────────────────┼──────────────────────┤
│      abc001     │                2│            0.00%│         8.00 KiB│                 0.00%│
│      abc002     │                2│            0.00%│         8.00 KiB│                 0.00%│
│      abc003     │                2│            0.00%│         8.00 KiB│                 0.00%│
│      abc004     │                2│            0.00%│         8.00 KiB│                 0.00%│
│      abc005     │                1│            0.00%│         4.00 KiB│                 0.00%│
└─────────────────┴─────────────────┴─────────────────┴─────────────────┴──────────────────────┘
The quotas are refreshed daily. All the information is not in real time and may not reflect your real 
storage occupation.

Pour chaque espace disque, un résumé de l'occupation globale est affiché, suivi d'un tableau détaillé de l'occupation de chaque membre du projet.

Vous pouvez affiner l'information retournée par la commande idr_quota_project en ajoutant un ou plusieurs des arguments suivants :

  • --project def pour afficher l'occupation d'un projet différent de votre projet actif (ici def) ;
  • --space work pour afficher l'occupation d'un (ou plusieurs) espace(s) disque(s) en particulier (ici le WORK) ;
  • --order storage pour trier les informations dans l'ordre décroissant des valeurs d'une colonne donnée (ici la colonne STORAGE)

L'aide complète de la commande idr_quota_project est accessible en lançant :

$ idr_quota_project -h

La commande idrquota

La commande ​​idrquota​ permet une visualisation synthétique des taux d'occupation des différents espaces disques.

  • L'​option ​-m​ permet de récupérer les informations pour le ​HOME​ (quotas par utilisateur).
  • L'​option ​-s​ permet de récupérer les informations pour le ​STORE​ (quotas par projet).
  • L'​option ​-w​ permet de récupérer les informations pour le ​WORK​ (quotas par projet).
  • L'​option ​-p <PROJET>​ permet de spécifier le projet désiré si votre login est rattaché à plusieurs projets. Elle doit être combinée avec l'option ​-w ou -s​ mais pas avec l'​option ​-m​.
  • L'​option ​-h​ permet d'​obtenir l'aide de la commande.

Voici deux exemples de visualisation des quotas du HOME et du WORK pour le projet actif (choix par défaut) avec idrquota :

$ idrquota -m
HOME: 2 / 3 Gio (58.24%)
HOME: 23981 / 150000 inodes (15.99%)
$ idrquota -w
WORK: 1293 / 5120 Gio (25.26%)
WORK: 431228 / 500000 inodes (86.25%)

Voici deux exemples de visualisation des quotas du STORE et du WORK pour le projet abc avec idrquota :

$ idrquota -p abc -s
STORE: 7976 / 58368 Gio (13.67%)
STORE: 21900 / 110000 inodes (19.91%)
$ idrquota -p abc -w
WORK: 2530 / 5000 Gio (50.60%)
WORK: 454248 / 550000 inodes (82.59%)

Remarques générales

  • Les projets auxquels vous êtes rattaché correspondent aux groupes UNIX listés par la commande idrproj.
  • Les quotas ne sont pas relevés en temps réel et ne représentent peut-être pas l'état actuel d'occupation de vos espaces disques. La commande idrquota est actualisée toutes les 30 minutes alors que les commandes idr_quota_user et idr_quota_project sont actualisées tous les matins.
  • Pour connaître en temps réél la volumétrie en octet et inodes d'un répertoire donné my_directory, vous pouvez exécuter les commandes du -hd0 my_directory et du -hd0 --inodes my_directory, respectivement. Contrairement aux commandes idr_quota, le temps d'exécution des commandes du peut être important, relativement à la taille du répertoire.
  • Pour le WORK et le STORE, les taux d'occupation affichés englobent à la fois l'occupation de l'espace personnel ($WORK ou $STORE) et l'occupation de l'espace commun ($ALL_CCFRWORK ou $ALL_CCFRSTORE).