Expériences de chaos
Dans Azure Chaos Studio, vous créez et exécutez des expériences de chaos. Une expérience de chaos est une ressource Azure qui décrit les erreurs qui doivent être exécutées et les ressources sur lesquelles ces erreurs doivent être exécutées.
Un expérience est divisée en deux sections :
Sélecteurs : les sélecteurs sont des groupes de ressources cibles qui font l’objet d’erreurs ou d’autres actions. Un sélecteur vous permet de regrouper logiquement des ressources pour les réutiliser sur plusieurs actions.
Par exemple, vous pouvez avoir un sélecteur nommé
AllNonProdEastUSVMs
dans lequel vous avez ajouté toutes les machines virtuelles hors production de la région USA Est. Vous pouvez ensuite appliquer une sollicitation du processeur suivie d’une sollicitation de la mémoire virtuelle à ces machines virtuelles en référençant le sélecteur.Logique : le reste de l’expérience décrit comment et quand exécuter les erreurs. Une expérience est organisée en étapes qui s’exécutent l’une après l’autre. Chaque étape a une ou plusieurs branches qui s’exécutent en même temps. Les étapes et les branches vous permettent d’injecter plusieurs erreurs sur les ressources de votre environnement en parallèle.
Chaque branche comporte une ou plusieurs actions qui sont soit les erreurs que vous souhaitez exécuter, soit des délais. Les erreurs sont des actions qui provoquent une interruption. La plupart des erreurs prennent un ou plusieurs paramètres, tels que la durée d’exécution de l’erreur ou la quantité de contrainte à appliquer.
Expériences inter-abonnements et inter-locataires
Une expérience de chaos est une ressource Azure déployée sur un abonnement, un groupe de ressources et une région. Vous pouvez utiliser le Portail Azure ou l’API REST de Chaos Studio pour créer, mettre à jour, démarrer, annuler et afficher l’état d’une expérience.
Les expériences de chaos peuvent cibler des ressources dans un abonnement différent de l’expérience si l’abonnement se trouve dans le même locataire Azure. Les expériences de chaos peuvent cibler des ressources dans une région différente de celle de l’expérience si la région est prise en charge par Chaos Studio.
Documentation des expériences de chaos
Vous pouvez suivre et modifier plusieurs aspects clés de votre processus d’expérimentation de chaos au fil du temps. Une approche consiste à utiliser des éléments de travail dans Azure Boards ou dans GitHub Projects. En créant des éléments de travail dédiés pour chaque expérience, vous pouvez suivre les détails, la progression et les résultats de vos expériences de manière structurée. Cette documentation peut inclure des informations telles que l’objectif de l’expérience, les résultats attendus, les étapes suivies, les ressources impliquées ainsi que les observations ou enseignements tirés de l’expérience.
Élément | Détails |
---|---|
Hypothèse | Définir l’objectif et les résultats attendus de l’expérience |
Étendue cible | Identifiez la partie du système qui sera soumise à des expériences de chaos (par exemple : réseau, base de données, couche d’application). |
Durée | Spécifiez le délai d’exécution de l’expérience de chaos. |
Cible | Déterminez les cibles ou composants spécifiques au sein du système. |
Environnement | Définissez si l’expérience sera réalisée dans un environnement de production, de préproduction ou de développement. |
Observations | Enregistrez les données ou comportements éventuellement observés pendant l’expérience. |
Résultats | Résumez les découvertes et les résultats de l’expérience. |
Éléments d’action | Listez les éléments d’action ou les étapes à effectuer en fonction des résultats. |
L’hypothèse est un aspect crucial d’une expérience de chaos, car elle définit l’objectif et les résultats attendus de l’expérience. Elle permet de tester la capacité du système à gérer efficacement des perturbations inattendues. En formulant une hypothèse claire, vous pouvez concentrer votre expérience sur des zones spécifiques du système et collecter des données explicites pour évaluer sa résilience. En tirant profit des fonctionnalités d’Azure Boards ou de GitHub Projects, vous pouvez collaborer avec votre équipe, attribuer des tâches, définir des échéances et suivre la progression globale de vos initiatives d’ingénierie du chaos.
Étapes suivantes
Maintenant que vous comprenez ce qu’est une expérience de chaos, vous êtes prêt à :