Introduction à la démarche Devops

38
La démarche DevOps Romain Chalumeau – 18/06/2015 …ou l'agilité du développement jusqu'à l'exploitation du SI 1

Transcript of Introduction à la démarche Devops

Page 1: Introduction à la démarche Devops

La démarche DevOps

Romain Chalumeau – 18/06/2015

…ou l'agilité du développement jusqu'à l'exploitation du SI

1

Page 2: Introduction à la démarche Devops

Posons la problématique ! Aujourd’hui, nous connaissons une véritable fusion entre le business et

l’IT

Toute entreprise, quelque soit son secteur d’activité, s’appuie sur des services informatiques. La réponse à des besoins de plus en plus changeants et de plus en plus complexes dépend de sa capacité à produire des services IT de qualité

de plus en plus rapidement

L’indicateur clé du business agile : le « Time to Market » !

Page 3: Introduction à la démarche Devops

Oui mais…

Cela implique deux métiers de nature différente

DÉVELOPPEMENT & OPÉRATIONS

Page 4: Introduction à la démarche Devops

Dev versus Ops : “Fight !”

Utilisateurs

Stabilité !

Business

Changements!

DEV OPS

Vite, vite !

La prod, c’est sérieux !• Vocabulaire

• Technologies• Méthodes• Responsabilités• Objectifs

Page 5: Introduction à la démarche Devops

Agile vs waterfall : “Fight !”TEMPS

CHAN

GEM

ENTS

RÉACTIVITÉ AU BUSINESS STABILITÉ DU SERVICE

Page 6: Introduction à la démarche Devops

…puisqu’on en rit !

Et on connait tous cette problématique…

Page 7: Introduction à la démarche Devops

Devops est un mouvementvisant à l'alignement du SI

sur les besoins de l'entreprise

Une définition du Devops

Page 8: Introduction à la démarche Devops

Devops est un modèle de développement et une stratégie opérationnelle qui vise à améliorer la

communication entre les développeurs et l’exploitation afin de diminuer le « Time to

market »

Tentons une autre définition…

Page 9: Introduction à la démarche Devops

DEV vs OPS

On doit réduire le time to market !!!

Page 10: Introduction à la démarche Devops

Comment échouer ?

Analyse (et carricatures) de trois démarches qui ne sont pas Devops !

Page 11: Introduction à la démarche Devops

Laissez nous faire !

On va faire un système unique

pour tous les produits

Si vous avez besoin d’une machine,

vous cliquerez sur un bouton !

DEV vs OPS

Page 12: Introduction à la démarche Devops

Machines certes à la demande mais pas d’environnement de développement

Ca ne marche pas pour notre produit.

On va se débrouiller sans vous !

DEV vs OPSUsine à gaz !

Page 13: Introduction à la démarche Devops

C’est une affaire de dev

!

On va faire du déploiement en

continu

Pas besoin de paquets,

directement du code au

déploiement !

DEV vs OPS

Page 14: Introduction à la démarche Devops

Patches de sécurité non mis à jour

Y’a une procédure pour l’astreinte ?

DEV vs OPSCompilateur, VCS, mode debug en production

Page 15: Introduction à la démarche Devops

DEV OPS

Il n’y a pas de job description “devops”

DEVOPS vs vs

Page 16: Introduction à la démarche Devops

Une nouvelle manière de travailler

Les méthodes de développement agiles ont permis de réduire les écarts entre le business et le développement logiciel.

Une nouvelle organisation, de nouveaux rôles, de nouveaux outils ont permis de recentrer les efforts sur les besoins du business.

La démarche Devops propose un cadre de travail aux Devs et aux Ops afin de converger vers des équipes homogènes.

Page 17: Introduction à la démarche Devops

Les grandes idées

• Devops n’est pas un process, ni un standard, ni une équipe, c’est une manière de travailler entre les équipes techniques

• Les équipes techniques convergent vers des équipes multi-compétences, orientées produit

• Les process sont unifiés, les outils sont partagés, et adaptés au produit et à la techno pour plus d’efficacité

• Tout peut être automatisé !

Page 18: Introduction à la démarche Devops

DEV and OPSConstruction

Exploitation

PRODUIT A

PRODUIT B

We build it, we run it !

Page 19: Introduction à la démarche Devops

Les deux piliers d’une démarche Devops

COLLABORATION AUTOMATISATION

Page 20: Introduction à la démarche Devops

COLLABORATION

Les 4 valeurs de l’agilité s’appliquent au devops

• Les individus et leurs interactions plus que les processus et les outils.

• Du logiciel service IT qui fonctionne 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.

Page 21: Introduction à la démarche Devops

Pragmatiquement…

• Standup meetings avec : Incidents de la veilleFonctionnalités en cours et à venirAttentes businessTechno, architecture, …

• Partage des planningsPas de projets séparésSprints / KanbanPlanification des releases

• Accès partagés aux outils de reportingIndicateurs qualitéMonitoringTickets et bug trackers

• Echanger sur tout, tout simplement !Facilité avec des bureaux mutualisés

COLLABORATION

Page 22: Introduction à la démarche Devops

AUTOMATISATION

Automatiser pour se concentrer sur le besoin

• Intégration continue

• Delivery continue

• Tests automatisés

• Infrastructure as a code

• Feedback continu

• Et si suffisamment mature, déploiement continu

Page 23: Introduction à la démarche Devops

Infra cible

Continuous, continuous, continuous !

dev

ops

testeur

intégrateur

EquipeDevops

- merge - compile- unit test- version- package- changelog- …

- schedule deployment

- functional testing

- …

Logiciel

Configuration

Tests

Infra

Continuous Feedback

Continuous Feedback

DML

CMDB

SCM

Continuous Monitoring

Continuous Integration

Continuous Delivery

Continuous Deployment

Continuous Improvement

Everything as a code !

Page 24: Introduction à la démarche Devops

Version control

GITSubversionMercurialClearcase…

SCM

Page 25: Introduction à la démarche Devops

Continuous Integration

Continuous Delivery

Continuous Deployment

Continuous integration & delivery

JenkinsCapistranoBuildBotFabricTravis CICruiseControlTeamCity…

Page 26: Introduction à la démarche Devops

Continuous Delivery

Continuous Deployment

Tests automatisés

SeleniumQTPJmeterKaliosSilk TestPHP Vulnerability HunterArachni …

Page 27: Introduction à la démarche Devops

Configuration management

ChefPuppetAnsibleCfengineSalt StackRundeck…

CMDB

Page 28: Introduction à la démarche Devops

Software repository

ArtifactoryNexusRepreproPyPICPANYum…

DML

Page 29: Introduction à la démarche Devops

Infrastructure management

CloudstackOPenstackMesosVMWareVagrant…

Infra cible

Page 30: Introduction à la démarche Devops

Monitoring et feedback

NagiosXymonLogstash/KibanaSonarWireSharkCactiZabbix…

Continuous Feedback

Continuous Monitoring

Page 31: Introduction à la démarche Devops

Pour aller plus loin : partager les mêmes livrables• Le Buzz Docker https://www.docker.com/• Un seul livrable pour dev et ops : une image de l’applicatif et

de ses dépendances

• Cloisonne l’application dans son environnement de run• Facilite la distribution et le déploiement• Facilite l’automatisation : immuabilité entre les stages (dev,

recette, prod)

COLLABORATION & AUTOMATISATION

Page 32: Introduction à la démarche Devops

Pour aller encore plus loin : se faire mal !• Développé par Netflix• Disponible en open source https://

github.com/Netflix/SimianArmy• Simulation d’incidents aléatoires sur l’infra

Obliger l’équipe devops (aussi bien dev que ops) à penser la tolérance du service et la résolution automatique des incidents de l’infrastructure

COLLABORATION & AUTOMATISATION

Page 33: Introduction à la démarche Devops

Résumons tout ça…

Page 34: Introduction à la démarche Devops

Collaboration, puis automatisation

• Devops est une réponse au besoin business de réduire le “time to market” tout en améliorant la qualité.Elle repose sur une collaboration entre les Devs et Ops et une automatisation du workflow

• La collaboration est le premier chantier à travailler mais c’est un véritable changement de culture à conduire

Réorganiser les équipesDéfinir des objectifs communs Encourager et entretenir l’échangeComprendre les besoins de l’un et les contraintes de l’autre

• Cette collaboration acquise, automatiser l’ensemble de la chaine de travail

Investir sur le métier plutôt que sur la tâcheGagner en qualité, gagner en tempsGagner en transfert de compétences

Page 35: Introduction à la démarche Devops

Des résultats quantifiables

• Une réduction de 12% du délai de déploiement de nouveaux logiciels

• Une augmentation de 11% de la clientèle

• Une croissance de 10% du chiffre d'affaires.

Rapport CA technologies

Page 36: Introduction à la démarche Devops

Un engouement réel

• Une démarche adoptée dans 25% des 2000 plus grands groupes, et en augmentation

• Un marché passant de 1,9 milliards $ en 2014 à 2,3 milliards $ en 2015

Rapport Gartner

• 94% des entreprises françaises prennent le cap Devops(6% des entreprises françaises ne déploient pas plus de 3 applications par an)

Rapport Vanson Bourne

Page 37: Introduction à la démarche Devops

Les freins

• Peur et résistance au changement

• Risque de divergence entre les technos et pratiques des équipes produits

Enquète Zenika

Page 38: Introduction à la démarche Devops

Des opportunités en vue !

• 60% des participants souhaiteraient pour leur entreprise et eux-mêmes des formations et du conseil.

• 15% des participants attendent une assistance technique ou un audit de leurs processus de livraison logicielle.

Enquète Zenika