1. Error: .ini file does not include supervisorctl section
/opt/redash/supervisord
でsupervisorctl start all
を実行すると、Error: .ini file does not include supervisorctl section
とエラーが発生する。
色々紛らわしいのだが、.ini
は、supervisord.conf
と読み替えて差し支えない。
supervisorctl
が定義されていないと言われるので、supervisord.conf
に追記する。今回は空行で追加した。
[supervisorctl]
[supervisord]
nodaemon=false
logfile=/opt/redash/logs/supervisord.log
pidfile=/opt/redash/supervisord/supervisord.pid
directory=/opt/redash/current
2. http://127.0.0.1:19001 refused connection
/opt/redash/supervisord
でsupervisorctl start all
を実行すると、http://127.0.0.1:19001 refused connection
とエラーが発生する。
supervisord
が起動していないことが原因。まずは起動してあげる。
# supervisord -c supervisord.conf
# supervisorctl start all
3. FATAL: role “root” does not exist
api_error.log
にOperationalError: (psycopg2.OperationalError) FATAL: role "root" does not exist
というエラーが発生している。
postgresqlに、rootロールがないというエラーなので、roleを作成してあげる。
su postgres
psql
postgres=# CREATE ROLE root LOGIN SUPERUSER PASSWORD 'root';
postgres=# \q
4. you have to set the C_FORCE_ROOT environment variable
celery_error.log
に次のエラーが発生していた。
If you really want to continue then you have to set the C_FORCE_ROOT
environment variable (but please think about this before you do).
対応するために、/opt/redash/current/redash/worker.py
を編集する。
+++ from celery import Celery,platforms
--- from celery import Celery
+++ platforms.C_FORCE_ROOT = True
celery = Celery('redash',
broker=settings.CELERY_BROKER,
include='redash.tasks')