Plan du cours
Souveraineté déclarative du système
- Pourquoi la gestion de configuration impérative conduit à une dérive et à des échecs d'audit.
- Magasin Nix (Nix store), dérivations et fonctions pures pour la construction du système.
- NixOS par rapport aux distributions traditionnelles : immutabilité et mises à jour atomiques.
Installation et bases
- Installation de NixOS à partir d'un 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 des paquets à l'échelle du système versus par utilisateur avec nix-env.
- Activation des services systemd de manière déclarative.
- Remplacements de paquets personnalisés et superpositions (overlays).
- Nettoyage du stockage (garbage collection) et optimisation du magasin.
Environnements reproductibles
- nix-shell et shell.nix pour le développement ad hoc.
- Nix Flakes pour une reproductibilité basée sur les fichiers de verrouillage (lockfiles).
- devenv et devshell pour l'intégration des membres d'une équipe.
- Intégration de Direnv pour le changement automatique d'environnement.
Déploiement distant
- NixOps et Colmena pour la gestion de flotte.
- Construction à 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 aux générations précédentes.
- Gestion des canaux et figage des versions pour des mises à jour reproductibles.
- Récupération d'urgence et configuration du chargeur d'amorçage (bootloader).
Sujets avancés
- Conteneurs NixOS et virtualisation légère.
- Compilation croisée et constructions pour ARM.
- Génération d'ISO personnalisés et d'images de boot réseau (netboot).
- Intégration continue Hydra pour les paquets Nix.
Pré requis
- Expérience avancée en administration de systèmes Linux et en scripting shell.
- Compréhension fondamentale des concepts de la programmation fonctionnelle.
- Familiarité avec Git et les flux de travail de configuration sous contrôle de version.
Public cible
- Ingénieurs en infrastructure recherchant des systèmes reproductibles et déclaratifs.
- Équipes DevOps souhaitant remplacer Ansible, Puppet ou Chef par Nix.
- Organisations nécessitant des déploiements reproductibles bit à bit.
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