DevSecOps & Infrastructure as Code

Automatisation "Jacky's Dev"

De l'artisanat manuel au déploiement continu à grande échelle (Packer, OpenTofu, Ansible)

Voir le code source (GitHub) Lire le rapport de projet

Le Cas d'Étude : Sauver l'entreprise

L'entreprise "Jacky's Dev" faisait face à un problème critique partagé par beaucoup de structures : une équipe de développement performante, mais une mise en production lente, manuelle et propice aux erreurs humaines.

Notre mission en tant qu'équipe DevOps a été de remplacer ces pratiques "maison" par une véritable chaîne de déploiement continu et robuste, en adoptant l'approche Infrastructure as Code (IaC).


La Pipeline d'Automatisation (IaC)

Pour répondre à ces enjeux de fiabilité et de rapidité, nous avons conçu une pipeline découpée en trois strates fondamentales :

  • 1. Création de Golden Images (Packer) : Fini les installations manuelles d'OS. Nous avons automatisé la création d'images systèmes prêtes à l'emploi (Ubuntu 24.04 et AlmaLinux 10) pré-configurées avec Cloud-init et Kickstart.
  • 2. Provisionning Cloud (OpenTofu) : En alternative open-source à Terraform, nous avons utilisé OpenTofu pour instancier l'infrastructure réseau et les machines virtuelles de manière déclarative et reproductible.
  • 3. Configuration & Déploiement (Ansible) : C'est le cœur du système. Des playbooks Ansible complexes ont été rédigés pour installer Docker, paramétrer les bases de données et déployer nos applications de manière idempotente.

Résilience & Validation Continue (TDD)

Déployer vite, c'est bien. Déployer sans casser la production, c'est mieux. L'infrastructure a été pensée pour la Haute Disponibilité (HA) :

  • Équilibrage de charge : Mise en place d'un Loadbalancer pour répartir le trafic.
  • Réplication SQL : Implémentation de playbooks spécifiques (ha-db-replication.yml) pour garantir l'intégrité de la base de données maître/esclave.
  • Test-Driven Infrastructure : Développement d'un script d'audit en Python (test_infra.py) utilisant Pytest. Avant chaque mise en production, l'infrastructure est automatiquement testée pour valider son bon fonctionnement.

Souveraineté des données & Sécurité

L'anonymat et le contrôle absolu des données étaient au centre du cahier des charges. Nous avons donc déployé une stack d'outils 100% open-source orientés "Privacy" :

  • Authentik : Un fournisseur d'identité sécurisé pour gérer le SSO (Single Sign-On).
  • Vaultwarden : Un gestionnaire de mots de passe d'entreprise auto-hébergé.
  • Gitea : Pour l'hébergement de notre code source en interne.
  • SimpleLogin & Tor : Pour garantir l'anonymat des flux de communication et la gestion d'alias emails.

Technologies & Concepts Maîtrisés

Ansible (Playbooks / HA) OpenTofu (Terraform) HashiCorp Packer Golden Images Haute Disponibilité (Loadbalancer) Python (Pytest / TDD) SSO (Authentik) Auto-Hébergement