Merci d'avoir envoyé votre demande ! Un membre de notre équipe vous contactera sous peu.
Merci d'avoir envoyé votre réservation ! Un membre de notre équipe vous contactera sous peu.
Plan du cours
Souveraineté déclarative du système
- Pourquoi la gestion de configuration impérative conduit à une dérive des configurations et à des échecs d'audit.
- Le magasin Nix (Nix store), les dérivations et l'utilisation de fonctions pures pour la construction du système.
- NixOS vs distributions traditionnelles : immutabilité et mises à niveau atomiques.
Installation et bases
- Installation de NixOS depuis une image ISO avec partitionnement manuel ou automatisé.
- Le langage Nix : ensembles, fonctions et imports.
- Structure de configuration.nix et système de modules.
- Recherche de paquets et d'options à l'aide de nix search et des pages de manuel.
Gestion des paquets et des services
- Installation des paquets à l'échelle du système versus par utilisateur avec nix-env.
- Activation déclarative des services systemd.
- Surcharges de paquets personnalisées et overlays.
Environnements reproductibles
- nix-shell et shell.nix pour le développement ad hoc.
- Nix Flakes pour la reproductibilité basée sur des fichiers de verrouillage (lockfiles).
- devenv et devshell pour l'intégration rapide des nouvelles équipes.
- Intégration de Direnv pour le changement automatique d'environnement.
Déploiement à distance
- NixOps et Colmena pour la gestion du parc de machines.
- Construction à distance et configuration du cache binaire.
- Gestion des secrets avec agenix et sops-nix.
- Tests de déploiement avec les machines virtuelles NixOS et les conteneurs.
Mises à jour et retours arrière du système
- Utilisation des modes switch, test et boot de nixos-rebuild.
- Retour arrière atomique aux générations précédentes.
- Gestion des canaux et verrouillage (pinning) pour des mises à jour reproductibles.
- Récupération d'urgence et configuration du chargeur de démarrage.
Sujets avancés
- Conteneurs NixOS et virtualisation légère.
- Cross-compilation et builds pour ARM.
- Génération d'images ISO personnalisées et d'images de démarrage réseau (netboot).
- Intégration continue avec Hydra pour les paquets Nix.
Pré requis
- Expérience avancée en administration des systèmes Linux et en scriptage de shell.
- Bonne compréhension des concepts de programmation fonctionnelle.
- Familiarité avec Git et les workflows de configuration gérés par un système de contrôle de version.
Public cible
- Ingénieurs en infrastructure recherchant des systèmes déclaratifs et reproductibles.
- Équipes DevOps souhaitant remplacer Ansible, Puppet ou Chef par Nix.
- Organisations exigeant des déploiements rigoureusement reproductibles bit à bit.
21 Heures