您可以使用 patronictl 更改 pg_hba.conf 吗?

Can you change pg_hba.conf using patronictl?

如果您想更改现有 patroni 集群中的 pg_hba.conf。你可以通过 patronictl 来完成还是必须一个一个地发出信号?

代码一看好像没有

Patroni 可以通过集中配置管理您的 pg_hba.conf。您需要使用 patronictl edit-config 添加以下 pg_hba.conf 行:

postgresql:
  # ...
  pg_hba:
    - local all postgres  ident
    - host all all 0.0.0.0/0 md5
    - host replication replicator 0.0.0.0/0 md5

不过您需要小心,确保您的本地超级用户、集群范围内的复制和倒回用户连接正常工作。一旦你将它添加到配置中,它将被 Patroni 接收,现有的 pg_hba.conf 将在接下来的 10 秒内被替换。

如果您不想将现有 pg_hba.conf 转换为 yaml,以下 shell 管道将采用包含 pg_hba.conf 规则的文本文件并将其应用于现有集群:

cat pg_hba.conf | jq -R -s 'split("\n") | {"postgresql": {"pg_hba": .}}' | \
  patronictl edit-config --apply - --force mycluster