DevOps
Le DevOps
est une culture et un ensemble de pratiques qui visent à unifier le développement logiciel (Dev) et les opérations informatiques (Ops).
Dans ce tutoriel, nous allons présenter les concepts fondamentaux de la démarche DevOps
ainsi que les outils et technologies nécessaire à la mise en place d'une démarche DevOps efficace.
Pourquoi ?
On adopte la démarche DevOps parce que l'on désire atteindre des objectifs tels que:
- Livrer rapidement les applications
- Améliorer la qualité des applications
- Renforcer la collaboration entre Développement et Opérations
Les phases du DevOps
Intrinsèquement, le DevOps comprend 8 phases qui sont:
- Plan: Les equipes pensent les fonctionnalités de l'application et établissent un plan de réalisation en utilisant une méthodologie Agile (SCRUM / KABAN)
- Code: Les équipes utilisent Git comme gestionnaire de code source afin d'activer le travail collaboratif.
- Build: Les équipes construisent l'application composant par composant
- Test Les équipes s'assurent que tous les composants développés ont fait l'objet de tests rigoureux.
- Release: Dans la phase release, les équipes construisent un ou plusieurs artefacts (ex. IMAGE Docker) de livraison pour le projet.
- Deploy: Il s'agit maintenant pour l'équipe de livrer l'artefact (l'application) sur son environnement d'exécution.
- Operate: Ici on s'assure que l'environnement est installé, configuré et saint.
- Monitor: Enfin on surveillance nos environnements dans le but le grarantir un service de qualité.
Comment mettre en place le DevOps ?
Pour atteindre rapidement ces objectifs, il faut penser Automatisation. C'est à dire qu'il faut identifier tous les processus qui peuvent être automatisés et les automatiser afin d'amélioer l'éfficacité des équipes.
Pour se faire, nous allons regrouper les phases du DevOps en 4 grands domaines automatisables:
Développement
(Plan, Code, Build, Test)Intégration
(Release)Déploiement
(Deploy)Monitoring
(Monitor)
Chacun de ces domaines se matérialise par la mise en place de technologies et outils spécifiques.
Pour aller plus loin, https://about.gitlab.com/topics/devops/