Prenez contact avec nous

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.
  • Le magasin Nix (Nix store), les dérivation (derivations) et les fonctions pures pour la construction du système.
  • NixOS vs distributions traditionnelles : immutabilité et mises à jour atomiques.

Installation et bases

  • Installation de NixOS depuis l'image 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 versus par utilisateur via nix-env.
  • Activation déclarative des services systemd.
  • Remplacements personnalisés de paquets et overlays.
  • Courbage (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.
  • devenv et devshell pour l'intégration des nouvelles équipes.
  • Intégration de Direnv pour la commutation automatique d'environnement.

Déploiement à distance

  • NixOps et Colmena pour la gestion de flotte.
  • Compilation à distance et configuration du cache binaire.
  • Gestion des secrets avec agenix et sops-nix.
  • Tests de déploiement avec les machines virtuelles et les conteneurs NixOS.

Mises à jour système et retours arrière

  • _modes switch, test et boot de nixos-rebuild.
  • Retour arrière atomique aux générations précédentes.
  • Gestion des canaux et épingle (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 ARM.
  • Génération d'images ISO personnalisées et netboot.
  • Intégration continue Hydra pour les paquets Nix.

Pré requis

  • Expérience avancée en administration système Linux et en scripting shell.
  • Compréhension fondamentale des concepts de la programmation fonctionnelle.
  • Maîtrise de Git et des flux de travail de configuration basés sur le contrôle de version.

Audience cible

  • Ingénieurs infrastructure recherchant des systèmes reproductibles et déclaratifs.
  • Équipes DevOps souhaitant remplacer Ansible, Puppet ou Chef par Nix.
  • Organisations exigeant des déploiements reproductibles bit à bit.
 21 Heures

Nombre de participants


Prix par participant

Cours à venir

Catégories Similaires