적당한 규모의 Discourse 인스턴스를 단일 인스턴스(3년째 안정적으로 운영 중!)에서 관리형 Digital Ocean 데이터베이스와 독립적인 프론트엔드로 마이그레이션하는 작업을 진행 중입니다. 새 프론트엔드를 시작하면 초기 설치 단계에서는 모두 정상적으로 작동하며, 새로 설치된 Discourse가 정상적으로 실행됩니다.
하지만 백업 복원을 시도하면 항상 “dump 파일 복원 중” 단계에서 결국 실패합니다.
...
[2020-11-14 04:56:16] Creating missing functions in the discourse_functions schema...
[2020-11-14 04:56:17] Restoring dump file... (this may take a while)
[2020-11-14 04:58:27] psql: error: could not connect to server: could not connect to server: Connection timed out
...
여기서 무슨 일이 일어나고 있는지 꽤 혼란스럽습니다. Discourse가 다른 부분에서는 정상적으로 작동하므로 연결 자체에는 문제가 없어 보이며, DB 로그나 차트에서도 해당 쪽에 문제가 있음을 시사하는 내용은 보이지 않습니다.
어떤 아이디어라도 있을까요?
수정: 로그에서 이상한 점을 하나 발견했습니다. 설정 파일에서는 Postgres 포트가 25060으로 설정되어 있지만, 타임아웃과 관련된 로그에서는 포트 5432가 언급되고 있습니다.
[2020-11-14 18:20:23] Is the server running on host "[host]" ([ip]) and accepting
[2020-11-14 18:20:23] TCP/IP connections on port 5432?
복원 프로세스가 어떤 이유로든 설정된 포트를 준수하지 않는 것이 가능한가요?