Contattataci

Struttura del corso

Sovranità del sistema dichiarativo

  • Perché la gestione della configurazione imperativa porta a deriva e a fallimenti nelle verifiche.
  • Archiviazione Nix (Nix store), derivazioni e funzioni pure per la costruzione del sistema.
  • NixOS rispetto alle distribuzioni tradizionali: immutabilità e aggiornamenti atomici.

Installazione e nozioni di base

  • Installazione di NixOS da ISO con partizionamento manuale e automatizzato.
  • Linguaggio Nix: insiemi, funzioni e importazioni.
  • Struttura di configuration.nix e sistema dei moduli.
  • Ricerca di pacchetti e opzioni con nix search e pagine man.

Gestione dei pacchetti e dei servizi

  • Installazione di pacchetti a livello di sistema rispetto per utente con nix-env.
  • Abilitazione dichiarativa dei servizi systemd.
  • Override personalizzati di pacchetti e sovrapposizioni (overlays).
  • Pulizia dei rifiuti (garbage collection) e ottimizzazione dello store.

Ambienti riproducibili

  • nix-shell e shell.nix per lo sviluppo ad hoc.
  • Nix Flakes per la riproducibilità basata su file di blocco (lockfile).
  • devenv e devshell per l'onboarding dei team.
  • Integrazione con Direnv per il cambio automatico dell'ambiente.

Distribuzione remota

  • NixOps e Colmena per la gestione di flotte di macchine.
  • Compilazione remota e configurazione delle cache binarie.
  • Gestione dei segreti con agenix e sops-nix.
  • Test di distribuzione con macchine virtuali NixOS e contenitori.

Aggiornamenti e rollback del sistema

  • Modalità switch, test e boot di nixos-rebuild.
  • Rollback atomico alle generazioni precedenti.
  • Gestione dei canali e vincolo (pinning) per aggiornamenti riproducibili.
  • Recovery di emergenza e configurazione del bootloader.

Argomenti avanzati

  • Contenitori NixOS e virtualizzazione leggera.
  • Compilazione incrociata (cross-compilation) e build per ARM.
  • Generazione di ISO personalizzate e immagini di avvio di rete (netboot).
  • Integrazione continua di Hydra per i pacchetti Nix.

Requisiti

  • Esperienza avanzata nell'amministrazione di sistemi Linux e nella scrittura di script per shell.
  • Conoscenza fondamentale dei concetti della programmazione funzionale.
  • Familiarità con Git e con flussi di lavoro di configurazione gestiti tramite controllo di versione.

Destinatari

  • Ingegneri dell'infrastruttura che cercano sistemi dichiarativi e riproducibili.
  • Team DevOps che intendono sostituire Ansible, Puppet o Chef con Nix.
  • Organizzazioni che richiedono distribuzioni esattamente riproducibili byte per byte.
 21 ore

Numero di Partecipanti


Prezzo per partecipante

Recensioni (4)

Corsi in Arrivo

Categorie relative