Plan du cours
Souveraineté des systèmes déclaratifs
- Pourquoi la gestion de configuration impérative entraîne une dérive et des échecs d'audit.
- Le magasin Nix, les dérivations et les fonctions pures pour la construction du système.
- NixOS par rapport aux distributions traditionnelles : immutabilité et mises à niveau atomiques.
Installation et bases
- Installation de NixOS à partir de l'ISO avec partitionnement manuel et automatisé.
- Le langage Nix : ensembles, fonctions et imports.
- Structure de configuration.nix et système de modules.
- Recherche de paquets et d'options avec nix search et les pages de manuel.
Gestion des paquets et des services
- Installation de paquets au niveau du système ou par utilisateur avec nix-env.
- Activation déclarative des services systemd.
- Overrides de paquets personnalisés et overlays.
- Nettoyage automatique (garbage collection) et optimisation du magasin.
Environnements reproductibles
- nix-shell et shell.nix pour le développement ad hoc.
- Nix Flakes pour la reproductibilité basée sur les fichiers de verrouillage.
- devenv et devshell pour l'intégration des équipes.
- Intégration avec Direnv pour le changement automatique d'environnement.
Déploiement à distance
- NixOps et Colmena pour la gestion de flottes de serveurs.
- Compilation à distance et configuration du cache binaire.
- Gestion des secrets avec agenix et sops-nix.
- Tests de déploiement avec des machines virtuelles et des conteneurs NixOS.
Mises à jour et retours arrière du système
- Modes switch, test et boot de nixos-rebuild.
- Retour arrière atomique vers les générations précédentes.
- Gestion des canaux et figement des versions pour des mises à jour reproductibles.
- Récupération d'urgence et configuration du chargeur d'amorçage.
Sujets avancés
- Conteneurs NixOS et virtualisation légère.
- Compilation croisée et constructions 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
- Une expérience avancée en administration système Linux et en scriptage shell.
- Une compréhension fondamentale des concepts de la programmation fonctionnelle.
- Une familiarité avec Git et les workflows de configuration contrôlés par des versions.
Public visé
- Les ingénieurs en infrastructure recherchant des systèmes reproductibles et déclaratifs.
- Les équipes DevOps souhaitant remplacer Ansible, Puppet ou Chef par Nix.
- Les organisations exigeant des déploiements bit à bit reproductibles.
Nos clients témoignent (4)
formateur expérimenté
Monika Biskupska - Osrodek Przetwarzania Informacji - Panstwowy Instytut Badawczy
Formation - Kubernetes Security Fundamentals (LFS460)
Traduction automatique
le formateur a une connaissance pratique
- Osrodek Przetwarzania Informacji - Panstwowy Instytut Badawczy
Formation - Kubernetes for App Developers (LFD459)
Traduction automatique
Une excellente solution virtuelle, facile à utiliser (DESKTOP).
HEITOR GAVA - Motorola Solutions Ltda
Formation - Quick Introduction to Hypervisor and KVM
Traduction automatique
Tyler est très compétent et a partagé son expérience précieuse en administration de Lustre avec nous.
Zhenping Liu
Formation - Lustre File System for Admins
Traduction automatique