Accessing CVMFS/fr: Difference between revisions

Updating to match new version of source page
No edit summary
(Updating to match new version of source page)
Line 5: Line 5:
Les répertoires de logiciels et de données que nous offrons sont accessibles via le [[CVMFS/fr|CVMFS (''CERN Virtual Machine File System'')]]. Puisque CVMFS est préconfiguré pour vous, vous pouvez utiliser ses répertoires directement.  Pour plus d’information sur notre environnement logiciel, consultez les pages wiki [[Available software/fr|Logiciels disponibles]], [[Utiliser des modules]], [[Python/fr|Python]], [[R/fr|R]] et [[Installing software in your home directory/fr|Installation de logiciels dans votre répertoire /home]].
Les répertoires de logiciels et de données que nous offrons sont accessibles via le [[CVMFS/fr|CVMFS (''CERN Virtual Machine File System'')]]. Puisque CVMFS est préconfiguré pour vous, vous pouvez utiliser ses répertoires directement.  Pour plus d’information sur notre environnement logiciel, consultez les pages wiki [[Available software/fr|Logiciels disponibles]], [[Utiliser des modules]], [[Python/fr|Python]], [[R/fr|R]] et [[Installing software in your home directory/fr|Installation de logiciels dans votre répertoire /home]].


<div class="mw-translate-fuzzy">
Nous décrivons ici comment installer et configurer CVMFS sur ''votre propre ordinateur ou grappe''; vous aurez ainsi accès aux mêmes répertoires et environnements logiciels que ceux de nos systèmes.
Nous décrivons ici comment installer et configurer CVMFS sur ''votre propre ordinateur ou grappe''; vous aurez ainsi accès aux mêmes répertoires et environnements logiciels que ceux de nos systèmes.
</div>


Nous utilisons comme exemple [https://ssl.linklings.net/conferences/pearc/pearc19_program/views/includes/files/pap139s3-file1.pdf l'environnement logiciel présenté à la conférence PEARC 2019], ''Practices and Experience in Advanced Research Computing''.
Nous utilisons comme exemple [https://ssl.linklings.net/conferences/pearc/pearc19_program/views/includes/files/pap139s3-file1.pdf l'environnement logiciel présenté à la conférence PEARC 2019], ''Practices and Experience in Advanced Research Computing''.
Line 17: Line 19:
   |panelstyle=callout
   |panelstyle=callout
   |content=
   |content=
'''Veuillez vous abonner au [[Accessing_CVMFS/fr#S'abonner_au_service_d'annonces|service d'annonces]] et remplir ce [https://docs.google.com/forms/d/1eDJEeaMgooVoc4lTkxcZ9y65iR8hl4qeXMOEU9slEck/viewform formulaire d'enregistrement] (en anglais). Si vous utilisez notre environnement logiciel dans votre recherche, veuillez reconnaître notre contribution selon [https://www.computecanada.ca/page-daccueil-du-portail-de-recherche/acces-aux-ressources/reconnaissance-de-calcul-canada/?lang=fr ces directives].'''
<span class="mw-translate-fuzzy">'''Veuillez vous abonner au [[Accessing_CVMFS/fr#S'abonner_au_service_d'annonces|service d'annonces]] et remplir ce [https://docs.google.com/forms/d/1eDJEeaMgooVoc4lTkxcZ9y65iR8hl4qeXMOEU9slEck/viewform formulaire d'enregistrement] (en anglais). Si vous utilisez notre environnement logiciel dans votre recherche, veuillez reconnaître notre contribution selon [https://www.computecanada.ca/page-daccueil-du-portail-de-recherche/acces-aux-ressources/reconnaissance-de-calcul-canada/?lang=fr ces directives].'''


Nous vous remercions de mentionner aussi [https://ssl.linklings.net/conferences/pearc/pearc19_program/views/includes/files/pap139s3-file1.pdf notre présentation].  
Nous vous remercions de mentionner aussi [https://ssl.linklings.net/conferences/pearc/pearc19_program/views/includes/files/pap139s3-file1.pdf notre présentation].</span>
}}
}}
<div class="mw-translate-fuzzy">
== S'abonner au service d'annonces ==
== S'abonner au service d'annonces ==
Des modifications peuvent être apportées au CVMFS ou aux logiciels et autre contenu des répertoires que nous fournissions; ces modifications ''touchent les utilisateurs ou nécessitent l’intervention de l’administrateur'' pour assurer la continuité du service.
Des modifications peuvent être apportées au CVMFS ou aux logiciels et autre contenu des répertoires que nous fournissions; ces modifications ''touchent les utilisateurs ou nécessitent l’intervention de l’administrateur'' pour assurer la continuité du service.
Line 26: Line 29:
Abonnez-vous à la liste de diffusion cvmfs-announce@gw.alliancecan.ca afin de recevoir les annonces importantes occasionnelles. Vous pouvez vous abonner en écrivant à [mailto:cvmfs-announce+subscribe@gw.alliancecan.ca cvmfs-announce+subscribe@gw.alliancecan.ca] et en répondant au courriel de confirmation qui vous sera envoyé.
Abonnez-vous à la liste de diffusion cvmfs-announce@gw.alliancecan.ca afin de recevoir les annonces importantes occasionnelles. Vous pouvez vous abonner en écrivant à [mailto:cvmfs-announce+subscribe@gw.alliancecan.ca cvmfs-announce+subscribe@gw.alliancecan.ca] et en répondant au courriel de confirmation qui vous sera envoyé.
Les membres de nos équipes techniques peuvent aussi  [https://groups.google.com/u/0/a/gw.alliancecan.ca/g/cvmfs-announce/s'abonner ici].
Les membres de nos équipes techniques peuvent aussi  [https://groups.google.com/u/0/a/gw.alliancecan.ca/g/cvmfs-announce/s'abonner ici].
</div>


<div class="mw-translate-fuzzy">
== Conditions d’utilisation et soutien technique ==
== Conditions d’utilisation et soutien technique ==
Le logiciel client CVMFS est fourni par le CERN. Nos répertoires CVMFS sont offerts '''sans aucune forme de garantie'''. Votre accès aux répertoires et à l’environnement logiciel peut être limité ou bloqué si vous contrevenez aux [https://www.computecanada.ca/page-daccueil-du-portail-de-recherche/securite-de-linformation/conditions-dutilisation/?lang=fr conditions d’utilisation], ou à notre discrétion.
Le logiciel client CVMFS est fourni par le CERN. Nos répertoires CVMFS sont offerts '''sans aucune forme de garantie'''. Votre accès aux répertoires et à l’environnement logiciel peut être limité ou bloqué si vous contrevenez aux [https://www.computecanada.ca/page-daccueil-du-portail-de-recherche/securite-de-linformation/conditions-dutilisation/?lang=fr conditions d’utilisation], ou à notre discrétion.
</div>


== Exigences techniques ==
== Exigences techniques ==
Line 41: Line 47:
Si ces conditions ne sont pas respectées ou que vous avez d’autres restrictions, considérez cette  [https://cvmfs.readthedocs.io/en/stable/cpt-hpc.html autre option].
Si ces conditions ne sont pas respectées ou que vous avez d’autres restrictions, considérez cette  [https://cvmfs.readthedocs.io/en/stable/cpt-hpc.html autre option].


<div class="mw-translate-fuzzy">
=== Pour plusieurs systèmes ===
=== Pour plusieurs systèmes ===
Pour déployer plusieurs clients CVMFS, par exemple avec une grappe, dans un laboratoire, sur un campus ou autre, chacun des systèmes doit satisfaire les exigences particulières énoncées ci-dessus. Tenez compte en plus des points suivants :
Pour déployer plusieurs clients CVMFS, par exemple avec une grappe, dans un laboratoire, sur un campus ou autre, chacun des systèmes doit satisfaire les exigences particulières énoncées ci-dessus. Tenez compte en plus des points suivants :
Line 47: Line 54:
* Nous vous recommandons de synchroniser l’identité du compte de service <code>cvmfs</code> de tous les nœuds clients avec LDAP ou autrement.
* Nous vous recommandons de synchroniser l’identité du compte de service <code>cvmfs</code> de tous les nœuds clients avec LDAP ou autrement.
** Ceci facilitera l’utilisation d’une [https://cvmfs.readthedocs.io/en/stable/cpt-configure.html#alien-cache cache externe] et devrait être fait '''avant que CVMFS ne soit installé'''. Même si l’utilisation d’une cache externe n’est pas prévue, il est plus facile de synchroniser les comptes dès le départ que d’essayer de les changer plus tard.
** Ceci facilitera l’utilisation d’une [https://cvmfs.readthedocs.io/en/stable/cpt-configure.html#alien-cache cache externe] et devrait être fait '''avant que CVMFS ne soit installé'''. Même si l’utilisation d’une cache externe n’est pas prévue, il est plus facile de synchroniser les comptes dès le départ que d’essayer de les changer plus tard.
</div>


== Exigences de l’environnement logiciel ==
== Exigences de l’environnement logiciel ==
Line 68: Line 76:
Autrement, suivez les directives ci-dessous.
Autrement, suivez les directives ci-dessous.


<div class="mw-translate-fuzzy">
==Préinstallation==
==Préinstallation==
Nous recommandons que la cache locale CVMFS (située par défaut dans <code>/var/lib/cvmfs</code> et configurable avec le paramètre <code>CVMFS_CACHE_BASE</code>) soit localisée dans un système de fichiers dédié afin que le stockage ne soit pas partagé avec celui d’autres applications. Vous devriez donc avoir ce système de fichiers '''avant''' d’installer CVMFS.
Nous recommandons que la cache locale CVMFS (située par défaut dans <code>/var/lib/cvmfs</code> et configurable avec le paramètre <code>CVMFS_CACHE_BASE</code>) soit localisée dans un système de fichiers dédié afin que le stockage ne soit pas partagé avec celui d’autres applications. Vous devriez donc avoir ce système de fichiers '''avant''' d’installer CVMFS.
</div>


== Installation ==
== Installation ==
Line 78: Line 88:
Pour une configuration client standard, voir [https://cvmfs.readthedocs.io/en/stable/cpt-quickstart.html#setting-up-the-software ces directives] et [http://cvmfs.readthedocs.io/en/stable/apx-parameters.html#client-parameters client la documentation sur les paramètres].
Pour une configuration client standard, voir [https://cvmfs.readthedocs.io/en/stable/cpt-quickstart.html#setting-up-the-software ces directives] et [http://cvmfs.readthedocs.io/en/stable/apx-parameters.html#client-parameters client la documentation sur les paramètres].


<div class="mw-translate-fuzzy">
Le répertoire <tt>soft.computecanada.ca</tt> est fourni  avec la configuration et vous pouvez ainsi y accéder; vous pouvez l'inclure dans vote configuration client <tt>CVMFS_REPOSITORIES</tt>.
Le répertoire <tt>soft.computecanada.ca</tt> est fourni  avec la configuration et vous pouvez ainsi y accéder; vous pouvez l'inclure dans vote configuration client <tt>CVMFS_REPOSITORIES</tt>.
</div>


== Test ==
== Test ==
Line 92: Line 104:
En cas de problème, ce [https://cvmfs.readthedocs.io/en/stable/cpt-quickstart.html#troubleshooting guide de débogage] pourrait vous être utile.
En cas de problème, ce [https://cvmfs.readthedocs.io/en/stable/cpt-quickstart.html#troubleshooting guide de débogage] pourrait vous être utile.


<div class="mw-translate-fuzzy">
= Activer notre environnement dans votre session =
= Activer notre environnement dans votre session =
Une fois que le répertoire CVMFS est monté, notre environnement est activé dans votre session en utilisant le script <tt>/cvmfs/soft.computecanada.ca/config/profile/bash.sh</tt>. Celui-ci chargera des modules par défaut. Si vous désirez avoir les modules par défaut d'une grappe de calcul en particulier, définissez la variable <tt>CC_CLUSTER</tt> en choisissant l'une des valeurs suivantes <tt>beluga</tt>, <tt>cedar</tt> ou <tt>graham</tt>, avant d'utiliser le script. Par exemple:  
Une fois que le répertoire CVMFS est monté, notre environnement est activé dans votre session en utilisant le script <tt>/cvmfs/soft.computecanada.ca/config/profile/bash.sh</tt>. Celui-ci chargera des modules par défaut. Si vous désirez avoir les modules par défaut d'une grappe de calcul en particulier, définissez la variable <tt>CC_CLUSTER</tt> en choisissant l'une des valeurs suivantes <tt>beluga</tt>, <tt>cedar</tt> ou <tt>graham</tt>, avant d'utiliser le script. Par exemple:  
{{Command|export CC_CLUSTER{{=}}beluga}}
{{Command|export CC_CLUSTER{{=}}beluga}}
{{Command|source /cvmfs/soft.computecanada.ca/config/profile/bash.sh}}
{{Command|source /cvmfs/soft.computecanada.ca/config/profile/bash.sh}}
</div>


<div class="mw-translate-fuzzy">
Cette commande '''n’exécutera rien si votre identifiant d’utilisateur est sous 1000'''. Il s’agit d’une mesure de sécurité parce que vous ne devriez pas vous attendre à ce que notre environnement logiciel vous procure des privilèges de fonctionnement. Si vous voulez quand même activer notre environnement, vous pouvez d’abord définir la variable <tt>FORCE_CC_CVMFS=1</tt> avec la commande  
Cette commande '''n’exécutera rien si votre identifiant d’utilisateur est sous 1000'''. Il s’agit d’une mesure de sécurité parce que vous ne devriez pas vous attendre à ce que notre environnement logiciel vous procure des privilèges de fonctionnement. Si vous voulez quand même activer notre environnement, vous pouvez d’abord définir la variable <tt>FORCE_CC_CVMFS=1</tt> avec la commande  
{{Command|export FORCE_CC_CVMFS{{=}}1}}
{{Command|export FORCE_CC_CVMFS{{=}}1}}
ou, si vous voulez que notre environnement soit actif en permanence, vous pouvez créer le fichier <tt>$HOME/.force_cc_cvmfs</tt> dans votre répertoire <tt>/home</tt> avec
ou, si vous voulez que notre environnement soit actif en permanence, vous pouvez créer le fichier <tt>$HOME/.force_cc_cvmfs</tt> dans votre répertoire <tt>/home</tt> avec
{{Command|touch $HOME/.force_cc_cvmfs}}
{{Command|touch $HOME/.force_cc_cvmfs}}
</div>


<div class="mw-translate-fuzzy">
Si vous voulez au contraire ne pas activer notre environnement, vous pouvez définir <tt>SKIP_CC_CVMFS=1</tt> ou créer le fichier <tt>$HOME/.skip_cc_cvmfs</tt> pour faire en sorte que notre environnement ne soit jamais activé dans cet environnement particulier.
Si vous voulez au contraire ne pas activer notre environnement, vous pouvez définir <tt>SKIP_CC_CVMFS=1</tt> ou créer le fichier <tt>$HOME/.skip_cc_cvmfs</tt> pour faire en sorte que notre environnement ne soit jamais activé dans cet environnement particulier.
</div>


==Personnaliser votre environnement==
==Personnaliser votre environnement==
Par défaut, certaines fonctionnalités de votre système seront automatiquement détectées par l’activation de notre environnement et les modules requis seront chargés. Ce comportement par défaut peut être modifié par la définition préalable des variables d’environnement particulières décrites ci-dessous.  
Par défaut, certaines fonctionnalités de votre système seront automatiquement détectées par l’activation de notre environnement et les modules requis seront chargés. Ce comportement par défaut peut être modifié par la définition préalable des variables d’environnement particulières décrites ci-dessous.  


<div class="mw-translate-fuzzy">
=== Variables d’environnement ===
=== Variables d’environnement ===
==== <tt>CC_CLUSTER</tt> ====
==== <tt>CC_CLUSTER</tt> ====
Cette variable identifie la grappe. Elle achemine des renseignements au journal du système et définit le comportement à adopter selon la licence du logiciel. Sa valeur par défaut est <tt>computecanada</tt>. Vous pourriez définir sa valeur pour que les journaux soient identifiés par le nom de votre système.
Cette variable identifie la grappe. Elle achemine des renseignements au journal du système et définit le comportement à adopter selon la licence du logiciel. Sa valeur par défaut est <tt>computecanada</tt>. Vous pourriez définir sa valeur pour que les journaux soient identifiés par le nom de votre système.
</div>


<div class="mw-translate-fuzzy">
==== <tt>RSNT_ARCH</tt> ====
==== <tt>RSNT_ARCH</tt> ====
Cette variable identifie le jeu d’instructions CPU pour le système. Par défaut, elle est détectée automatiquement selon <tt>/proc/cpuinfo</tt>. Vous pouvez cependant utiliser un autre jeu d’instructions en définissant la variable avant d’activer l’environnement. Les jeux possibles sont :
Cette variable identifie le jeu d’instructions CPU pour le système. Par défaut, elle est détectée automatiquement selon <tt>/proc/cpuinfo</tt>. Vous pouvez cependant utiliser un autre jeu d’instructions en définissant la variable avant d’activer l’environnement. Les jeux possibles sont :
Line 117: Line 138:
* avx2
* avx2
* avx512
* avx512
</div>


<div class="mw-translate-fuzzy">
==== <tt>RSNT_INTERCONNECT</tt> ====
==== <tt>RSNT_INTERCONNECT</tt> ====
Cette variable identifie le type d’interconnexion réseau du système. Elle est détectée automatiquement selon la présence de  <tt>/sys/module/opa_vnic</tt> pour OmniPath ou de <tt>/sys/module/ib_core</tt> pour InfiniBand. La valeur de remplacement est <tt>ethernet</tt>. Les valeurs possibles sont :
Cette variable identifie le type d’interconnexion réseau du système. Elle est détectée automatiquement selon la présence de  <tt>/sys/module/opa_vnic</tt> pour OmniPath ou de <tt>/sys/module/ib_core</tt> pour InfiniBand. La valeur de remplacement est <tt>ethernet</tt>. Les valeurs possibles sont :
Line 123: Line 146:
* infiniband
* infiniband
* ethernet
* ethernet
</div>


La valeur de la variable déclenche des options différentes du protocole de transport pour OpenMPI.
La valeur de la variable déclenche des options différentes du protocole de transport pour OpenMPI.


<div class="mw-translate-fuzzy">
==== <tt>RSNT_CUDA_DRIVER_VERSION</tt> ====
==== <tt>RSNT_CUDA_DRIVER_VERSION</tt> ====


Cette variable est utilisée pour cacher ou montrer des versions de nos modules CUDA selon la version requise pour les pilotes NVidia, [https://docs.nvidia.com/deploy/cuda-compatibility/index.html tel que documenté ici]. Si la variable n’est pas définie, les fichiers dans <tt>/usr/lib64/nvidia</tt> déterminent les versions à cacher ou à montrer.  
Cette variable est utilisée pour cacher ou montrer des versions de nos modules CUDA selon la version requise pour les pilotes NVidia, [https://docs.nvidia.com/deploy/cuda-compatibility/index.html tel que documenté ici]. Si la variable n’est pas définie, les fichiers dans <tt>/usr/lib64/nvidia</tt> déterminent les versions à cacher ou à montrer.
</div>


<div class="mw-translate-fuzzy">
Si aucune bibliothèque ne se trouve dans <tt>/usr/lib64/nvidia</tt>, nous supposons que les versions du pilote sont suffisantes pour CUDA 10.2. Ceci est pour assurer la compatibilité avec les versions antérieures puisque cette fonctionnalité a été rendue disponible à la sortie de CUDA 11.0.
Si aucune bibliothèque ne se trouve dans <tt>/usr/lib64/nvidia</tt>, nous supposons que les versions du pilote sont suffisantes pour CUDA 10.2. Ceci est pour assurer la compatibilité avec les versions antérieures puisque cette fonctionnalité a été rendue disponible à la sortie de CUDA 11.0.
</div>


<div class="mw-translate-fuzzy">
Définir la variable d’environnement <tt>RSNT_CUDA_DRIVER_VERSION=0.0</tt> cache toutes les versions de CUDA.
Définir la variable d’environnement <tt>RSNT_CUDA_DRIVER_VERSION=0.0</tt> cache toutes les versions de CUDA.
</div>


<div class="mw-translate-fuzzy">
==== <tt>RSNT_LOCAL_MODULEPATHS</tt> ====
==== <tt>RSNT_LOCAL_MODULEPATHS</tt> ====
Cette variable identifie les endroits où se trouvent les arbres de modules locaux et les intègre à notre arborescence centrale. Définissez d’abord
Cette variable identifie les endroits où se trouvent les arbres de modules locaux et les intègre à notre arborescence centrale. Définissez d’abord
Line 140: Line 171:
et installez ensuite votre recette EasyBuild avec
et installez ensuite votre recette EasyBuild avec
{{Command|eb --installpath /opt/software/easybuild <your recipe>.eb}}
{{Command|eb --installpath /opt/software/easybuild <your recipe>.eb}}
</div>


<div class="mw-translate-fuzzy">
Notre nomenclature de modules sera employée pour installer localement votre recette qui sera utilisée dans la hiérarchie des modules. Par exemple, si la recette utilise la chaîne de compilation <tt>iompi,2018.3</tt>, le module sera disponible après que les modules <tt>intel/2018.3</tt> et <tt>openmpi/3.1.2</tt> auront été chargés.
Notre nomenclature de modules sera employée pour installer localement votre recette qui sera utilisée dans la hiérarchie des modules. Par exemple, si la recette utilise la chaîne de compilation <tt>iompi,2018.3</tt>, le module sera disponible après que les modules <tt>intel/2018.3</tt> et <tt>openmpi/3.1.2</tt> auront été chargés.
</div>


<div class="mw-translate-fuzzy">
==== <tt>LMOD_SYSTEM_DEFAULT_MODULES</tt> ====
==== <tt>LMOD_SYSTEM_DEFAULT_MODULES</tt> ====
Cette variable identifie les modules à charger par défaut. Si elle n’est pas définie, notre environnement charge par défaut le module <tt>StdEnv</tt> qui à son tour charge par défaut une version du compilateur Intel ainsi qu’une version OpenMPI.
Cette variable identifie les modules à charger par défaut. Si elle n’est pas définie, notre environnement charge par défaut le module <tt>StdEnv</tt> qui à son tour charge par défaut une version du compilateur Intel ainsi qu’une version OpenMPI.
</div>


<div class="mw-translate-fuzzy">
==== <tt>MODULERCFILE</tt> ====
==== <tt>MODULERCFILE</tt> ====
Cette variable est utilisée par Lmod pour définir la version par défaut des modules et alias. Vous pouvez définir votre propre fichier <tt>modulerc</tt> et l'ajouter à <tt>MODULERCFILE</tt>. Ceci aura préséance sur ce qui est défini dans notre environnement.
Cette variable est utilisée par Lmod pour définir la version par défaut des modules et alias. Vous pouvez définir votre propre fichier <tt>modulerc</tt> et l'ajouter à <tt>MODULERCFILE</tt>. Ceci aura préséance sur ce qui est défini dans notre environnement.
</div>


===Chemin des fichiers===
===Chemin des fichiers===
Notre environnement logiciel est conçu pour dépendre le moins possible du système d’exploitation hôte; cependant, il doit reconnaître certains chemins afin de faciliter les interactions avec les outils qui y sont installés.  
Notre environnement logiciel est conçu pour dépendre le moins possible du système d’exploitation hôte; cependant, il doit reconnaître certains chemins afin de faciliter les interactions avec les outils qui y sont installés.  


<div class="mw-translate-fuzzy">
==== <tt>/opt/software/modulefiles</tt> ====
==== <tt>/opt/software/modulefiles</tt> ====
S’il existe, ce chemin est automatiquement ajouté au <tt>MODULEPATH</tt> par défaut. Ceci permet l’utilisation de notre environnement en conservant les modules installés localement.  
S’il existe, ce chemin est automatiquement ajouté au <tt>MODULEPATH</tt> par défaut. Ceci permet l’utilisation de notre environnement en conservant les modules installés localement.
</div>


<div class="mw-translate-fuzzy">
==== <tt>$HOME/modulefiles</tt> ====
==== <tt>$HOME/modulefiles</tt> ====
S’il existe, ce chemin est automatiquement ajouté au MODULEPATH par défaut. Ceci permet l’utilisation de notre environnement en permettant l’installation de modules dans les répertoires <tt>/home</tt>.
S’il existe, ce chemin est automatiquement ajouté au MODULEPATH par défaut. Ceci permet l’utilisation de notre environnement en permettant l’installation de modules dans les répertoires <tt>/home</tt>.
</div>


<div class="mw-translate-fuzzy">
==== <tt>/opt/software/slurm/bin</tt>, <tt>/opt/software/bin</tt>, <tt>/opt/slurm/bin</tt> ====
==== <tt>/opt/software/slurm/bin</tt>, <tt>/opt/software/bin</tt>, <tt>/opt/slurm/bin</tt> ====
Ces chemins sont automatiquement ajoutés au <tt>PATH</tt> par défaut. Il permet l'ajout de votre exécutable dans le chemin de recherche.
Ces chemins sont automatiquement ajoutés au <tt>PATH</tt> par défaut. Il permet l'ajout de votre exécutable dans le chemin de recherche.
</div>


== Installation locale de logiciels ==
== Installation locale de logiciels ==
Depuis juin 2020, il est possible d'installer des modules additionnels sur votre grappe de calcul; ces modules seront par la suite reconnus par notre hiérarchie centrale.  Pour plus d'information, voyez la [https://github.com/ComputeCanada/software-stack/issues/11 discussion et l'implémentation à ce sujet].  
Depuis juin 2020, il est possible d'installer des modules additionnels sur votre grappe de calcul; ces modules seront par la suite reconnus par notre hiérarchie centrale.  Pour plus d'information, voyez la [https://github.com/ComputeCanada/software-stack/issues/11 discussion et l'implémentation à ce sujet].  


<div class="mw-translate-fuzzy">
Pour installer des modules additionnels, identifiez d'abord un chemin où installer les logiciels, par exemple <tt>/opt/software/easybuild</tt>. Assurez-vous que ce dossier existe. Exportez ensuite la variable d'environnement <tt>RSNT_LOCAL_MODULEPATHS</tt> :  
Pour installer des modules additionnels, identifiez d'abord un chemin où installer les logiciels, par exemple <tt>/opt/software/easybuild</tt>. Assurez-vous que ce dossier existe. Exportez ensuite la variable d'environnement <tt>RSNT_LOCAL_MODULEPATHS</tt> :  
{{Command|export RSNT_LOCAL_MODULEPATHS{{=}}/opt/software/easybuild/modules}}
{{Command|export RSNT_LOCAL_MODULEPATHS{{=}}/opt/software/easybuild/modules}}
</div>


Si vous voulez que vos utilisateurs puissent  trouver cette branche, nous vous recommandons de définir cette variable d'environnement dans le profil commun de la grappe. Installez ensuite les paquets logiciels que vous voulez avec EasyBuild :  
Si vous voulez que vos utilisateurs puissent  trouver cette branche, nous vous recommandons de définir cette variable d'environnement dans le profil commun de la grappe. Installez ensuite les paquets logiciels que vous voulez avec EasyBuild :  
Line 172: Line 218:
Les logiciels seront installés localement selon notre hiérarchie de nomenclature de modules. Ils seront automatiquement présentés aux utilisateurs quand ils chargent notre compilateur, MPI et CUDA.
Les logiciels seront installés localement selon notre hiérarchie de nomenclature de modules. Ils seront automatiquement présentés aux utilisateurs quand ils chargent notre compilateur, MPI et CUDA.


<div class="mw-translate-fuzzy">
=Mises en garde=
=Mises en garde=
==Utilisation de l’environnement logiciel par un administrateur==
==Utilisation de l’environnement logiciel par un administrateur==
Line 177: Line 224:


Si vous effectuez des opérations de système avec des privilèges ou des opérations en rapport avec CVMFS, [[Accessing_CVMFS/fr#Activer_notre_environnement_dans_votre_session|assurez-vous]] que votre session ''ne dépend pas de l’environnement logiciel''. Par exemple, si vous faites la mise à jour de CVMFS avec YUM pendant que votre session utilise un module Python chargé à partir de CVMFS, YUM pourrait être exécuté en utilisant ce même module et en perdre l’accès par la mise à jour qui serait alors bloquée. De même, si votre environnement dépend de CVMFS et que vous reconfigurez CVMFS de façon à ce que l'accès à CVMFS soit temporairement interrompu, votre session pourrait nuire aux opérations de CVMFS ou être suspendue. Tenant compte de ceci, la mise à jour ou la reconfiguration de CVMFS peut se faire sans interruption de service dans la plupart des cas, car l'opération réussirait en raison de l'absence d'une dépendance circulaire.
Si vous effectuez des opérations de système avec des privilèges ou des opérations en rapport avec CVMFS, [[Accessing_CVMFS/fr#Activer_notre_environnement_dans_votre_session|assurez-vous]] que votre session ''ne dépend pas de l’environnement logiciel''. Par exemple, si vous faites la mise à jour de CVMFS avec YUM pendant que votre session utilise un module Python chargé à partir de CVMFS, YUM pourrait être exécuté en utilisant ce même module et en perdre l’accès par la mise à jour qui serait alors bloquée. De même, si votre environnement dépend de CVMFS et que vous reconfigurez CVMFS de façon à ce que l'accès à CVMFS soit temporairement interrompu, votre session pourrait nuire aux opérations de CVMFS ou être suspendue. Tenant compte de ceci, la mise à jour ou la reconfiguration de CVMFS peut se faire sans interruption de service dans la plupart des cas, car l'opération réussirait en raison de l'absence d'une dépendance circulaire.
</div>


== Paquets logiciels non disponibles ==
== Paquets logiciels non disponibles ==
Nous mettons plusieurs logiciels du commerce à la disposition des utilisateurs, sous condition de la licence de ces produits. Ces logiciels ne sont pas disponibles ailleurs qu’avec nos ressources et vous n’y aurez pas droit d’accès même si vous suivez les directives pour installer et configurer CVMFS. Prenons l’exemple des compilateurs d’Intel et du Portland Group : si les modules pour ces compilateurs sont disponibles, vous n’avez accès qu’aux parties redistribuables, habituellement les objets partagés. Vous pourrez exécuter des applications compilées, mais il ne vous sera pas possible de compiler de nouvelles applications.
Nous mettons plusieurs logiciels du commerce à la disposition des utilisateurs, sous condition de la licence de ces produits. Ces logiciels ne sont pas disponibles ailleurs qu’avec nos ressources et vous n’y aurez pas droit d’accès même si vous suivez les directives pour installer et configurer CVMFS. Prenons l’exemple des compilateurs d’Intel et du Portland Group : si les modules pour ces compilateurs sont disponibles, vous n’avez accès qu’aux parties redistribuables, habituellement les objets partagés. Vous pourrez exécuter des applications compilées, mais il ne vous sera pas possible de compiler de nouvelles applications.


<div class="mw-translate-fuzzy">
== Localisation de CUDA  ==
== Localisation de CUDA  ==
Dans le cas des paquets CUDA, notre environnement logiciel utilise des bibliothèques de pilotes installées dans  <tt>/usr/lib64/nvidia</tt>. Cependant, avec certaines plateformes, les récents pilotes NVidia installent les bibliothèques  <tt>/usr/lib64</tt> dans <tt>LD_LIBRARY_PATH</tt> sans emprunter de toutes les bibliothèques du système, ce qui pourrait créer des incompatibilités avec notre environnement logiciel; nous vous recommandons donc de créer des liens symboliques dans <tt>/usr/lib64/nvidia</tt> pour rediriger vers les bibliothèques NVidia qui sont installées. Le script suivant sert à installer les pilotes et créer les liens symboliques (remplacez le numéro de version par celui que vous désirez).  
Dans le cas des paquets CUDA, notre environnement logiciel utilise des bibliothèques de pilotes installées dans  <tt>/usr/lib64/nvidia</tt>. Cependant, avec certaines plateformes, les récents pilotes NVidia installent les bibliothèques  <tt>/usr/lib64</tt> dans <tt>LD_LIBRARY_PATH</tt> sans emprunter de toutes les bibliothèques du système, ce qui pourrait créer des incompatibilités avec notre environnement logiciel; nous vous recommandons donc de créer des liens symboliques dans <tt>/usr/lib64/nvidia</tt> pour rediriger vers les bibliothèques NVidia qui sont installées. Le script suivant sert à installer les pilotes et créer les liens symboliques (remplacez le numéro de version par celui que vous désirez).
</div>


{{File|name=script.sh|contents=
{{File|name=script.sh|contents=
Line 194: Line 244:
}}
}}


<div class="mw-translate-fuzzy">
== <tt>LD_LIBRARY_PATH</tt> ==
== <tt>LD_LIBRARY_PATH</tt> ==
Notre environnement est conçu  pour utiliser [https://en.wikipedia.org/wiki/Rpath RUNPATH]. Il n’est pas recommandé de définir <tt>LD_LIBRARY_PATH</tt> puisque l'environnement  [https://gms.tf/ld_library_path-considered-harmful.html pourrait causer des problèmes].  
Notre environnement est conçu  pour utiliser [https://en.wikipedia.org/wiki/Rpath RUNPATH]. Il n’est pas recommandé de définir <tt>LD_LIBRARY_PATH</tt> puisque l'environnement  [https://gms.tf/ld_library_path-considered-harmful.html pourrait causer des problèmes].
</div>


<div class="mw-translate-fuzzy">
== Bibliothèques introuvables ==
== Bibliothèques introuvables ==
Puisque nous ne définissons pas <tt>LD_LIBRARY_PATH</tt> et que nos bibliothèques ne sont pas installées dans des localisations Linux par défaut, les paquets binaires comme Anaconda ont souvent de la difficulté à trouver les bibliothèques dont ils ont besoin. Consultez notre [[Installing_software_in_your_home_directory/fr#Installer_des_paquets_binaires|documentation sur l’installation de paquets binaires ]].
Puisque nous ne définissons pas <tt>LD_LIBRARY_PATH</tt> et que nos bibliothèques ne sont pas installées dans des localisations Linux par défaut, les paquets binaires comme Anaconda ont souvent de la difficulté à trouver les bibliothèques dont ils ont besoin. Consultez notre [[Installing_software_in_your_home_directory/fr#Installer_des_paquets_binaires|documentation sur l’installation de paquets binaires ]].
</div>


<div class="mw-translate-fuzzy">
== dbus ==
== dbus ==
Pour certaines applications, <tt>dbus</tt> doit être installé localement, sur le système d’exploitation hôte.
Pour certaines applications, <tt>dbus</tt> doit être installé localement, sur le système d’exploitation hôte.
</div>
38,760

edits