View a markdown version of this page

Analyse des anomalies de performances avec Amazon DevOps Guru pour Amazon RDS - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Analyse des anomalies de performances avec Amazon DevOps Guru pour Amazon RDS

Amazon DevOps Guru est un service d'opérations entièrement géré qui aide les développeurs et les opérateurs à améliorer les performances et la disponibilité de leurs applications. DevOpsGuru décharge les tâches associées à l'identification des problèmes opérationnels afin que vous puissiez rapidement mettre en œuvre les recommandations visant à améliorer votre application. Pour plus d'informations, consultez Qu'est-ce qu'Amazon DevOps Guru ? dans le guide de l'utilisateur Amazon DevOps Guru.

DevOpsGuru détecte et analyse les problèmes opérationnels existants pour tous les moteurs de base de données Amazon RDS et formule des recommandations pour les résoudre. DevOpsGuru for RDS étend cette fonctionnalité en appliquant l'apprentissage automatique à des métriques détaillées par requête et par compteur de base de données (exposées via l'API Performance Insights) pour les bases de données RDS pour PostgreSQL. Ces fonctionnalités de surveillance permettent à DevOps Guru for RDS de détecter et de diagnostiquer les goulots d'étranglement en matière de performances et de recommander des actions correctives spécifiques. DevOpsGuru for RDS peut également détecter les conditions problématiques dans vos bases de données RDS pour PostgreSQL, avant qu'elles ne surviennent.

Vous pouvez désormais consulter ces recommandations dans la console RDS. Pour de plus amples informations, veuillez consulter Recommandations d’Amazon RDS.

La vidéo suivante présente un aperçu de DevOps Guru pour RDS.

Pour en savoir plus sur ce sujet, consultez Amazon DevOps Guru pour RDS sous le capot.

Avantages de DevOps Guru pour RDS

En tant que responsable d’une base de données RDS pour PostgreSQL, vous ne savez pas systématiquement lorsqu’un événement ou une régression affectant cette base de données se produit. Lorsque vous prenez connaissance de ce problème, vous ne savez pas toujours pourquoi il se produit ni comment y remédier. Plutôt que de vous adresser à un administrateur de base de données (DBA) pour obtenir de l'aide ou de vous fier à des outils tiers, vous pouvez suivre les recommandations de DevOps Guru pour RDS.

L'analyse détaillée de DevOps Guru pour RDS vous offre les avantages suivants :

Diagnostic rapide

DevOpsGuru for RDS surveille et analyse en permanence la télémétrie des bases de données. Performance Insights, Enhanced Monitoring et Amazon CloudWatch collectent des données télémétriques pour votre instance de de bases de données. DevOpsGuru for RDS utilise des techniques statistiques et d'apprentissage automatique pour exploiter ces données et détecter les anomalies. Pour en savoir plus sur les données de télémétrie, consultez Surveillance de la charge de la base de données avec Performance Insights sur Amazon RDS et Surveillance des métriques du système d’exploitation à l’aide de la Surveillance améliorée dans le Guide de l’utilisateur Amazon RDS.

Résolution rapide

Chaque anomalie identifie le problème de performances et suggère des pistes d’enquête ou des actions correctives. Par exemple, DevOps Guru pour RDS peut vous recommander d'étudier des événements d'attente spécifiques. Il peut également vous recommander de régler les paramètres de votre groupe d’applications afin de limiter le nombre de connexions à la base de données. Sur la base de ces recommandations, vous pouvez résoudre les problèmes de performances plus rapidement qu’en effectuant un dépannage manuel.

Insights proactifs

DevOpsGuru for RDS utilise les métriques de vos ressources pour détecter les comportements potentiellement problématiques avant qu'ils ne s'aggravent. Par exemple, il peut détecter lorsque votre base de données utilise un nombre croissant de tables temporaires sur disque, ce qui peut commencer à avoir un impact sur les performances. DevOps Guru fournit ensuite des recommandations pour vous aider à résoudre les problèmes avant qu'ils ne s'aggravent.

Connaissance approfondie des ingénieurs Amazon et du machine learning

Pour détecter les problèmes de performances et vous aider à résoudre les goulots d'étranglement, DevOps Guru for RDS s'appuie sur l'apprentissage automatique (ML) et des formules mathématiques avancées. Les ingénieurs de bases de données Amazon ont contribué au développement des résultats de DevOps Guru for RDS, qui résument de nombreuses années de gestion de centaines de milliers de bases de données. En s'appuyant sur ces connaissances collectives, DevOps Guru for RDS peut vous enseigner les meilleures pratiques.

Comment fonctionne DevOps Guru pour RDS

DevOpsGuru for RDS collecte des données relatives à vos bases de données RDS pour PostgreSQL auprès d'Amazon RDS Performance Insights. La métrique la plus importante estDBLoad. DevOpsGuru for RDS utilise ces métriques détaillées par requête et par compteur de base de données, les analyse à l'aide de l'apprentissage automatique et publie des informations sur le tableau de bord.

Un aperçu est un ensemble d'anomalies connexes qui ont été détectées par DevOps Guru.

Dans DevOps Guru pour RDS, une anomalie est un schéma qui s'écarte des performances considérées comme normales pour votre base de données RDS pour PostgreSQL.

Insights proactifs

Un insight proactif vous permet de connaître un comportement problématique avant qu’il se produise. Il contient des anomalies accompagnées de recommandations et de métriques associées pour vous aider à résoudre les problèmes dans vos bases de données RDS pour PostgreSQL avant qu’ils ne s’aggravent. Ces informations sont publiées dans le tableau de bord DevOps Guru.

Par exemple, DevOps Guru peut détecter que votre base de données RDS pour PostgreSQL crée de nombreuses tables temporaires sur disque. Si elle n’est pas corrigée, cette tendance peut entraîner des problèmes de performances. Chaque insight proactif inclut des recommandations de comportement correctif et des liens vers des rubriques pertinentes dans Réglage RDS pour PostgreSQL grâce aux informations proactives d'Amazon DevOps Guru. Pour plus d'informations, consultez la section Utilisation des informations de DevOps Guru dans le guide de l'utilisateur Amazon DevOps Guru.

Insights réactifs

Un insight réactif identifie un comportement anormal lorsqu’il se produit. Si DevOps Guru for RDS détecte des problèmes de performances dans vos instances de base de données RDS pour PostgreSQL, il publie un aperçu réactif dans le tableau de bord DevOps Guru. Pour plus d'informations, consultez la section Utilisation des informations de DevOps Guru dans le guide de l'utilisateur Amazon DevOps Guru.

Anomalies causales

Une anomalie causale est une anomalie de premier niveau au sein d’un insight réactif. Le chargement de la base de données (DB load) est l'anomalie causale de DevOps Guru pour RDS.

Une anomalie mesure l’impact sur les performances en attribuant un niveau de gravité High (Élevé), Medium (Moyen) ou Low (Faible). Pour en savoir plus, consultez la section Concepts clés de DevOps Guru pour RDS dans le guide de l'utilisateur Amazon DevOps Guru.

Si DevOps Guru détecte une anomalie actuelle sur votre instance de base de données, vous êtes alerté sur la page Bases de données de la console RDS. La console vous alerte également des anomalies survenues au cours des dernières 24 heures. Pour accéder à la page des anomalies à partir de la console RDS, cliquez sur le lien présent dans le message d’alerte. La console RDS vous alerte également dans la page de votre instance de base de données RDS pour PostgreSQL.

Anomalies contextuelles

Une anomalie contextuelle est un résultat dans la charge de base de données qui est associé à un insight réactif. Chaque anomalie contextuelle décrit un problème de performances RDS pour PostgreSQL spécifique qui requiert un examen. Par exemple, DevOps Guru for RDS peut vous recommander d'envisager d'augmenter la capacité du processeur ou d'étudier les événements d'attente qui contribuent à la charge de la base de données.

Important

Nous vous recommandons de tester toutes les modifications apportées à une instance test avant de modifier une instance de production. Vous pouvez ainsi mieux appréhender l’impact d’une modification.

Pour en savoir plus, consultez la section Analyse des anomalies dans Amazon RDS dans le guide de l'utilisateur Amazon DevOps Guru.

Configuration de DevOps Guru pour RDS

Pour permettre à DevOps Guru pour Amazon RDS de publier des informations pour et RDS pour PostgreSQL, effectuez les tâches suivantes.

Configuration des politiques d'accès IAM pour DevOps Guru for RDS

Pour afficher les alertes de DevOps Guru dans la console RDS, votre utilisateur ou votre rôle Gestion des identités et des accès AWS (IAM) doit disposer de l'une des politiques suivantes :

  • La politique AWS gérée AmazonDevOpsGuruConsoleFullAccess

  • La stratégie AWS gérée AmazonDevOpsGuruConsoleReadOnlyAccess et l'une des politiques suivantes :

    • La politique AWS gérée AmazonRDSFullAccess

    • Politique gérée par le client qui inclut pi:GetResourceMetrics et pi:DescribeDimensionKeys

Pour de plus amples informations, veuillez consulter Configuration des politiques d'accès pour Database Insights.

Activer les informations sur les performances pour votre RDS pour PostgreSQL Instances de base de données

DevOpsGuru for RDS s'appuie sur Performance Insights pour ses données. Sans Performance Insights, DevOps Guru publie les anomalies, mais n'inclut pas l'analyse détaillée et les recommandations.

Lorsque vous créez ou modifiez une instance de base de données RDS pour PostgreSQL, vous pouvez activer Performance Insights. Pour de plus amples informations, veuillez consulter Activation et désactivation des métriques détaillées par requête et par compteur de base de données.

Activer DevOps Guru et spécifier la couverture des ressources

Vous pouvez activer DevOps Guru pour qu'il surveille vos bases de données RDS pour PostgreSQL de l'une des manières suivantes.

Activation de DevOps Guru dans la console RDS

Vous pouvez emprunter plusieurs chemins dans la console Amazon RDS pour activer DevOps Guru.

Activer DevOps Guru lorsque vous créez un RDS pour PostgreSQL database

Le flux de création inclut un paramètre qui active la couverture DevOps Guru pour votre base de données. Ce paramètre est activé par défaut lorsque vous choisissez le modèle Production.

Pour activer DevOps Guru lorsque vous créez un RDS pour PostgreSQL database
  1. Connectez-vous à Console de gestion AWS et ouvrez la console Amazon RDS à l'adresse https://console.aws.amazon.com/rds/.

  2. Suivez les étapes de la section Création d’une instance de base de données, jusqu’à l’étape où vous choisissez les paramètres de surveillance, sans la réaliser.

  3. Dans Monitoring (Surveillance), choisissez Turn on Performance Insights (Activer Performance Insights). Pour que DevOps Guru for RDS puisse fournir une analyse détaillée des anomalies de performances, Performance Insights doit être activé.

  4. Choisissez Turn on DevOps Guru.

    Activez DevOps Guru lorsque vous créez une instance de base de données
  5. Créez une balise pour votre base de données afin que DevOps Guru puisse la surveiller. Procédez comme suit :

    • Dans le champ de texte Tag key (Clé de balise), saisissez un nom commençant par Devops-Guru-.

    • Dans le champ de texte Tag value (Valeur de balise), saisissez n’importe quelle valeur. Par exemple, si vous saisissez rds-database-1 comme nom de votre base de données RDS pour PostgreSQL, vous pouvez également saisir rds-database-1 comme valeur de balise.

    Pour plus d'informations sur les balises, consultez la section «  Utiliser des balises pour identifier les ressources de vos applications DevOps Guru  » dans le guide de l'utilisateur Amazon DevOps Guru.

  6. Suivez les étapes restantes fournies dans Création d’une instance de base de données.

Activer DevOps Guru depuis la bannière de notification

Si vos ressources ne sont pas couvertes par DevOps Guru, Amazon RDS vous en informe par le biais d'une bannière aux emplacements suivants :

  • L’onglet Monitoring (Surveillance) d’une instance de cluster de bases de données

  • Tableau de bord Performance Insights

DevOpsBannière Guru.
Pour activer DevOps Guru pour votre RDS pour PostgreSQL database
  1. Dans la bannière, choisissez Activer DevOps Guru pour RDS.

  2. Saisissez un nom de clé et une valeur pour la balise. Pour plus d'informations sur les balises, consultez la section «  Utiliser des balises pour identifier les ressources de vos applications DevOps Guru  » dans le guide de l'utilisateur Amazon DevOps Guru.

    Activez DevOps Guru dans la console RDS.
  3. Choisissez Turn on DevOps Guru.

Réponse à une erreur d'autorisation lorsque vous activez DevOps Guru

Si vous activez DevOps Guru depuis la console RDS lorsque vous créez une base de données, RDS peut afficher la bannière suivante concernant les autorisations manquantes.

Bannière contenant une erreur d'autorisation manquante.
Pour résoudre une erreur d’autorisations
  1. Accordez à votre utilisateur ou rôle IAM le rôle géré par l’utilisateur AmazonDevOpsGuruConsoleFullAccess. Pour plus d’informations, consultez Configuration des politiques d'accès IAM pour DevOps Guru for RDS.

  2. Ouvrez la console RDS.

  3. Dans le panneau de navigation, choisissez Performance Insights.

  4. Choisissez une instance de base de données dans le cluster que vous venez de créer.

  5. Choisissez le commutateur pour activer DevOps Guru pour RDS.

    Le commutateur pour activer DevOps Guru pour RDS.
  6. Choisissez une valeur de balise. Pour plus d'informations, consultez la section «  Utiliser des balises pour identifier les ressources de vos applications DevOps Guru  » dans le guide de l'utilisateur Amazon DevOps Guru.

    Activez DevOps Guru dans la console Amazon RDS.
  7. Choisissez Turn on DevOps Guru.

Ajouter RDS pour PostgreSQL ressources dans la console DevOps Guru

Vous pouvez spécifier la couverture de vos ressources DevOps Guru sur la console DevOps Guru. Suivez l'étape décrite dans la section Spécifiez la couverture de vos ressources DevOps Guru dans le guide de l'utilisateur Amazon DevOps Guru. Lorsque vous modifiez vos ressources analysées, choisissez l’une des options suivantes :

Pour plus d'informations, consultez la section Activer DevOps Guru dans le guide de l'utilisateur Amazon DevOps Guru.

Ajouter RDS pour PostgreSQL ressources utilisant CloudFormation

Vous pouvez utiliser des balises pour ajouter la couverture de vos ressources RDS pour PostgreSQL à vos CloudFormation modèles. La procédure suivante suppose que vous disposez d'un CloudFormation modèle à la fois pour votre instance de base de données RDS pour PostgreSQL et pour votre pile DevOps Guru.

Pour spécifier un RDS pour PostgreSQL Instance de base de données utilisant une CloudFormation balise
  1. Dans le CloudFormation modèle de votre instance de base de données, définissez une balise à l'aide d'une key/value paire.

    L’exemple suivant attribue la valeur my-db-instance1 à Devops-guru-cfn-default pour une instance de base de données RDS pour PostgreSQL.

    MyDBInstance1: Type: "AWS::RDS::DBInstance" Properties: DBInstanceIdentifier: my-db-instance1 Tags: - Key: Devops-guru-cfn-default Value: devopsguru-my-db-instance1
  2. Dans le CloudFormation modèle de votre pile DevOps Guru, spécifiez la même balise dans votre filtre de collecte de ressources.

    L'exemple suivant configure DevOps Guru pour fournir une couverture à la ressource avec la valeur my-db-instance1 de balise.

    DevOpsGuruResourceCollection: Type: AWS::DevOpsGuru::ResourceCollection Properties: ResourceCollectionFilter: Tags: - AppBoundaryKey: "Devops-guru-cfn-default" TagValues: - "devopsguru-my-db-instance1"

    L’exemple suivant fournit une prise en charge pour toutes les ressources à l’intérieur du périmètre de l’application Devops-guru-cfn-default.

    DevOpsGuruResourceCollection: Type: AWS::DevOpsGuru::ResourceCollection Properties: ResourceCollectionFilter: Tags: - AppBoundaryKey: "Devops-guru-cfn-default" TagValues: - "*"

Pour plus d'informations, consultez AWS::DevOpsGuru : : ResourceCollection et AWS : :RDS : :DBInstance dans le Guide de l'CloudFormation utilisateur.