从 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 容器?
如何将在 Docker 容器中运行的 Grafana 连接到在主机上运行的 Prometheus 数据源(在 Docker for Mac 上)?