En esta página se enumeran las herramientas que puedes usar para monitorizar tu instancia de AlloyDB Omni.
Herramientas de monitorización
En la siguiente tabla se indican las herramientas que puede elegir e instalar para monitorizar su instancia de AlloyDB Omni:
| Para | Uso | Descripción |
|---|---|---|
| Monitorizar el rendimiento y la disponibilidad | Datadog | Monitoriza el rendimiento, la disponibilidad y el estado de tu instancia de AlloyDB Omni. |
| Exportar datos de observabilidad de tu instancia | Postgres Exporter | Exportar los resultados de las consultas de observabilidad. Para instalar Postgres Exporter |
| Recuperar datos de observabilidad en un formato legible | Prometheus | Sistema de monitorización para devolver los datos de observabilidad en un formato legible. Para instalar Prometheus |
| Mostrar datos en un panel de control | Grafana | Crea un panel de control para mostrar métricas. Para instalar Grafana |
| Recuperar datos de rendimiento para analizarlos | Informes de resumen de rendimiento | Recuperar datos de rendimiento para identificar la causa de los problemas de rendimiento. |
Instalar Postgres Exporter
Postgres Exporter es una herramienta que exporta consultas de observabilidad en un formato que puede leer Prometheus, un sistema de monitorización. El exportador incluye muchas consultas estándar y puedes añadir consultas y reglas adicionales en función de tus necesidades. También se pueden configurar opciones de seguridad adicionales, como SSL y la autenticación de usuarios. En este ejemplo, solo se usan las opciones de configuración básicas.
Instalar
Crea un directorio para Postgres Exporter.
sudo mkdir /opt/postgres_exportersudo chown USER_ACCOUNT:USER_ACCOUNT /opt/postgres_exportercd /opt/postgres_exporterDescarga Postgres Exporter.
wget https://github.com/prometheus-community/postgres_exporter/releases/download/v0.15.0/postgres_exporter-0.15.0.linux-amd64.tar.gz
Extrae Postgres Exporter.
tar -xzvf postgres_exporter-0.15.0.linux-amd64.tar.gz
Copia Postgres Exporter en el directorio que has creado.
cd postgres_exporter-0.15.0.linux-amd64sudo cp postgres_exporter /usr/local/binCrea un archivo
.envadecuado para Postgres Exporter.cd /opt/postgres_exportersudo vi postgres_exporter.envAñada fuentes de datos a
/opt/postgres_exporter/postgres_exporter.envpara monitorizar una o varias bases de datos.Para monitorizar una sola base de datos, añade la siguiente línea:
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/DATABASE_NAME?sslmode=disable"Para monitorizar todas las bases de datos, añade la siguiente línea:
DATA_SOURCE_NAME="postgresql://USERNAME:PASSWORD@POSTGRES_IP_ADDRESS:PORT/?sslmode=disable"Sustituye las siguientes variables:
USERNAME: nombre de usuario para iniciar sesión en la base de datos.PASSWORD: contraseña de la cuenta de usuario.POSTGRES_IP_ADDRESS: dirección IP de la instancia de AlloyDB Omni.PORT: puerto en el que se aloja la base de datos.DATABASE_NAME: nombre de la base de datos.
Añade la siguiente información a
/etc/systemd/system/postgres_exporter.servicepara 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.targetSustituye la siguiente variable:
POSTGRES_EXPORTER_PORT: Port Postgres Exporter está alojado en. Te recomendamos que uses el puerto9187.
Vuelve a cargar Postgres Exporter.
sudo systemctl daemon-reload
Inicia Postgres Exporter.
sudo systemctl start postgres_exportersudo systemctl enable postgres_exportersudo systemctl status postgres_exporter
Postgres Exporter debería estar disponible en la siguiente URL:
http://POSTGRES_EXPORTER_HOST_IP_ADDRESS:POSTGRES_EXPORTER_PORT/metrics
Sustituye las siguientes variables:
POSTGRES_EXPORTER_HOST_IP_ADDRESS: dirección IP de tu máquina.POSTGRES_EXPORTER_PORT: puerto que has usado en el paso 7.
Prometheus
Prometheus es un sistema de monitorización que se puede usar para consultar Postgres Exporter y devolver los datos de observabilidad en un formato legible.
Instalar
Crea un
prometheus.sudo groupadd --system prometheussudo useradd -s /sbin/nologin --system -g prometheus prometheusCrea directorios para Prometheus.
sudo mkdir /etc/prometheussudo mkdir /var/lib/prometheusDescarga 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.gzcd prometheus*/sudo mv prometheus /usr/local/binsudo mv promtool /usr/local/binAsigna la propiedad de Prometheus al usuario
prometheus.sudo chown prometheus:prometheus /usr/local/bin/prometheussudo chown prometheus:prometheus /usr/local/bin/promtoolMueve los archivos de configuración a la ubicación correcta.
sudo mv consoles /etc/prometheussudo mv console_libraries /etc/prometheussudo mv prometheus.yml /etc/prometheusAsigna la propiedad de los directorios de Prometheus al usuario
prometheus.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/prometheusAñade la siguiente información a
/etc/prometheus/prometheus.ymlpara que Prometheus pueda consultar Postgres Exporter.global: scrape_interval: 15s scrape_configs: - job_name: postgres static_configs: - targets: ['POSTGRES_EXPORTER_MACHINE_IP_ADDRESS:9187']Añade la siguiente información a
/etc/systemd/system/prometheus.servicepara 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.targetVuelve a cargar Prometheus.
sudo systemctl daemon-reload
Inicia Prometheus.
sudo systemctl start prometheussudo systemctl enable prometheussudo systemctl status prometheus
Prometheus debería estar disponible en la siguiente URL:
http://PROMETHEUS_HOST_IP_ADDRESS:9090
Sustituye la siguiente variable:
PROMETHEUS_HOST_IP_ADDRESS: dirección IP de tu máquina.
Grafana
Grafana es una herramienta de creación de paneles que muestra las métricas de Prometheus a los usuarios finales a través de un panel. Hay varios paneles estándar disponibles para Postgres Exporter y este ejemplo de observabilidad aprovecha esos paneles.
Grafana está disponible a través de repositorios apt y yum normales, que usamos para instalar este producto.
Instalar
Instala Grafana.
En los sistemas Ubuntu y Debian, ejecuta los siguientes comandos:
sudo apt-get updatesudo apt-get install grafanaEn los sistemas RHEL, CentOS o Rocky Linux, sigue estos pasos:
Importa la clave GPG.
wget -q -O gpg.key https://rpm.grafana.com/gpg.keysudo rpm --import gpg.keyCrea el archivo
/etc/yum.repos.d/grafana.repocon 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.crtInstala Grafana.
sudo dnf install grafana
Vuelve a cargar Grafana.
sudo systemctl daemon-reload
Inicia Grafana.
sudo systemctl start grafana-serversudo systemctl enable grafana-serversudo systemctl status grafana-server
Grafana debería estar disponible en la siguiente URL:
http://GRAFANA_HOST_IP_ADDRESS:9090
Sustituye la siguiente variable:
GRAFANA_HOST_IP_ADDRESS: dirección IP de tu máquina.
Cargar un panel de control
Puedes consultar las instrucciones generales sobre cómo configurar y usar Grafana en el artículo Configurar Grafana. Hay muchos paneles públicos disponibles, pero te recomendamos el siguiente panel de estadísticas de PostgreSQL.
Para cargar un panel de control, sigue estos pasos:
Configura Grafana.
Abre la consola de Grafana con la dirección URL de la sección Instalar de Grafana. El nombre de usuario y la contraseña predeterminados son
admin.Cambia la contraseña predeterminada.
Si la fuente de datos de Prometheus no se ha añadido, vaya a Inicio > Fuentes de datos.
Haz clic en Añadir fuente de datos.
Selecciona Prometheus.
En el campo URL del servidor de Prometheus, introduce la dirección URL de la sección Instalar de Prometheus.
Cambia los siguientes ajustes 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 de control.
Ve a Casa > Paneles de control.
Haz clic en New (Nuevo).
Selecciona Nuevo panel de control.
Haz clic en Importar panel de control.
Introduce la siguiente URL: https://grafana.com/grafana/dashboards/13494-postgresql-statistics/.
Haz clic en Cargar.
Cambia el Nombre del panel de control a
PRODUCT_NAME PostgreSQL statistics.Sustituye
PRODUCT_NAMEpor el nombre de tu producto.Selecciona la fuente de datos en el campo Prometheus.
Haz clic en Importar.
Informes de resumen de rendimiento
Los informes de resumen de rendimiento son una herramienta integrada de AlloyDB Omni que registra y analiza datos de rendimiento para ayudarte a identificar la causa de los problemas de rendimiento. Esta herramienta complementa otras funciones de observabilidad de AlloyDB Omni, como Estadísticas del sistema, 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 Optimizar el rendimiento de la base de datos comparando capturas de rendimiento.