Kong 无法连接到 PostgreSQL

Kong won't connect to PostgreSQL

我没有使用 Docker。

我已经安装了 PostgreSQL 11 并创建了一个拥有数据库 kong 的用户 kong。在同一个 linux 盒子上,我安装了 Kong,并试图使用 these instructions.

让它连接到数据库

这是来自 kong.conf 的片段:

database = postgres
pg_host = 127.0.0.1
pg_port = 5432
pg_timeout = 5000
pg_user = kong
pg_password = Passw0rd!
pg_database = kong

此外,根据 this,我修改了 pg_hba.conf 以包括:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
local   all             all                                     trust
host    all             all             127.0.0.1/32            trust

不过,当我这样做时:

kong migrations bootstrap -c /etc/kong/kong.conf

我得到:

Error: [PostgreSQL error] failed to retrieve server_version_num: FATAL: Ident authentication failed for user "kong"

我已确保 PostgreSQL 的 kong 密码与 kong.conf.

中的密码相同

我错过了什么?

成功了。两件事:

  1. 根据@DanielVérité 在 Server Fault 上的建议,我将我的信任方法移到了 pg_hba.conf 上的顶部。这是因为他注意到第一个匹配项是 PostgreSQL 的匹配项。

  2. 在 kong.conf 中,我以为我指定了 pg_host = 127.0.0.1,但我实际上将主机名放在那里。将其改回 127.0.0.1,现在可以使用了。

我希望这对以后的人有所帮助。

在我的例子中,我只是在 values.yaml 中评论了“pg_host”,然后我用“kubectl describe pod ..”发现正确的主机名是“kong-postgresql”。 =12=]

我的 pod 卡在初始化容器“wait fod db”中,因为它无法连接。现在可以使用了...