Auf dieser Seite werden die Tools aufgeführt, mit denen Sie Ihre AlloyDB Omni-Instanz überwachen können.
Monitoring-Tools
In der folgenden Tabelle sind die Tools aufgeführt, die Sie auswählen und installieren können, um Ihre AlloyDB Omni-Instanz zu überwachen:
| An | Verwenden | Beschreibung |
|---|---|---|
| Leistung und Verfügbarkeit im Blick behalten | Datadog | Leistung, Verfügbarkeit und Zustand Ihrer AlloyDB Omni-Instanz überwachen |
| Observability-Daten aus Ihrer Instanz exportieren | Postgres Exporter | Ergebnisse von Observability-Abfragen exportieren Postgres-Exporter installieren |
| Beobachtbarkeitsdaten in einem lesbaren Format abrufen | Prometheus | Das Überwachungssystem, das die Beobachtbarkeitsdaten in einem lesbaren Format zurückgibt. Prometheus installieren |
| Daten in einem Dashboard anzeigen | Grafana | Dashboard zum Anzeigen von Messwerten erstellen Grafana installieren |
| Leistungsdaten zur Analyse abrufen | Performance Snapshot Reports | Leistungsdaten abrufen, um die Ursache von Leistungsproblemen zu ermitteln |
Postgres-Exporter installieren
Postgres Exporter ist ein Tool, mit dem sich Observability-Abfragen in einem Format exportieren lassen, das von Prometheus, einem Monitoring-System, gelesen werden kann. Der Exporter enthält viele Standardabfragen. Sie können je nach Bedarf zusätzliche Abfragen und Regeln hinzufügen. Zusätzliche Sicherheitsoptionen wie SSL und Nutzerauthentifizierung können ebenfalls konfiguriert werden. In diesem Beispiel werden nur die grundlegenden Konfigurationsoptionen verwendet.
Installieren
Erstellen Sie ein Verzeichnis für den Postgres-Exporter.
sudo mkdir /opt/postgres_exportersudo chown USER_ACCOUNT:USER_ACCOUNT /opt/postgres_exportercd /opt/postgres_exporterLaden Sie den Postgres-Exporter herunter.
wget https://github.com/prometheus-community/postgres_exporter/releases/download/v0.15.0/postgres_exporter-0.15.0.linux-amd64.tar.gz
Postgres-Exporter extrahieren.
tar -xzvf postgres_exporter-0.15.0.linux-amd64.tar.gz
Kopieren Sie den Postgres-Exporter in das von Ihnen erstellte Verzeichnis.
cd postgres_exporter-0.15.0.linux-amd64sudo cp postgres_exporter /usr/local/binErstellen Sie eine geeignete
.env-Datei für Postgres Exporter.cd /opt/postgres_exportersudo vi postgres_exporter.envFügen Sie
/opt/postgres_exporter/postgres_exporter.envDatenquellen hinzu, um eine oder mehrere Datenbanken zu überwachen.Wenn Sie eine einzelne Datenbank überwachen möchten, fügen Sie die folgende Zeile hinzu:
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/DATABASE_NAME?sslmode=disable"Fügen Sie die folgende Zeile hinzu, um alle Datenbanken zu überwachen:
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/?sslmode=disable"Ersetzen Sie die folgenden Variablen:
USERNAME: Nutzername für die Anmeldung in der Datenbank.PASSWORD: Das Passwort für das Nutzerkonto.POSTGRES_IP_ADDRESS: IP-Adresse der AlloyDB Omni-Instanz.PORT: Der Port, auf dem die Datenbank gehostet wird.DATABASE_NAME: Name der Datenbank.
Fügen Sie
/etc/systemd/system/postgres_exporter.servicedie folgenden Informationen hinzu, damit der Postgres-Exporter Neustarts übersteht.[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.targetErsetzen Sie die folgende Variable:
POSTGRES_EXPORTER_PORT: Der Port, auf dem der Postgres-Exporter gehostet wird. Wir empfehlen die Verwendung von Port9187.
Laden Sie den Postgres-Exporter neu.
sudo systemctl daemon-reload
Starten Sie den Postgres-Exporter.
sudo systemctl start postgres_exportersudo systemctl enable postgres_exportersudo systemctl status postgres_exporter
Der Postgres-Exporter sollte jetzt unter der folgenden URL verfügbar sein:
http://POSTGRES_EXPORTER_HOST_IP_ADDRESS:POSTGRES_EXPORTER_PORT/metrics
Ersetzen Sie die folgenden Variablen:
POSTGRES_EXPORTER_HOST_IP_ADDRESS: IP-Adresse Ihres Computers.POSTGRES_EXPORTER_PORT: Der Port, den Sie in Schritt 7 verwendet haben.
Prometheus
Prometheus ist ein Überwachungssystem, mit dem Postgres Exporter abgefragt und die Observability-Daten in einem lesbaren Format zurückgegeben werden können.
Installieren
Erstellen Sie einen Nutzer mit dem Namen
prometheus.sudo groupadd --system prometheussudo useradd -s /sbin/nologin --system -g prometheus prometheusErstellen Sie Verzeichnisse für Prometheus.
sudo mkdir /etc/prometheussudo mkdir /var/lib/prometheusLaden Sie Prometheus herunter.
wget https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
Extrahieren Sie Prometheus.
sudo tar xvf prometheus*.tar.gzcd prometheus*/sudo mv prometheus /usr/local/binsudo mv promtool /usr/local/binLegen Sie den Nutzer
prometheusals Eigentümer von Prometheus fest.sudo chown prometheus:prometheus /usr/local/bin/prometheussudo chown prometheus:prometheus /usr/local/bin/promtoolVerschieben Sie die Konfigurationsdateien an den richtigen Speicherort.
sudo mv consoles /etc/prometheussudo mv console_libraries /etc/prometheussudo mv prometheus.yml /etc/prometheusLegen Sie den Eigentümer der Prometheus-Verzeichnisse auf den Nutzer
prometheusfest.sudo chown prometheus:prometheus /etc/prometheussudo chown prometheus:prometheus /etc/prometheus/*sudo chown -R prometheus:prometheus /etc/prometheus/consolessudo chown -R prometheus:prometheus /etc/prometheus/console_librariessudo chown -R prometheus:prometheus /var/lib/prometheusFügen Sie
/etc/prometheus/prometheus.ymldie folgenden Informationen hinzu, damit Prometheus den Postgres-Exporter abfragen kann.global: scrape_interval: 15s scrape_configs: - job_name: postgres static_configs: - targets: ['POSTGRES_EXPORTER_MACHINE_IP_ADDRESS:9187']Fügen Sie
/etc/systemd/system/prometheus.servicedie folgenden Informationen hinzu, damit Prometheus Neustarts übersteht.[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.targetAktualisieren Sie Prometheus.
sudo systemctl daemon-reload
Starten Sie Prometheus.
sudo systemctl start prometheussudo systemctl enable prometheussudo systemctl status prometheus
Prometheus sollte jetzt unter der folgenden URL verfügbar sein:
http://PROMETHEUS_HOST_IP_ADDRESS:9090
Ersetzen Sie die folgende Variable:
PROMETHEUS_HOST_IP_ADDRESS: IP-Adresse Ihres Computers.
Grafana
Grafana ist ein Dashboarding-Tool, mit dem Prometheus-Messwerte über ein Dashboard für Endnutzer verfügbar gemacht werden. Für den Postgres-Exporter sind mehrere Standarddashboards verfügbar. In diesem Beispiel für die Beobachtbarkeit werden diese Dashboards verwendet.
Grafana ist über normale apt- und yum-Repositories verfügbar und wir verwenden diese, um das Produkt zu installieren.
Installieren
Installieren Sie Grafana.
Führen Sie für Ubuntu- und Debian-Systeme die folgenden Befehle aus:
sudo apt-get updatesudo apt-get install grafanaFühren Sie für RHEL-, CentOS- oder Rocky Linux-Systeme die folgenden Aufgaben aus:
Importieren Sie den GPG-Schlüssel.
wget -q -O gpg.key https://rpm.grafana.com/gpg.keysudo rpm --import gpg.keyErstellen Sie die Datei
/etc/yum.repos.d/grafana.repomit folgendem Inhalt:[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.crtInstallieren Sie Grafana.
sudo dnf install grafana
Laden Sie Grafana neu.
sudo systemctl daemon-reload
Starten Sie Grafana.
sudo systemctl start grafana-serversudo systemctl enable grafana-serversudo systemctl status grafana-server
Grafana sollte jetzt unter der folgenden URL verfügbar sein:
http://GRAFANA_HOST_IP_ADDRESS:9090
Ersetzen Sie die folgende Variable:
GRAFANA_HOST_IP_ADDRESS: IP-Adresse Ihres Computers.
Dashboard laden
Eine allgemeine Anleitung zum Konfigurieren und Bedienen von Grafana finden Sie unter Grafana einrichten. Es sind viele öffentliche Dashboards verfügbar, aber wir empfehlen das folgende PostgreSQL-Statistik-Dashboard.
So laden Sie ein Dashboard:
Richten Sie Grafana ein.
Öffnen Sie die Grafana-Konsole über die URL-Adresse im Bereich Install von Grafana. Der Standardnutzername und das Standardpasswort sind
admin.Ändern Sie das Standardpasswort.
Wenn die Prometheus-Datenquelle nicht hinzugefügt wurde, gehen Sie zu Startseite > Datenquellen.
Klicken Sie auf Neue Datenquelle hinzufügen.
Wählen Sie Prometheus aus.
Geben Sie im Feld Prometheus server URL (Prometheus-Server-URL) die URL-Adresse aus dem Abschnitt Install (Installieren) von Prometheus ein.
Ändern Sie die folgenden Konfigurationseinstellungen:
- Prometheus-Typ: Wählen Sie Prometheus aus.
- Prometheus-Version: Wählen Sie > 2.5.x aus.
Klicken Sie auf Speichern und testen.
Neues Dashboard erstellen
Rufen Sie Startseite > Dashboards auf.
Klicken Sie auf Neu.
Wählen Sie Neues Dashboard aus.
Klicken Sie auf Dashboard importieren.
Geben Sie die folgende URL ein: https://grafana.com/grafana/dashboards/13494-postgresql-statistics/.
Klicken Sie auf Laden.
Ändern Sie den Namen des Dashboards in
PRODUCT_NAME PostgreSQL statistics.Ersetzen Sie
PRODUCT_NAMEdurch den Namen Ihres Produkts.Wählen Sie im Feld Prometheus Ihre Datenquelle aus.
Klicken Sie auf Importieren.
Performance Snapshot Reports
Leistungsübersichtsberichte sind ein integriertes AlloyDB Omni-Tool, mit dem Leistungsdaten erfasst und analysiert werden, um die Ursache von Leistungsproblemen zu ermitteln. Dieses Tool ergänzt andere AlloyDB Omni-Funktionen zur Beobachtbarkeit wie System-Insights, Query Insights und den Metrics Explorer, die Echtzeitmesswerte zu Ihrer Instanz liefern.
Weitere Informationen finden Sie unter Datenbankleistung optimieren, indem Sie Leistungssnapshots vergleichen.