Logiciels pour usagers sur les serveurs : Différence entre versions

Un article de Informaticiens département des sciences de la Terre et l'atmosphère
Aller à: navigation, charcher
m (python)
m (python)
Ligne 78: Ligne 78:
 
[https://www.spyder-ide.org spyder (environnement de développement python)]
 
[https://www.spyder-ide.org spyder (environnement de développement python)]
  
jupiter, notebook et "browser" sur le serveur (PAS RECOMMANDE)
+
jupiter, notebook et "browser" sur le serveur ('''NON RECOMMANDÉ''')
 
  module load python3    # ou python2
 
  module load python3    # ou python2
 
  module load utils/web  # pour un firefox plus jeune
 
  module load utils/web  # pour un firefox plus jeune
Ligne 84: Ligne 84:
 
  jupyter notebook
 
  jupyter notebook
  
jupyter à distance, notebook sur le serveur mais "browser" local sur poste de travail (RECOMMANDE)
+
jupyter à distance, notebook sur le serveur mais "browser" local sur poste de travail à l'UQÀM ou ailleurs ('''RECOMMANDÉ''')
 
   
 
   
  # sur mon poste de travail (fenêtre 1)
+
  # à partir de mon poste de travail a l'UQÀM (fenêtre 1)
 
   
 
   
  ssh un_serveur # snow/glacier/...
+
  ssh le_serveur # snow/glacier/...
 
   
 
   
 
  # sur le serveur :
 
  # sur le serveur :
 
   
 
   
  module load python2
+
  module load python3    # ou python2
 
  source activate jupyter
 
  source activate jupyter
 
  jupyter notebook --no-browser  # pas de démarrage de fureteur (browser) sur le serveur
 
  jupyter notebook --no-browser  # pas de démarrage de fureteur (browser) sur le serveur
 
   
 
   
  # il me revient une ligne du genre
+
  # il me revient une ligne du genre, qui va servir plus bas
 
  http://localhost:8891/?token=d2739f7208d5085028c71437218cee328858aac3074c7b6e
 
  http://localhost:8891/?token=d2739f7208d5085028c71437218cee328858aac3074c7b6e
 
   
 
   
  # sur mon poste de travail (fenêtre 2)
+
  # à partir de mon poste de travail a l'UQÀM (fenêtre 2)
 +
 +
ssh -L8891:localhost:8891 le_serveur  # remplacer 8891 par le chiffre qui suit localhost dans http://.....
 +
 +
# à partir d'un ordinateur à l'extérieur de l'UQÀM (fenêtre 2) ( remplacer 8891 par le chiffre qui suit localhost dans http://.....)
 +
ssh -L8891:localhost:8891 user@st2.sca.uqam.ca  # replacer user par mon nom d'usager sur les serveurs de l'UQÀM
 +
ssh -L8891:localhost:8891 le_serveur
 
   
 
   
ssh -L8891:localhost:8891 un_serveur  # remplacer 8891 par le chiffre qui suit localhost dans http://.....
 
 
   
 
   
  # prendre un nouvel onglet dans le "browser" (firefox/chrome/...)
+
  # prendre un nouvel onglet dans le "browser" local (firefox/chrome/...)
 
  # aller a http://localhost:8891/?token=d2739f7208d5085028c71437218cee328858aac3074c7b6e
 
  # aller a http://localhost:8891/?token=d2739f7208d5085028c71437218cee328858aac3074c7b6e
 
  # et voila ! je travaille à distance sur le serveur comme si tout se passait sur le serveur
 
  # et voila ! je travaille à distance sur le serveur comme si tout se passait sur le serveur

Version depuis le 6 de février 2020 à 18:25

systèmes supportés / supported systems

snow zwack robert glacier (et beaucoup de postes de travail Linux)

setup

suggestion

touch ${HOME}/.no_admin_xtra               # for a consistent environment across machines
mv ${HOME}/.bashrc ${HOME}/.bashrc.old
mv ${HOME}/.bash_profile ${HOME}/.bash_profile.old

.profile (base)

suggestion (bash)

type module 2>/dev/null 1>/dev/null || . /etc/profile
module load setup/ECssm_002

les modules d'environnement / GNU environment modules

GNU environment modules

environment modules documentation (3.2 on servers, 4.1 on workstations)

utilitaires variés

module load utils/misc
ccmake, cmake
patchelf

netcdf

outils netcdf

module load utils/cdo
ou
module load utils/ncview
ou
module load utils/netcdf

python

chargement:

module load python2/miniconda2            # conda + python 2.7 /sca/compilers_and_tools/python/miniconda2
module load python3/miniconda3            # conda + python 3.7 /sca/compilers_and_tools/python/miniconda3

disponible avec python2

source activate jupyter        # jupyter notebooks
source activate mysql2         # mysql-connector
source activate pynngl2        # NCAR Graphics (PyNGL et NCL)
source activate spyder         # environnement spyder
source activate soup           # beautifulsoup
module load development/python-rpn   # interface python pour rmnlib

disponible avec python3

source activate jupyter        # jupyter notebooks
source activate jupyter_sql    # jupyter notebooks + mysql-connector
source activate spyder         # environnement spyder
source activate mysql3         # mysql-connector
source activate ldap           # ldap utilities + mysql-connector
source activate pynngl3        # NCAR Graphics (PyNGL et NCL)
source activate magics         # magics (ECMWF)
source activate soup           # beautifulsoup
module load development/python-rpn   # interface python pour rmnlib

déchargement d'un environnement

conda deactivate               # sortir d'un environnement

références utiles

NCAR graphics (ncl)

NCAR graphics (PyNGL)

jupyter (notebook)

beautifulsoup

Magics(ECMWF)

spyder (environnement de développement python)

jupiter, notebook et "browser" sur le serveur (NON RECOMMANDÉ)

module load python3    # ou python2
module load utils/web  # pour un firefox plus jeune
source activate jupyter
jupyter notebook

jupyter à distance, notebook sur le serveur mais "browser" local sur poste de travail à l'UQÀM ou ailleurs (RECOMMANDÉ)

# à partir de mon poste de travail a l'UQÀM (fenêtre 1)

ssh le_serveur # snow/glacier/...

# sur le serveur :

module load python3    # ou python2
source activate jupyter
jupyter notebook --no-browser   # pas de démarrage de fureteur (browser) sur le serveur

# il me revient une ligne du genre, qui va servir plus bas
http://localhost:8891/?token=d2739f7208d5085028c71437218cee328858aac3074c7b6e

# à partir de mon poste de travail a l'UQÀM (fenêtre 2)

ssh -L8891:localhost:8891 le_serveur  # remplacer 8891 par le chiffre qui suit localhost dans http://.....

# à partir d'un ordinateur à l'extérieur de l'UQÀM (fenêtre 2) ( remplacer 8891 par le chiffre qui suit localhost dans http://.....)
ssh -L8891:localhost:8891 user@st2.sca.uqam.ca  # replacer user par mon nom d'usager sur les serveurs de l'UQÀM
ssh -L8891:localhost:8891 le_serveur


# prendre un nouvel onglet dans le "browser" local (firefox/chrome/...)
# aller a http://localhost:8891/?token=d2739f7208d5085028c71437218cee328858aac3074c7b6e
# et voila ! je travaille à distance sur le serveur comme si tout se passait sur le serveur

python-rpn

- il faut charger python 2 ou python 3 avant de charger development/python-rpn
  (message d'erreur sinon)
- en principe, python-rpn est compatible avec python 2.7 ou python 3
- il est recommandé d'activer l'environnement jupyter (ou autre) pour pouvoir utiliser python-rpn car il manque
  de nombreux "packages" utilisés par python-rpn dans la base python

compilateurs et OpenMPI / compilers and OpenMPI

Intel (icc/ifort), GNU (gcc/gfortran), llvm (clang/flang)

module load compiler/intel-16           # icc/ifort version 16
module load openmpi/2.1.5-intel-16.0.1  # + OpenMPI 2.1
module load compiler/intel-18           # icc/ifort version 18
module load openmpi/2.1.5-intel-18.0.5  # + OpenMPI 2.1
module load compiler/intel-19           # icc/ifort version 19
module load openmpi/2.1.5-intel-19.0    # + OpenMPI 2.1

module load compiler/gcc-7.3            # gcc/gfortran
module load openmpi/2.1.5-gcc-7.3       # + OpenMPI 2.1

module load compiler/llvm6              # clang/flang version 6