Formation DevOps Agile : comprendre les outils utilisés par les acteurs d’un projet Agile DevOps au quotidien dans les projets : Tests, Intégration, Déploiement continu, DashBoard …

Durée 2 jours
Niveau Fondamental
Classe à distance
Possible

Vous pouvez suivre cette formation en direct depuis votre domicile ou votre lieu de travail. Plus d'informations sur notre solution de classe à distance...

Référence ODCO

Cette formation DevOps Agile : comprendre les outils utilisés par les acteurs d’un projet Agile présente les principaux outils mis en œuvre dans une approche de développement DevOps en intégrant tous les acteurs de la chaîne de production logicielle. L’ordre d’apparition des outils suit la chronologie d’un projet Agile afin de rendre la formation concrète et réaliste.

La formation répondra à plusieurs questions : Comment utilise-t-on un outil de backlog (recueil des besoins) ? À quoi sert un outil de versionning ? De build ? De provisionnement ? À quoi sert une plate-forme de CI/CD ? Les dépôts d’artefacts ? Quels types de tests et d’analyses effectue-t-on sur un chaîne DevOps ? Comment sont exploités les résultats?

Il s’agit donc de faire le lien avec la théorie sur les méthodes Agiles et de savoir positionner les outils utilisés par les différents acteurs (pas forcément techniques) tout en comprenant la puissance de leur utilisation conjointe (pipeline) au niveau de la chaîne de production dans un mécanisme d’intégration/déploiement continu.
 
À travers un mini projet servant de fil rouge pédagogique, cette formation DevOps Agile s’attache à être concrète en présentant une chaîne complète DevOps. Tout en veillant à ne pas se montrer excessivement technique, elle présente cependant les fichiers de configuration - dont la maîtrise permet de mieux comprendre le fonctionnel et les concepts - ainsi que des commandes qui permettent de faire « vivre » une maquette. La priorité est donc donnée à la vue globale et à tous les acteurs d’un projet de développement DevOps.

Pour les personnes à la recherche d'un contenu plus technique (mais toujours généraliste), nous vous proposons de suivre plutôt la formation « Infrastructure DevOps : Les outils », réf. OODO.

Concrètement, cette formation DevOps Agile vous apporte les compétences et connaissances nécessaires pour :

  • Énoncer toutes les phases de développement d’un projet Agile
  • Citer des outils logiciels associés
  • Savoir utiliser un outil de backlog (recueil des besoins)
  • Savoir utiliser un outil de versionning et comprendre son vocabulaire (repository, branche, push, commit, etc.)
  • Comprendre le fonctionnement d’un outil de « build » logiciel
  • Connaître la typologie des tests logiciels et les outils associés
  • Comprendre la distinction entre intégration, livraison et déploiement continu
  • Comprendre en quoi consiste un pipeline d’intégration continue
  • Comprendre le paramétrage d’outils comme Jenkins ou GitLabCI
  • Savoir construire une application simple avec Ansible (playbook)
  • Comprendre les concepts de conteneur (Docker) et d’orchestrateur (Kubernetes)
  • Savoir créer un conteneur Docker simple
  • Comprendre en quoi consiste le déploiement d’une application sur un cluster Kubernetes
  • Comprendre en quoi un outil comme Elastic Search participe à l’amélioration continue d’un logiciel

Public :

Cette formation DevOps Agile : comprendre les outils utilisés par les acteurs d’un projet Agile peut être suivie par des développeurs, mais elle se destine en premier lieu aux profils opérationnels désireux de mieux comprendre la chaîne de production logicielle. Elle s'adresse donc à tous les acteurs d'un projet de développement DevOps rattachés au service informatique de l'entreprise, ou partie prenante dans l'un de ses projets informatiques.

Pour les personnes à la recherche d'un contenu plus technique (mais toujours généraliste), nous vous proposons de suivre plutôt la formation « Infrastructure DevOps : Les outils », réf. OODO.

Prérequis :

Ce cours DevOps Agile requiert une précédente activité dans un service informatique ou dans un projet informatique. Il peut s'agir d'une expérience en développement ou en intégration, mais aussi plus simplement dans l'exploitation ou dans l'encadrement (recueil de besoins, suivi des tests, supervision des tickets de développement, participation aux projets d'amélioration continue...).

Principes du mouvement DevOps

L’argumentaire et les principes DevOps
Les compétences de l’équipe DevOps
La chaîne de production logicielle
Bénéfices attendus de l’approche DevOps

Outils de versioning

Essence  d’un outil de versioning
Concepts : Commit, Branches et Tags
Unique source de vérité et les outils « As code »
Utilisation des branches
Workflow DevOps, intégration dans les approches agiles

Atelier 1 / Démonstration

Présentation de l’application fil d’Ariane
Création de deix feature braches à partir d’un backlog Agile

Build is tests !

Définition  d’un outil de build : quelques exemples
Les tests lors du build : automatisation, scénarios et assertions
Typologie des tests et outils
Analyse statique et dynamique du code source
Métriques logicielles, approche qualité et amélioration continue
Notion d’artefact, les différents formats
Les dépôts d’artefacts, leur mission : outils disponibles 

Atelier 2  / Démonstration

Exécution de tests et d’analyse automatisés
Visualisation des résultats

La plateforme de CI/CD

Mission d’une plateforme de CI/CD
Distinction entre intégration/livraison et déploiement continu(e)
Architecture Maître/Esclave, provisionnement des esclaves
Notion de pipeline, pipelines typiques
Pipelines et organisation des branches
Pipeline As Code : les exemples de Jenkins et GitlabCI

Atelier 3 / Démonstration

Configuration Gitlab CI
Exécution de pipeline

Virtualisation et gestion de configuration

Principes de la virtualisation
Le provisionnement
Les outils de gestion de conf.
L’exemble d’Ansible

Atelier 4  / Démonstration

Présentation et exécution d’un playbook Ansible

Containerisation et orchestrateur de conteneurs

Comparaison Container et machines virtuelles
Images de conteneur
Présentation d’un Dockerfile, les registres d’images
Stack applicative, Architecture micro-services, l’outil docker-compose
Mission d’un orchestrateur de conteneur. Kubernetes : les offres disponibles
Déploiement DevOps : Blue-green, Canary testing, etc

Atelier 5 / Démonstration

Déploiement blue-green de l’application en fil d’Ariane sur un cluster Kubernetes

Feedback et amélioration continue

Surveillance continue, collecte des métriques et outils associés
Le dashboard DevOps
Self-healing systems

Atelier 6 / Démonstration

Collectes de métriques dans une pile ElasticStack


Formations Informatique
et Management
en ligne à ce jour

+
Stagiaires dans nos salles
de cours sur
l'année

%
De participants satisfaits
ou très satisfaits de nos
formations


Formateurs experts
validés par
PLB