Objectifs :
Présentation des principes de DevOps
Comprendre les enjeux de la mise en place d’une meilleure collaboration entre les équipes projet.
Comprendre les enjeux de l’automatisation de la chaine de fabrication d’un logiciel.
Connaître les principes, les bonnes pratiques et les outils adaptés à la mise en place des processus tels que :
Continuous Business Planning
Collaborative Development (Continuous Integration)
Continuous Testing
Continuous Release and Deployement (Continuous Delivery)
Continuous Monitoring
Continuous Customer Feedback and Optimisation
Connaître les principales étapes de l’implémentation de DevOps dans une entreprise
Introduction
Historique de DevOps
C’est Quoi DevOps aujourd’hui ?
Pourquoi DevOps
Vue d’ensemble de DevOps
DevOps, Lean et l’agilité
Positionnement de DevOps dans le SI
Les processus et les bonnes pratiques
Continuous Business Planning
Collaborative Development (Continuous Integration)
Continuous Testing
Continuous Release and Deployement (Continuous Delivery)
Continuous Monitoring
Continuous Customer Feedback and Optimisation
Comparatifs des principaux outils adaptés aux processus dans l’écosystème DevOps
Schéma / workflow DevOps
Intégration Continue (Build/deploy)
Jenkins
Travis
GoCD
PHPCI
Continuum
Provisioning, configuration
Ansible
Chef
Puppet
Salt
CaaS/ Container
Kubernetes
Docker /Docker UCP
RKT
Gestion de version
Bitbucket
Github
Monitoring
Nagios
Zabbix
Outils de test
Selenium
Fitnesse
Cucumber
Outils spécifiques aux technologies
Démo d’utilisation des outils DevOps.
Démonstration des scénarii de livraison continue utilisant plusieurs des outils listés ci-dessus
Déploiement continu d’une application Java selon différents scénarii
Envoi et affichage des métriques d’une application ou d’un serveur sur ELK
Scénarios d’Implémentation de DevOps dans une entreprise
Les trois piliers de l’implémentation réussie :
Les ressources humaines
Les outils
La méthodologie
Construire une équipe mixte et transversale
Fixer les objectifs
Définir les tâches et les fonctions
Accompagner le changement culturel
Améliorer la communication inter-équipe
Célébration des success stories
Utiliser des solutions d’industrialisation des processus
Automatiser tout ce qui peut l’être
S’appuyer sur les logiciels libres
Développer rapidement et piloter les évolutions
Travailler en mode agile
Commencer par un projet de petite taille avant de généraliser (minimiser les risques)
Amélioration Continue par l’apprentissage
Feed-back rapide des utilisateurs
Conclusion et perspectives
Appendices