Donnez votre avis !
Depuis votre smartphone sur :
http://notes.mstechdays.fr
De nombreux lots à gagner toute les heures !!!
Claviers, souris et jeux Microsoft…
Merci de nous aider à améliorer les Techdays !

#mstechdays

Architecture/Azure/Cloud
Mise en œuvre d’une
démarche DevOps dans
Windows Azure
Vincent Labatut (Sogeti – MVP ALM)
Stéphane Goudeau (Microsoft)

Architecture/Azure/Cloud
DEVOPS : INTRODUCTION

#mstechdays

Architecture/Azure/Cloud
Le « Wall Of Confusion »
Adapter le SI aux
demandes du marché
en introduisant des
évolutions dans le
code
= Maximiser le
changement
Équipe de développement

Équipe système et
infrastructure

d’application

Maintenir la disponibilité en
contrôlant les évolutions pour
réduire les risques de pannes
= Minimiser le changement

Application
déployée

« Composants,
couches logicielles,
services,… »
#mstechdays

« Clusters, fermes,
pare-feu, réseau,
stockage,,… »
Architecture/Azure/Cloud
DevOps : Une philosophie
• Gene Kim, CTO cofondateur de Tripwire, et auteur
de l’ouvrage « The Phoenix Project : « A Novel
About IT, DevOps, and Helping Your Business Win
»
– http://itrevolution.com/the-three-ways-principles-underpinningdevops/

• Trois principes fondamentaux :
– Acquérir une compréhension globale du système
– Mettre en place des systèmes de mesure et des processus de
remontée d’information systématique
– Favoriser le développement d’une culture fondée sur
#mstechdays l’expérimentation et l'apprentissage en continu
Architecture/Azure/Cloud
ACQUÉRIR UNE COMPRÉHENSION
GLOBALE DU SYSTÈME

#mstechdays

Architecture/Azure/Cloud
Acquérir une compréhension globale du
système
• Objectifs :

– Optimiser l’intégralité des chaînes de valeur métier dépendant de
services IT
– Résoudre les problématiques au plus tôt afin de limiter leur impact

• Chaque acteur du système se doit de penser
globalement :
– Evolution de l’organisation, de ses processus, du rôle et des
périmètres de responsabilité de chacun, mais aussi en termes
d’outillage et de technologie.
– Mise en place de processus communs de déploiement, de
supervision (détection et prévention d’incidents de performance,
de sécurité, de disponibilité), de support et de remédiation.
#mstechdays

Architecture/Azure/Cloud
« Continuous Delivery » : un parfait exemple de
ce type de processus

#mstechdays

Architecture/Azure/Cloud
CONTINUOUS INTEGRATION
Continuous Integration is a software development practice where members of a team
integrate their work frequently, usually each person integrates at least daily - leading
to multiple integrations per day. Each integration is verified by an automated build
(including test) to detect integration errors as quickly as possible.”
Martin Fowler - 01 May 2006
http://code.msdn.microsoft.com/windowsazure/Fix-It-app-for-Building-cdd80df4
#mstechdays

Architecture/Azure/Cloud
Objets liés à l’automatisation de l’infrastructure
• Orchestration: Runbooks, PowerShell
• Format de déploiement de binaire:
WebDeploy, DACPAC …
• Tests de vérification de déploiement: VS Web
Test
• Modèles de configuration d’environnement:
Service Template
• Agent de supervision: Management Pack
#mstechdays
• Descriptifs d’incident : logs Intellitrace
Architecture/Azure/Cloud
Déploiement automatisé avec PowerShell
• Windows PowerShell ISE :
– http://technet.microsoft.com/en-us/library/dd315244.aspx

• Repository de script PowerShell
–
–
–
–

#mstechdays

http://gallery.technet.microsoft.com/scriptcenter
GitHub est également une source intéressante
https://github.com/windowsazure/azure-sdk-tools-samples
Notamment les branches :
• https://github.com/WindowsAzure/azure-sdk-toolssamples/tree/master/AutomatedDeployments
• https://github.com/WindowsAzure/azure-sdk-toolssamples/tree/master/solutions/infrastructure
Architecture/Azure/Cloud
CREATION D’ENVIRONNEMENT
AUTOMATISÉE AVEC POWERSHELL
Continuous Delivery is about keeping your application in a state where it is
always able to deploy into production. Continuous Deployment is actually
deploying every change into production, every day or more frequently
Jez Humble – Continuous Delivery

#mstechdays

Architecture/Azure/Cloud
Branches et environnements
Développement

CI

DEV
Branch

DEV
Intégration

Branch

MAIN

RECETTE
Report correctifs

Intermédiaire
PRODUCTION

PRODUCTION
Correctifs liés à la production
#mstechdays

Architecture/Azure/Cloud

Production
Création d’environnements à la demande
DEV A

FEATURE A

Branch

Branch

FEATURE B

DEV B

MAIN

RECETTE
#mstechdays

Architecture/Azure/Cloud

Infrastructure
as
configuration
Infrastructure
as
code
Microsoft Release Management
• Environnements
– Serveurs

• Applications
– Composants
• Automatisation
– Outils

• Groupes de sécurité
– Utilisateurs / validateurs

• Releases
– Builds TFS ou Manuellement
– Etapes du processus
#mstechdays

Architecture/Azure/Cloud
Comment ça marche ?
RECETTE
Team Foundation
Server

RM Server

Drop Location

PRODUCTION
RM Web
#mstechdays

RM Client

Architecture/Azure/Cloud
RELEASE MANAGEMENT AVEC
AZURE
Release management is an integral part of shipping products. But it’s also
an often overlooked area that invariably contributes to shipping delays,
product recalls or re-releases, and lack of well-enforced release criteria
such as feature completion, security compliance, development practices,
build and testing practices, and version control management.
#mstechdays

Architecture/Azure/Cloud
MESURE ET PROCESSUS DE
REMONTÉE D’INFORMATION
“Too often measurements of the health of a service don’t reflect the
experience customers actually have. ”
Brian Harry – TFS Product Unit Manager
#mstechdays

Architecture/Azure/Cloud
CONTINUOUS FEEDBACK AVEC
VISUAL STUDIO ONLINE
Web is fundamentally a self-service environment, and it is critical to design
APPLICATION INSIGHTS closed-loop
websites and product 'landing pages' with sophisticated
measurement and feedback systems… This ensures that the most
effective website designs will be selected…”
Ray Ozzie - The Internet Services Disruption memo
#mstechdays

Architecture/Azure/Cloud
CULTURE « DEVOPS » :
EXPÉRIMENTATION ET APPRENTISSAGE
EN CONTINU

#mstechdays

Architecture/Azure/Cloud
La culture DevOps
•

Valeurs fondamentales :
–

•

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 »).

#mstechdays

Démarche d’introduction volontaire de
défauts dans le système :
–

Vision positive de l’échec :
–

•

•

Respect mutuel, confiance réciproque, ou
systématisation du partage de l’information

–

Capacité du système à se remettre en
service après un dysfonctionnement.
« Failsafe: Guidance for Resilient Cloud
Architectures
http://msdn.microsoft.com/enus/library/windowsazure/jj853352.aspx

Architecture/Azure/Cloud
CONCLUSION
DevOps & Azure

#mstechdays

Architecture/Azure/Cloud
DevOps dans l’environnement Microsoft
Plan

Operate

REQUIREMENTS

Storyboarding
Agile Portfolio Management
Bug tracking
Work item tagging

Build |
Construct Measure |
Learn

Development and
operations management
integration
Performance Events
Intelligent issue
reproduction

Operate

Release

Develop
Source Control Management
Automated Testing
Cross team collaboration

WORKING SOFTWARE

Load Testing as a Service

#mstechdays

Architecture/Azure/Cloud

Integrated Release
Management
Configuration-based
deployments
Resources techniques
• Building a Release Pipeline with Team
Foundation Server 2012
– http://msdn.microsoft.com/en-us/library/dn449957.aspx

• ALM Rangers DevOps Tooling and Guidance
– http://vsardevops.codeplex.com

• Visual Studio Test Tooling Guides
– http://vsartesttoolingguide.codeplex.com

• Integrating Operations Manager with
Development Processes
– http://technet.microsoft.com/en-us/library/jj614609.aspx

• Testing for Continuous Delivery with Visual
Studio 2012
– http://www.microsoft.com/enus/download/details.aspx?id=35380
#mstechdays

Architecture/Azure/Cloud
Testez dès maintenant Windows Azure !
MSDN:

Partenaires:

http://aka.ms/MSDN/Avantages/Abo

150€ de
ressources

http://aka.ms/Azure/Partner

Poursuivez la
discussion
sur le stand “au
coeur du SI”
http://aka.ms/free/trial

#mstechdays

Architecture/Azure/Cloud
Digital is
business

Mise en œuvre d’une démarche DevOps dans Windows Azure

  • 2.
    Donnez votre avis! Depuis votre smartphone sur : http://notes.mstechdays.fr De nombreux lots à gagner toute les heures !!! Claviers, souris et jeux Microsoft… Merci de nous aider à améliorer les Techdays ! #mstechdays Architecture/Azure/Cloud
  • 3.
    Mise en œuvred’une démarche DevOps dans Windows Azure Vincent Labatut (Sogeti – MVP ALM) Stéphane Goudeau (Microsoft) Architecture/Azure/Cloud
  • 4.
  • 5.
    Le « WallOf Confusion » Adapter le SI aux demandes du marché en introduisant des évolutions dans le code = Maximiser le changement Équipe de développement Équipe système et infrastructure d’application Maintenir la disponibilité en contrôlant les évolutions pour réduire les risques de pannes = Minimiser le changement Application déployée « Composants, couches logicielles, services,… » #mstechdays « Clusters, fermes, pare-feu, réseau, stockage,,… » Architecture/Azure/Cloud
  • 6.
    DevOps : Unephilosophie • Gene Kim, CTO cofondateur de Tripwire, et auteur de l’ouvrage « The Phoenix Project : « A Novel About IT, DevOps, and Helping Your Business Win » – http://itrevolution.com/the-three-ways-principles-underpinningdevops/ • Trois principes fondamentaux : – Acquérir une compréhension globale du système – Mettre en place des systèmes de mesure et des processus de remontée d’information systématique – Favoriser le développement d’une culture fondée sur #mstechdays l’expérimentation et l'apprentissage en continu Architecture/Azure/Cloud
  • 7.
    ACQUÉRIR UNE COMPRÉHENSION GLOBALEDU SYSTÈME #mstechdays Architecture/Azure/Cloud
  • 8.
    Acquérir une compréhensionglobale du système • Objectifs : – Optimiser l’intégralité des chaînes de valeur métier dépendant de services IT – Résoudre les problématiques au plus tôt afin de limiter leur impact • Chaque acteur du système se doit de penser globalement : – Evolution de l’organisation, de ses processus, du rôle et des périmètres de responsabilité de chacun, mais aussi en termes d’outillage et de technologie. – Mise en place de processus communs de déploiement, de supervision (détection et prévention d’incidents de performance, de sécurité, de disponibilité), de support et de remédiation. #mstechdays Architecture/Azure/Cloud
  • 9.
    « Continuous Delivery» : un parfait exemple de ce type de processus #mstechdays Architecture/Azure/Cloud
  • 10.
    CONTINUOUS INTEGRATION Continuous Integrationis a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible.” Martin Fowler - 01 May 2006 http://code.msdn.microsoft.com/windowsazure/Fix-It-app-for-Building-cdd80df4 #mstechdays Architecture/Azure/Cloud
  • 11.
    Objets liés àl’automatisation de l’infrastructure • Orchestration: Runbooks, PowerShell • Format de déploiement de binaire: WebDeploy, DACPAC … • Tests de vérification de déploiement: VS Web Test • Modèles de configuration d’environnement: Service Template • Agent de supervision: Management Pack #mstechdays • Descriptifs d’incident : logs Intellitrace Architecture/Azure/Cloud
  • 12.
    Déploiement automatisé avecPowerShell • Windows PowerShell ISE : – http://technet.microsoft.com/en-us/library/dd315244.aspx • Repository de script PowerShell – – – – #mstechdays http://gallery.technet.microsoft.com/scriptcenter GitHub est également une source intéressante https://github.com/windowsazure/azure-sdk-tools-samples Notamment les branches : • https://github.com/WindowsAzure/azure-sdk-toolssamples/tree/master/AutomatedDeployments • https://github.com/WindowsAzure/azure-sdk-toolssamples/tree/master/solutions/infrastructure Architecture/Azure/Cloud
  • 13.
    CREATION D’ENVIRONNEMENT AUTOMATISÉE AVECPOWERSHELL Continuous Delivery is about keeping your application in a state where it is always able to deploy into production. Continuous Deployment is actually deploying every change into production, every day or more frequently Jez Humble – Continuous Delivery #mstechdays Architecture/Azure/Cloud
  • 14.
    Branches et environnements Développement CI DEV Branch DEV Intégration Branch MAIN RECETTE Reportcorrectifs Intermédiaire PRODUCTION PRODUCTION Correctifs liés à la production #mstechdays Architecture/Azure/Cloud Production
  • 15.
    Création d’environnements àla demande DEV A FEATURE A Branch Branch FEATURE B DEV B MAIN RECETTE #mstechdays Architecture/Azure/Cloud Infrastructure as configuration Infrastructure as code
  • 16.
    Microsoft Release Management •Environnements – Serveurs • Applications – Composants • Automatisation – Outils • Groupes de sécurité – Utilisateurs / validateurs • Releases – Builds TFS ou Manuellement – Etapes du processus #mstechdays Architecture/Azure/Cloud
  • 17.
    Comment ça marche? RECETTE Team Foundation Server RM Server Drop Location PRODUCTION RM Web #mstechdays RM Client Architecture/Azure/Cloud
  • 18.
    RELEASE MANAGEMENT AVEC AZURE Releasemanagement is an integral part of shipping products. But it’s also an often overlooked area that invariably contributes to shipping delays, product recalls or re-releases, and lack of well-enforced release criteria such as feature completion, security compliance, development practices, build and testing practices, and version control management. #mstechdays Architecture/Azure/Cloud
  • 19.
    MESURE ET PROCESSUSDE REMONTÉE D’INFORMATION “Too often measurements of the health of a service don’t reflect the experience customers actually have. ” Brian Harry – TFS Product Unit Manager #mstechdays Architecture/Azure/Cloud
  • 20.
    CONTINUOUS FEEDBACK AVEC VISUALSTUDIO ONLINE Web is fundamentally a self-service environment, and it is critical to design APPLICATION INSIGHTS closed-loop websites and product 'landing pages' with sophisticated measurement and feedback systems… This ensures that the most effective website designs will be selected…” Ray Ozzie - The Internet Services Disruption memo #mstechdays Architecture/Azure/Cloud
  • 21.
    CULTURE « DEVOPS» : EXPÉRIMENTATION ET APPRENTISSAGE EN CONTINU #mstechdays Architecture/Azure/Cloud
  • 22.
    La culture DevOps • Valeursfondamentales : – • 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 »). #mstechdays Démarche d’introduction volontaire de défauts dans le système : – Vision positive de l’échec : – • • Respect mutuel, confiance réciproque, ou systématisation du partage de l’information – Capacité du système à se remettre en service après un dysfonctionnement. « Failsafe: Guidance for Resilient Cloud Architectures http://msdn.microsoft.com/enus/library/windowsazure/jj853352.aspx Architecture/Azure/Cloud
  • 23.
  • 24.
    DevOps dans l’environnementMicrosoft Plan Operate REQUIREMENTS Storyboarding Agile Portfolio Management Bug tracking Work item tagging Build | Construct Measure | Learn Development and operations management integration Performance Events Intelligent issue reproduction Operate Release Develop Source Control Management Automated Testing Cross team collaboration WORKING SOFTWARE Load Testing as a Service #mstechdays Architecture/Azure/Cloud Integrated Release Management Configuration-based deployments
  • 25.
    Resources techniques • Buildinga Release Pipeline with Team Foundation Server 2012 – http://msdn.microsoft.com/en-us/library/dn449957.aspx • ALM Rangers DevOps Tooling and Guidance – http://vsardevops.codeplex.com • Visual Studio Test Tooling Guides – http://vsartesttoolingguide.codeplex.com • Integrating Operations Manager with Development Processes – http://technet.microsoft.com/en-us/library/jj614609.aspx • Testing for Continuous Delivery with Visual Studio 2012 – http://www.microsoft.com/enus/download/details.aspx?id=35380 #mstechdays Architecture/Azure/Cloud
  • 26.
    Testez dès maintenantWindows Azure ! MSDN: Partenaires: http://aka.ms/MSDN/Avantages/Abo 150€ de ressources http://aka.ms/Azure/Partner Poursuivez la discussion sur le stand “au coeur du SI” http://aka.ms/free/trial #mstechdays Architecture/Azure/Cloud
  • 27.