Introduction DevOps

Clément Dandrieux
Nicolas Trugeon

Année 2024-2025

Au programme de cette présentation

  • DevOps ?
  • Outils et concepts
  • Objectifs de la semaine

Définition et histoire

  • Dev
  • Ops
  • DevOps

Dev

  • Développement
  • Objectif : Ajout de changements

Ops

  • Exploitation
  • Objectif : Stabilité du système

DevOps

  • Changement de paradigme
  • Agilité sur tout le SI
  • Collaboration efficace

Objectifs

  • Collaboration
  • Automatisation
  • Fiabilisation

Outils

  • Conteneurisation
  • Intégration continue
  • Déploiement continu
  • Infrastructure as code
  • Surveillance

Conteneurisation

Intérêt

  • Environnement commun entre le développement et le déploiement
  • Encourage les bonnes pratiques
  • Améliore la sécurité et le contrôle des applications

Outils

  • Docker
  • Podman
  • ...

CI / CD

Tester et intégrer continuellement

Intégration continue

  • Détecter les régressions et éviter les erreurs courantes
  • Assurance qualité
  • Validation rapide et régulière du code

Déploiement continu

  • Automatisation du processus de déploiement
  • Permet de livrer rapidement des modifications
  • Amélioration de la qualité en détectant les petites erreurs plus fréquemment

Outils

  • Gitlab CI
  • Github Actions
  • Jenkins
  • Drone/Woodpecker
  • Saas : CircleCI, TravisCI
  • Big tech : Azure DevOps...
Code block icon

Infrastructure as code

Gérer l'infrastructure sous forme de code

  • Services
  • Configuration
  • Provisionning

Intérêt

  • Reproductibilité
  • Automatisation
  • Scalabilité
  • Gestion de versions

Outils

  • Docker Compose
  • Ansible / Salt / Chef...
  • Terraform
  • Cloudformation
Health metrics icon

Surveillance

Alias monitoring

  • Suivi des métriques des serveurs
  • Suivi de la performance des applications
  • Suivi des logs

Intérêt

  • Détection rapide des pannes
  • Suivi de la performance
  • Amélioration de la sécurité

Outils

  • Netdata / Nagios ...
  • Prometheus / Grafana
  • Rsyslogd / Grafana Loki / Stack ELK

Objectifs de la semaine

  • Comprendre la pratique DevOps
  • Manipuler Docker
  • Configurer un serveur
  • Mettre en place une pipeline CI/CD

Résultat

Planning de la semaine

Et modalités

Publiés ici :
https://lpmiaw-devops.napkid.dev