• PagerDuty
    /
  • Blog
    /
  • DevOps
    /
  • Comment standardiser la responsabilité des services à grande échelle pour une meilleure réponse aux incidents

Blog

Comment standardiser la responsabilité des services à grande échelle pour une meilleure réponse aux incidents

par Hannah Culver 22 juin 2022 | 8 min de lecture

Propriété du service Il s'agit d'une bonne pratique DevOps où les membres de l'équipe s'engagent à assurer le support du logiciel qu'ils développent à chaque étape de son cycle de vie. Ce niveau d'implication rapproche les équipes de développement de leurs clients, des enjeux métiers et de la valeur ajoutée qu'elles apportent.

Les responsables de service sont les experts métiers de leurs services respectifs et, dans un modèle de gestion des services, ils sont également chargés de répondre à tout incident de production. Pour les équipes qui adoptent ce modèle, l'idée d'être d'astreinte peut paraître intimidante. Vous avez peut-être entendu des histoires effrayantes de week-ends et de soirées passés à gérer des incidents, ordinateur portable sur le nez ?

Il n'y a pas à minimiser les choses : être d'astreinte est difficile. Cependant, des pratiques exemplaires comme la responsabilisation des intervenants peuvent structurer et rendre plus prévisible le déroulement des astreintes, ce qui, idéalement, améliore la qualité de vie de tous.

Pourquoi la propriété des services est-elle importante ?

Imaginez ce scénario : vous êtes convoqué à une réunion parce que quelque chose est faux quelque part Le système est fonctionnel, mais comme les responsables de service ne sont pas désignés, personne ne sait qui est l'expert. Quinze minutes se transforment en vingt, puis en trente, et ainsi de suite. Pendant ce temps, de plus en plus de personnes se joignent à la réunion, sans pour autant avancer.

Ce type de gestion chaotique des incidents est une perte de temps précieuse ; c’est l’inefficacité incarnée. Et le pire, c’est que cela se produit encore constamment.

Il n'est pas nécessaire que les choses se passent ainsi. Mais d'abord, examinons pourquoi tant d'équipes sont accablées par une gestion manuelle des incidents qui s'éternise. En fin de compte, les raisons de ce ralentissement se résument à l'incapacité des équipes à répondre à quelques questions essentielles :

  • Quels services sont concernés ?
  • À qui appartiennent ces services ?
  • Quelles sont les dépendances de ces services – et à qui appartiennent-ils ? ceux services?

Les réunions comme celle présentée dans l'exemple ci-dessus tentent de répondre à ces questions, mais de manière réactive. Tant que les équipes n'auront pas répondu à ces questions, elles seront bloquées et ne pourront pas progresser dans la résolution de l'incident.

Ce phénomène est de plus en plus fréquent à mesure que l'écosystème technologique évolue et se complexifie dans les entreprises de toutes tailles. La multitude de services, de microservices et la répartition des responsabilités rendent difficile la conduite à tenir en cas de problème.

La responsabilisation des services peut aider les organisations à être plus proactives face aux incidents. Cependant, la mise en œuvre est loin d'être simple. Le changement culturel est difficile, et même les organisations les plus performantes ayant réussi leur transition vers le DevOps et la responsabilisation des services reconnaissent que le respect des bonnes pratiques et la mise en place d'un processus d'adoption de cette responsabilisation favorisent la fidélisation et permettent un déploiement à grande échelle au sein de toute l'organisation.

Lorsque les organisations adoptent le modèle de responsabilité des services, tous en bénéficient : responsables de service, dirigeants et clients. Les responsables de service ne sont sollicités qu’en cas de nécessité. Les parties prenantes sont informées des conséquences d’un incident et peuvent collaborer avec l’équipe technique pour en atténuer l’impact. Enfin, les clients subissent une interruption de service plus courte et bénéficient d’une communication plus transparente.

Dans un monde où les attentes des clients n'ont jamais été aussi élevées et où l'expérience client est primordiale, cela peut placer votre organisation au-dessus de la concurrence, tout en améliorant la vie des personnes qui interviennent sur place.

Mais qu'est-ce qu'un service, au juste ?

Définir un service peut s'avérer plus complexe qu'il n'y paraît. Nous avons constaté que les organisations segmentent leurs services de multiples façons, et il ne s'agit pas toujours de simplement faire correspondre les services aux éléments déployés dans le cloud. Certaines organisations doivent également prendre en compte une architecture monolithique. Comment, dès lors, déterminer comment décomposer les éléments en tâches gérables dont une équipe peut être responsable ?

Chez PagerDuty, nous définir un service On peut le définir comme « une fonctionnalité distincte qui apporte de la valeur et qui est entièrement gérée par une équipe ». Autrement dit, un service représente une entité que vous surveillez et sert de conteneur pour les incidents connexes, en associant ces incidents aux politiques d'escalade appropriées.

En résumé, cela se décompose ainsi : Si vous le surveillez, que vous souhaitez que les incidents y soient associés et que vous voulez que certaines personnes soient d'astreinte, alors c'est un service. Il s'agit d'une définition plus large qui offre une plus grande flexibilité quant à la manière dont les équipes peuvent définir les services non conventionnels.

Cependant, les intervenants doivent connaître bien plus que ces seules limites pour être pleinement préparés à gérer les problèmes. C'est là que la configuration du service peut faire toute la différence.

Qu'est-ce qui fait qu'un service est bien configuré ?

Chez PagerDuty, nous avons établi un ensemble de normes que nous jugeons essentielles pour les organisations souhaitant optimiser leur gestion des services. Ces normes servent de lignes directrices pour la création de nos services et définissent ce qu'est un service de qualité.

Elles sont également flexibles. Chaque service est unique et certaines de nos normes peuvent ne pas s'appliquer dans tous les cas. Considérez-les comme un point de départ permettant à nos clients d'optimiser la gestion des astreintes et de réduire les contraintes pour leurs équipes d'intervention de première ligne.

Il est important de noter que chaque organisation progressera à son propre rythme et que la prise en charge des services est un processus continu, et non une simple formalité à accomplir. Selon votre niveau de maturité opérationnelle, vous devrez peut-être définir et adopter des normes à un rythme différent.

Si vous êtes une petite entreprise débutante dans la gestion de services, avec seulement quelques services principalement basés sur le cloud, vous pourrez définir des normes et configurer vos services en conséquence en quelques jours. Si vous partez de zéro, c'est encore plus simple : vous pouvez appliquer ces normes dès la création de vos premiers services, ce qui vous assure un succès à long terme sans avoir à modifier ultérieurement les services déjà configurés.

Mais si vous êtes une grande organisation proposant des centaines, voire des milliers de services, cette transition pourrait s'avérer plus difficile. Voici quelques questions à se poser pour vous aider à envisager l'avenir :

  1. Pour quels sous-ensembles de services existants pourrait-on établir des normes aujourd'hui, et quelles seraient ces normes ? Vous constaterez peut-être que certaines normes sont faciles à appliquer à tous vos services. Par exemple, un service doit avoir un nom qui décrit précisément sa fonction. Si vous savez que la majorité des services devraient respecter certaines normes de ce type, c'est un bon point de départ pour la mise en œuvre. Réfléchissez à la manière dont vous pourriez demander à des équipes pilotes d'effectuer ces changements.
  2. À quoi ressemble le processus de création de nouveaux services ? Vous avez peut-être défini vos normes, mais adapter tous vos services actuels à ces normes est une tâche complexe. Pour les grandes organisations, il est généralement impossible de reconfigurer tous les services simultanément, et cette reconfiguration peut s'avérer plus frustrante que de suivre une procédure adéquate dès le départ.
  3. Quel est votre objectif à long terme, et quel est le calendrier prévu pour le réaliser ? Certains services n'auront peut-être pas besoin de ces normes, et c'est tout à fait normal. Élaborez un plan pour les autres services en fixant une date limite, puis commencez à intégrer progressivement les équipes au processus, en apportant des modifications mineures et graduelles au fil du temps.
  4. Comment connaissons-nous nos dépendances ? Au-delà de la création et de l'application de normes, il est également important de comprendre comment vos services interagissent et s'influencent mutuellement. Lors de l'établissement de normes, réfléchissez à la manière d'encourager la codification de ces informations pendant le processus de configuration.

Prises individuellement, les réponses à ces questions peuvent ne pas sembler constituer des éléments de différenciation importants, mais si l'on considère leur impact à grande échelle, elles font une grande différence quant à la manière dont vous réagissez aux incidents.

En quoi cela facilite-t-il la réponse aux incidents ?

Lors d'une intervention en cas d'incident, il est crucial de ne pas gaspiller de temps ni d'énergie sur des tâches superflues. Il faut se concentrer sur l'essentiel pour que l'équipe puisse résoudre l'incident.

La prise en charge du service vous aide à y voir plus clair tout au long du processus de réponse :

Par exemple, si votre service est bien configuré, vous recevrez des alertes avec le niveau d'urgence approprié et un minimum de notifications, ce qui vous permettra de répondre uniquement aux signaux les plus importants et d'établir les priorités en conséquence. Vous pourrez également mobiliser rapidement les bonnes personnes sur place, car vous connaîtrez les responsables de chaque service. À mesure que votre système gagnera en maturité, vous pourrez aussi créer des séquences d'automatisation pour vos services, ce qui vous permettra de réduire le temps nécessaire au rétablissement du service.

Diagnostiquer la cause du problème est également plus facile, car vous verrez ce qui a changé sur le service. Et avec cartographie des services, Vous pouvez ainsi comprendre l'impact global sur le système.

Pendant la résolution, vous pouvez accélérer le travail sur les intégrations nécessaires à votre service et tenir les parties prenantes informées. Vous pouvez cibler la communication sur les seules personnes concernées par l'incident, minimisant ainsi son impact, même au sein de l'organisation.

Enfin, vous tirerez de meilleurs enseignements des incidents. En tant qu'experts de votre service, vous bénéficierez d'un contexte historique et pourrez intégrer ces enseignements à votre processus de réponse, ce qui renforcera votre résilience au fil du temps.

À mesure que vous généralisez la responsabilité des services au sein de votre organisation, ces améliorations font une différence considérable pour vos clients et vos collaborateurs. Si vous souhaitez adopter la responsabilité des services ou améliorer votre maturité opérationnelle, et que vous recherchez un partenaire pour vous accompagner dans ce processus, Essayez PagerDuty gratuitement pendant 14 jours Si vous souhaitez en savoir plus sur la standardisation de la propriété des services à grande échelle, consultez ce webinaire .