ちゃんるいすのブログ

オタクエンジニアの雑記

Ansible AWX 「サーバーエラーが発生しました。」を解決する


根本原因は分かってないけど postgres 関連。
pg_data_dir を /var/tmp/pg_docker にしていたけどいつの間に死んでいた。



※ 更新
/var/tmp は消えないもんだと思ってたら普通に消える

[root@test cron.daily]# cat /usr/lib/tmpfiles.d/tmp.conf
#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.

# See tmpfiles.d(5) for details

# Clear tmp directories separately, to make them easier to override
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d

# Exclude namespace mountpoints created with PrivateTmp=yes
x /tmp/systemd-private-%b-*
X /tmp/systemd-private-%b-*/tmp
x /var/tmp/systemd-private-%b-*
X /var/tmp/systemd-private-%b-*/tmp

以下、続き

1. 全てのコンテナを止める
2 postgres を動かしてる dockerホストの pg_data_dir で指定しているディレクトリごと消す
3. docker start postgres
4. cat dump.sql | docker exec -i postgres psql -U awx
5. docker start awx_task awx_web memcached rabbitmq エラーが消えるまで叩き続ける

バックアップとってないと復旧できないかも?PostgreSQL 分からん。

blog.luispc.com