SLURM - Comptes/Associations/Groupes

Il existe quatre composants principaux dans Slurm : le compte Unix, les groupes Unix, les comptes Slurm et les associations Slurm.

Sous Unix

Compte/utilisateur Unix

Tout utilisateur doit avoir un compte unix pour s’authentifier à un cluster. Certaines informations sont également associées à ce compte comme le shell par défaut, le $HOME, etc. La commande getent passwd $USER permet d’en savoir plus le compte unix.

Groupes Unix

Chaque compte/utilisateur Unix appartient à au moins un groupe, du même nom que le compte utilisateur lorsqu’il est créé. Un compte Unix peut également être membre de plusieurs groupes pour fournir d’autres accès ou restrictions.

La commande groups $USER permet d’en savoir plus les groupes associés à un compte Unix.

Sous Slurm

Comptes Slurm

Les comptes Slurm sont différents des comptes Unix et sont utilisés pour suivre l’utilisation du cluster, contrôler l’accès aux ressources et appliquer des limites pour les groupes d’utilisateurs Unix.

Pour créer un utilisateur dans Slurm :

# sacctmgr add user name=<COMPTE_SLURM> account=<ASSOCIATION_SLURM>

Associations Slurm

Pour utiliser un cluster et soumettre des tâches à Slurm, tout utilisateur (compte Unix) doit être associé à au moins un compte Slurm. Généralement, chaque utilisateur aura une association Slurm avec son compte Slurm.

Une association Slurm est une combinaison de clusters, de comptes, de noms d’utilisateur et éventuellement de partitions. Une association peut se voir imposer des limites.

Si par exemple un utilisateur travaille sur plusieurs projet, il peut avoir plusieurs associations avec les comptes Slurm lui correspondants. Donc, un même utilisateur peut avoir :

  • Un compte Slurm et plusieurs associations
  • Plusieurs comptes Slurm associé à des associations différentes
  • Plusieurs comptes Slurm associé à une seule association (?)

La commande sshare -u $USER -U permet de voir les associations d’un utilisateur.

Compte Slurm avec plusieurs associations :

# sshare -u emmetbrown -U
Account User RawShares NormShares RawUsage EffectvUsage FairShare
----------- ---------- --------- ---------- -------- ------------ ---------
TimeMachine emmetbrown 1 0.000241 0 0.000000 1.000000
Particule emmetbrown 1 0.000241 21252 0.000066 0.968913

Comptes Slurm avec plusieurs associations :

# sshare -u marty* -U
Account User RawShares NormShares RawUsage EffectvUsage FairShare
----------- -------- --------- ---------- -------- ------------ ---------
TimeMachine martyOld 1 0.000369 0 0.000000 1.000000
math marty 1 0.000369 22568 0.000032 0.985412

Afficher les associations :

# sacctmgr show assoc format=cluster,user,qos
Cluster User QOS
------- ----------- ------------------------
earth normal
earth root normal
earth marty normal
earth emmetbrown TimeCalcul,ParticuleCalc

Documentation

https://harvardmed.atlassian.net/wiki/spaces/O2/pages/1632567361/Understanding+O2+Slurm+Accounts+Associations+and+Unix+Accounts+Groups

> Partager <