我使用README:中显示的示例安装Bitnami Helm图表
helm install my-db
--namespace dar
--set postgresqlPassword=secretpassword,postgresqlDatabase=my-database
bitnami/postgresql
然后,按照安装成功后打印的简介中所示的说明,我将端口转发到端口5432,然后尝试连接:
PGPASSWORD="secretpassword" psql --host 127.0.0.1 -U postgres -d my-database -p 5432
但我得到以下错误:
psql: error: could not connect to server: FATAL: password authentication failed for user "postgres"
这怎么可能?Helm图表有毛病吗?
隐藏在stable/postgresql问题跟踪器中的问题是这个很难调试的问题的根源。
当您运行helm uninstall ...
时,出于谨慎,它会出错,并且不会删除与您第一次运行helm install ...
时获得的数据库相关联的存储。
这意味着,一旦你通过Helm安装了一次Postgres,无论安装后的广告告诉你什么,在随后的安装中,秘密总是一样的。
要解决此问题,您必须手动删除持久卷声明(PVC(,这将释放数据库存储空间。
kubectl delete pvc data-my-db-postgresql-0
(或者与最初安装Helm相关的PVC的名称。(
现在,后续的helm install ...
将创建一个全新的PVC,登录可以按预期进行。
我遇到了同样的问题,但由于我们正在从恢复中运行prod,因此无法再丢弃PVC。
我最终更新了密码,如下所述:
sudo -u postgres psql
password postgres