Recherche avancée
Par formation
Par date
Par ville
logo HUB Formation
Organisme de Formation
aux Technologies et métiers de L'informatique
La pédagogie au service de la technologie
Accueil > Domaines > Gestion de projets/MOA > DevOps - Mise en oeuvre de l'usine logicielle avec des solutions Open Source

DevOps - Mise en oeuvre de l'usine logicielle avec des solutions Open Source

Démarche et outils

Les interactions entre les équipes de développement et les équipes opérationnelles sont souvent assez problématiques. Et les nouveaux enjeux de déploiement continu ainsi que la montée en puissance des méthodologies agiles viennent encore amplifier les difficultés qui peuvent exister. La démarche DevOps propose, sur les plans techniques comme opérationnels, des solutions visant précisément à faciliter les échanges, l'agilité et la collaboration entre ces deux types d'équipes qui ont un objectif commun : délivrer un service de qualité de façon fiable en répondant à des besoins de changement permanents, pour diminuer les délais entre l'expression du besoin utilisateur et la mise en production d'une nouvelle version de l'application.

Objectifs

  • Pouvoir identifier les problèmes liés à la communication inter-équipes
  • Savoir mettre en place des objectifs d'équipe communs
  • Être en mesure de former les développeurs aux opérations de production
  • Comprendre comment standardiser les livrables en accord avec les équipes
  • Savoir automatiser le provisionnement des environnements
  • Maîtriser l'automatisation des déploiements applicatifs
  • Disposer des compétences nécessaires à la mise en oeuvre d'un monitoring applicatif

Public

  • Développeurs
  • Architectes Techniques
  • Administrateurs Systèmes et Réseaux
  • Chefs de projet

Prérequis

  • Connaissance des services IT

Programme de la formation

La problématique DevOps

  • Ce qui a changé : la Digital
  • Les différents métiers, du DEV à la PROD (MOA/MOE, Développeurs, Opérationnels)
  • Les divergences entre les équipes de développement et les équipes opérationnelles
  • Les sources de conflits entre équipes (déploiement, technologies mises en oeuvre...)
  • DevOps, les pratiques C.A.L.M.S. (Culture Automation Lean Measurement Sharing)
  • DevOps vs automatisation
  • Les 5C de DevOps
  • DevOps et l'agilité
  • La valeur de DevOps

La virtualisation des environnements

  • Présentation des différents types de virtualisation
  • Présentation de Vagrant pour faciliter la gestion des environnements de développement
  • Présentation de Docker pour faciliter la gestion des socles
  • Docker et les solutions d'orchestration de conteneurs (Kubernetes, Swarm, Mesos)
  • Docker, retour d'expérience et bonnes pratiques
  • Ateliers : Installation et paramétrage de Vagrant - Installation et paramétrage de Docker

Le Cloud et la virtualisation

  • Les apports des infrastructures Cloud, PaaS et IaaS
  • Les apports de la virtualisation hardware
  • Les nouveaux outils de virtualisation
  • Atelier : Prise en main de la plate-forme Cloud Microsoft Azure

Industrialisation des déploiements

  • Standardisation des livrables
  • Mise en place d'une usine logicielle et de l'intégration continue
  • Standardisation du provisioning
  • Exemple d'usine logicielle
  • Ateliers : Installation paramétrage et mise en oeuvre de Jenkins

Automatisation du provisionnement des environnements

  • Définir un processus commun et répétable
  • Présentation des alternatives (Dockerfile, Puppet, Chef, Ansible, Salt)
  • Comparatif des outils de provisionnement
  • Ateliers : Mise en oeuvre de Docker Compose

Automatisation des déploiements applicatifs

  • Présentation des options (Capistrano, Fabric, Ansible, Salt)
  • Gérer les évolutions de base de données avec Liquibase
  • Ateliers : Installation et paramétrage d'Ansible

Monitoring applicatif

  • Centralisation des logs applicatifs (ElasticSearch - Logstash - Kibana)
  • Définition du plan de monitoring
  • Ateliers : Mise en oeuvre d'ELK (ElasticSearch - Logstash - Kibana)

Collaboration entre les équipes

  • Les types d'organisations possibles
  • Prise en compte des user stories de production
  • Organisation de cérémonies communes
  • Coopération sur les choix techniques
  • Outils de communication issus de la démarche ChatOps (Hubot, Lita...)

Retour d'expériences

  • La transition DevOps
  • Ateliers : Moment d'échanges et séance de Questions/Réponses

Méthode pédagogique

L'apprentissage par la pratique intensive : la majeure partie de la formation est consacrée à la mise en oeuvre des outils open Source dans une démarche DevOps.
Un cursus très concret durant lequel s'alternent les phases d'apports théoriques, d'échanges, de partage d'expériences et d'ateliers réalisés au travers d'un cas pratique "fil rouge".
Chaque chapitre abordé est mis en oeuvre et appliqué concrètement à travers un outil Open Source, ce qui favorise un ancrage immédiat des acquis et une meilleure appréhension des sujets traités.
Les ateliers constituant le cas pratique "fil rouge" reposent sur la mise en oeuvre des outils Open Source DevOps sur une application existante fournie aux stagiaires. Cette application Web développée selon les derniers standard (Front-End an Angular et Back-End en micro-services) amèneront progressivement les participants à développer une application de gestion de contacts. Durant la formation, les participants sont amenés à installer, configurer et utiliser les principaux outils tels que : Vagrant, Docker, Jenkins, Ansible, Sonar et ELK (ElasticSearch - Logstash - Kibana).

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.