안녕하세요.
세컨더리/스탠드바이 Discourse를 어떻게 배포하나요?
상당히 흔한 주제라고 생각했는데 관련 자료를 찾지 못했습니다.
이러한 스탠드바이 Discourse는 — 제 생각에는 당연히 그렇게 설정해야 하므로 — 슬레이브/읽기 전용 노드에서 실행되며, Redis와 pgSQL 모두 읽기 전용이어야 합니다. 하지만 Discourse가 시작되지 않으면 다음과 같은 오류가 발생합니다:
Redis::CommandError: ERR Error running script (call to f_bcec1d9b3bbcfb089dc0b7316771be9f011872b6): @user_script:8: @user_script: 8: -READONLY You can’t write against a read only replica.
DISCOURSE_SKIP_BOOTSTRAP=yes를 설정해도 마찬가지입니다.
여러분은 어떻게 하시나요 — 이건 모두 컨테이너와 관련된 문제인데 — 제가 시도하는 방식이나 다른 접근 방식으로든, 이러한 스탠드바이 Discourse, 즉 HA(고가용성) 설정이 가능한가요?
제가 이해한 바로는, 멀티마스터 pgSQL을 처리하는 공식적인 제3자 기술이 없으며, Redis의 경우에도 더더욱 그렇지 않습니다.
Discourse에 이러한 환경을 알리고, 신경 쓰지 말라고(또는 무시하라고) 지시하는 것이 정말 불가능한가요?
만약 그렇지 않다면@devel 님이 이 글을 보신다면, "강화"를 제안합니다. 많은 분들이 이를 높이 평가하실 거라고 생각합니다. 즉, Discourse가 필요한 모든 검사는 수행하되, 실패하지 않고 이러한 읽기 전용 “데이터” 환경에서 시작되어 실행되도록 하는 것입니다.