DevOps 
Une histoire de réconciliation et d’un bel avenir ! 
#DevOpsDayFr 
Jason DE OLIVEIRA (CELLENZA) 
Stéphane GOUDEAU ...
Introduction
« Devs » contre « Ops » 
La frontière classique des organisations qui 
sépare les équipes de développement (« Devs ») 
et ...
Le mur de la confusion 
Adapter le SI aux demandes 
du marché en introduisant des 
évolutions dans le code 
= Maximiser le...
Pourquoi DevOps ? 
“DevOps is 
development 
and operations 
collaboration” 
“DevOps is 
treating your 
infrastructure 
as ...
Facteurs clés de succès 
• Forte réactivité sur la correction d’anomalies et 
la gestion des incidents 
• Les livraisons s...
La culture DevOps 
• Valeurs fondamentales : 
▪ Respect mutuel, confiance réciproque, et 
systématisation du partage de l’...
DevOps : Une philosophie…
Les principes et les 
promesses de DevOps
Le processus de « Continuous Delivery » 
Elimination des déperditions | Réduction de la durée du cycle | Intégration et vi...
Continuous Delivery & DevOps 
Plan Develop Release Operate 
The Wall of 
Confusion 
Business Development Operations 
Métho...
Continuous Delivery & DevOps 
Optimisation 
des 
ressources 
Amélioration 
de la qualité 
et de la 
disponibilité 
Hypothe...
Les outils DevOps 
Cycle de développement logiciel 
Release Management Monitoring 
Déploiement 
Provisionning 
d’infrastru...
Réduction des cycles de 
livraison
Réduction des cycles de livraison
Stratégie de branches et gestion des releases 
DEV 
MAIN 
Développement 
de nouvelles 
Branch 
features 
Branch 
Correctif...
Release Management
Optimisation de l’utilisation 
des ressources
Optimisation de l’utilisation des ressources 
• Une gestion unifiée des ressources qu’elles soient à 
demeure ou dans le C...
Provisioning dans Azure 
• Windows Azure Platform PowerShell 
cmdlets 
▪ http://www.windowsazure.com/en-us/ 
documentation...
DSC (« Desired State Configuration ») 
Technology 
Specific 
Traditional Scripts 
Configuration 
DSC Engine 
Intent 
Depen...
Groupe de ressources 
• Entité de gestion dans 
laquelle sont intégrés des 
regroupements de multiples 
ressources de même...
Autres outils DevOps
Amélioration de la qualité et 
de la disponibilité
Amélioration de la qualité et de la disponibilité 
• Supervision de la performance, de la disponibilité, des 
exception et...
Les outils de mesure Windows Azure 
Windows Azure 
Diagnostics 
Cloud Service 
monitoring
Les outils Visual Studio Online 
Application 
AVAILABILITY 
USAGE 
PERFORMANCE 
Tests de charge
Autoscaling dans Azure
Hypothesis-driven 
development 
& Continuous learning
Apprendre de la production avec les 
remontées de l’application 
• Data Driven 
Development 
• Prendre facilement 
des déc...
Hypothesis-Driven Development 
http://barryoreilly.com/2013/10/21/how-to-implement-hypothesis-driven- 
development/
Conclusion
DevOps et Microsoft 
Test 
Develop Build 
Production 
Pre-Production 
Integration 
Deploy Environments Monitor and Learn 
...
Livre Blanc DevOps 
• http://blog.cellenza.com/a-la-une/ 
cellinsights-1-devops-de-la-vision- 
limplementation/ 
• http://...
© 2012 2013 Microsoft Corporation. Tous droits réservés. Microsoft, Windows et les autres noms de produits sont des marque...
Prochain SlideShare
Chargement dans…5
×

Keynote DevOps - Microsoft DevOps Day 2014 in Paris

17 086 vues

Publié le

Publié dans : Technologie

Keynote DevOps - Microsoft DevOps Day 2014 in Paris

  1. 1. DevOps Une histoire de réconciliation et d’un bel avenir ! #DevOpsDayFr Jason DE OLIVEIRA (CELLENZA) Stéphane GOUDEAU (Microsoft)
  2. 2. Introduction
  3. 3. « Devs » contre « Ops » La frontière classique des organisations qui sépare les équipes de développement (« Devs ») et les équipes d’exploitation («Ops »). • Conflits et objectifs contradictoires entre les équipes • « Je ne comprends pas, moi ça marche en dev, il faut voir les Ops.. » VS « Tous les services sont Up, pas de charge, ça vient du Dev… » • Livraisons avec beaucoup d'erreurs, voire d’échecs • Administration manuelle, lente et source d’erreurs
  4. 4. Le mur de la confusion Adapter le SI aux demandes du marché en introduisant des évolutions dans le code = Maximiser le changement Maintenir la disponibilité en contrôlant les évolutions pour réduire les risques de pannes = Minimiser le changement Équipe de développement d’application Équipe système et infrastructure Application déployée « Composants, couches logicielles, services,… » « Clusters, fermes, pare-feu, réseau, stockage,,… » Fonctionnalités Culture Produit Innovation Stabilité Culture du Service Rationalisation
  5. 5. Pourquoi DevOps ? “DevOps is development and operations collaboration” “DevOps is treating your infrastructure as code” “DevOps is using automation” “DevOps is feature toggles” “DevOps is Kanban for Ops?” “DevOps is small deployments” L’objectif du mouvement DevOps est de fluidifier les processus et de créer une synergie en favorisant la collaboration entre les équipes de développement (« Devs ») et les équipes d’exploitation (« Ops »). En supprimant les frictions et les blocages, on améliore la productivité et l’efficacité du système d’information de l’entreprise. Cela apporte des logiciels de très haute qualité et desmeilleurs services aux clients.
  6. 6. Facteurs clés de succès • Forte réactivité sur la correction d’anomalies et la gestion des incidents • Les livraisons sont les plus petites, simples et fréquentes possible • Les besoins et contraintes opérationnelles sont prises en compte dès les premières phases des projets • Confiance mutuelle et coopération entre équipes, voire réorganisation et mutualisation des équipes
  7. 7. La culture DevOps • Valeurs fondamentales : ▪ Respect mutuel, confiance réciproque, et systématisation du partage de l’information • Vision positive de l’échec : ▪ Les organisations doivent apprendre de leurs échecs et prendre des risques pour anticiper de nouveaux besoins opérationnels • Développement des compétences des acteurs du système(« Kaizen »). • Démarche d’introduction volontaire de défauts dans le système : ▪ Capacité du système à se remettre en service après un dysfonctionnement. ▪ « Failsafe: Guidance for Resilient Cloud Architectures ▪ http://msdn.microsoft.com/en-us/ library/windowsazure/jj853352.aspx
  8. 8. DevOps : Une philosophie…
  9. 9. Les principes et les promesses de DevOps
  10. 10. Le processus de « Continuous Delivery » Elimination des déperditions | Réduction de la durée du cycle | Intégration et visibilité Apprendre Apprentissage actionnable Rétroaction en continue | Qualité en continu | Livraison en continu
  11. 11. Continuous Delivery & DevOps Plan Develop Release Operate The Wall of Confusion Business Development Operations Méthodes Agiles DevOps
  12. 12. Continuous Delivery & DevOps Optimisation des ressources Amélioration de la qualité et de la disponibilité Hypothesis-driven development & continuous learning
  13. 13. Les outils DevOps Cycle de développement logiciel Release Management Monitoring Déploiement Provisionning d’infrastructure Configuration d’application Configuration du système Télémétrie Supervision technique Storyboarding Source Control Management Software Design Agile Portfolio Management Build Tests Reporting et BI Analyse de code Intégration continue
  14. 14. Réduction des cycles de livraison
  15. 15. Réduction des cycles de livraison
  16. 16. Stratégie de branches et gestion des releases DEV MAIN Développement de nouvelles Branch features Branch Correctifs liés à la production RELEASE Report correctifs Integration Continue DEV NightIy Builds INTEG QA PROD Manual Builds
  17. 17. Release Management
  18. 18. Optimisation de l’utilisation des ressources
  19. 19. Optimisation de l’utilisation des ressources • Une gestion unifiée des ressources qu’elles soient à demeure ou dans le Cloud • Automatisation des environnements • Support des technologies tiers-parties
  20. 20. Provisioning dans Azure • Windows Azure Platform PowerShell cmdlets ▪ http://www.windowsazure.com/en-us/ documentation/articles/install-configure- powershell ▪ https://github.com/Azure/azure-sdk- tools • REST API & Management Library • Windows Azure command-line tool for Mac and Linux ▪ http://www.windowsazure.com/en-us/ documentation/articles/comman prompt> azure topic verb options account account location account affinity-group vm vm disk vm endpoint vm image service service cert site config download import list show delete start restart shutdown capture create attach detach browse set username password dns-prefix vm-name lb-port target-image-name source-path disk-image-name size-in-gb thumbprint value -v -vv d-line-tools/
  21. 21. DSC (« Desired State Configuration ») Technology Specific Traditional Scripts Configuration DSC Engine Intent Dependency Resolution Logging & Error Handling Reboot Resiliency Repeatable Automation Resources Technology Specific
  22. 22. Groupe de ressources • Entité de gestion dans laquelle sont intégrés des regroupements de multiples ressources de même type ou non. • L’appartenances à un groupe de ressources est exclusive • Les ressources peuvent être multi-régions RESOURCE GROUP
  23. 23. Autres outils DevOps
  24. 24. Amélioration de la qualité et de la disponibilité
  25. 25. Amélioration de la qualité et de la disponibilité • Supervision de la performance, de la disponibilité, des exception et des usages • Autoscaling • Debugging en production • Load testing
  26. 26. Les outils de mesure Windows Azure Windows Azure Diagnostics Cloud Service monitoring
  27. 27. Les outils Visual Studio Online Application AVAILABILITY USAGE PERFORMANCE Tests de charge
  28. 28. Autoscaling dans Azure
  29. 29. Hypothesis-driven development & Continuous learning
  30. 30. Apprendre de la production avec les remontées de l’application • Data Driven Development • Prendre facilement des décisions d'investissement basées sur des données objectives Apprendre Apprentissage actionnable
  31. 31. Hypothesis-Driven Development http://barryoreilly.com/2013/10/21/how-to-implement-hypothesis-driven- development/
  32. 32. Conclusion
  33. 33. DevOps et Microsoft Test Develop Build Production Pre-Production Integration Deploy Environments Monitor and Learn Processes Dev/Test DE V BI Z OP S
  34. 34. Livre Blanc DevOps • http://blog.cellenza.com/a-la-une/ cellinsights-1-devops-de-la-vision- limplementation/ • http://www.cellenza.com/cellinsights • http://www.cellenza.com/Content/Cel lInsights/cell%27insights-1- devops.pdf
  35. 35. © 2012 2013 Microsoft Corporation. Tous droits réservés. Microsoft, Windows et les autres noms de produits sont des marques déposées ou des marques commerciales de Microsoft aux États-Unis et/ou dans d'autres pays. Les informations contenues dans ce document sont fournies uniquement à titre indicatif. Elles représentent l'opinion actuelle de Microsoft Corporation sur les points cités à la date de cette présentation. Microsoft s'adapte aux conditions fluctuantes du marché et ce document ne doit pas être interprété comme un engagement de la part de Microsoft ; de plus, Microsoft ne peut pas garantir la véracité de toute information présentée après la date de la présentation. MICROSOFT EXCLUT TOUTE GARANTIE, EXPRESSE, IMPLICITE OU STATUTAIRE, EN CE QUI CONCERNE CETTE PRÉSENTATION.

×