Description
В более ранних версиях (1.17.1 в том числе) пароль пользователя “postgres” задавался в переменных по умолчанию и не редактировался пользователем при заполнении переменных playbook, однако в версии 1.20.1 был вынесен в переменную “postgres_su_pass” в файле vars.yml, и имеет значение “postgressuramdompassword”.
По этой причине в процессе обновления с оффлайн дистрибутива возникает ошибка:
stderr: |-
ERROR: role "readonly" already exists
ERROR: role "simple_user_ro" already exists
NOTICE: role "simple_user_ro" is already a member of role "readonly"
psql: error: connection to server at "postgres" (172.19.0.7), port 5432 failed: FATAL: password authentication failed for user "postgres"
connection to server at "postgres" (172.19.0.7), port 5432 failed: FATAL: password authentication failed for user "postgres"
Workaround
Для того, чтобы выяснить пароль пользователя “postgres” по умолчанию в версии 1.17.1, откроем файл:
/release-1-17-1-1/roles/single/defaults/main
Где получаем пароль “zalando”.
Далее заполняем vars.yml
, используя данный пароль в переменной postgres_su_pass
.
После запуска playbook ошибка более не наблюдается.
Инстанс обновлен успешно.