đŻ SLO, SLI et error budgets : arrĂȘter de viser le 100 %
đ Introduction
« Notre objectif, câest 100 % de disponibilitĂ©. » On lâentend en rĂ©union, ça sonne bien, et câest une mauvaise idĂ©e. Viser 100 %, câest viser lâimpossible : il y aura toujours une panne rĂ©seau, un dĂ©ploiement ratĂ©, un fournisseur en rade. Pire, chaque « neuf » supplĂ©mentaire (de 99,9 % Ă 99,99 %) coĂ»te exponentiellement plus cher â en argent, en astreintes, en features non livrĂ©es.
La pratique SRE (Site Reliability Engineering), formalisĂ©e par Google, propose un cadre plus honnĂȘte : trois notions â SLI, SLO et error budget â pour choisir la bonne fiabilitĂ© et arbitrer entre livrer vite et rester stable. Câest le prolongement naturel des mĂ©triques DORA : une fois quâon mesure sa livraison, on veut piloter sa fiabilitĂ©.
đ SLI, SLO, error budget : de quoi parle-t-on ?
Les trois se répondent, du signal brut à la décision :
- Le SLI (Service Level Indicator) est une mesure : le pourcentage de requĂȘtes servies sous 300 ms, le taux de rĂ©ponses non-erronĂ©es, la disponibilitĂ©. Bien choisi, il reflĂšte lâexpĂ©rience rĂ©elle de lâutilisateur.
- Le SLO (Service Level Objective) est la cible quâon se fixe sur ce SLI : « 99,9 % des requĂȘtes sous 300 ms, mesurĂ© sur 30 jours ».
- Lâerror budget est ce qui reste :
100 % â SLO. Un SLO de 99,9 % autorise 0,1 % dâĂ©cart, soit environ 43 minutes dâindisponibilitĂ© par mois. Ce nâest pas un Ă©chec, câest un budget â fait pour ĂȘtre dĂ©pensĂ©.
đ Ce que « 99,9 % » veut vraiment dire
Les pourcentages sont trompeurs tant quâon ne les traduit pas en temps. Sur une base de 30 jours :
| DisponibilitĂ© | Budget dâerreur | IndisponibilitĂ© tolĂ©rĂ©e / mois |
|---|---|---|
| 99 % | 1 % | ~7 h 12 |
| 99,9 % | 0,1 % | ~43 min |
| 99,95 % | 0,05 % | ~22 min |
| 99,99 % | 0,01 % | ~4 min |
Passer de 99,9 % Ă 99,99 %, ce nâest pas « un peu mieux » : câest diviser par dix la marge dâerreur, donc dĂ©cupler les exigences sur les tests, la redondance, lâastreinte. La vraie question nâest pas « peut-on faire mieux ? » mais « nos utilisateurs ont-ils besoin de mieux ? ».
đŻ Lâerror budget, un outil de dĂ©cision
Câest lĂ que le concept devient puissant. Lâerror budget met fin Ă la guerre Ă©ternelle entre les dĂ©veloppeurs (qui veulent livrer) et lâexploitation (qui veut la stabilitĂ©), en donnant une rĂšgle commune et chiffrĂ©e :
- Il reste du budget ? On continue à livrer, à prendre des risques, à déployer souvent.
- Le budget est Ă©puisĂ© ? On gĂšle les nouvelles features et on remet de lâĂ©nergie dans la fiabilitĂ© â tests, observabilitĂ©, corrections â jusquâĂ revenir dans les clous.
La dĂ©cision ne dĂ©pend plus de qui parle le plus fort en rĂ©union, mais dâun chiffre que tout le monde partage. Encore faut-il mesurer ce chiffre : sans observabilitĂ© â traces, mĂ©triques, monitoring temps rĂ©el â un SLO nâest quâune intention.
â ïž Quelques prĂ©cautions
- Mesure le bon SLI. Un SLO sur « le CPU sous 80 % » ne dit rien Ă lâutilisateur. Mesure ce quâil ressent : latence, taux dâerreur, disponibilitĂ© des parcours clĂ©s.
- Ne confonds pas SLO et SLA. Le SLA est contractuel et engage juridiquement ; le SLO est ton objectif interne, volontairement plus strict, pour réagir avant de violer le contrat.
- Un SLO se rĂ©vise. Trop de faux positifs qui rĂ©veillent lâastreinte pour rien ? Lâobjectif est peut-ĂȘtre trop ambitieux au regard du besoin rĂ©el. Le bon SLO est celui qui dĂ©clenche une action utile, pas une alarme de plus.
đ Conclusion
SLI, SLO, error budget : trois mots pour une idĂ©e saine â la fiabilitĂ© parfaite nâexiste pas, alors autant choisir consciemment le niveau quâon vise, et utiliser la marge restante pour avancer. Commence modestement : un SLI qui reflĂšte lâexpĂ©rience utilisateur, un SLO rĂ©aliste, et la discipline de geler les features quand le budget est cramĂ©. Tu Ă©changeras les dĂ©bats de couloir contre une dĂ©cision partagĂ©e et chiffrĂ©e.
đ Liens utiles
/faq
Questions fréquentes
Quelle est la différence entre SLI, SLO et SLA ?
+
Un SLI est une mesure (le pourcentage de requĂȘtes rapides, par exemple). Un SLO est l'objectif interne qu'on se fixe sur cet indicateur (99,9 % sur 30 jours). Un SLA est un engagement contractuel envers un client, avec pĂ©nalitĂ©s Ă la clĂ© â et il est en gĂ©nĂ©ral moins strict que le SLO qu'on se donne en interne.
Qu'est-ce qu'un error budget ?
+
C'est la part d'indisponibilité qu'on s'autorise : 100 % moins le SLO. Un SLO de 99,9 % laisse un budget d'erreur de 0,1 %, soit environ 43 minutes d'indisponibilité par mois. Tant qu'il reste du budget, on peut prendre des risques ; une fois épuisé, on se concentre sur la fiabilité.
Pourquoi ne pas viser 100 % de disponibilité ?
+
Parce que c'est impossible en pratique et contre-productif : chaque « neuf » supplémentaire coûte exponentiellement plus cher, et viser la perfection interdit de livrer quoi que ce soit de nouveau. Un peu d'indisponibilité est acceptable ; l'error budget sert justement à dépenser cette marge pour avancer.