Ingénierie du chaos — Chaos Engineering in French — Comment convaincre votre boss de se lancer dans le Chaos Engineering ?

Christophe Rochefolle
Paris Chaos Engineering Community
7 min readFeb 18, 2018

Un article basé sur notre présentation lors du second meetup de la Paris Chaos Engineering Community

Vous pouvez commencer par annoncer que vous allez tout casser en production, que ça va être fun ! Soit la méthode dit des « Gros Sabots ». On va vous voir venir de loin, mais à part faire du bruit, il est fort probable que çà ne soit pas des plus efficaces.

Probablement qu’on va plutôt vous demander un R.O.I., en jouant sur le nombre d’incidents critiques par an, le coût moyen d’un incident et des hypothèses de diminution, vous pourrez sans trop de difficultés construire une proposition avec retour d’investissement sur 2–3 ans.

Le seul souci, c’est qu’entre un projet qui va permettre d’apporter du revenu supplémentaire et un autre qui va potentiellement éviter d’en perdre, en cas d’arbitrage, le premier passera forcement.

L’approche rationnelle n’est pas forcément la meilleure pour aborder un sujet tel que l’ingénierie du chaos. Il va falloir travailler vos stratégies d’influences.

Phase 1 : rendre le sujet familier

« Confronté à une épreuve, l’homme ne dispose que de trois choix : combattre, ne rien faire ou fuir », écrivait en 1976 le biologiste Henri Laborit, le sujet étant relativement récent et avec une visibilité encore réduite, il est important de commencer par permettre aux membres de votre comité de direction de s’approprier le concept pour éviter un rejet instinctif.

Commencer par partager sur les réseaux sociaux, internes comme externes, quelques articles sur le sujet :

· Netflix engage des “ingénieurs du chaos” pour mettre à l’épreuve son service — ZDNet — Septembre 2014

· Principes d’Ingénierie du Chaos de Netflix — InfoQ — Septembre 2015

· AWS Summit Gameday : Testez la résilience de vos applications — Blog D2SI — Juin 2017

· Chaos Engineering ou le stress ultime des applications et de l’infrastructure — Le Mag IT — Novembre 2017

· Voyages-sncf mise sur l’ingénierie du chaos pour éprouver son infra — Journal du Net — Novembre 2017

En fonction des outils utilisés par les membres du comité de direction, il faut juste trouver le moyen de leur faire parvenir ces articles. J’ai eu la chance d’être suivi sur Twitter par plusieurs membres du CODIR, je n’ai pas hésité à utiliser ce vecteur pour communiquer, y compris en mettant en avant des tweets de personnalités qui peuvent contribuer à les convaincre :

Tweet de Frédéric OUDEA, DG de la SG

L’objectif est uniquement de rendre le sujet familier avant de passer à la phase suivante.

Phase 2 : identifier les différents profils

Pour ajuster votre discours à chacun de vos interlocuteurs, il est nécessaire d’identifier les différents profils, notamment en vous appuyant sur la sociodynamique des groupes.

L’élan sociodynamique, de Jean-Christian Fauvet (Editions d’organisation)

Vous économiserez beaucoup d’énergie en apprenant à décoder les logiques d’action des acteurs et saurez ainsi à qui consacrer de l’énergie en priorité :

  • Savez-vous quels sont les enjeux des acteurs que vous souhaitez embarquer ?
  • Qu’ont-ils à gagner ou à perdre s’ils collaborent ou non ?
  • Estimez ensuite leur poids dans la dynamique : quelle influence ont-ils sur les autres ?

Prenez le temps d’analyser cela pour discerner où sont les freins et leviers majeurs sur lesquels vous pouvez jouer pour faire évoluer les positions des uns et des autres. Certaines objections sont des prétextes des opposants pour vous tester, d’autres correspondent effectivement à des points bloquants. Vous gagnerez à les étudier avec eux -pas nécessairement sous le ‘feu des projecteurs’ des réunions formelles…

Une fois repérées les alliances qui émergent spontanément, vous allez ainsi développer les alliances les plus favorables à votre projet

  • Les constructifs et engagés : consacrez-leur l’essentiel de votre temps, sans oublier que les constructifs peuvent s’opposer parfois ; vous devez les soigner en priorité
  • Les indifférents (passifs et hésitants) : faites-les participer, souvent par l’entremise des constructifs ; autant que possible évitez de les braquer, il serait dommage de déstabiliser la dynamique par une maladresse : soignez votre communication
  • les opposants : écoutez-les chaque fois qu’ils ont des raisons qui méritent d’être intégrées, pas si c’est une opposition de principe. Concentrez-vous sur les opposants qui ont du pouvoir ou de l’influence sur les autres et voyez-les si possible dans des situations informelles.

Faire évoluer la dynamique globale peut prendre de multiples formes. Parfois il vous suffira de changer le regard de certains acteurs sur votre projet… Soyez attentif à l’évolution des positions plutôt qu’à la « photographie » de celles-ci à un instant T pour mobiliser les acteurs qui influencent la dynamique vers la synergie.

Phase 3 : le bon discours en fonction des profils

Une fois les différents profils identifiés, on va pouvoir adapter son discours à leurs attentes, craintes ou questions. Ne pas hésiter à jouer sur les émotions que sont des composantes essentielles dans nos prises de décisions.

La première émotion, la plus évidente dans ce contexte, est la peur : la peur de l’incident majeur. Celui qui va impacter de manière significative votre chiffre d’affaire. A titre d’exemple, 5 minutes d’interruptions a un impact de près d’un million de dollars pour Google/Alphabet, cent mille dollars pour Netflix et trois millions pour Apple :

Outage Outrage: the True Cost of Tech Giant Downtime by Jolt

D’ailleurs, c’est au moment de ce type d’incident qu’il ne faut pas hésiter à être opportuniste pour avancer vos pions, afin de proposer de nouvelles pratiques qui permettront de limiter les impacts lors des prochains incidents.

Pour cela, il faut commencer à introduire le sujet par la résilience — Capacité à absorber une perturbation, à se réorganiser, et à continuer de fonctionner de la même manière qu’avant.

Werner Vogels, Vice President & Chief Technology Officer chez Amazon, présente le sujet en expliquant qu’avec la taille et l’évolution permanente de nos infrastructures, à chaque minute, quelque chose quelque part tombe en panne : “Everything fails all the time”. Il ne s’agit plus d’éviter les pannes, mais d’en limiter l’impact pour que tel le roseau dans la Fable de La Fontaine, la tempête passe sans encombre.

Vous pouvez mettre en avant, notamment auprès du directeur production/exploitation, qu’il vaut mieux mettre en place une expérimentation en journée avec toutes les compétences présentes, et ainsi pouvoir entrainer ses équipes, limiter les impacts, que de réagir de nuit avec des possibilités et ressources réduites. L’objectif ultime de l’ingénierie du chaos est que l’on puisse dormir sur ses deux oreilles, sans s’inquiéter d’incidents éventuels.

Vous pouvez également rassurer en mettant en évidence les liens avec des pratiques actuelles. Dans le cadre de Plan de Continuité d’Activité, des exercices sont effectués en production pour tester la bascule en cas de perte d’un datacenter sur un autre site. Ce type d’exercice est au cœur de la démarche d’ingénierie du chaos, la différence est dans la mise en œuvre : il ne s’agit plus de la faire manuellement de temps à autres, mais de l’industrialiser pour pouvoir la faire en continue en automatique.

De même, une expérimentation d’ingénierie du chaos se compose d’une injection de perturbation et de l’analyse des effets, cette analyse est très proche des REX ou post-mortem sur incidents, avec notamment la recherche des causes racines. La pratique régulière lors d’exercices planifiés va permettre de s’améliorer et de mettre en place des actions préventives plutôt que correctives. Par exemple, cela permettra d’éprouver vos systèmes de monitoring et d’alerting, que l’on teste rarement alors que c’est l’élément essentiel d’un dispositif permettant de limiter les impacts.

Vous pouvez d’ailleurs y inclure votre responsable de la sécurité des systèmes d’information, les expérimentations effectuées en production vont permettre également de renforcer les défenses et la sécurité des systèmes : Security Chaos Engineering: A new paradigm for cybersecurity.

Pour les plus inquiets, n’hésitez pas à montrer que des expériences en production de ce type existent dans de plus en plus de sociétés voir la Carte des sociétés, contributeurs, outils et pratiques :

· des sociétés d’hébergement et Cloud : Amazon, Azure, Google, Digital Ocean, Pivotal Cloud Foundry, Twillio, Dropbox

· des sociétés qui s’adressent à des clients finaux : Netflix, Facebook, LinkedIn, Uber, OUI.sncf,…

· et même des banques : Fidelity Investments.

Pour les plus aventureux, il est préférable de mettre en avant le coté innovant et précurseurs de ces pratiques. Même si nous sommes de plus en plus nombreux, c’est une discipline qui reste à explorer.

En résumé, tel la fable des aveugles et de l’éléphant, chacun y trouvera un axe qui le rassurera ou le motivera :

Illustration par la Fable indienne sur l’intelligence collective: les aveugles et l’éléphant

Cette approche vous permettra de vous trouver des alliés constructifs qui vous permettront de vous lancer dans une démarche d’ingénierie du chaos.

Toujours pas convaincu ?

Si vous pensez toujours que le R.O.I. est le seul vecteur, et que cet article n’est que du « bla-bla », nous vous invitons à consulter l’étude de Gary Yukl dans Leadership in Organization :

Etudes : Yukl, Lepsinger, & Lucia, 1992; Yukl, Chavez, & Seifert, 2005; Yukl, Seifert, & Chavez, 2008

La persuasion rationnelle comme le ROI, n’entraine que 23% d’engagements des acteurs, les stratégies d’inspiration (90% d’engagement), consultation (55%) et sympathie personnelle (42%) sont bien plus efficaces.

Dans tous les cas, il vaut mieux offrir une bière pour se faire bien voir (31%) que de mettre la pression (3%) :

N’hésitez pas à partager vos stratégies en commentaires !

(english version)

--

--

Christophe Rochefolle
Paris Chaos Engineering Community

CTO SNCF Connect - Experienced IT executive providing technology & organization to improve quality & agility of IT systems