Не удается подключиться к postgres, установленному из стабильной / postgresql таблицы управления - PullRequest
0 голосов
/ 27 января 2020

Я пытаюсь установить postgresql через руль. Я не перезаписываю никакие настройки, но когда я пытаюсь подключиться, я получаю сообщение об ошибке «Проверка подлинности пароля не удалась»:

$ helm install goatsnap-postgres stable/postgresql
NAME: goatsnap-postgres
LAST DEPLOYED: Mon Jan 27 12:44:22 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
** Please be patient while the chart is being deployed **
PostgreSQL can be accessed via port 5432 on the following DNS name from within your cluster:
    goatsnap-postgres-postgresql.default.svc.cluster.local - Read/Write connection
To get the password for "postgres" run:
    export POSTGRES_PASSWORD=$(kubectl get secret --namespace default goatsnap-postgres-postgresql -o jsonpath="{.data.postgresql-password}" | base64 --decode)
To connect to your database run the following command:
    kubectl run goatsnap-postgres-postgresql-client --rm --tty -i --restart='Never' --namespace default --image docker.io/bitnami/postgresql:11.6.0-debian-9-r0 --env="PGPASSWORD=$POSTGRES_PASSWORD" --command -- psql --host goatsnap-postgres-postgresql -U postgres -d postgres -p 5432
To connect to your database from outside the cluster execute the following commands:
    kubectl port-forward --namespace default svc/goatsnap-postgres-postgresql 5432:5432 &
    PGPASSWORD="$POSTGRES_PASSWORD" psql --host 127.0.0.1 -U postgres -d postgres -p 5432

$ kubectl get secret --namespace default goatsnap-postgres-postgresql -o jsonpath="{.data.postgresql-password}" | base64 --decode
DCsSy0s8hM

$ kubectl run goatsnap-postgres-postgresql-client --rm --tty -i --restart='Never' --namespace default --image docker.io/bitnami/postgresql:11.6.0-debian-9-r0 --env="PGPASSWORD=DCsSy0s8hM" --command -- psql --host goatsnap-postgres-postgresql -U postgres -d postgres -p 5432
psql: FATAL:  password authentication failed for user "postgres"
pod "goatsnap-postgres-postgresql-client" deleted
pod default/goatsnap-postgres-postgresql-client terminated (Error)

Я пробовал несколько других вещей, все из которых получают ту же ошибку :

  • Выполнить kubectl run [...] bash, запустить psql, ввести пароль в командной строке
  • Выполнить kubectl port-forward [...], запустить psql локально, ввести пароль
  • Несколько раз удалить / переустановить диаграмму
  • Использовать helm install --set postgresqlPassword=[...], использовать явно заданный пароль

Я использую OSX 10.15.2, k8s 1.15. 5 (через Docker Рабочий стол 2.2.0.0), руль 3.0.0, postgres график postgresql -7.7.2, postgres 11.6.0

I думаю I он работал раньше (хотя я не вижу доказательств в моем прокрутке), и я думаю я обновил Docker Desktop с тех пор, и Я думаю, что видел что-то о K8s обновление в примечаниях для Docker обновления. Так что, если я правильно помню все эти вещи, может быть, это связано с обновлением k8s?

1 Ответ

3 голосов
/ 28 января 2020

Ой, не бери в голову - я нашел решение в проблему с рулем / диаграммами . Пароль заканчивается на постоянном томе, поэтому, если вы удалите и переустановите диаграмму, новая версия сохранит пароль от старого, а не значение от kubectl get secret. Я удалил диаграмму, удалил старый PV C и PV и переустановил, и теперь я могу подключиться.

...