Amazon Relational Database Service
Guide de l'utilisateur

Surveillance améliorée

Amazon RDS fournit des métriques en temps réel pour le système d'exploitation sur lequel votre instance de base de données s'exécute. Vous pouvez afficher les métriques pour votre instance de base de données à l'aide de la console, ou utiliser la sortie JSON de surveillance améliorée d'Amazon CloudWatch Logs dans le système de surveillance de votre choix.

Par défaut, les métriques de surveillance améliorée sont stockées dans CloudWatch Logs pendant 30 jours. Pour modifier la durée de stockage des métriques dans CloudWatch Logs, modifiez la période de rétention pour le groupe de journaux RDSOSMetrics dans la console CloudWatch. Pour plus d'informations, consultez la section Modification de la rétention des données de journaux dans CloudWatch Logs du Amazon CloudWatch Logs User Guide.

Le coût d'utilisation de la surveillance améliorée dépend de plusieurs facteurs :

  • Vous ne payez que pour l'utilisation de la surveillance améliorée au-delà de l'offre gratuite fournie par Amazon CloudWatch Logs.

    Pour plus d'informations sur la tarification, consultez Amazon CloudWatch Tarification.

  • Plus l'intervalle de surveillance est court, plus la fréquence des rapports sur les métriques du système d'exploitation est élevée, ce qui augmente les coûts de surveillance.

  • Les coûts d'utilisation de la surveillance améliorée sont appliqués pour chaque instance de base de données pour laquelle l'option est activée. Surveiller un grand nombre d'instances de bases de données est plus onéreux que de n'en surveiller que quelques unes.

  • Les instances de bases de données qui prennent en charge une charge de travail nécessitant des calculs intensifs doivent signaler une activité de traitement du système d'exploitation plus intense et des coûts plus élevés pour la surveillance améliorée.

Disponibilité de la surveillance améliorée

La surveillance améliorée est disponible pour les moteurs de base de données suivants :

  • MariaDB

  • Microsoft SQL Server

  • MySQL version 5.5 ou version ultérieure

  • Oracle

  • PostgreSQL

La surveillance améliorée est disponible pour toutes les classes d'instance de base de données, à l'exception de db.m1.small.

Différences entre les métriques CloudWatch et de surveillance améliorée

CloudWatch recueille les métriques relatives à l'utilisation de l'UC à partir de l'hyperviseur pour une instance de base de données, et la surveillance améliorée recueille les métriques à partir d'un agent sur l'instance. Par conséquent, des différences de mesures peuvent apparaître, car une petite quantité de travail est effectuée par la couche de l'hyperviseur. Les différences peuvent être plus importantes si vos instances de bases de données utilisent des classes d'instance plus petites, car dans ce cas un plus grand nombre de machines virtuelles sont gérées par la couche de l'hyperviseur sur une même instance physique. Les métriques de la surveillance améliorée sont utiles pour évaluer l'utilisation de l'UC par différents processus ou threads sur une instance de base de données.

Configuration et activation de la surveillance améliorée

Pour configurer et activer la surveillance améliorée, suivez les étapes répertoriées ci-après.

Avant de commencer

La surveillance améliorée nécessite votre autorisation afin d'agir en votre nom et envoyer des informations relatives aux métriques du système d'exploitation à CloudWatch Logs. Vous octroyez les autorisations requises sont octroyées à l'aide d'un rôle AWS Identity and Access Management (IAM).

La première fois que vous activez la surveillance améliorée dans la console, vous pouvez sélectionner l'option Par défaut pour la propriété Monitoring Role (Rôle de surveillance) afin que RDS crée le rôle IAM requis. RDS crée ensuite automatiquement en votre nom un rôle nommé rds-monitoring-role et l'utilise pour l'instance de base de données spécifiée ou le réplica en lecture.

Vous pouvez également créer le rôle requis avant d'activer la surveillance améliorée, puis spécifier le nom de votre nouveau rôle lorsque vous activez la surveillance améliorée. Vous devez créer ce rôle requis si vous activez la surveillance améliorée à l'aide de l'AWS CLI ou de l'API RDS.

Pour créer le rôle IAM approprié et permettre à Amazon RDS de communiquer avec le service Amazon CloudWatch Logs en votre nom, procédez comme suit.

L'utilisateur qui active la surveillance améliorée doit se voir accorder l'autorisation PassRole. Pour plus d'informations, consultez l'exemple 2 de la section Octroi d'autorisations à un utilisateur pour transférer un rôle à un service AWS dans le Guide de l'utilisateur IAM.

Pour créer un rôle IAM pour la surveillance améliorée Amazon RDS

  1. Ouvrez la console IAM à partir de l'adresse https://console.aws.amazon.com.

  2. Dans le panneau de navigation, choisissez Rôles.

  3. Choisissez Créer un rôle.

  4. Choisissez l'onglet Service AWS, puis choisissez RDS dans la liste de services.

  5. Choisissez RDS - Surveillance améliorée, puis Suivant : Autorisations.

  6. Vérifiez que la page Stratégie d'autorisations attachée indique AmazonRDSEnhancedMonitoringRole, puis choisissez Suivant : Balises.

  7. Sur la page Add tags (Ajouter des balises), choisissez Next: Review (Suivant : Révision).

  8. Dans le champ Nom du rôle, entrez un nom pour votre rôle, par exemple emaccess, puis choisissez Créer un rôle.

Activation et désactivation de la surveillance améliorée

Vous pouvez activer la surveillance améliorée lorsque vous créez un d'instance de base de données ou un réplica en lecture, ou lorsque vous modifiez un d'instance de base de données. Si vous modifiez une instance de base de données afin d'activer la surveillance améliorée, vous n'avez pas besoin de redémarrer votre instance de base de données afin que la modification prenne effet.

Vous pouvez activer la surveillance améliorée dans la console RDS lorsque vous effectuez l'une des opérations suivantes :

  • Créer une instance de base de données – Vous pouvez activer la surveillance améliorée sur la page Configuration de paramètres avancés.

  • Créer un réplica en lecture – Vous pouvez activer la surveillance améliorée sur la page Configuration de paramètres avancés.

  • Modify a DB Instance (Modifier une instance de base de données) – Vous pouvez activer la surveillance améliorée sur la page Modify DB Instance (Modifier une instance de base de données).

Pour activer la surveillance améliorée à l'aide de la console RDS, faites défiler jusqu'à la section Surveillance et procédez comme suit :

  1. Choisissez Activer la surveillance améliorée pour votre instance de base de données ou le réplica en lecture.

  2. Définissez la propriété Monitoring Role (Rôle de surveillance) sur le rôle IAM que vous avez créé pour autoriser Amazon RDS à communiquer avec Amazon CloudWatch Logs en votre nom ou choisissez Par défaut pour que RDS créé en votre nom un rôle nommé rds-monitoring-role.

  3. Définissez la propriété Granularité sur l'intervalle, en secondes, entre les points lorsque les métriques sont collectées pour votre instance de base de données ou réplica en lecture. La propriété Granularité peut être définie sur l'une des valeurs suivantes : 1, 5, 10, 15, 30 ou 60.

Pour désactiver la surveillance améliorée, choisissez Désactiver la surveillance améliorée.


          Activer la surveillance améliorée

L'activation de la surveillance améliorée ne nécessite pas le redémarrage de votre instance de base de données.

Note

La console RDS est actualisée toutes les 5 secondes. Si la granularité est définie sur 1 seconde dans la console RDS, les métriques mises à jour s'affichent toutes les 5 secondes uniquement. Vous pouvez récupérer les mises à jour des métriques toutes les secondes à l'aide de CloudWatch Logs.

Affichage de la surveillance améliorée

Vous pouvez afficher les métriques du système d'exploitation relevées par la surveillance améliorée dans la console RDS en choisissant Enhanced monitoring (Surveillance améliorée) pour Monitoring (Surveillance).

La page Enhanced Monitoring (Surveillance améliorée) est illustrée ci-après.


        Afficher le tableau de bord

Certaines instances de base de données utilisent plusieurs disques pour le volume de stockage des données de l'instance de base de données. Sur ces instances de base de données, les graphiques Physical Devices (Appareils physiques) montrent les métriques de chacun des disques. Par exemple, le graphique suivant montre les métriques pour quatre disques.


        Graphique avec plusieurs disques

Note

Actuellement, les graphiques Physical Devices (Appareils physiques) ne sont pas disponibles pour les instances de base de données Microsoft SQL Server.

Lorsque vous consultez les graphiques agrégés E/S de disque et Système de fichiers, l'appareil rdsdev se rapporte au système de fichiers /rdsdbdata, dans lequel tous les journaux et les fichiers de base de données sont stockés. L'appareil filesystem se rapporte au système de fichiers / (également appelé système de fichiers racine), dans lequel les fichiers associés au système d'exploitation sont stockés.


        Graphique indiquant l'utilisation du système de fichiers

Si l'instance de base de données est un déploiement multi-AZ, vous pouvez afficher les métriques de système d'exploitation pour l'instance de base de données principale et son réplica de secours multi-AZ. Dans la vue Enhanced monitoring (Surveillance améliorée), choisissez primary (principal) pour afficher les métriques de système d'exploitation pour l'instance de base de données principale, ou choisissez secondary (secondaire) pour afficher les métriques de système d'exploitation pour le réplica de secours.


        Choix principal et secondaire de surveillance améliorée

Pour plus d'informations sur les déploiements multi-AZ, consultez Haute disponibilité (multi-AZ) pour Amazon RDS.

Note

Actuellement, l'affichage des métriques de systèmes d'exploitation pour un réplica de secours multi-AZ n'est pas pris en charge pour les instances de base de données MariaDB, Microsoft SQL Server ni PostgreSQL.

Si vous voulez afficher des détails sur les processus qui s'exécutent sur votre instance de base de données, choisissez Liste de processus de système d'exploitation pour Surveillance.

La vue Liste des processus est affichée ci-dessous.


        Vue Liste des processus

Les métriques de surveillance améliorée affichées dans la vue Liste des processus sont organisées de la manière suivante :

  • RDS child processes (Processus enfants RDS) – Affiche un résumé des processus RDS prenant en charge l'instance de base de données, par exemple mysqld pour les instances de base de données MySQL. Les threads du processus sont imbriqués sous le processus parent. Les threads du processus affichent uniquement l'utilisation de l'UC, car les autres métriques sont identiques pour tous les threads du processus. La console affiche 100 processus et threads maximum. Les résultats représentent une combinaison des principaux processus et threads de la consommation de l'UC et de la mémoire. S'il existe plus de 50 processus et 50 threads, la console affiche les 50 premiers éléments de chaque catégorie. Cette présentation vous aide à identifier les processus ayant le plus d'impact sur les performances.

  • RDS processes (Processus RDS) – Affiche un récapitulatif des ressources utilisées par l'agent de gestion RDS, les processus de surveillance des diagnostics, et d'autres processus AWS nécessaires pour prendre en charge les instances de base de données RDS.

  • OS processes (Processus SE) – Affiche un récapitulatif des processus du noyau et du système, qui ont généralement un faible impact sur les performances.

Les éléments répertoriés pour chaque processus sont les suivants :

  • VIRT – Affiche la taille virtuelle du processus.

  • RES – Affiche la mémoire physique réelle en cours d'utilisation par le processus.

  • CPU% – Affiche le pourcentage de bande passante d'UC consommé par le processus.

  • MEM% – Affiche le pourcentage de mémoire totale consommé par le processus.

Les données de surveillance affichées dans la console RDS sont extraites d'Amazon CloudWatch Logs. Vous pouvez également extraire les métriques pour une instance de base de données sous forme de flux de journal à partir de CloudWatch Logs. Pour plus d'informations, consultez Affichage de la surveillance améliorée à l'aide de CloudWatch Logs.

Les métriques de surveillance améliorée ne sont pas renvoyées dans les situations suivantes :

  • Basculement de l'instance de base de données.

  • Modification de la classe d'instance de l'instance de base de données (dimensionnement du calcul).

Les métriques de surveillance améliorée sont renvoyées pendant le redémarrage d'une instance de base de données car seul le moteur de base de données est redémarré. Les métriques concernant le système d'exploitation continuent d'être relevées.

Affichage de la surveillance améliorée à l'aide de CloudWatch Logs

Après avoir activé la surveillance améliorée pour votre instance de base de données, vous pouvez afficher les métriques pour votre instance de base de données à l'aide de CloudWatch Logs, chaque flux de journal représentant une seule instance de base de données surveillée. L'identifiant du flux de journal est l'identifiant de la ressource (DbiResourceId) de l'instance de base de données

Pour afficher les données du journal de la surveillance améliorée

  1. Ouvrez la console CloudWatch à l'adresse https://console.aws.amazon.com/cloudwatch/.

  2. Si besoin, choisissez la région dans laquelle se situe votre instance de base de données. Pour en savoir plus, consultez la section relative aux régions et points de terminaison du document Référence générale Amazon Web Services.

  3. Choisissez Logs (Journaux) dans le volet de navigation.

  4. Choisissez RDSOSMetrics dans la liste de groupes de journaux.

    Dans un déploiement multi-AZ, les fichiers journaux avec -secondary ajouté au nom correspondent au réplica de secours multi-AZ.

    
            Fichier journal du réplica de secours multi-AZ
  5. Choisissez le flux de journal à afficher dans la liste des flux de journaux.

Métriques du système d'exploitation disponibles

Les tableaux suivants répertorient les métriques du système d'exploitation disponibles à l'aide d'Amazon CloudWatch Logs.

Métriques pour les instances de bases de données MariaDB, MySQL, Oracle et PostgreSQL

Groupe Métriques Description

General

engine

Moteur de base de données de l'instance de base de données.

instanceID

Identifiant de l'instance de base de données.

instanceResourceID

Identifiant immuable et propre à la région de l'instance de base de données, également utilisé en tant qu'identifiant du flux de journal.

numVCPUs

Nombre d'UC virtuelles de l'instance de base de données.

timestamp

Heure à laquelle la métrique a été évaluée.

uptime

Temps d'activité de l'instance de base de données.

version

Version du format JSON du flux des métriques du système d'exploitation.

cpuUtilization

guest

Pourcentage de l'UC en cours d'utilisation par les programmes invités.

idle

Pourcentage de l'UC inactive.

irq

Pourcentage de l'UC en cours d'utilisation par les interruptions logicielles.

nice

Pourcentage de l'UC en cours d'utilisation par des programmes s'exécutant avec la priorité la plus faible.

steal

Pourcentage de l'UC en cours d'utilisation par d'autres machines virtuelles.

system

Pourcentage de l'UC en cours d'utilisation par le noyau.

total

Pourcentage total de l'UC en cours d'utilisation. Cette valeur inclut la valeur nice.

user

Pourcentage de l'UC en cours d'utilisation par des programmes utilisateurs.

wait

Pourcentage de l'UC non utilisée pendant l'attente pour accéder aux E/S.

diskIO

avgQueueLen

Nombre de requêtes en attente dans la file d'attente du périphérique d'E/S.

avgReqSz

Taille moyenne de requête, en kilo-octets.

await

Nombre de millisecondes requises pour répondre aux requêtes, y compris le temps d'attente et le temps de service.

device

Identifiant du périphérique de disque en cours d'utilisation.

readIOsPS

Nombre d'opérations de lecture par seconde.

readKb

Nombre total de kilo-octets lus.

readKbPS

Nombre de kilo-octets lus par seconde.

rrqmPS

Nombre de requêtes de lecture fusionnées mises en file d'attente par seconde.

tps

Nombre de transactions d'E/S par seconde.

util

Pourcentage de temps UC pendant lequel les requêtes ont été émises.

writeIOsPS

Nombre d'opérations d'écriture par seconde.

writeKb

Nombre total de kilo-octets écrits.

writeKbPS

Nombre de kilo-octets écrits par seconde.

wrqmPS

Nombre de requêtes d'écriture fusionnées mises en file d'attente par seconde.

fileSys

maxFiles

Nombre maximum de fichiers pouvant être créés pour le système de fichiers.

mountPoint

Chemin vers le système de fichiers.

name

Nom du système de fichiers.

total

Quantité totale d'espace disque disponible pour le système de fichiers, en kilo-octets.

used

Quantité d'espace disque utilisé par des fichiers du système de fichiers, en kilo-octets.

usedFilePercent

Pourcentage de fichiers disponibles en cours d'utilisation.

usedFiles

Nombre de fichiers dans le système de fichiers.

usedPercent

Pourcentage d'espace de disque du système de fichiers en cours d'utilisation.

loadAverageMinute

fifteen

Nombre de processus demandant du temps UC au cours des 15 dernières minutes.

five

Nombre de processus demandant du temps UC au cours des 5 dernières minutes.

one

Nombre de processus demandant du temps UC au cours de la dernière minute.

memory

active

Quantité de mémoire attribuée, en kilo-octets.

buffers

Quantité de mémoire utilisée pour la mise en mémoire tampon des demandes E/S avant écriture dans le périphérique de stockage, en kilo-octets.

cached

Quantité de mémoire utilisée pour la mise en cache d'E/S basés sur le système de fichiers.

dirty

Quantité de pages mémoire de la RAM ayant été modifiées mais non écrites dans le bloc de données associé dans le stockage, en kilo-octets.

free

Quantité de mémoire non attribuée, en kilo-octets.

hugePagesFree

Nombre de grandes pages gratuites. Les grandes pages sont une fonction du noyau Linux.

hugePagesRsvd

Nombre de grandes pages dédiées.

hugePagesSize

Taille de chaque unité de grandes pages, en kilo-octets.

hugePagesSurp

Nombre de grandes pages excédentaires disponibles par rapport au nombre total.

hugePagesTotal

Nombre total de grandes pages pour le système.

inactive

Quantité de pages mémoire moins fréquemment utilisées, en kilo-octets.

mapped

Quantité totale de contenu du système de fichiers mappé en mémoire dans un espace d'adressage de processus, en kilo-octets.

pageTables

Quantité de mémoire utilisée par les tables de page, en kilo-octets.

slab

Quantité de structures de données noyau réutilisables, en kilo-octets.

total

Quantité totale de mémoire, en kilo-octets.

writeback

Quantité de pages de modification dans la RAM encore écrites dans le stockage de sauvegarde, en kilo-octets.

network

interface

Identifiant pour l'interface réseau utilisée pour l'instance de base de données.

rx

Nombre d'octets reçus par seconde.

tx

Nombre d'octets téléchargés par seconde.

processList

cpuUsedPc

Pourcentage de l'UC utilisé par le processus.

id

Identifiant du processus.

memoryUsedPc

Quantité de mémoire utilisée par le processus, en kilo-octets.

name

Nom du processus.

parentID

Identifiant de processus pour le processus parent du processus.

rss

Quantité de RAM allouée au processus, en kilo-octets.

tgid

Identifiant du groupe de threads. Numéro représentant l'ID du processus auquel appartient le thread. Cet identifiant permet de regrouper les threads d'un même processus.

VIRT

Quantité de mémoire virtuelle allouée au processus, en kilo-octets.

swap

swap

Quantité de mémoire d'échange disponible, en kilo-octets.

swap in

Quantité de mémoire, en kilo-octets, échangée depuis le disque.

swap out

Quantité de mémoire, en kilo-octets, échangée vers le disque.

free

Quantité de mémoire d'échange libre, en kilo-octets.

committed

Quantité de mémoire d'échange, en kilo-octets, utilisée en tant que mémoire cache.

tasks

blocked

Nombre de tâches bloquées.

running

Nombre de tâches en cours d'exécution.

sleeping

Nombre de tâches en veille.

stopped

Nombre de tâches arrêtées.

total

Nombre total de tâches.

zombie

Nombre de tâches enfant inactives avec une tâche parent active.

Métriques pour les instances de bases de données Microsoft SQL Server

Groupe Métriques Description

General

engine

Moteur de base de données de l'instance de base de données.

instanceID

Identifiant de l'instance de base de données.

instanceResourceID

Identifiant immuable et propre à la région de l'instance de base de données, également utilisé en tant qu'identifiant du flux de journal.

numVCPUs

Nombre d'UC virtuelles de l'instance de base de données.

timestamp

Heure à laquelle la métrique a été évaluée.

uptime

Temps d'activité de l'instance de base de données.

version

Version du format JSON du flux des métriques du système d'exploitation.

cpuUtilization

idle

Pourcentage de l'UC inactive.

kern

Pourcentage de l'UC en cours d'utilisation par le noyau.

user

Pourcentage de l'UC en cours d'utilisation par des programmes utilisateurs.

disks

name

Identifiant du disque.

totalKb

Espace total du disque, en kilo-octets.

usedKb

Quantité d'espace utilisé sur le disque, en kilo-octets.

usedPc

Pourcentage d'espace utilisé sur le disque.

availKb

Espace disponible sur le disque, en kilo-octets.

availPc

Pourcentage d'espace disponible sur le disque.

rdCountPS

Nombre d'opérations de lecture par seconde.

rdBytesPS

Nombre d'octets lus par seconde.

wrCountPS

Nombre d'opérations d'écriture par seconde.

wrBytesPS

Nombre d'octets écrits par seconde.

memory

commitTotKb

Quantité d'espace d'adressage virtuel en cours d'utilisation basé sur le fichier d'échange, c'est-à-dire la charge d'écriture actuelle. Cette valeur est composée de la mémoire principale (RAM) et du disque (fichiers d'échange).

commitLimitKb

Valeur maximum acceptée pour la métrique commitTotKb. Cette valeur est la somme de la taille du fichier d'échange actuel et de la mémoire physique disponible pour le contenu paginable, à l'exclusion de la RAM affectée aux zones non paginables.

commitPeakKb

Plus grande valeur de la métrique commitTotKb depuis le dernier démarrage du système d'exploitation.

kernTotKb

Quantité de mémoire dans les groupes de noyaux paginés et non paginés, en kilo-octets.

kernPagedKb

Quantité de mémoire dans le groupe de noyaux paginés, en kilo-octets.

kernNonpagedKb

Quantité de mémoire dans le groupe de noyaux non paginés, en kilo-octets.

pageSize

Taille d'une page, en octets.

physTotKb

Quantité de mémoire physique, en kilo-octets.

physAvailKb

Quantité de mémoire physique disponible, en kilo-octets.

sqlServerTotKb

Quantité de mémoire dédiée à Microsoft SQL Server, en kilo-octets.

sysCacheKb

Quantité de mémoire cache du système, en kilo-octets.

network

interface

Identifiant pour l'interface réseau utilisée pour l'instance de base de données.

rdBytesPS

Nombre d'octets reçus par seconde.

wrBytesPS

Nombre d'octets envoyés par seconde.

processList

cpuUsedPc

Pourcentage de l'UC utilisé par le processus.

memUsedPc

Pourcentage de mémoire totale utilisé par le processus.

name

Nom du processus.

pid

Identifiant du processus. Cette valeur n'est pas présente pour les processus appartenant à Amazon RDS.

ppid

Identifiant de processus pour le parent de ce processus. Cette valeur est uniquement présente pour les processus enfant.

tid

Identifiant du thread. Cette valeur est uniquement présente pour les threads. Le processus propriétaire peut être identifié à l'aide de la valeur pid.

workingSetKb

Quantité de mémoire dans l'ensemble de travail privé, plus la quantité de mémoire en cours d'utilisation par le processus et pouvant être partagée avec d'autres processus, en kilo-octets.

workingSetPrivKb

Quantité de mémoire en cours d'utilisation par un processus, mais ne pouvant pas être partagée avec d'autres processus, en kilo-octets.

workingSetShareableKb

Quantité de mémoire en cours d'utilisation par un processus et pouvant être partagée avec d'autres processus, en kilo-octets.

virtKb

Quantité d'espace d'adressage virtuel utilisé par le processus, in kilobytes. L'utilisation d'un espace d'adressage virtuel n'implique pas forcément l'utilisation correspondante de disque ou de pages de mémoire principale.

system

handles

Nombre de handles utilisés par le système.

processes

Nombre de processus s'exécutant sur le système.

threads

Nombre de threads s'exécutant sur le système.