S3에 업로드 후 로컬 임시 백업이 정리되지 않음

3.2.0.beta4-dev ( 86da47f58d ) 버전을 실행 중이며, 이 문제는 이미 꽤 오래전부터 발생하고 있습니다.

백업은 S3로 바로 저장되도록 구성되어 있습니다. 이해할 수 있는 부분이지만, 애플리케이션은 먼저 로컬 스토리지에 저장한 후 S3로 업로드합니다. 이는 문제없습니다. 문제는 업로드 후 각 백업 파일을 삭제하지 않아, 백업 내에 썸네일이 저장되지 않았음에도 막대한 용량을 차지하고 있다는 점입니다.

root@forum:/var/discourse/shared/standalone/tmp/backups/default# du -sh
57G     .
root@forum:/var/discourse/shared/standalone/tmp/backups/default# du -k
7073520 ./2023-12-28-063845
8040176 ./2023-12-29-063923
8521220 ./2024-01-08-063857
4909616 ./2023-12-24-064434
4918056 ./2024-01-07-064325
7079136 ./2024-01-03-064430
7077984 ./2024-01-02-063855
2949660 ./2024-01-09-063708
59088404        .
root@forum:/var/discourse/shared/standalone/tmp/backups/default# rm -Rf *

이것이 디렉토리의 권한 문제일 수도 있을까요? 저는 분명히 설정을 변경한 적이 없습니다.

root@forum:/var/discourse/shared/standalone/tmp/backups# ls -la
total 12
drwxr-xr-x 3 mas www-data 4096 Nov 23 06:44 .
drwxr-xr-x 4 mas www-data 4096 Nov 22 04:57 ..
drwxr-xr-x 2 mas www-data 4096 Jan  9 15:35 default

이상한 점은 임시 파일 목록에서 1월 2일, 3일, 7일, 8일, 9일 파일들이 용량을 차지하고 있다는 것입니다. 관리 UI의 Discourse 백업 목록에서는 1월 4일만 보입니다. 즉, Discourse가 백업을 생성하되 S3로 제대로 업로드하지 못하고 있는 것일까요? 이 가설의 문제는 관리 설정에서 "백업 주기"가 3으로 설정되어 있어, 매일 백업을 시도하지 않아야 한다는 점입니다. 참고로 관리 UI의 백업 로그는 비어 있으며, 로그가 없습니다.

제 가장 가능성 있는 설명은 서버가 로컬 백업 파일을 삭제하기 전에 재시작되는 경우가 있다는 것입니다.

백업 목록에는 로컬 드라이브에 있는 것이 아니라 S3에 있는 내용이 표시됩니다.

누군가 수동으로 백업을 실행하고 있는 건가요?

호스트의 가동 시간이 90일이고, Docker 컨테이너의 가동 시간이 6주이므로, 애플리케이션 내부의 문제를 말씀하시는 것이 아니라면 실제 재부팅은 없었습니다.

제가 수동으로 백업을 한 적도 없고, 매일 백업한 적도 당연히 없습니다. cron 등에도 관련 작업이 없습니다.

root@forum:/# uptime
 17:20:56 up 90 days,  1:52,  4 users,  load average: 0.81, 1.71, 1.81
root@forum:/# docker ps
CONTAINER ID   IMAGE                 COMMAND        CREATED       STATUS       PORTS                                                                      NAMES
d8bc34250454   local_discourse/app   "/sbin/boot"   6 weeks ago   Up 6 weeks   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   app

여전히 계속되고 있네요, 한숨. find -mtime +2 -delete를 cron으로 예약하는 수밖에 없겠네요. 정말 좋은 시절이죠.

root@forum:/var/discourse/shared/standalone/tmp/backups/default# du -sh
14G     .
root@forum:/var/discourse/shared/standalone/tmp/backups/default# ls -la
total 16
drwxr-xr-x 4 mas www-data 4096 Jan 16 06:56 .
drwxr-xr-x 3 mas www-data 4096 Nov 23 06:44 ..
drwxr-xr-x 2 mas www-data 4096 Jan 14 06:38 2024-01-14-063807
drwxr-xr-x 2 mas www-data 4096 Jan 15 06:43 2024-01-15-064337

아쉽네요. 그게 제 최선의 추측이었거든요.

네. 그렇게 해야 할 것 같습니다.

완료. 가장 우아하거나 만족스러운 해결책은 아니지만, 문제 해결은 된 것 같다.

그래. 다음에 이 문제가 발생하면 그렇게 해볼게.