Le DevOps, c'est quoi exactement ?
Tags: edito, devops, sre
Published: 2021-03-05 13:05:56

---
title: Le DevOps, c'est quoi exactement ?
published: true
date: 2021-03-05 00:00:00 UTC
tags:
- edito
- devops
- SRE
canonical_url: https://tanguy.baudrin.fr/posts/le-devops-c-est-quoi/
---

**Pour ce premier article, je vous propose un edito ou je vous partage ma vision et ma compréhension de ce qui aujourd'hui est devenu un "buzz-word"**

## DevOps, ça veut dire quoi ?

> Le devops — ou DevOps (selon la graphie habituellement utilisée en langue anglaise) — est un mouvement en ingénierie informatique et une pratique technique visant à l'unification du développement logiciel (dev) et de l'administration des infrastructures informatiques (ops), notamment l'administration système.</p>
> — <cite>[Wikipedia](https://fr.wikipedia.org/wiki/Devops)</cite>

Comme le décrit si bien Wikipedia, le DevOps c'est avant tout un **mouvement**, une **philosophie**, au même titre que d'autres mouvement bien connus comme l'Agilité avec lequel il a d'ailleurs de fort liens.

Aujourd'hui le terme est devenu **"à la mode"** dans le monde de l'informatique et on le retrouve dans de nombreux **usages qui ne sont pas adapté** (Non, non, DevOps ne sers pas à qualifier une personne qui sais écrire du code et administrer un serveur)

## Et quel est le but ?

Le mouvement DevOps est la suite naturelle **du mouvement Agile**, ce mouvement ayant à l'origine pour objectif de permettre aux **équipes métiers** et aux **équipes de développement** de travailler ensemble à l'optimisation de la **production de valeur ajoutée** directement pour les utilisateurs.

Le mouvement DevOps partage ce **même objectif**, mais en incluant également les **équipes opérationnelles** _(Ingénieurs réseau, Administrateurs système, Administrateurs de base de données etc...)_ dans la recherche de la meilleure façon de produire de la **valeur ajouté pour les utlisateurs finaux**.

Vous l'aurez donc compris l'objectif du mouvement Devops est d'embrasser l'ensemble des équipes IT et de rayonner bien aux-delà des "simples" équipes de développement ou d'opérationnels _(On entends même aujourd'hui parler de DevSecOps, et pouquoi pas un jour de DevSecFinOps...)_.

## Ok, mais comment ça fonctionne ?

Dans les **concepts** que l'on va retrouver dans la **mise en place du mouvement DevOps** au sein d'une organisation on retrouvera systématiquement différentes notions

### Observabilité

L'un des piliers du mouvement DevOps est l'**observabilité**, l'observabilité comme son nom l'indique, consiste à rendre "observable" son SI et les différentes solutions déployées. Cela va bien souvent consister à **exposer des "métriques"** _(latence, temps de réponse, nombre d'utilisateurs)_ dans le but de mesurer de manière **objective et factuelle** le niveau de service rendu à l'utlisateur. Cela ne comprends donc pas que des **indicateurs technique**s, mais aussi des **indicateurs métier** _(satisfaction client, taux de rebond, engagement des utilisateurs)_

### Automatisation

Une autre brique importante va être la mise en place d'un maximum **d'automatisation** dans les process de déploiement et de maintenance des solutions. L'objectif étant d'avoir des **actions répétables, traçables et qui minimisent au maximum le risque d'erreur humaine**. On va alors mettre en place des processus d'intégration continue, 

### Gestion des incidents

Comme pour l'agilité, le mouvement DevOps prone **l'amélioration continue**, et cela va passer par la mise en place de pratiques de **gestion d'incident** décrites et appliquées. Dans les phases les plus avancées de la mise en place du mouvement DevOps on va commencer à parler de **"Chaos Engineering"** ou l'on va volontairement couper des services au niveau de l'infrastructure pour valider le bon fonctionnement de son service.

## Et en pratique comment je mets en place tout ça ?

**Dans la pratique** le DevOps en tant que tel, et bien **ça n'existe pas**... En réalité, il n'y a pas de **recette toute faite** pour la mise en place du DevOps, celle-ci doit être **adapté au contexte** de l'entreprise ou de l'équipe qui souhaite le mettre en place. 

Dans les faits, on retrouve souvent aujourd'hui la mise en place du **"[Site reliability engineering](https://sre.google)"** (ou SRE), qui est une approche pratique de la démarche qui est **proposée par Google**. Elle apporte des solutions concrète a mettre en pratique (SLI/SLA/SLO, Error budget, Post-morter). Mais **le "SRE" n'est pas le "DevOps"**, tout comme le SCRUM n'est pas l'agilité. Pour faire une analogie dans le monde du **développement orienté objet**, on peut considérer que le **DevOps est une classe abstraite**, et que **le SRE est une implémentation** de cette classe abstraite.

**J'espère que cet article vous aura aidé à y voir plus clair sur ce qu'est le DevOps**