3 publics, 3 formations, un tronc commun, une infinité d'échanges

La formation se compose d'un tronc commun pour tous les participants et de modules spécifiques et dédiés à chaque formation. Attention, le programme des formations peut évoluer. En fonction des niveaux des groupes, l'équipe pédagogique se réserve le droit de réduire la quantité des apprentissages afin d'en assurer la qualité : "il faut mieux en apprendre moins, mais bien".

Lundi 20/03

Mardi 21/03

Mercredi 22/03

Jeudi 23/03

Vendredi 24/03

 

Matin :

9h :
Parcours parallèles : Théorie + ateliers

12h : Plénière : Introduction au stockage

Matin :

9h :
Parcours parallèles : Théorie + ateliers

12h : Plénière : Gestion des données

Matin :

9h :
Parcours parallèles : Théorie + ateliers

12h : Plénière : reproductibilité et calcul

Matin :

9h : Accompagnement individuel : cas d’usages réels des participants

Après-midi : 14h : plénière :

Introduction au calcul scientifique

Introduction au cloud

Introduction à Kubernetes

16h30 :
Parcours parallèles : prise en main de l’environnement TP

Après-midi :

14h15 : Parcours parallèles : Théorie + ateliers

Après-midi :

14h15 : Parcours parallèles : Théorie + ateliers

Après-midi :

14h15 : Accompagnement individuel : cas d’usages réels des participants

(Attention pour Kubernetes, la formation se prolonge le jeudi après-midi)

 

 

 

 

Formation Calcul :

Public : chercheurs et ITA

Pré-requis : initiation à Linux et aux lignes de commandes simples. Une vidéo et des cours vous seront envoyés, une mise à niveau sera effectuée le lundi en fin d'après-midi

 

Objectifs pédagogiques formation calcul :

Introduction

  • comprendre ce qu'est le calcul
  • comprendre l'intérêt et quand utiliser un calculateur (cluster de calcul)

utiliser un cluster de calcul

  • se connecter
  • transférer et rapatrier des données
  • soumettre des calculs
    • mono-coeur
    • multi-coeurs
    • MPI
  • visualiser des données

Utiliser des codes déjà installés ou en installer

  • comprendre comment fonctionne un binaire
  • connaitre des environnements de gestion de binaires
  • connaitre un gestionnaire d'environnement
  • compiler un code simple
  • comment faire pour qu'un programme tourne sur différents Linux sans tout recompiler ?
    • introduction à la conteneurisation et Singularity
    • construire un conteneur Singularity

Déroulé formation calcul :

Lundi 16H-17H59:

Introduction à linux :

  • Cours : commandes de base, stdErr, stdOut, code de sortie, variables d'env, monitoring et jobs management, cheat sheet 45min
  • TP :
    • MobaXterm, SSH, Filezilla
    • lancer un premier job
    • taper ses premières commandes (ou plus si affinité)

Mardi 9H-11H45

  • 9h-9h30 Tour de table  ~30min
  • 9h30 - 10h00- cours : l'ordonnanceur : slurm + différences entre les mesocentre (conditions d’accès, espaces disques, ordonnanceur) - 30min
  • 10h-10h20 Pause
  • 10h20-11H55 TP Linux suite et SLURM de base : srun sbatch squeue sinfo ... - 1H55
  • 5 min changement de salle

Mardi 12H-13H

  • 12h-13h Plénière : Stockage & Gestion des données

13h - 14h : déjeuner

 

Mardi après-midi  calcul avancé ordonnanceur , conda, mpi 

  • Cours
  • 14h-15h15 calcul avancé jobs array, gestion de la mémoire, OpenMP et MPI
  • Pause
  • 15h30-17h30 slurm avancé (ARRAY, slurm interactif pour le debug et dev, sacct)

Mercredi matin

  • 9h-10h30 : Singularity intro ( Jacques, Jérémy)
  • 10h30-10h45 : pause
  • 10h45 : 12h : TP 1ere partie (Jacques, Jérémy)

12h-13h Plénière reproductibilité et GUIX

13h - 14h : déjeuner

 

Mercredi après-midi

  • 14h- 14h45 modules, virtenv, conda, guix
  • 14h45 - 15h30 Git cours
  • 15h30 - 15h45 Pause
  • 15h45 - 17h15 Git TP
  • - publier son code, GIT, forge
    • Intro à git + TP
  • - VSCode+git 

 

Jeudi Matin

 

  • 09h -10h30 : TP Singularity 2nd partie avec CI/CD
  • 10h30-10h50 : pause
  • 10h50-12h00 :TP linux avancé (redirection, code de sortie, grep, script)

 

 

 

 

 

Formation Cloud Openstack

Public : adminsys/dev

Pré-requis : avoir des connaissances générales en informatique et en Linux

L'architecture d'OpenStack

  • Le projet, la fondation openstack.org
  • Rôle des différents services :
    • Nova, 
    • Cinder, 
    • Glance,  
    • Neutron, 
    • Keystone, 
    • Horizon, 
    • Heat

L’environnement utilisateur au quotidien

  • DevStack : faire tourner rapidement OpenStack pour tester
  • Utiliser OpenStack via la console Horizon et CLI (Command Line Interface)
  • Utilisation du Dashboard
  • Fonctionnalités avancées

La gestion des instances

  • Qu’est-ce qu’une instance pour Openstack ?
  • Flavors (modèle de CPU, RAM, disque)
  • Sécurité (Sécurity groups, keypairs)
  • Surveiller les cycles de vie des instances (monitoring)
  • Comment récréer ses instances (backup) ?
  • Et toute l’infrastructure ?
  • Backup des données seules (applicatives, logs)
  • Le réseau dans le Cloud (IP fixe, interfaces multiples, floating IP, etc)

Automatisation

  • Comment automatiser la gestion de l'infrastructure ?
  • En quoi consiste la création et la configuration des ressources ?
  • Orchestrer les ressources (Heat, Terraform)

TP

  • Découvrir le fonctionnement des APIs en effectuant des requêtes HTTP avec curl
  • Manipuler les ressources de son cloud à l’aide des outils CLI
  • Utiliser le dashboard OpenStack
  • Déployer une stack avec Heat/Terraform

 

 

Formation Kubernetes

Public : dev/adminsys

Pré-requis : avoir des connaissances générales en informatique et en Linux. Connaitre les conteneurs et Docker

Les bases
  ● Architecture globale
  ● Kubectl et commandes de bases
  ● Présentation du Control Plane
  ● Les ressources de Workload
  ● Travaux Pratiques

La communication
  ● Introduction au CNI
  ● Les différents types de Services
  ● DNS
  ● Routage et Ingress
  ● Travaux Pratiques

Le découplage de la configuration
  ● ConfigMaps
  ● Secrets
  ● ImagePullSecrets
  ● Travaux Pratiques

La persistance des données
  ● Introduction au CSI
  ● Provisionnement statique et dynamique
  ● Le StatefulSet
  ● Travaux Pratiques

Gestion des ressources
  ● Request / Limit
  ● LimitRange / ResourceQuota
  ● HorizontalPodAutoScaler
  ● Travaux Pratiques

Le placement
  ● Node Selector
  ● Taints & Tolerations / Affinity & AntiAffinity
  ● TopologySpreadConstraints
  ● Travaux Pratiques

Role-Based Access Control
  ● (Cluster)Role / (Cluster)RoleBinding
  ● User / Group / ServiceAccount
  ● Travaux Pratiques

Sécurité
  ● Network Policies / Security Context
  ● Pod Security Policies et remplaçants
  ● Travaux Pratiques

Helm
  ● Introduction et avantages
  ● Utilisation d’un chart