Aller au contenu principal

Ignition

Overview

Ignition est l’outil de provisioning bas niveau utilisé notamment par Fedora CoreOS et certains dérivés. Il intervient très tôt dans le processus de boot pour partitionner les disques, configurer les systèmes de fichiers et écrire des fichiers de configuration.

La configuration d’Ignition se fait via un fichier JSON décrivant l’état souhaité du système (disques, fichiers, utilisateurs, unités systemd, etc.). Ignition est conçu pour être idempotent au premier démarrage : une fois la configuration appliquée, il ne réintervient plus sur les boots suivants.

Il est particulièrement adapté aux environnements immutables et orientés conteneurs, où les machines sont reconstruites fréquemment à partir d'images.


Informations essentielles

PropriétéValeur
Site officielhttps://coreos.github.io/ignition/
LicenceApache 2.0
NationalitéInternational (projet open source)
TypeProvisioning bas niveau, bootstrapping système
DéploiementFedora CoreOS, CoreOS Container Linux (legacy)
DifficultéIntermédiaire à avancé
TechnologiesGo, JSON, intégration avec l’OS

TL;DR

Ignition est adapté si tu déploies des systèmes de type Fedora CoreOS dans une logique d’infrastructure immuable. Il configure le système dès le premier boot, notamment le stockage, les fichiers critiques et les unités systemd. L’outil est pensé pour être déterministe et appliqué une seule fois, ce qui s’intègre bien avec des flux de rebuild fréquents. En revanche, il ne remplace pas un outil de configuration management continu : il se concentre sur le provisioning initial. La configuration en JSON et le couplage fort à l’OS demandent une bonne compréhension de la plateforme ciblée.


Compatibilité et intégrations

  • Systèmes : Fedora CoreOS et environnements compatibles
  • Intégration avec des mécanismes de provisioning cloud ou bare metal
  • Peut être combiné avec des outils de configuration de plus haut niveau après le boot
  • Utilisé dans des scénarios Kubernetes, OpenShift et plateformes conteneurisées

Avantages

  • Provisioning très précoce dans le processus de boot
  • Contrôle fin sur le stockage, les fichiers et les services système
  • Conçu pour les environnements immuables et reconstruits fréquemment
  • Intégration étroite avec Fedora CoreOS

Limites

  • Spécifique à certains systèmes (notamment Fedora CoreOS)
  • Fichiers de configuration en JSON parfois verbeux
  • Pas de gestion continue de la configuration après le premier boot

Ressources