Créer une expérience de chaos qui utilise une erreur basée sur un agent avec le portail Azure

Vous pouvez utiliser une expérience de chaos pour vérifier que votre application résiste aux défaillances en les provoquant dans un environnement contrôlé. Dans cet article, vous allez provoquer un événement correspondant à un pourcentage élevé d’utilisation du processeur sur une machine virtuelle Linux en utilisant une expérience de chaos et Azure Chaos Studio. L’exécution de cette expérience peut vous aider à vous défendre contre l’épuisement des ressources d’une application.

Vous pouvez suivre ces mêmes étapes afin de configurer et d’exécuter une expérience pour n’importe quelle erreur basée sur un agent. Une erreur basée sur un agent nécessite de configurer et d’installer l’agent de chaos. Une erreur affectant directement un service s’exécute directement sur une ressource Azure sans avoir besoin d’instrumentation.

Prérequis

  • Un abonnement Azure. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit Azure avant de commencer.
  • Une machine virtuelle Linux exécutant un système d’exploitation figurant dans la liste de compatibilité des versions. Si vous n’avez pas de machine virtuelle, vous pouvez en créer une.
  • Une configuration réseau qui vous permet de vous connecter en SSH à votre machine virtuelle.
  • Une identité managée affectée par l’utilisateur qui a été affectée à la machine virtuelle ou au groupe de machines virtuelles identiques cible. Si vous n’avez pas d’identité managée affectée par l’utilisateur, vous pouvez en créer une.

Activer Chaos Studio sur votre machine virtuelle

Chaos Studio ne peut pas injecter d’erreurs sur une machine virtuelle, sauf si celle-ci a été ajoutée au préalable à Chaos Studio. Pour ajouter une machine virtuelle à Chaos Studio, créez une cible et des fonctionnalités sur la ressource. Installez ensuite l’agent de chaos.

Les machines virtuelles ont deux types de cibles. Un type de cible active les erreurs affectant directement le service (où aucun agent n’est nécessaire). L’autre type de cible active les erreurs basées sur un agent (ce qui nécessite l’installation d’un agent). L’agent de chaos est une application installée sur votre machine virtuelle en tant qu’extension de machine virtuelle. Vous l’utilisez pour injecter des erreurs dans le système d’exploitation invité.

Activer la cible, les fonctionnalités et l’agent de chaos

Important

Avant de terminer les étapes suivantes, vous devez créer une identité managée affectée par l’utilisateur. Ensuite, vous l’affectez à la machine virtuelle ou au groupe de machines virtuelles identiques cible.

  1. Ouvrez le portail Azure.

  2. Recherchez Chaos Studio dans la barre de recherche.

  3. Sélectionnez Cibles et passez à votre machine virtuelle.

    Capture d’écran montrant la vue Tous les appareils dans le Portail Azure.

  4. Cochez la case à côté de votre machine virtuelle et sélectionnez Activer les cibles. Sélectionnez ensuite Activer les cibles basées sur un agent dans le menu déroulant.

    Capture d’écran montrant l’activation des cibles dans le portail Azure.

  5. Sélectionnez l’Identité managée à utiliser pour authentifier l’agent de chaos et éventuellement permettre à Application Insights de voir les événements de l’expérience et les journaux de l’agent.

    Capture d’écran montrant la sélection d’une identité managée.

  6. Sélectionnez Vérifier + activer>Activer.

    Capture d’écran montrant la vérification de l’activation de la cible basée sur un agent.

  7. Après quelques minutes, une notification apparaît pour indiquer que les ressources sélectionnées ont été correctement activées. Le portail Azure ajoute l’identité affectée par l’utilisateur à la machine virtuelle. Le portail active la cible et les fonctionnalités de l’agent et installe l’agent de chaos en tant qu’extension de machine virtuelle.

    Capture d’écran montrant une notification qui indique que la cible a été correctement activée.

  8. Si vous activez un groupe de machines virtuelles identiques, mettez à niveau les instances vers le modèle le plus récent en accédant au volet de ressources du groupe de machines virtuelles identiques. Sélectionnez Instances, puis toutes les instances. Sélectionnez Mettre à niveau si vous n’êtes pas sur le dernier modèle.

Vous avez maintenant ajouté votre machine virtuelle Linux à Chaos Studio. Dans la vue Cibles, vous pouvez également gérer les fonctionnalités activées sur cette ressource. Sélectionnez le lien Gérer les actions à côté d’une ressource pour afficher les fonctionnalités activées pour cette ressource.

Créer une expérience

Vous pouvez maintenant créer votre expérience. Une expérience de chaos définit les actions à entreprendre sur les ressources cibles. Les actions sont organisées et exécutées en étapes séquentielles. L’expérience de chaos définit également les actions à entreprendre sur les branches, qui s’exécutent en parallèle.

  1. Sélectionnez l’onglet Expériences dans Chaos Studio. Dans cette vue, vous pouvez voir et gérer toutes vos expériences de chaos. Sélectionnez Créer>Nouvelle expérience.

    Capture d’écran montrant la vue Expériences dans le portail Azure.

  2. Renseignez les champs Abonnement, Groupe de ressourceset Emplacement, là où vous souhaitez déployer l’expérience de chaos. Donnez un nom à votre expérience. Sélectionnez Suivant : concepteur d’expériences.

    Capture d’écran montrant l’ajout de détails de base sur l’expérience.

  3. Vous êtes maintenant dans le concepteur d’expérience Chaos Studio. Vous pouvez créer votre expérience en ajoutant des étapes, des branches et des erreurs. Donnez un nom convivial à votre Étape et votre Branche. Sélectionnez ensuite Ajouter une action > Ajouter une erreur.

    Capture d’écran montrant le concepteur d’expérience.

  4. Sélectionnez Sollicitation du processeur dans la liste déroulante. Renseignez Durée avec le nombre de minutes pour appliquer la sollicitation. Renseignez pressureLevel avec le pourcentage de sollicitation de l’utilisation du processeur que vous souhaitez appliquer. Laissez virtualMachineScaleSetInstances vide. Sélectionnez Suivant : ressources cibles.

    Capture d’écran montrant les propriétés de l’erreur.

  5. Sélectionnez votre machine virtuelle, puis Suivant.

    Capture d’écran montrant l’ajout d’une cible.

  6. Vérifiez que votre expérience semble correcte. Sélectionnez Vérifier + créer>Créer.

    Capture d’écran montrant la vérification et la création de l’expérience.

Octroyer à l’expérience l’autorisation d’accéder à votre machine virtuelle

Lorsque vous créez une expérience de chaos, Chaos Studio crée une identité managée affectée par le système qui exécute des erreurs sur vos ressources cibles. Cette identité doit avoir les autorisations appropriées sur la ressource cible pour que l’expérience s’exécute correctement.

  1. Accédez à votre machine virtuelle, puis sélectionnez Contrôle d’accès (IAM).

    Capture d’écran montrant la page Vue d’ensemble de la machine virtuelle.

  2. Sélectionnez Ajouter>Ajouter une attribution de rôle.

    Capture d’écran montrant la vue d’ensemble du contrôle d’accès.

  3. Recherchez Lecteur, puis sélectionnez le rôle. Cliquez sur Suivant.

    Capture d’écran montrant l’attribution du rôle Contributeur à la machine virtuelle.

  4. Choisissez Sélectionner des membres, puis recherchez le nom de votre expérience. Sélectionnez votre expérience, puis choisissez Sélectionner. S’il existe plusieurs expériences dans le même locataire avec le même nom, le nom de votre expérience est tronqué avec des caractères aléatoires ajoutés.

    Capture d’écran montrant l’ajout d’un rôle à l’expérience.

  5. Sélectionnez Vérifier + attribuer>Vérifier + attribuer.

Exécuter votre expérience

Vous êtes maintenant prêt à exécuter votre expérience. Pour voir l’impact, nous vous recommandons d’ouvrir un graphique de métriques Azure Monitor avec la sollicitation du processeur de votre machine virtuelle dans un onglet de navigateur distinct.

  1. Dans la vue Expériences, sélectionnez votre expérience. Sélectionnez Démarrer>OK.

    Capture d’écran montrant le démarrage de l’expérience.

  2. Lorsque l’État passe à En cours d’exécution sous Historique, sélectionnez Détails afin de voir les détails de l’expérience en cours d’exécution.

Étapes suivantes

Maintenant que vous avez exécuté une expérience basée sur un agent, vous êtes prêt à :