LoginSignup
2
2

More than 5 years have passed since last update.

nginxのキャッシュが勝手に消える([crit] 8250#0: unlink() "FILE NAME" failed (2: No such file or directory)

Posted at

nginxで勝手にproxy_cacheのファイルが消えてました。
そして、キャッシュファイルを複数サーバーで共有(同期)していたことが原因で、以下のエラーにぶち当たりました。

[crit] 8250#0: unlink() "FILE NAME" failed (2: No such file or directory)

unlink() "FILE NAME" failed (2: No such file or directory)

「キャッシュ消そう(unlinkしよう)と思ったけど、そんなファイルないよ」って言ってます。
これは、以下の流れで発生したと思われます。

  1. サーバーAでキャッシュ消す
  2. キャッシュ同期
  3. サーバーBでキャッシュ消そうとする
  4. unlink failedエラー

対応方法

そもそもキャッシュが消えるのがおかしい。なぜだ?と思ったら、キャッシュファイルの上限値を超えてたのが原因でした。
proxy_cache_pathmax_sizeを引き上げることで対応できました。
この時dfなどで空容量を把握しておかないと、数時間後に「ディスク容量がない」系のエラーで怒られます

proxy_cache_path  /var/cache/nginx/proxy_cache levels=1:2 keys_zone=ゾーン名:ゾーン上限 max_size=キャッシュ上限;
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2