从 grafana 连接到 postgresql

Posted

技术标签:

【中文标题】从 grafana 连接到 postgresql【英文标题】:Connecting to postgresql from grafana 【发布时间】:2020-01-10 00:51:52 【问题描述】:

-11.5.1 不起作用。 我在本地安装了 postgres 并创建了一个 grafana 并尝试连接, 但我得到了通常的错误: 拨打 tcp 127.0.0.1:5432:连接:连接被拒绝 我不在 docker 上使用 postgresql,它只是在我的本地 Windows 10 上。 因为***上可用的答案与docker有关。 请帮忙..

【问题讨论】:

【参考方案1】:

Grafana 正常安装

请检查 Postgresql 的这些配置文件。

/etc/postgresql//main/postgresql.conf

/etc/postgresql//main/pb_hba.conf

通过更改pb_hba.conf 来维护客户端身份验证。确保它具有用于本地身份验证的这一行。

 [TYPE]    [DATABASE]    [USER]    [ADDRESS]    [METHOD]

 host        all           all      127.0.0.1/32    md5

使用 docker 安装 Grafana

Grafana 实例现在位于不同的网络中,Postgres 将与它建立远程连接。默认情况下,本地连接仅可用。要启用远程,

sudo vim /etc/postgresql//main/postgresql.conf

#listen_addresses = 'localhost' 更改为#listen_addresses = '*'

通过键入在终端中获取 docker bridge 网络接口信息。

 ip addr

........

docker0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group 
 default 
    link/ether 02:42:da:5e:5e:95 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
      valid_lft forever preferred_lft forever
    inet6 fe80::42:daff:fe5e:5e95/64 scope link 
       valid_lft forever preferred_lft forever

这里inet 172.17.0.1/16指的是

网络:172.17.0.0/16 IP:172.17.0.1

允许此网络172.17.0.0/16 来自您的机器pb_hba.conf

 host    all             all             172.17.0.0/16           md5

现在,使用你机器上从ip addr获取的ip地址(172.17.0.1)代替localhost作为Grafana数据源地址。

参考

Allow docker container to connect to a local/host postgres database

https://blog.jsinh.in/how-to-enable-remote-access-to-postgresql-database-server/#.XXYs2HUvNuS

【讨论】:

【参考方案2】:

就我而言,我使用 Docker 在本地部署了 Grafana,并尝试使用 Postgres 插件连接到我本地安装的 Postgres。我不得不使用host.docker.internal 作为主机而不是localhost,这会导致同样的错误:

【讨论】:

以上是关于从 grafana 连接到 postgresql的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Grafana 的 Docker 容器连接到 MySql 的 Docker 容器?

无法使用端口连接到 grafana

无法在连接到石墨的 grafana 上创建图表

如何将在 Docker 容器中运行的 Grafana 连接到在主机上运行的 Prometheus 数据源(在 Docker for Mac 上)?

Prometheus Docker - 连接到外部机器

AWS Timestream / Grafana 查询