soutenance/notes.md

2.3 KiB

\newpage

Notes diverses

TODO: supprimer cette section à la fin

Mot clé : écosystème DevOps

Définition DevOps : https://fr.wikipedia.org/wiki/Cha%C3%AEne_d%27outils_Devops#cite_note-DevOpsToolchain-1

DevOps

Objectif : mettre en œuvre les bonnes pratiques de DevOps

  • Plan / Planifier (Gitlab : Milestones + issues)
  • Code / Développer (Gitlab : Dépôts Git, différents projets)
  • Build / Générer (Gitlab : Gitlab CI - docker build, npm build, etc.)
  • Test / Tester (Gitlab : Gitlab CI)
  • Publish / Publier (Gitlab : Gitlab CI + Docker repositories + package registry)
  • Deploy / Déployer (Terraform + Gitlab)
  • Operate / Opérer ( ??? ) = services en ligne + backup + reprise sur échec + feedback utilisateurs
  • Observe / Surveiller (Prometheus OU Datadog)

Schéma des concepts DevOps

Selon Gitlab

  • Planification : organisez le travail à effectuer, hiérarchisez-le et suivez son achèvement.
  • Création : écrivez, concevez, développez et gérez en toute sécurité le code et les données du projet avec votre équipe.
  • Vérification : assurez-vous que votre code fonctionne correctement et respecte vos normes de qualité, idéalement avec des tests automatisés.
  • Empaquetage : empaquetez vos applications et dépendances, gérez les conteneurs et générez des artéfacts.
  • Sécurisation : vérifiez les vulnérabilités à l'aide de tests statiques et dynamiques, de tests à données aléatoires et d'analyses des dépendances.
  • Release : déployez le logiciel pour les utilisateurs finaux.
  • Configuration : gérez et configurez l'infrastructure nécessaire pour prendre en charge vos applications.
  • Surveillance : suivez les métriques de performance et les erreurs pour réduire la gravité et la fréquence des incidents.
  • Gouvernance: gérez les vulnérabilités de sécurité, les politiques et la conformité dans l'ensemble de votre entreprise

Autre

  • Base de connaissances collaborative commune : Gitlab avec Wiki

Specs

  • Technologies utilisées par l'application initiale + schémas dépendances
  • contrainte : haute disponibilité, sous AWS
  • sauvegardes
  • supervision (outils monitoring + alerting)
  • collaboration : Gitlab = plateforme DevOps
  • gestion utilisateurs (id/mdp, clefs, accès)
  • gestion des secrets