Redis - (error) NOAUTH Authentication required への対応
概要
経年運用し特にメモリも問題なかったRedisが突如接続エラーが発生したので
その際の対応をまとめました。
エラー内容
1 | PHP Fatal error: Uncaught exception 'RedisException' with message 'Failed to AUTH connection' |
認証接続に失敗して Exception になっている。
Redisの設定周りで特にrequirepass を設定していないし
何故突然?という感じでした。
各環境でRedisの設定パスは異なると思いますが、自環境の場合以下です。
/etc/redis/6379.conf
以下のようにrequirepassはコメントアウトされている。
1 | # requirepass |
対応
- process を kill する
※service redis restart
のように redisを再起動しても状況は変わりませんでした。
1 | # ps aux | grep 'redis' | grep -v 'grep' |
再度 redis を起動させる。
1
# service redis start
requirepass 設定
運用中でアプリケーション自体のソースをいじりたくなかったので
空のrequirepass を設定しました。
1 | redis-cli> CONFIG SET REQUIREPASS '' |
上記で取り急ぎ対応は問題なかったです。
総評
改めて利用する際には
認証設定をしてアプリケーションからも
passwordを指定して接続する仕組みが良いですね。
ただ何故急に発生したかは引き続き調査をしていきます。
理由がわかる方はコメントなどいただけましたら幸いです。