我在Debian 8上有一个安装了docker的服务器。在容器中需要该方法。该容器已安装postgres 9.6。我想通过PostgreSQL的postgres_exporter在prometheus中设置pg_stat_statements表的数据收集,然后通过grafana查看该图。部署grafana和Prometheus按照说明进行操作:
$ git clone https://github.com/stefanprodan/dockprom
$ cd dockprom
$ docker-compose up -d
在prometheus.yml中添加:
- job_name: 'postgres-exporter'
scrape_interval: 5s
static_configs:
- targets: ['localhost:9187']
但是我对postgres-exporter有问题: Prometheus targets status
将此导出统计信息用于PostgreSQL:link。我试图用不同的端口部署到docker,但是Prometheus不想连接到他。请告诉我,如何正确安装和部署?
答案 0 :(得分:0)
如果你只想抓取 postgresdb 指标,你可以使用 docker 命令而不是 docker-compose
sudo docker run --name postgres-exporter -e DATA_SOURCE_NAME="postgresql://<postgresdb_user_name>:<postgres_db_password>@<postgres_vm_ip>:<postgresdb_port>/?sslmode=disable" -p 9187:9187 wrouesnel/postgres_exporter
对我来说,我执行的完整命令是
sudo docker run --name postgres-exporter -e DATA_SOURCE_NAME="postgresql://postgres:postgrespassword@10.0.0.31:5432/?sslmode=disable" -p 9187:9187 wrouesnel/postgres_exporter
然后在prometheus.yml文件中添加抓取点
- job_name: postgres_100031
static_configs:
- targets: ['10.0.0.31:9187']
重启 Prometheus 服务