OPS07-BP03 Utiliser des runbooks pour effectuer des procédures - AWS Well-Architected Framework

OPS07-BP03 Utiliser des runbooks pour effectuer des procédures

A runbook est un processus documenté pour atteindre un résultat spécifique. Les runbooks consistent en une série d'étapes permettant à la personne qui les suit d'obtenir des résultats concrets. L'utilisation des runbooks dans les opérations remonte aux débuts de l'aviation. Dans les opérations de cloud, nous utilisons des runbooks pour réduire les risques et obtenir les résultats souhaités. Dans sa forme la plus simple, un runbook est une liste de contrôle pour exécuter une tâche.

Les runbooks représentent une part essentielle du fonctionnement de votre charge de travail. De l'intégration d'un nouveau membre de l'équipe au déploiement d'une version majeure, les runbooks sont des processus codifiés qui fournissent des résultats cohérents quelle que soit la personne qui les utilise. Les runbooks doivent être publiés dans un emplacement central et mis à jour à mesure que le processus évolue, car la mise à jour des runbooks est un composant essentiel du processus de gestion des changements. Ils doivent également inclure des conseils sur la gestion des erreurs, les outils, les autorisations, les exceptions et les remontées en cas de problème.

À mesure que votre entreprise évolue, commencez à automatiser les runbooks. Prenez tout d'abord les runbooks courts et fréquemment utilisés. Utilisez des langages de scripts pour automatiser les étapes ou les rendre plus faciles. À mesure que vous automatiserez les premiers runbooks, vous consacrerez du temps à l'automatisation de runbooks plus complexes. Au fil du temps, la plupart de vos runbooks seront automatisés d'une certaine façon.

Résultat souhaité : Votre équipe dispose de plusieurs guides détaillés pour exécuter des tâches de charge de travail. Les runbooks contiennent le résultat souhaité, les outils et autorisations nécessaires, ainsi que les instructions pour gérer les erreurs. Ils sont stockés dans un emplacement central et mis à jour fréquemment.

Anti-modèles courants :

  • Utilisation de la mémoire pour exécuter chaque étape d'un processus.

  • Déploiement manuel des changements sans liste de contrôle.

  • Différents membres de l'équipe exécutant le même processus, mais avec des étapes ou résultats différents.

  • Désynchronisation des runbooks avec les changements du système et l'automatisation.

Avantages liés au respect de cette bonne pratique :

  • Réduction du taux d'erreur pour les tâches manuelles.

  • Exécution cohérente des opérations.

  • Exécution des tâches plus tôt par les nouveaux membres de l'équipe.

  • Automatisation des runbooks pour diminuer la quantité de travail.

Niveau de risque exposé si cette bonne pratique n'est pas respectée : Moyen

Directives d'implémentation

Les runbooks peuvent prendre plusieurs formes selon le niveau de maturité de votre entreprise. Au minimum, ils doivent consister en un document texte détaillé. Le résultat souhaité doit être clairement indiqué. Ils documentent explicitement les autorisations spéciales ou outils nécessaires. Ils fournissent des conseils sur la gestion des erreurs et les remontées en cas de problème. Recherchez le propriétaire du runbook et publiez-le dans un emplacement central. Une fois votre runbook documenté, validez-le en demandant à un membre de votre équipe de l'exécuter. À mesure que les procédures évoluent, mettez à jour vos runbooks conformément à votre processus de gestion des changements.

Vos runbooks texte doivent être automatisés à mesure que votre entreprise évolue. Grâce à des services tels que les automatisations AWS Systems Manager, vous pouvez transformer un fichier texte en automatisations pouvant être exécutées sur votre charge de travail. Ces automatisations peuvent être exécutées en réponse aux événements, tout en réduisant la charge opérationnelle pour maintenir votre charge de travail.

Exemple client

AnyCompany Retail doit mettre à jour des schémas de bases de données lors de déploiements logiciels. L'équipe en charge des opérations de cloud en collaboration avec l'équipe responsable de l'administration des bases de données ont créé un runbook, pour déployer manuellement ces changements. Le runbook répertoriait chacune des étapes du processus sous forme de liste de contrôle. Il comprenait une section sur la gestion des erreurs en cas de problème. Les équipes ont publié le runbook sur leur wiki interne contenant leurs autres runbooks. L'équipe en charge des opérations de cloud envisage d'automatiser le runbook dans un prochain sprint.

Étapes d'implémentation

Si vous ne disposez pas d'un référentiel de documents, un référentiel de contrôle de version est un emplacement idéal pour commencer à créer votre bibliothèque de runbooks. Vous pouvez créer vos runbooks en utilisant le format Markdown. Voici un exemple de modèle de runbook que vous pouvez utiliser pour commencer à créer vos runbooks.

# Runbook Title ## Runbook Info | Runbook ID | Description | Tools Used | Special Permissions | Runbook Author | Last Updated | Escalation POC | |-------|-------|-------|-------|-------|-------|-------| | RUN001 | What is this runbook for? What is the desired outcome? | Tools | Permissions | Your Name | 2022-09-21 | Escalation Name | ## Steps 1. Step one 2. Step two
  1. Si vous ne possédez pas de référentiel de documentation ou de wiki existant, créer un référentiel de contrôle de version dans votre système de contrôle de version.

  2. Identifier un processus ne possédant pas de runbook. Le processus idéal doit être réalisé de manière semi-régulière, contenir peu d'étapes et avoir des échecs à faible impact.

  3. Dans votre référentiel de documents, créer un brouillon au format Markdown en utilisant le modèle. Remplissez le champ Runbook Title et les champs obligatoires sous Runbook Info.

  4. En commençant par la première, remplir la partie Étapes du runbook.

  5. Donner le runbook à un membre de l'équipe. Demandez-lui d'utiliser le runbook pour valider les étapes. En cas d'élément manquant ou de besoin de clarification, mettez à jour le runbook.

  6. Publier le runbook sur votre référentiel de documentation interne. Une fois publié, partagez l'information avec votre équipe et les autres parties prenantes.

  7. Au fil du temps, vous créerez une bibliothèque de runbooks. À mesure que cette bibliothèque s'étoffe, commencez à travailler sur l'automatisation des runbooks.

Niveau d'effort du plan d'implémentation : faible. La norme minimum pour un runbook est un guide texte détaillé. L'automatisation des runbooks peut augmenter l'effort d'implémentation.

Ressources

Bonnes pratiques associées :

Documents connexes :

Vidéos connexes :

Exemples connexes :

Services associés :