Skip to main content
Ayakaleaf Pro에는 다음이 필요합니다.
  • 레플리카 세트로 구성된 MongoDB 8(트랜잭션을 사용함). 세 노드에 분산된 세 멤버는 노드 하나를 잃어도 유지되며, 멤버 하나로도 동작합니다.
  • AOF 지속성을 갖춘 Redis 7 서버 하나. Redis에는 아직 MongoDB에 기록되지 않은 편집 내용, 세션, Overleaf 서비스 간 메시지가 저장됩니다. Overleaf는 단일 Redis 서버에 연결하며, Sentinel과 Redis Cluster는 지원되지 않습니다.
MongoDB Atlas나 클라우드의 Redis 같은 관리형 서비스를 대신 사용할 수 있습니다. 이 페이지를 건너뛰고 4단계에서 OVERLEAF_MONGO_URL과 OVERLEAF_REDIS_HOST를 해당 서비스로 설정하세요.
1

MongoDB

10-mongo.yaml
몇 초 후 멤버 하나는 PRIMARY, 나머지는 SECONDARY가 되어야 합니다. Job은 모든 멤버가 응답할 때까지 재시도하므로, 실패한 Job 파드가 몇 개 있는 것은 정상입니다.
  • 헤드리스 Service에는 publishNotReadyAddresses: true가 필요합니다. 레플리카 세트가 생성되기 전에 멤버들이 이름으로 서로를 찾을 수 있어야 하기 때문입니다.
  • 멤버는 재시작할 때마다 바뀌는 파드 IP가 아니라 고정된 이름(mongo-0.mongo.overleaf.svc.cluster.local)으로 추가됩니다.
  • 멤버를 하나만 사용하려면 replicas: 1로 설정하고 Job에는 mongo-0만 남기세요.
2

Redis

20-redis.yaml

Q&A

답변: MongoDB 8은 Linux 커널 6.19 이상에서 실패합니다(SERVER-121912). 10-mongo.yaml에서 GLIBC_TUNABLES 환경 변수의 주석을 해제하세요.
답변: 기본적으로 MongoDB는 노드 메모리의 절반에서 1 GB를 뺀 만큼을 캐시로 사용하며, 파드의 제한이 아닌 노드의 메모리를 기준으로 합니다. 노드에 맞게 --wiredTigerCacheSizeGB를 설정하세요. 4 GB 테스트 노드에서는 0.25로 각 멤버를 약 200~260 MiB로 유지했습니다.
마지막 수정일 2026년 11월 2일