DevOps : Sensibilisation à la démarche

Une immersion dans l'univers DevOps au travers de présentations et d'ateliers

Description

Référentiel de bonnes pratiques poussé initialement par les grands acteurs du web, la démarche DevOps vise à renforcer la collaboration entre les équipes de développement -les « Dev »- et les équipes d’opération -les « Ops »- et ce dans un but d’améliorations multiples : * Amélioration de la fluidité de la chaîne de production et de mise à disposition du logiciel (le fameux « Time to market ») * Amélioration de la qualité générale du logiciel et de l’expérience utilisateur, en produisant un logiciel industrialisé au plus tôt, et en permettant une meilleure réactivité et capacité de correction sur les incidents et anomalies en production * Amélioration des relations de travail entre équipes, en travaillant notamment sur le sens commun du travail effectué Ce séminaire sera l’occasion d’explorer ces bonnes pratiques, et notamment les concepts de culture, d’automatisation, de métriques et de partage qui sont les piliers de la mise en œuvre d’une démarche DevOps. Pour des intra-entreprise il existe un programme sur 2j basée sur des serious games et des ateliers d'échanges entre les participants (5 participants minimum). Des serious games, des ateliers et des échanges entre les participants seront animés par le formateur et ponctueront cette formation.

Objectives

Le but de ce séminaire est de découvrir les concepts de la démarche DevOps, d’explorer son écosystème et d’obtenir une vision sur les pratiques techniques et collaboratives associées à cette démarche.

Nous parcourrons ensemble les bonnes pratiques de mise en œuvre, et explorerons les pistes pour bien commencer une implémentation de DevOps dans votre environnement de travail

Prerequisites

Une expérience dans la contribution ou la gestion d'un projet informatique

Programme

Serious Game

Présentation de la démarche DevOps

Etablir une définition de DevOps

  • Ce que n’est pas DevOps
  • Ce qu’est DevOps

Les enjeux et la vision de la démarche DevOps

  • Les origines de cette démarche de transformation
  • État du marché et les objectifs pour son entreprise
  • Le rôle de l’automatisation dans la démarche

Les différents piliers de DevOps : CAMS

  • La Culture commune comme ligne de mire
  • L’Automatisation au service de la collaboration
  • La Mesure pour savoir où l’on est et observer les progrès
  • Le Partage entre les différents acteurs

Atelier d'échange / mise en situation

Les concepts de l’agilité pour la compréhension de DevOps

Une introduction à l’agilité

  • Le Manifeste Agile comme une source d’inspiration
  • Les valeurs et principes de l’Agilité
  • Une réponse aux limites des méthodes classiques / prédictives
  • La famille des méthodes Agile : XP, Scrum, Crystal, Kanban, Lean…

Présentation de différentes pratiques agiles

  • Des livraisons itératives pour plus de souplesse et de fluidité
  • Une approche différente dans l’organisation de l’équipe
  • Techniques de priorisation et de planification dans le monde agile
  • S’améliorer collectivement par les rétrospectives

Déclinaison des concepts agiles dans le monde « Ops »

  • Les impacts de l’agilité sur le monde des Ops
  • Transposition des principes et valeurs agiles dans l’infrastructure
  • Adaptation aux différents types de travail du monde Ops
  • Les pratiques et méthodes agiles dans le monde Ops : Kanban, Scrum…

Atelier d'échange / mise en situation

L’outillage DevOps et les principes d’Infrastructure as Code

De l’intégration continue au déploiement continu

  • L’intégration continue comme point de départ (Jenkins, Git, Maven…) : gestion de source, tests automatisés, création et stockage des artefacts
  • L’extension des concepts agiles pour la mise en production
  • L’introduction du Continuous Delivery et focus des différents processus
  • Savoir s’outiller et faire cohabiter les différents outils
  • Approches modernes de supervision, nouveaux indicateurs
  • Utilisation des ChatOps

Principes d’Infrastructure as Code

  • Le pilotage des infrastructures par les API (AWS, OpenStack, vSphere…)
  • La gestion de configuration (Puppet, Chef, Ansible…)
  • Le Software Defined Networking
  • Technologies de containerisation (LXC, Docker, Kubernetes…)

L’outillage comme un prétexte à la collaboration

  • Chantiers communs d’améliorations techniques
  • Nécessité des outillages partagés
  • Bonnes pratiques techniques transverses
  • Exigences techniques et automatisation

Atelier d'échange / mise en situation

Grands principes d’implémentation

S’évaluer pour connaitre son chemin

  • Notion de modèle de maturité
  • Réaliser un état des lieux des pratiques
  • Définition des grands axes de changement, des actions associées

Mise en œuvre d’une transformation

  • Utiliser des modèles existants ou construire le vôtre
  • Définition des phases pilote
  • Se fixer des objectifs et savoir mesurer au fur et à mesure

Généralisation des pratiques

  • Identifier les « success stories »
  • Le rôle de l’évangélisation
  • Patterns et anti-patterns

Atelier d'échange / mise en situation

DevOps dans l’entreprise d’aujourd’hui

Les impacts de l’adoption de DevOps

  • Adoption et contrôles des meilleures pratiques de développement logiciel
  • Les équipes opérationnelles comme centre de services
  • De nouveaux outils pour de nouveaux usages (autoscaling, clustering, « Pets Vs. Cattle », ...)
  • Architecture par composants et architecture micro-services, rôle de l’orchestration de conteneurs
  • Une nouvelle culture

DevOps et ITIL

  • La recherche commune de fluidité
  • Impacts de DevOps sur les processus ITIL
  • Vers une standardisation des changements

Au-delà de DevOps

  • Communication interne et externe
  • L’agilité de bout en bout
  • Evaluation des gains
  • Comment savoir si le but est atteint ?