En esta página, se enumeran las herramientas que puedes usar para supervisar tu instancia de AlloyDB Omni.
Herramientas de supervisión
En la siguiente tabla, se enumeran las herramientas que puedes usar para supervisar tu instancia de AlloyDB Omni:
A | Usar | Descripción |
---|---|---|
Supervisa el rendimiento y la disponibilidad | Datadog | Supervisa el rendimiento, la disponibilidad y el estado de tu instancia de AlloyDB Omni. |
Cómo exportar datos de observabilidad desde tu instancia | Postgres Exporter | Exporta los resultados de las consultas de observabilidad. Para instalar el exportador de Postgres |
Cómo recuperar datos de observabilidad en un formato legible | Prometheus | Sistema de supervisión para mostrar los datos de observabilidad en un formato legible Cómo instalar Prometheus |
Cómo mostrar datos en un panel | Grafana | Crea un panel para mostrar las métricas. Cómo instalar Grafana |
Cómo recuperar datos de rendimiento para su análisis | Informes de resumen de rendimiento | Recupera datos de rendimiento para identificar la causa de los problemas de rendimiento. |
Instala el exportador de Postgres
Postgres Exporter es una herramienta que exporta consultas de observabilidad en un formato que puede leer Prometheus, un sistema de supervisión. El exportador incluye muchas consultas estándar integradas, y puedes agregar consultas y reglas adicionales según tus necesidades. También se pueden configurar opciones de seguridad adicionales, como SSL y la autenticación del usuario. En este ejemplo, solo se usan las opciones de configuración básicas.
Para instalar Postgres Exporter, sigue estos pasos:
Crea un directorio para el exportador de Postgres.
sudo mkdir /opt/postgres_exporter
sudo chown USER_ACCOUNT:USER_ACCOUNT /opt/postgres_exporter
cd /opt/postgres_exporter
Descarga el exportador de Postgres.
wget https://github.com/prometheus-community/postgres_exporter/releases/download/v0.15.0/postgres_exporter-0.15.0.linux-amd64.tar.gz
Extrae el exportador de Postgres.
tar -xzvf postgres_exporter-0.15.0.linux-amd64.tar.gz
Copia Postgres Exporter en el directorio que creaste.
cd postgres_exporter-0.15.0.linux-amd64
sudo cp postgres_exporter /usr/local/bin
Crea un archivo
.env
adecuado para Postgres Exporter.cd /opt/postgres_exporter
sudo vi postgres_exporter.env
Agrega fuentes de datos a
/opt/postgres_exporter/postgres_exporter.env
para supervisar una o más bases de datos.Para supervisar una sola base de datos, agrega la siguiente línea:
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/DATABASE_NAME?sslmode=disable"
Para supervisar todas las bases de datos, agrega la siguiente línea:
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/?sslmode=disable"
Reemplaza las siguientes variables:
USERNAME
: Es el nombre de usuario para acceder a la base de datos.PASSWORD
: La contraseña de la cuenta de usuario.POSTGRES_IP_ADDRESS
: Es la dirección IP de la instancia de AlloyDB Omni.PORT
: Es el puerto en el que se aloja la base de datos.DATABASE_NAME
: Es el nombre de la base de datos.
Agrega la siguiente información a
/etc/systemd/system/postgres_exporter.service
para que Postgres Exporter sobreviva a los reinicios.[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
Reemplaza la siguiente variable:
POSTGRES_EXPORTER_PORT
: Es el puerto en el que se aloja el exportador de Postgres. Recomendamos usar el puerto9187
.
Vuelve a cargar el exportador de Postgres.
sudo systemctl daemon-reload
Inicia el exportador de Postgres.
sudo systemctl start postgres_exporter
sudo systemctl enable postgres_exporter
sudo systemctl status postgres_exporter
El exportador de Postgres debería estar disponible en la siguiente URL:
http://POSTGRES_EXPORTER_HOST_IP_ADDRESS:POSTGRES_EXPORTER_PORT/metrics
Reemplaza las siguientes variables:
POSTGRES_EXPORTER_HOST_IP_ADDRESS
: Es la dirección IP de tu máquina.POSTGRES_EXPORTER_PORT
: Es el puerto que usaste en el paso 7.
Instala Prometheus
Prometheus es un sistema de supervisión que se puede usar para consultar el exportador de Postgres y mostrar los datos de observabilidad en un formato legible.
Para instalar Prometheus, sigue estos pasos:
Crea un usuario
prometheus
.sudo groupadd --system prometheus
sudo useradd -s /sbin/nologin --system -g prometheus prometheus
Crea directorios para Prometheus.
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
Descarga Prometheus.
wget https://github.com/prometheus/prometheus/releases/download/v2.52.0/prometheus-2.52.0.linux-amd64.tar.gz
Extrae Prometheus.
sudo tar xvf prometheus*.tar.gz
cd prometheus*/
sudo mv prometheus /usr/local/bin
sudo mv promtool /usr/local/bin
Establece la propiedad de Prometheus en el usuario
prometheus
.sudo chown prometheus:prometheus /usr/local/bin/prometheus
sudo chown prometheus:prometheus /usr/local/bin/promtool
Mueve los archivos de configuración a la ubicación correcta.
sudo mv consoles /etc/prometheus
sudo mv console_libraries /etc/prometheus
sudo mv prometheus.yml /etc/prometheus
Establece la propiedad de los directorios de Prometheus para el usuario
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
Agrega la siguiente información a
/etc/prometheus/prometheus.yml
para que Prometheus pueda consultar el exportador de Postgres.global: scrape_interval: 15s scrape_configs: - job_name: postgres static_configs: - targets: ['POSTGRES_EXPORTER_MACHINE_IP_ADDRESS:9187']
Agrega la siguiente información a
/etc/systemd/system/prometheus.service
para que Prometheus sobreviva a los reinicios.[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
Vuelve a cargar Prometheus.
sudo systemctl daemon-reload
Inicia Prometheus.
sudo systemctl start prometheus
sudo systemctl enable prometheus
sudo systemctl status prometheus
Prometheus ahora debería estar disponible en la siguiente URL:
http://PROMETHEUS_HOST_IP_ADDRESS:9090
Reemplaza la siguiente variable:
PROMETHEUS_HOST_IP_ADDRESS
: Es la dirección IP de tu máquina.
Instala Grafana
Grafana es una herramienta de creación de paneles que expone las métricas de Prometheus a un usuario final a través de un panel. Hay varios paneles estándar disponibles para Postgres Exporter, y este ejemplo de observabilidad aprovecha esos paneles disponibles.
Grafana está disponible a través de repositorios normales de apt
y yum
, y los usamos para instalar este producto.
Para instalar Grafana, sigue estos pasos:
Instala Grafana.
Para sistemas Ubuntu y Debian, ejecuta los siguientes comandos:
sudo apt-get update
sudo apt-get install grafana
Para sistemas RHEL, CentOS o Rocky Linux, completa las siguientes tareas:
Importa la clave de GPG.
wget -q -O gpg.key https://rpm.grafana.com/gpg.key
sudo rpm --import gpg.key
Crea el archivo
/etc/yum.repos.d/grafana.repo
con el siguiente contenido:[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
Instala Grafana.
sudo dnf install grafana
Vuelve a cargar Grafana.
sudo systemctl daemon-reload
Inicia Grafana.
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
sudo systemctl status grafana-server
Grafana debería estar disponible en la siguiente URL:
http://GRAFANA_HOST_IP_ADDRESS:9090
Reemplaza la siguiente variable:
GRAFANA_HOST_IP_ADDRESS
: Es la dirección IP de tu máquina.
Cómo cargar un panel
Puedes encontrar instrucciones generales para configurar y operar Grafana en Configura Grafana. Existen muchos paneles públicos disponibles, pero te recomendamos el siguiente panel de estadísticas de PostgreSQL.
Para cargar un panel, sigue estos pasos:
Configura Grafana.
Abre la consola de Grafana con la dirección URL de la sección Install de Grafana. El nombre de usuario y la contraseña predeterminados son
admin
.Cambia la contraseña predeterminada.
Si no se agregó la fuente de datos de Prometheus, navega a Página principal > Fuentes de datos.
Haz clic en Agregar una fuente de datos nueva.
Selecciona Prometheus.
En el campo URL del servidor de Prometheus, ingresa la dirección de URL de la sección Install de Prometheus.
Cambia los siguientes parámetros de configuración:
- Tipo de Prometheus: Selecciona Prometheus.
- Versión de Prometheus: Selecciona > 2.5.x.
Haz clic en Guardar y probar.
Crea un panel nuevo.
Navega a Página principal > Paneles.
Haz clic en Nuevo.
Selecciona Nuevo panel.
Haz clic en Importar panel.
Ingresa la siguiente URL: https://grafana.com/grafana/dashboards/13494-postgresql-statistics/.
Haz clic en Cargar.
Cambia el Nombre del panel a
PRODUCT_NAME PostgreSQL statistics
.Reemplaza
PRODUCT_NAME
por el nombre de tu producto.Selecciona tu fuente de datos en el campo Prometheus.
Haz clic en Importar.
Informes de resumen del rendimiento
Los informes de instantáneas de rendimiento son una herramienta integrada de AlloyDB Omni que captura y analiza datos de rendimiento para ayudarte a identificar la causa de los problemas de rendimiento. Esta herramienta complementa otras funciones de visibilidad de AlloyDB Omni, como las estadísticas de sistemas, las estadísticas de consultas y el Explorador de métricas, que proporcionan métricas en tiempo real sobre tu instancia.
Para obtener más información, consulta Cómo optimizar el rendimiento de la base de datos comparando instantáneas de rendimiento.