Accueil
Thèmes
Objectif de niveau de service
Un objectif de qualité de service (SLO) est un engagement de performance contractuel pour un service donné sur une période donnée. Les SLO établissent les critères de performance requis des services et permettent aux parties prenantes de suivre l'état de santé de services spécifiques, ainsi que d'optimiser les décisions en conciliant innovation et fiabilité.1
Les SLO sont quantifiés par des indicateurs de qualité de service (SLI), des indicateurs numériques d'un élément du service. Les SLO sont des composants d'accords de niveau de service (SLA) plus vastes entre fournisseurs et clients, qui déterminent le niveau de service attendu et prévoient des pénalités en cas de manquement aux objectifs.
Pour s'assurer que les niveaux de service répondent aux exigences opérationnelles et aux attentes des clients, les équipes d'ingénierie de la fiabilité des sites (SRE), DevOps, IT et autres équipes concernées doivent comprendre les parcours utilisateurs clés pour chaque application : les interactions qui conduisent les utilisateurs finaux à leurs résultats souhaités.
L'engagement interne est primordial pour la réussite des SLO (et par conséquent, des SLA), et plusieurs parties prenantes devraient contribuer à la détermination des SLO, notamment les responsables de produit, les équipes DevOps et de gestion des problèmes, ainsi que les ingénieurs d'infrastructure. "Les clients externes participent à la discussion au moyen de groupes de discussion, d'études, de plaintes clients et des médias sociaux.
Le principe clé des SLO est que la fiabilité du service engendre la satisfaction de l'utilisateur, ce qui crée de meilleures opportunités commerciales. L'établissement de cibles de fiabilité mesurables aide une organisation à concilier une expérience utilisateur agréable et efficace avec un coût raisonnable : ne pas dépasser le budget IT avec des niveaux de service dépassant ceux nécessaires ou attendus.
Les SLO sont essentiels car ils établissent les objectifs de qualité de service (QoS) et de fiabilité en termes précis, quantifiables et objectifs. Ils ne sont pas conçus pour définir le niveau de performance optimal, mais une plage de normes de performance les plus élevées et les moins acceptables.1
L'objectif des SLO est parfaitement résumé dans le livre 97 Things Every Cloud Engineer Should Know (lien externe à ibm.com), de O'Reilly Media : « Comment fournir à la direction un moyen simple de saisir immédiatement les compromis entre fiabilité, rapidité d'innovation et coût ? Les SLO sont la solution. Les SLO établissent des principes de fiabilité clairs qui équilibrent les compromis entre les coûts du cloud, la vitesse de changement et les risques externes. »
Cet e-book démystifie les préjugés concernant l’observabilité et présente son rôle dans le monde numérique.
Les SLO sont un élément parmi plusieurs termes connexes utilisés pour suivre et évaluer la performance des services :
Un SLI mesure de façon quantitative certains aspects d'un service. Les SLI fournissent les données quantifiables—les mesures de performance du système—comme les taux d'erreur, le débit par lot ou la latence des requêtes. Normalement, les mesures sont consolidées et présentées sous forme de taux, de moyenne ou de percentile.
Les SLO sont les valeurs de référence pour ces mesures (comme garantir un temps de réponse inférieur à 200 millisecondes, par exemple) qui doivent être satisfaites pour respecter les accords de niveau de service (SLA). Normalement, ces valeurs sont exprimées en pourcentage sur une période donnée.
Les SLA sont les contrats entre fournisseurs et clients, comprenant des SLO individuels, qui garantissent un certain niveau pour les activités, les fonctions ou les processus de service. Ils prévoient également des sanctions en cas de non-respect de l'accord.
Un budget d'erreur est un élément des SLO qui spécifie le niveau acceptable de défaillance avant la rupture d'un contrat. Un budget d'erreur permet de prendre en compte les temps d'arrêt planifiés ou non planifiés du service qui sont inévitables en pratique. Prévoir des temps d'arrêt autorise vos équipes de développement à prendre des décisions éclairées concernant de nouveaux développements, les opérations et la mise à jour ou la correction de logiciels installés.
La fiabilité et la réactivité sont généralement mesurées en « neuf » jusqu'à 100 % : 90 %, 99 %, 99,9 % et ainsi de suite. À titre d'exemple, un objectif de disponibilité du CPU pourrait s'exprimer ainsi :
Niveau de fiabilité | Fenêtre d'indisponibilité autorisée | ||
|
|
| |
Par an | Par trimestre | Sur 30 jours | |
90 % | 36,5 jours | 9 jours | 3 jours |
95 % | 18,25 jours | 4,5 jours | 1,5 jour |
99 % | 3,65 jours | 21,6 heures | 7,2 heures |
99,5 % | 1,83 jour | 10,8 heures | 3,6 heures |
99,9 % | 8,76 heures | 2,16 heures | 43,2 minutes |
99,95 % | 4,38 heures | 1,08 heure | 21,6 minutes |
99,99 % | 52,6 minutes | 12,96 minutes | 4,32 minutes |
99,999 % | 5,26 minutes | 1,30 minute | 26,9 secondes |
|
|
|
Chaque décimale qui rapproche de 100 implique généralement un coût et une complexité plus élevés. Les clients—internes et externes—peuvent demander un certain niveau de réactivité, au-delà duquel ils ne constatent plus de différence. La définition des SLO est autant une science qu'un art, puisque le but est de trouver le bon équilibre entre perfection statistique et objectifs réalistes et rentables.
L'équipe de développement peut avoir pour priorité de livrer de nouvelles fonctionnalités, tandis que l'équipe d'exploitation vise la stabilité et la qualité, en introduisant le changement de manière contrôlée. Puisque l'entreprise propose des produits ou des services à des clients internes et externes, il est crucial de mesurer tout niveau de service du point de vue de ces clients.
Les SLO permettent de fédérer les organisations autour de la fiabilité. En définitive, les parties prenantes devraient établir un SLO mesurable pour le client qui concilie de manière efficace la vitesse et la qualité du service.
Au départ, les objectifs de niveau de service sont importants car ils garantissent la fiabilité du service et le respect des accords de niveau de service. Si vous respectez les SLA, vos clients sont satisfaits, ce qui est bon pour vous.
Les SLO ne sont pas seulement bénéfiques pour les clients externes, mais ils offrent également des informations précieuses pour les clients internes. Les SLO aident diverses équipes à évaluer la performance des services et des applications et à déterminer des moyens de les améliorer. Entre autres avantages, les SLO aident les organisations à :
Les problèmes de fiabilité peuvent coûter de l'argent à votre entreprise. Avec des SLO bien configurés, vous pouvez identifier et révéler les manques d'observabilité. Votre configuration de SLO pourrait être le seul endroit où vous pouvez rassembler les informations provenant des différents outils de surveillance utilisés dans votre organisation. Une meilleure observabilité contribue à offrir de meilleurs produits, à réduire le taux de désabonnement et à fonctionner plus efficacement.
Les SLO et les SLI permettent de comprendre la performance des services et des applications et fournissent aux équipes une mesure exacte des temps d'arrêt et d'autres problèmes potentiels. Ces informations sont utiles pour les équipes DevOps, IT et autres qui veulent équilibrer innovation et fiabilité lors de la mise à jour de produits existants et du lancement de nouvelles fonctionnalités.
Un SLO soigneusement conçu qui évalue la santé de vos microservices, telle que ressentie par vos clients, offre des informations inestimables sur la performance du produit et l'expérience utilisateur.
La mise en place et le suivi des SLO permettent de fédérer les équipes de toute l'organisation autour d'une compréhension du service et des attentes associées. Des SLO soigneusement établis contribuent à créer une culture de communication où toutes les parties prenantes expriment leurs attentes envers un service et comprennent leur rôle dans le respect des SLA.
De plus, la création de rapports et d'automatisations avec des SLO peut aider chaque membre de votre équipe à répondre plus rapidement aux questions sur les incidents. Les SLO sont essentiels pour vos équipes DevOps, d'infrastructure et SRE, mais ils peuvent également contribuer à métamorphoser presque tous les aspects de votre entreprise. Les données recueillies par l'observabilité peuvent être converties en informations accessibles, contextuelles et exploitables. Ces informations offrent la visibilité dont vos équipes ont besoin pour prendre des décisions rapides et rentables.
Grâce à des objectifs clairement définis, les organisations peuvent se tourner vers l'automatisation pour surveiller et mesurer les SLI. Cette approche peut contribuer à garantir que les objectifs sont atteints, dans le but de passer de la surveillance à l'automatisation complète des processus de bout en bout.
Un système de surveillance automatisé peut aider à détecter les problèmes potentiels au fur et à mesure de leur développement, avant que les performances du service n'atteignent les objectifs fixés dans les SLO ou ne violent les SLA. Une fois les processus conformes aux SLO établis, l'automatisation peut être mise en œuvre pour assurer des performances constantes, par exemple en utilisant une plateforme qui automatise l'allocation des ressources en fonction de la demande en charge de travail.
Les SLO permettent aux équipes DevOps d'anticiper les problèmes potentiels avant qu'ils ne surviennent. Cette prévoyance empêche les temps d'arrêt inacceptables ou autres événements qui pourraient avoir des conséquences négatives sur l'utilisateur final ou coûter de l'argent à l'entreprise.
Les SLA utilisent souvent le temps d'arrêt mensuel ou les pourcentages de disponibilité pour calculer la facturation. Un temps d’arrêt est une période durant laquelle un système ne remplit pas sa fonction principale. Les pannes de communication, par exemple, peuvent engendrer un arrêt du réseau. La norme de disponibilité dans les secteurs reste élevée, tout comme le coût des temps d'arrêt, qui est en constante augmentation. Outre l'impact financier, le non-respect des SLO peut également entamer la satisfaction des clients.
Un grand nombre d'organisations opèrent selon un processus de gestion réactive des incidents. Mais lorsque vous attendez qu'un incident se produise, il faut plus de temps pour atténuer et résoudre les problèmes de votre système, ce qui augmente le temps moyen de réparation (MTTR)1. Des SLO correctement établis contribuent à améliorer l'observabilité et permettent aux organisations d'être plus proactives dans la gestion des incidents.
Les alertes non pertinentes augmentent non seulement les coûts opérationnels, mais peuvent également entraîner des taux d’épuisement professionnel élevés lorsque les ingénieurs perdent du temps et perdent leur productivité à répondre à des alertes inexistantes. L'un des plus grands défis en matière d'alertes est simplement de trouver le juste équilibre entre trop et trop peu d'alertes.
Une alerte pertinente serait celle qui signale à un ingénieur lorsque la dégradation risque de compromettre un objectif de fiabilité - une alerte basée sur les symptômes. Par exemple, c'est un véritable problème lorsqu'un délai de réponse d'un service dans la dernière heure pourrait entraîner le non-respect de l'objectif de service de latence pour la semaine.
Si vous demandez aux professionnels quel devrait être leur objectif de disponibilité système, beaucoup répondraient qu'ils aimeraient viser les 100 %. C'est un objectif très ambitieux, mais aussi très onéreux et cela pourrait engloutir la majeure partie de votre budget informatique avant tout le reste. Les SLO ne sont pas destinés à se vanter, mais à cerner et satisfaire les attentes des clients afin de les fidéliser. La fiabilité est un moyen et non une fin.
Un indicateur de performance mesurable n'est pas nécessairement crucial pour le bonheur de vos clients ou votre résultat net. Définir les priorités. Privilégiez les indicateurs qui sont les plus fortement corrélés à une expérience client positive.
Dans Foundations of Service Level Management (lien externe à ibm.com), Rick Sturm et Wayne Morris présentent cette liste de contrôle pour définir des SLO réalistes :
Les SLO devraient être :
· Atteignables
· Répétables
· Mesurables
· Compréhensibles
· Significatifs
· Contrôlables
· Abordables
· Acceptables pour tous
Notez que leur liste commence par « réalisables ». Viser la lune est très coûteux et pourrait offrir un temps de fonctionnement supérieur à celui dont vos clients ont réellement besoin. Voici quelques bonnes pratiques importantes pour vous aider à atteindre vos objectifs SLO :
Définir des SLO qui soutiennent le SLA ou l'objectif métier. Vingt SLO sont-ils réellement quatre fois plus efficaces que cinq SLO ? Ou cela créerait-il simplement plus de travail pour votre équipe informatique et embrouillerait le client, sans aucun avantage significatif ? Ne pas se sentir obligé de noter tout ce qui peut être mesuré.
Fixer des objectifs SLO réalistes plutôt que de promettre la lune et de décevoir, ce qui peut s'avérer coûteux en pénalités et peut-être même entraîner la perte d'un client. Faire preuve de réalisme avec les parties prenantes internes ainsi que les clients permet à tout le monde de prendre des décisions éclairées. Des objectifs SLO irréalistes ne feront qu'engendrer des coûts plus élevés à long terme.
En établissant dès le départ des attentes réalistes, vous évitez la confusion et les conflits ultérieurs entre les équipes internes et avec le client.
Le relevé manuel des indicateurs peut ralentir la résolution des problèmes et ne pas permettre l'analyse des causes profondes. Recueillir des SLI pertinents pour évaluer automatiquement les SLO et mettre en place une alerte automatique avant qu'un SLO ne soit enfreint. Inclure le contexte dont votre personnel a besoin et les dépendances pour traiter un problème avant qu’il ne devienne un problème majeur.
IBM Instana démocratise l’observabilité en fournissant une solution que toutes les équipes peuvent utiliser (DevOps, SRE, plateformes, ITOps et développement) pour obtenir les données souhaitées dans le contexte approprié. Spécialement conçue pour le cloud natif, tout en restant agnostique, la plateforme fournit de manière automatique et continue des données hautement fiables (précision d’une seconde et traces de bout en bout), dans le contexte des dépendances logiques et physiques entre appareils mobiles, Web, applications et infrastructure.
La plateforme d’optimisation des coûts du cloud hybride IBM Turbonomic vous permet d’automatiser en continu et en temps réel les actions critiques garantissant proactivement l’utilisation la plus efficace des ressources de calcul, de stockage et de réseau dans vos applications, à toutes les couches de la pile.
Découvrez comment, avec Instana, vous pouvez créer et gérer vos objectifs de niveau de service pour analyser la qualité du service et les objectifs de fiabilité en termes concrets, mesurables et objectifs.
Découvrez comment l’observabilité d’entreprise peut vous offrir une visibilité complète sur le fonctionnement de tout, partout et en même temps.
Automatisez les tâches opérationnelles informatiques, accélérez la livraison de logiciels et minimisez les risques informatiques grâce à l’ingénierie de la fiabilité des sites.
1 « Objectifs de niveau de service », IBM, 6 septembre 2023.