Détecter de manière proactive les problèmes d'application à l'aide de la surveillance de la disponibilité dans le service OCI APM

Une fois en production, les applications doivent être disponibles et fonctionnelles à tout moment. Cependant, des problèmes surviennent et nécessitent une correction immédiate. La surveillance continue du statut d'une application garantit la qualité du service fourni par l'application. La surveillance de la disponibilité dans le service Application Performance Monitoring (APM) d'Oracle Cloud Infrastructure détecte de manière proactive les problèmes de disponibilité et de performances avant qu'ils n'aient une incidence sur l'expérience de l'entreprise ou de l'utilisateur. Il simule les flux de transactions critiques que les utilisateurs peuvent rencontrer dans votre application en exécutant des moniteurs prescrits à partir d'un ensemble d'emplacements préconfigurés dans le monde entier et en sécurisant les emplacements définis en privé dans votre location.

Architecture

Cette architecture de référence illustre deux options permettant de configurer des points d'observation APM pour surveiller en toute sécurité les applications exécutées dans votre réseau d'entreprise, auxquelles les points d'observation APM publics ne peuvent pas accéder. Les deux approches sont les suivantes :

  • Point d'observation sur site

    La première approche configure un point d'observation sur site (OPVP) dans votre infrastructure on-premise. En déployant un OPVP dans votre réseau d'entreprise, vous pouvez configurer la surveillance des adresses privées des applications exécutées derrière le pare-feu.

    Dans le cadre de la configuration OPVP, vous devez déployer un processus actif de point d'observation sur site de disponibilité (également appelé processus actif) sur l'environnement capable d'exécuter un moniteur. Pour déployer un processus actif, vous devez disposer d'une clé de données privée de domaine APM ou de privilèges de mise à jour de domaine APM. Le déploiement est pris en charge pour les calculs autonomes, Kubernetes et plusieurs instances de conteneur. Lorsqu'un moniteur est créé et planifié pour s'exécuter sur OPVP, un salarié l'exécute à intervalles réguliers. Une fois qu'un moniteur est lancé, l'OPVP communique avec votre domaine APM et fournit des mesures, des journaux de navigateur, des données de trace réseau, des captures d'écran et des fichiers HAR. Pour plus de détails, reportez-vous au document OCI "Use On-Premise Vantage Points", auquel vous pouvez accéder à partir de "Explorer plus", ci-dessous.

    L'exemple suivant présente un OPVP déployé sur le réseau sur site. Toutefois, vous pouvez déployer un OPVP dans n'importe quel environnement, que ce soit dans votre environnement sur site ou dans un environnement cloud sécurisé.


    Description de l'image opvp-arch.png
    Description de l'illustration opvp-arch.png

    opvp-arch-oracle.zip

    Les légendes de ce diagramme indiquent :
    • A : les mesures d'état sont téléchargées par les processus actifs OPVP.
    • B : les fichiers HAR de mesure et les captures d'écran sont envoyés au domaine APM.
  • Point d'observation dédié

    La deuxième approche configure un point d'observation dédié dans votre location Oracle. Le déploiement d'un point d'observation dédié déploie automatiquement un cluster Kubernetes dans votre compartiment. Cela se connecte au VCN où vos applications sont exécutées. Le déploiement inclut un gestionnaire de déploiement qui orchestre les déploiements de moniteurs individuels dans votre point d'observation dédié.

    Lorsqu'un moniteur est créé et programmé pour être exécuté sur votre point d'observation dédié, une image Docker est créée et exécute le moniteur à intervalles programmés. Une fois qu'un moniteur est exécuté, le point d'observation dédié communique avec votre domaine APM et fournit des mesures, des journaux de navigateur, des données de trace réseau, des captures d'écran et des fichiers HAR.


    Description de l'image synth-monitor-apm-arch.png
    Description de l'illustration synth-monitor-apm-arch.png

    synth-monitor-apm-arch-oracle.zip

    Les légendes de ce diagramme indiquent :
    • A : le service APM envoie des données aux flux OCI.
    • B : le gestionnaire de déploiement obtient des données à partir du flux OCI.
    • C : mesures de surveillance de l'état téléchargées.
    • D : les mesures, les fichiers HAR et les captures d'écran sont envoyés au domaine APM.
    • E : les traces, les étendues et les mesures sont envoyées au domaine APM (facultatif).
Ces architectures comportent les composants suivants :
  • Région

    Une région Oracle Cloud Infrastructure est une zone géographique précise, incluant un ou plusieurs centres de données, appelés domaines de disponibilité. Les régions sont indépendantes les unes des autres et de grandes distances peuvent les séparer (entre les pays ou même les continents).

  • Tenancy

    Une location est une partition sécurisée et isolée qu'Oracle configure dans Oracle Cloud lors de votre inscription à OCI. Vous pouvez créer, organiser et administrer vos ressources dans Oracle Cloud au sein de votre location. Une location est synonyme d'entreprise ou d'organisation. En général, une entreprise dispose d'une seule location et reflète sa structure organisationnelle au sein de cette location. Une location unique est généralement associée à un seul abonnement, et un seul abonnement n'a généralement qu'une seule location.

  • Compartiment

    Les compartiments sont des partitions logiques inter-région dans une location OCI. Utilisez des compartiments pour organiser vos ressources dans Oracle Cloud, contrôler l'accès aux ressources et définir des quotas d'utilisation. Pour contrôler l'accès aux ressources d'un compartiment donné, vous définissez des stratégies qui indiquent qui peut accéder aux ressources et les actions réalisables.

  • Réseau cloud virtuel (VCN) et sous-réseaux

    Un VCN est un réseau personnalisable défini par logiciel que vous configurez dans une région OCI. Comme les réseaux de centre de données traditionnels, les réseaux cloud virtuels vous donnent un contrôle total sur l'environnement réseau. Un réseau cloud virtuel peut comporter plusieurs blocs CIDR qui ne se chevauchent pas et que vous pouvez modifier après l'avoir créé. Vous pouvez segmenter un VCN en sous-réseaux, qui peuvent être ciblés sur une région ou un domaine de disponibilité. Chaque sous-réseau est composé d'une plage contiguë d'adresses qui ne chevauchent pas celles des autres sous-réseaux du réseau cloud virtuel. Vous pouvez modifier la taille d'un sous-réseau après sa création. Un sous-réseau peut être public ou privé.

  • Gestionnaire de déploiement

    Le gestionnaire de déploiement vous permet d'utiliser une configuration déclarative pour créer, décrire, mettre à jour et supprimer des ressources Kubernetes. Cette configuration est un fichier YAML qui configure les ressources Kubernetes ou fournit des paramètres aux modèles de fichier YAML, qui contiennent des balises Jinja ou des scripts Python.

  • Container Engine for Kubernetes

    Oracle Cloud Infrastructure Container Engine for Kubernetes est un service entièrement géré, évolutif et hautement disponible que vous pouvez utiliser pour déployer vos applications en conteneur vers le cloud. Indiquez les ressources de calcul requises par vos applications et Container Engine for Kubernetes les provisionne sur OCI dans une location existante. Container Engine for Kubernetes utilise Kubernetes pour automatiser le déploiement, le redimensionnement et la gestion des applications en conteneur sur des clusters d'hôtes.

  • Processeur de point d'observation sur site de disponibilité

    Egalement appelé Worker, il s'agit d'un composant propriétaire Oracle géré par l'utilisateur qui gère l'instrumentation du moteur de navigateur et de script pour exécuter les commandes souhaitées, collecter les données d'observabilité requises et les transmettre aux collecteurs APM.

  • Agent synthétique

    Un agent synthétique est un composant propriétaire géré par Oracle qui gère l'instrumentation du moteur de navigateur et de script pour exécuter les commandes souhaitées, collecter les données d'observabilité requises et les transmettre aux collecteurs APM.

  • Surveillance des performances des applications

    Oracle Application Performance Monitoring est une solution Platform-as-a-Service (PaaS) qui fournit une visibilité approfondie des performances de votre application, de l'utilisateur final aux journaux d'application. Le service intègre des informations d'expérience utilisateur, des mesures d'application et des analyses de données de journal.

    • Domaine APM

      Le domaine APM est un type de ressource OCI qui contient les systèmes surveillés par Application Performance Monitoring.

      Chaque domaine APM est créé dans un compartiment OCI standard. Vous pouvez définir des stratégies de contrôle d'accès OCI pour accorder l'accès au domaine APM à un ensemble d'utilisateurs spécifique.

    • Surveillance de la disponibilité

      Availability Monitoring permet une surveillance proactive, qui aide les développeurs et les opérateurs à prévenir les problèmes avant que les utilisateurs ne soient touchés. Elle permet d'exécuter des moniteurs programmés pour garantir la disponibilité de l'application.

      Grâce à Availability Monitoring, vous pouvez créer quatre types de moniteur : Browser, Scripted Browser, REST, et Scripted REST Network, DNS, FTP et SQL. Vous pouvez les exécuter à partir de différents emplacements géographiques appelés points d'observation.

    • Points d'observation
      Les points d'observation sont des emplacements à partir desquels vous pouvez définir et exécuter des moniteurs de disponibilité. Il existe trois types de point d'observation :
      • Points d'observation publics

        Un ensemble varié d'emplacements préconfigurés dans le monde entier à partir desquels vous pouvez exécuter des moniteurs.

      • Points d'observation dédiés

        Emplacements que vous pouvez configurer dans votre location pour vous assurer que vous pouvez exécuter vos moniteurs en toute sécurité.

      • Points d'observation sur site

        Emplacements que vous pouvez déployer dans n'importe quel environnement, sur site ou dans un environnement cloud sécurisé, pour exécuter vos moniteurs en toute sécurité sur vos applications.

    • Traceurs APM

      Les traceurs APM enregistrent les étendues OpenTracing avec les mesures d'application et les envoient à l'application

.

Recommandations

Utilisez les recommandations suivantes comme point de départ lors de l'implémentation de la surveillance de la disponibilité. Vos exigences peuvent différer de l'architecture décrite ici.
  • Avant de démarrer l'assistant, rassemblez des informations importantes telles que les détails du VCN, le jeton d'authentification, l'OCID du domaine APM et la clé privée de votre domaine APM.
  • Vérifiez si le VCN sur lequel vous souhaitez exécuter le point d'observation autorise la communication directe avec les adresses de données du domaine APM. Si ce n'est pas le cas, vous devrez également saisir les informations sur le mandataire pour terminer la communication.
  • Lors de la configuration d'un point d'observation dédié, activez l'option de mise à niveau automatique des artefacts DVP. Cette option garantit que le point d'observation dédié est mis à jour vers la dernière version des composants de disponibilité et qu'il reste synchronisé avec les mêmes versions d'agent de disponibilité que celles utilisées sur les points d'observation publics. Cette option est décrite, avec des captures d'écran, dans le blog "Comment utiliser vos propres points d'observation dédiés avec la surveillance de la disponibilité", auquel vous pouvez accéder à partir de la rubrique Explorer plus, ci-dessous.
  • Lorsque vous utilisez l'OPVP, assurez-vous que vous utilisez la dernière version d'OPVP.

Points à prendre en compte

Lors de l'implémentation de la surveillance de la disponibilité dans le service OCI APM, tenez compte des éléments suivants :

  • Vous pouvez déployer un traceur APM ou un agent APM vers l'application pour collecter des traces et des étendues. Si des problèmes surviennent, vous pouvez effectuer une analyse descendante à partir des exécutions de moniteur en échec ou lentes pour ouvrir une vue contextuelle dans l'explorateur de traces. Ici, vous pouvez examiner toutes les observations recueillies lors de la surveillance.
  • Vous pouvez exécuter des tests sur les adresses des intégrateurs. Si votre application fait appel à un service Web tiers ou interne, vous devez tester ces adresses régulièrement pour vous assurer que votre application reste fonctionnelle à tous les niveaux.

Déployez

Pour déployer des points d'observation dédiés, reportez-vous à cette démo de bout en bout capturée dans le tutoriel Oracle Cloud APM "DEMO : surveillance synthétique", accessible à partir de la rubrique Explorer davantage, ci-dessous.

Accusés de réception

  • Auteur : Yutaka Tukatsu
  • Contributeurs : Rahul Chandok, Avi Huber, Jurgen Leijer, Mohammad Farooq Rahman, Anand Shivahare,

Modifier le journal

Ce journal répertorie les modifications importantes :