418 DevOps Votre spécialiste sérénité informatique

Automatisation, infrastructure as code et CI/CD

Toute tâche que vous répétez à l'identique est une tâche qu'une machine fera plus vite que vous, à trois heures du matin, sans se tromper et sans oublier une étape.

Où part le temps

Une mise en production qui prend deux heures et mobilise trois personnes. Un export client refait à la main chaque lundi. Un serveur reconstruit de mémoire parce que la procédure n'existe que dans la tête de celui qui l'a montée. Un fichier recopié d'un logiciel à l'autre parce que les deux ne se parlent pas.

Pris isolément, chacun de ces gestes semble supportable. Additionnés sur une année, ils représentent des semaines de travail et, surtout, autant d'occasions de se tromper au pire moment.

Ce que j'automatise

  • Les déploiements, décrits en code et donc reproductibles à l'identique, y compris quand il faut remonter une machine en urgence.
  • Les chaînes d'intégration et de livraison continues, avec tests, validation et retour arrière en un geste.
  • Les tâches planifiées et les traitements par lot, avec la supervision qui va avec, parce qu'une tâche qui échoue en silence est pire que pas de tâche du tout.
  • La collecte de données sur HTTP et les robots d'automatisation, pour récupérer ce qu'aucune interface ne vous exporte.
  • Les API internes qui font enfin dialoguer vos logiciels entre eux, sans ressaisie.

L'infrastructure décrite en code

Décrire une infrastructure en code veut dire que vos serveurs, vos réseaux et leur configuration existent sous forme de fichiers versionnés, au même titre que votre application. Trois conséquences très concrètes.

On sait ce qui tourne, puisque c'est écrit. La documentation cesse d'être un document qui vieillit dans un coin, elle devient le code lui-même.

On peut tout remonter. Après un incident majeur, reconstruire une plateforme complète devient une opération d'une heure plutôt qu'un projet de plusieurs jours.

Et on peut faire évoluer sans casser, parce que chaque changement est relu, testé et réversible.

Combien de temps avant que ce soit rentable

La règle empirique est simple : automatiser coûte à peu près trois fois le temps de faire la tâche une fois. À partir de la troisième exécution, on est à l'équilibre. Au-delà, tout est gagné, et la fiabilité vient en prime.

Ce qui veut aussi dire que tout ne mérite pas d'être automatisé. Une opération faite une fois par an, différente à chaque fois, reste plus rapide à la main. Je vous le dirai quand ce sera le cas.

Questions fréquentes

Ce qu'on me demande le plus souvent

Qu'est-ce que l'infrastructure as code ?

C'est le fait de décrire ses serveurs, ses réseaux et leur configuration dans des fichiers versionnés, plutôt que de les configurer à la main dans une interface. L'infrastructure devient reproductible : on sait ce qui tourne, on peut la remonter à l'identique et chaque changement est relu et réversible.

Faut-il tout automatiser ?

Non. Automatiser coûte environ trois fois le temps d'exécuter la tâche une fois : en dessous de trois exécutions, ce n'est pas rentable. Une opération annuelle et toujours différente reste plus rapide à la main.

Mes équipes pourront-elles reprendre la main ?

C'est le but. Le code d'automatisation vous appartient, il est documenté et commenté en français, et je forme la ou les personnes qui devront le faire vivre. Une automatisation que personne ne comprend est une dette, pas un gain.

Travaillez-vous avec Ansible, Terraform, Docker ?

Oui, ce sont les outils courants du domaine et je les utilise selon ce que réclame le contexte. Le choix se fait sur ce que vos équipes peuvent maintenir après mon départ, pas sur ma préférence personnelle.

Une tâche que vous refaites toutes les semaines depuis deux ans ?

Décrivez-la moi en quelques lignes. Je vous dirai si elle s'automatise, combien de temps cela prendrait et ce que vous y gagneriez.