Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

Devops, ça change quoi pour moi développeur ?

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Prochain SlideShare
Devops chez Voyages-Sncf.com
Devops chez Voyages-Sncf.com
Chargement dans…3
×

Consultez-les par la suite

1 sur 54 Publicité

Devops, ça change quoi pour moi développeur ?

Télécharger pour lire hors ligne

1h d’indisponibilité Voyages-sncf.com = 1 M€ de perte
Venez découvrir comment Voyages-sncf.com s’est appuyé sur la démarche DevOps pour innover et garantir un Time To Market concurrentiel tout en conservant un SLA irréprochable
A travers cette session, je vous ferai un retour d'expérience de l'adoption de la démarche au sein de notre entreprise et de l'évolution du rôle de développeur au sein de notre équipe. On parlera BDD, usine logicielle, supervision, suivi de production.

1h d’indisponibilité Voyages-sncf.com = 1 M€ de perte
Venez découvrir comment Voyages-sncf.com s’est appuyé sur la démarche DevOps pour innover et garantir un Time To Market concurrentiel tout en conservant un SLA irréprochable
A travers cette session, je vous ferai un retour d'expérience de l'adoption de la démarche au sein de notre entreprise et de l'évolution du rôle de développeur au sein de notre équipe. On parlera BDD, usine logicielle, supervision, suivi de production.

Publicité
Publicité

Plus De Contenu Connexe

Diaporamas pour vous (20)

Les utilisateurs ont également aimé (17)

Publicité

Similaire à Devops, ça change quoi pour moi développeur ? (20)

Plus récents (20)

Publicité

Devops, ça change quoi pour moi développeur ?

  1. 1. @aguilloteau Ça change quoi pour moi développeur ?
  2. 2. @aguilloteau L’agilité pour rapprocher le Dev et le métier
  3. 3. @aguilloteau L’approche Feature Team Product Owner Scrum master Développeurs (front & back) Ops TesteurCustomer experience Marketing Support client Une feature team … en relation avec ses experts et supports
  4. 4. @aguilloteau L’Ops : le grand oublié de l’agilité
  5. 5. @aguilloteau Le Manifeste Agile Nous reconnaissons la valeur des seconds éléments mais privilégions les premiers Les individus et leurs interactions plus que les processus et les outils Des logiciels opérationnels plus qu’une documentation exhaustive La collaboration avec les clients plus que la négociation contractuelle L’adaptation au changement plus que le suivi d’un plan
  6. 6. @aguilloteau Antony GUILLOTEAU Scrum master @Voyages-sncf.com Militant Software Craftsmanship Votre speaker
  7. 7. @aguilloteau Dev & Ops : des objectifs orthogonaux
  8. 8. @aguilloteau Quelques symptômes
  9. 9. @aguilloteau Quelques symptômes
  10. 10. @aguilloteau Quelques symptômes
  11. 11. @aguilloteau Quelques symptômes En cas de crise, combien de temps faut-il pour lever une alerte, récupérer les logs, les analyser puis identifier la défaillance ? Combien de temps pour livrer un correctif en production ? Quelle sont la fréquence et la simplicité des mises en production ? Existe-t-il des échanges informels entre Dev et Ops ?
  12. 12. @aguilloteau Les objectifs du DevOps Un même objectif : délivrer le meilleur logiciel aux clients de l’entreprise Améliorer la coopération entre les Dev et les Ops Fluidifier l’élaboration du produit Améliorer la livraison du produit
  13. 13. @aguilloteau L’évolution DevOps
  14. 14. @aguilloteau L’évolution DevOps
  15. 15. @aguilloteau L’évolution DevOps
  16. 16. @aguilloteau L’évolution DevOps
  17. 17. @aguilloteau L’évolution DevOps
  18. 18. @aguilloteau L’évolution DevOps
  19. 19. @aguilloteau L’évolution DevOps
  20. 20. @aguilloteau Voyages-sncf en quelques chiffres 4,32 milliards d’euros de volume d’affaires en 2015 3,1% de croissance 1000 collaborateurs 2/3 Dédiés à l’international 52% de femmes et 48% d’hommes
  21. 21. @aguilloteau Voyages-sncf en quelques chiffres NUMERO 1 DU E-TOURISME 1er site de voyages en ligne français 12 millions de visiteurs uniques par mois 80 millions de voyages vendus en 2015 FLEURON TECHNOLOGIQUE 250 ingénieurs 2 data-centers 3500 serveurs 60 téraoctets de données traitées chaque mois 28 ventes par seconde
  22. 22. @aguilloteau Voyages-sncf en quelques chiffres Taux de disponibilité de 99,997% soit 15 minutes d’indisponibilité par an 1 heure d’indisponibilité = 1 millions d’euro de VA de perte sur le WEB France
  23. 23. @aguilloteau Améliorer la coopération Dev & Ops
  24. 24. @aguilloteau Améliorer la coopération Dev & Ops Manque de communication & incompréhension
  25. 25. @aguilloteau Améliorer la coopération Dev & Ops Intégration des Ops dans la vie du sprint de Dev (présence aux démonstrations fonctionnelles, démonstrations dédiées, participation aux cadrages, …) Inclure les Ops au plus tôt dans les cadrages et les développements afin d’intégrer leurs besoins et les informer Privilégier le 1-to1 plutôt que le ticket
  26. 26. @aguilloteau Améliorer la coopération Dev & Ops Point hebdomadaire entre Dev & Ops pour échanger sur la vie de la production Accompagnement des Ops par les Dev lors des bascules de production Participation des Dev aux communautés de pratique transverses
  27. 27. @aguilloteau Fluidifier l’élaboration du produit
  28. 28. @aguilloteau Fluidifier l’élaboration du produit Développer avec la cible (environnement de production)
  29. 29. @aguilloteau Développer avec la cible Environnement similaire du développement à la production, configurations de production répliquées jusqu’aux environnements de développement Avoir connaissance de l’environnement de production (architecture technique, configuration)
  30. 30. @aguilloteau Développer avec la cible Infrastructure “as a Service” interne Utiliser les mêmes outils que les Ops et contribuer à leurs évolutions Etre autonome sur le provisionning des serveurs
  31. 31. @aguilloteau Fluidifier l’élaboration du produit Adapter le SI aux besoins des développeurs
  32. 32. @aguilloteau Adapter le SI aux besoins des développeurs Les Dev proposent les technologies les plus adaptées au développement du produit Les Ops challengent les technologies proposées en amont Les Devs et les Ops sont impliqués dans leurs mises en oeuvre La responsabilité est partagée entre les Dev et les Ops
  33. 33. @aguilloteau Fluidifier l’élaboration du produit Alerter des modifications de comportement
  34. 34. @aguilloteau Alerter des modifications de comportement Démarche Behavior Driven Development pour identifier les éventuelles régressions fonctionnelles Tester n’est pas douter : le développeur doit connaître les cas d’utilisation du produit
  35. 35. @aguilloteau Alerter des modifications de comportement Tests de performance automatisés pour ne pas détériorer les performances avec les nouvelles fonctionnalités S’imprégner du contexte en production et des contraintes de SLA Monter en compétence sur des outils tels que Gatling ou JMeter
  36. 36. @aguilloteau Alerter des modifications de comportement Tests de charges pour s’assurer du bon fonctionnement du produit en production Connaîtres les cas d’usage significatifs du produit (parcours client) Savoir analyser des rapports et maîtriser la consommation de la mémoire
  37. 37. @aguilloteau Fluidifier l’élaboration du produit Monitorer pour prévenir
  38. 38. @aguilloteau Monitorer pour prévenir Définition des indicateurs avec les Dev, les Ops et le métier Le développeur est à mi-chemin entre la connaissance métier et la connaissance technique. Définir et produire des indicateurs pertinents (impact sur le code)
  39. 39. @aguilloteau Monitorer pour prévenir Les dashboards de supervision techniques et métiers sont réalisés par l'équipe Monter en compétence sur les outils type Grafana pour construire des tableaux de bord pertinents Suivre ces tableaux de bord sur les plateformes de production mais aussi hors production
  40. 40. @aguilloteau Monitorer pour prévenir Des logs centralisées pour analyser les incidents (ELK) Etre sensibilisé au bigdata qui permet de stocker un volume d’informations important : temps de rétention des informations, consolidation des données, savoir suivre un parcours client, ...
  41. 41. @aguilloteau Améliorer la livraison du produit
  42. 42. @aguilloteau Améliorer la livraison du produit Une usine logicielle performante pour livrer rapidement
  43. 43. @aguilloteau Une usine logicielle performante Dépôt de code versionné (GIT, SVN) Pipeline de livraison pour déployer automatiquement le produit en construction Serveur d’intégration continue pour construire automatiquement le produit (Jenkins) Outil de release pour packager le produit automatiquement Outil commun avec la production pour le déploiement sur les environnements d’assemblage, d’intégration et de recette
  44. 44. @aguilloteau Améliorer la livraison du produit Fiabiliser les livraisons
  45. 45. @aguilloteau Fiabiliser les livraisons Validation des installations avec l’exécution des tests fonctionnels (Behavior Driven Development) sur les différents environnements Environnement ISO-PROD pour valider l’installation Tests de performance automatisés et tests de charge
  46. 46. @aguilloteau Améliorer la livraison du produit Un produit stable
  47. 47. @aguilloteau Un produit stable Utiliser les Feature toggle pour déployer souvent en désactivant les fonctionnalités non abouties Mettre en oeuvre des circuit breaker pour améliorer la résilience de son application Utiliser le dark launch (production cachée) pour valider au plus tôt les nouvelles fonctionnalités sans impacter tous les utilisateurs
  48. 48. @aguilloteau Un produit stable Loi de Murphy : “Tout ce qui est susceptible de mal tourner tournera nécessairement mal” Le produit doit être résilient
  49. 49. @aguilloteau DevOps, une transformation à tous les étages
  50. 50. @aguilloteau Devops, une transformation à tous les étages
  51. 51. @aguilloteau Devops, une transformation à tous les étages Industrialiser l’usine logicielle, la livraison, les tests, le déploiement, le monitoring Evolution des rôles et missions de chacun : former les Dev et Ops Privilégier le management matriciel au management opérationnel
  52. 52. @aguilloteau Des changements dans le métier de développeur
  53. 53. @aguilloteau Des résultats probants Site VSC : 4 mises en production par an ⇒ 1 mise en production par mois Certains projets avec une mise en production à chaque sprint Des fonctionnalités beta en 3 mois plutôt qu’un cycle de 9 mois Open source interne pour autonomie des équipes
  54. 54. @aguilloteau M3RC1

Notes de l'éditeur

  • http://www.commitstrip.com/fr/2015/02/02/is-your-company-ready-for-devops/
    http://www.commitstrip.com/fr/2016/02/22/when-the-functional-tests-are-all-red/
    http://www.commitstrip.com/fr/2016/02/25/you-cant-write-code-without-knowing-how-to-log/
    http://www.commitstrip.com/fr/2016/02/10/true-story-one-code-review-too-many/
    http://www.commitstrip.com/fr/2015/11/25/get-your-colleagues-to-test-your-app-they-said/
    http://www.commitstrip.com/fr/2015/11/02/thats-brutal/
    http://www.commitstrip.com/fr/2015/07/30/coders-weaknesses-1-the-trycatch/
    http://www.commitstrip.com/fr/2015/06/22/can-we-automate-everything/
    http://www.commitstrip.com/fr/2015/05/06/hypnotic/
    http://www.commitstrip.com/fr/2015/04/23/when-i-have-to-explain-the-different-jobs-in-it/
    http://www.commitstrip.com/fr/2015/03/23/brace-yourself-debug-is-coming/
    http://www.commitstrip.com/fr/2016/03/03/its-not-working/
    http://www.commitstrip.com/fr/2014/12/09/obama-a-ecrit-sa-premiere-ligne-de-code/
    http://www.commitstrip.com/fr/2015/02/17/have-you-tried-turning-it-off-and-on-again/
    http://www.commitstrip.com/fr/2012/07/20/mise-en-prod/


    http://luc-damas.fr/rss/index.php?action=selectedFeed&feed=133#78910

  • Fervant défenseur du sotware craftmanship
    Scrum master Voyages-sncf
    agilité à l’échelle de l’entreprise depuis 2012 (Chaîne Youtube VSC)
    Travaille actuellement sur un projet organisé en 3 équipes Scrum / mise en place démarche DevOps
    Mon leitmotiv : que tout le monde travaille ensemble en partageant un objectif commun
  • Dev (développement) : évolution des systèmes
    Ops (exploitation) : garants stabilité et disponibilité des systèmes
  • Fréquence et simplicité de MEP :
    Les Ops sont rarement impliqués au démarrage des projets.
    Il s’ensuit des délais allongés entre la livraison des applications et celle des machines qui serviront de socle
    Existe-t-il des échanges informels entre Dev et Ops ?
    Souvent uniquement par mail ou par ticket (type JIRA)
  • Coopération :
    Construire et MCO en commun
    Livraison
    Rapidité du TTM en garantissant la fiabilité et la stabilité du produit
    Fluidifier
    Développer avec la cible (environnement de production) et adapter le SI aux besoins des développeurs.
    Alerter et monitoring (prévenir)
  • Waterfall (cycle en V)
    Mise en production espacées avec un contenu important (1 à 2 releases par an)
    Souvent dans la douleur ➔ phase de validation en fin de version
  • Agile
    Cycle itératif avec un produit « testable » à la fin de chaque itération ➔ à des fins de validation et non d’installation
    Notion de release qui regroupe plusieurs itérations
  • Lean :
    se base sur l’agile,
    industrialisation des processus,
    partage de connaissance dans l’équipe,
    pluri-disciplinarité des membres de l’organisation
    Toyota et le kaisen
  • Continous integration :
    Capacité de tester et déployer automatiquement
    et de manière industrialiser le soft
  • Continous delivery
    L’équipe produit un software sur des cycles courts,
    pouvant être releasé n’importe quand
  • Continous deployment :
    Chaque changement (i.e. commit) est déployé en production
  • Continous operations ou « Canary Release »
    Déploiement blue / green
    0 downtime
    Facilité de rollback
    Minimise les risques d’échec (First Attempt In Learning)
    Démarche nécessaire pour l’AB testing
  • Peu d’échanges (dév ➔ ops pour aider l’installation et l’exploitation, ops ➔ dév pour améliorer le monitoring techniques ET métier)
  • Infrastructure as a service :
    Les dév ne sont plus ralentis par la mise à disposition d’environnement
    Les dev ne ralentissent plus les Ops avec des demandes d’actions sans valeur ajoutée
  • Impacts opérationnels et managériaux

×