Utiliser les outils de surveillance AlloyDB Omni

Sélectionnez une version de la documentation :

Cette page liste les outils que vous pouvez utiliser pour surveiller votre instance AlloyDB Omni.

Outils de surveillance

Le tableau suivant liste les outils que vous pouvez choisir et installer pour surveiller votre instance AlloyDB Omni :

À Utiliser Description
Surveiller les performances et la disponibilité Datadog Surveillez les performances, la disponibilité et l'état de votre instance AlloyDB Omni.
Exporter des données d'observabilité depuis votre instance Postgres Exporter Exporter les résultats des requêtes d'observabilité Pour installer Postgres Exporter
Récupérer les données d'observabilité dans un format lisible Prometheus Système de surveillance permettant de renvoyer les données d'observabilité dans un format lisible. Pour installer Prometheus
Afficher des données dans un tableau de bord Grafana Créez un tableau de bord pour afficher les métriques. Pour installer Grafana
Récupérer les données de performances pour l'analyse Rapports instantanés sur les performances Récupérez les données sur les performances pour identifier la cause des problèmes de performances.

Installer l'exportateur Postgres

Postgres Exporter est un outil qui exporte les requêtes d'observabilité dans un format que Prometheus, un système de surveillance, peut lire. L'exportateur est fourni avec de nombreuses requêtes standards intégrées. Vous pouvez ajouter des requêtes et des règles supplémentaires en fonction de vos besoins. Vous pouvez également configurer d'autres options de sécurité, telles que SSL et l'authentification des utilisateurs. Pour cet exemple, seules les options de configuration de base sont utilisées.

Installer

  1. Créez un répertoire pour Postgres Exporter.

    sudo mkdir /opt/postgres_exporter
    sudo chown USER_ACCOUNT:USER_ACCOUNT /opt/postgres_exporter
    cd /opt/postgres_exporter
  2. Téléchargez l'exportateur Postgres.

    wget https://github.com/prometheus-community/postgres_exporter/releases/download/v0.15.0/postgres_exporter-0.15.0.linux-amd64.tar.gz
    
  3. Extrayez l'exportateur Postgres.

    tar -xzvf postgres_exporter-0.15.0.linux-amd64.tar.gz
    
  4. Copiez Postgres Exporter dans le répertoire que vous avez créé.

    cd postgres_exporter-0.15.0.linux-amd64
    sudo cp postgres_exporter /usr/local/bin
  5. Créez un fichier .env approprié pour Postgres Exporter.

    cd /opt/postgres_exporter
    sudo vi postgres_exporter.env
  6. Ajoutez des sources de données à /opt/postgres_exporter/postgres_exporter.env pour surveiller une ou plusieurs bases de données.

    Pour surveiller une seule base de données, ajoutez la ligne suivante :

    DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/DATABASE_NAME?sslmode=disable"
    

    Pour surveiller toutes les bases de données, ajoutez la ligne suivante :

    DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/?sslmode=disable"
    

    Remplacez les variables suivantes :

    • USERNAME : nom d'utilisateur pour se connecter à la base de données.
    • PASSWORD : mot de passe du compte utilisateur.
    • POSTGRES_IP_ADDRESS : adresse IP de l'instance AlloyDB Omni.
    • PORT : port sur lequel la base de données est hébergée.
    • DATABASE_NAME : nom de la base de données.
  7. Ajoutez les informations suivantes à /etc/systemd/system/postgres_exporter.service pour que Postgres Exporter survive aux redémarrages.

    [Unit]
    Description=Prometheus exporter for Postgresql
    Wants=network-online.target
    After=network-online.target
    [Service]
    User=postgres
    Group=postgres
    WorkingDirectory=/opt/postgres_exporter
    EnvironmentFile=/opt/postgres_exporter/postgres_exporter.env
    ExecStart=/usr/local/bin/postgres_exporter --web.listen-address=:POSTGRES_EXPORTER_PORT --web.telemetry-path=/metrics
    Restart=always
    [Install]
    WantedBy=multi-user.target
    

    Remplacez la variable suivante :

    • POSTGRES_EXPORTER_PORT : port sur lequel l'exportateur Postgres est hébergé. Nous vous recommandons d'utiliser le port 9187.
  8. Rechargez l'exportateur Postgres.

    sudo systemctl daemon-reload
    
  9. Démarrez l'exportateur Postgres.

    sudo systemctl start postgres_exporter
    sudo systemctl enable postgres_exporter
    sudo systemctl status postgres_exporter

L'exportateur Postgres devrait maintenant être disponible à l'URL suivante :

http://POSTGRES_EXPORTER_HOST_IP_ADDRESS:POSTGRES_EXPORTER_PORT/metrics

Remplacez les variables suivantes :

  • POSTGRES_EXPORTER_HOST_IP_ADDRESS : adresse IP de votre machine.
  • POSTGRES_EXPORTER_PORT : port que vous avez utilisé à l'étape 7.

Prometheus

Prometheus est un système de surveillance qui peut être utilisé pour interroger Postgres Exporter et renvoyer les données d'observabilité dans un format lisible.

Installer

  1. Créez un utilisateur prometheus.

    sudo groupadd --system prometheus
    sudo useradd -s /sbin/nologin --system -g prometheus prometheus
  2. Créez des répertoires pour Prometheus.

    sudo mkdir /etc/prometheus
    sudo mkdir /var/lib/prometheus
  3. Téléchargez Prometheus.

    wget https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
    
  4. Extrayez Prometheus.

    sudo tar xvf prometheus*.tar.gz
    cd prometheus*/
    sudo mv prometheus /usr/local/bin
    sudo mv promtool /usr/local/bin
  5. Définissez l'utilisateur prometheus comme propriétaire de Prometheus.

    sudo chown prometheus:prometheus /usr/local/bin/prometheus
    sudo chown prometheus:prometheus /usr/local/bin/promtool
  6. Déplacez les fichiers de configuration vers l'emplacement approprié.

    sudo mv consoles /etc/prometheus
    sudo mv console_libraries /etc/prometheus
    sudo mv prometheus.yml /etc/prometheus
  7. Définissez l'utilisateur prometheus comme propriétaire des répertoires Prometheus.

    sudo chown prometheus:prometheus /etc/prometheus
    sudo chown prometheus:prometheus /etc/prometheus/*
    sudo chown -R prometheus:prometheus /etc/prometheus/consoles
    sudo chown -R prometheus:prometheus /etc/prometheus/console_libraries
    sudo chown -R prometheus:prometheus /var/lib/prometheus
  8. Ajoutez les informations suivantes à /etc/prometheus/prometheus.yml pour que Prometheus puisse interroger Postgres Exporter.

    global:
      scrape_interval: 15s
    
    scrape_configs:
    - job_name: postgres
      static_configs:
      - targets: ['POSTGRES_EXPORTER_MACHINE_IP_ADDRESS:9187']
    
  9. Ajoutez les informations suivantes à /etc/systemd/system/prometheus.service pour que Prometheus survive aux redémarrages.

    [Unit]
    Description=Prometheus
    Wants=network-online.target
    After=network-online.target
    
    [Service]
    User=prometheus
    Group=prometheus
    Type=simple
    ExecStart=/usr/local/bin/prometheus \
        --config.file /etc/prometheus/prometheus.yml \
        --storage.tsdb.path /var/lib/prometheus/ \
        --web.console.templates=/etc/prometheus/consoles \
        --web.console.libraries=/etc/prometheus/console_libraries
    
    [Install]
    WantedBy=multi-user.target
    
  10. Rechargez Prometheus.

    sudo systemctl daemon-reload
    
  11. Démarrez Prometheus.

    sudo systemctl start prometheus
    sudo systemctl enable prometheus
    sudo systemctl status prometheus

Prometheus devrait maintenant être disponible à l'URL suivante :

http://PROMETHEUS_HOST_IP_ADDRESS:9090

Remplacez la variable suivante :

  • PROMETHEUS_HOST_IP_ADDRESS : adresse IP de votre machine.

Grafana

Grafana est un outil de création de tableaux de bord qui expose les métriques Prometheus à un utilisateur final via un tableau de bord. Plusieurs tableaux de bord standards sont disponibles pour Postgres Exporter. Cet exemple d'observabilité utilise ces tableaux de bord. Grafana est disponible via les dépôts apt et yum habituels, que nous utilisons pour installer ce produit.

Installer

  1. Installez Grafana.

    Pour les systèmes Ubuntu et Debian, exécutez les commandes suivantes :

    sudo apt-get update
    sudo apt-get install grafana

    Pour les systèmes RHEL, CentOS ou Rocky Linux, procédez comme suit :

    1. Importez la clé GPG.

      wget -q -O gpg.key https://rpm.grafana.com/gpg.key
      sudo rpm --import gpg.key
    2. Créez le fichier /etc/yum.repos.d/grafana.repo avec le contenu suivant :

      [grafana]
      name=grafana
      baseurl=https://rpm.grafana.com
      repo_gpgcheck=1
      enabled=1
      gpgcheck=1
      gpgkey=https://rpm.grafana.com/gpg.key
      sslverify=1
      sslcacert=/etc/pki/tls/certs/ca-bundle.crt
      
    3. Installez Grafana.

      sudo dnf install grafana
      
  2. Actualisez Grafana.

    sudo systemctl daemon-reload
    
  3. Démarrez Grafana.

    sudo systemctl start grafana-server
    sudo systemctl enable grafana-server
    sudo systemctl status grafana-server

Grafana devrait maintenant être disponible à l'URL suivante :

http://GRAFANA_HOST_IP_ADDRESS:9090

Remplacez la variable suivante :

  • GRAFANA_HOST_IP_ADDRESS : adresse IP de votre machine.

Charger un tableau de bord

Pour obtenir des instructions générales sur la configuration et l'utilisation de Grafana, consultez Configurer Grafana. De nombreux tableaux de bord publics sont disponibles, mais nous vous recommandons le tableau de bord des statistiques PostgreSQL.

Pour charger un tableau de bord, procédez comme suit :

  1. Configurez Grafana.

    1. Ouvrez la console Grafana à l'aide de l'adresse URL de la section Install (Installer) de Grafana. Le nom d'utilisateur et le mot de passe par défaut sont admin.

    2. Modifiez le mot de passe par défaut.

    3. Si la source de données Prometheus n'est pas ajoutée, accédez à Accueil > Sources de données.

    4. Cliquez sur Ajouter une source de données.

    5. Sélectionnez Prometheus.

    6. Dans le champ URL du serveur Prometheus, saisissez l'URL de la section Install (Installer) de Prometheus.

    7. Modifiez les paramètres de configuration suivants :

      • Type Prometheus : sélectionnez Prometheus.
      • Version de Prometheus : sélectionnez > 2.5.x.
    8. Cliquez sur Enregistrer et tester.

  2. Créez un tableau de bord.

    1. Accédez à Accueil > Tableaux de bord.

    2. Cliquez sur New (Nouveau).

    3. Sélectionnez Nouveau tableau de bord.

    4. Cliquez sur Importer un tableau de bord.

    5. Saisissez l'URL suivante : https://grafana.com/grafana/dashboards/13494-postgresql-statistics/.

    6. Cliquez sur Charger.

    7. Redéfinissez le Nom du tableau de bord sur PRODUCT_NAME PostgreSQL statistics.

      Remplacez PRODUCT_NAME par le nom de votre produit.

    8. Sélectionnez votre source de données dans le champ Prometheus.

    9. Cliquez sur Importer.

Rapports sur l'instantané des performances

Les rapports sur les instantanés des performances sont un outil AlloyDB Omni intégré qui capture et analyse les données de performances pour vous aider à identifier la cause des problèmes de performances. Cet outil complète les autres fonctionnalités d'observabilité d'AlloyDB Omni, comme les insights système, les insights sur les requêtes et l'explorateur de métriques, qui fournissent des métriques en temps réel sur votre instance.

Pour en savoir plus, consultez Optimiser les performances de la base de données en comparant les instantanés de performances.