Skip to main content
Ayakaleaf Pro potrzebuje:
  • MongoDB 8 jako zestawu replik (korzysta z transakcji). Trzech członków rozmieszczonych na trzech węzłach przetrwa utratę węzła; jeden członek również działa.
  • Redis 7, jednego serwera z trwałością AOF. Redis przechowuje zmiany, które nie zostały jeszcze zapisane w MongoDB, sesje oraz komunikaty między usługami Overleaf. Overleaf łączy się z jednym serwerem Redis: Sentinel i Redis Cluster nie są obsługiwane.
Zamiast tego możesz korzystać z usług zarządzanych, takich jak MongoDB Atlas lub Redis Twojej chmury. Pomiń tę stronę i ustaw na nie OVERLEAF_MONGO_URL oraz OVERLEAF_REDIS_HOST w kroku 4.
1

MongoDB

10-mongo.yaml
Po kilku sekundach jeden członek powinien mieć stan PRIMARY, a pozostali SECONDARY. Job ponawia próby, dopóki wszyscy członkowie nie odpowiedzą, więc kilka nieudanych podów Job to normalne zjawisko.
  • Usługa headless wymaga publishNotReadyAddresses: true: członkowie muszą odnaleźć się nawzajem po nazwie, zanim zestaw replik zacznie istnieć.
  • Członkowie są dodawani pod swoimi stałymi nazwami (mongo-0.mongo.overleaf.svc.cluster.local), nigdy przez adresy IP podów, które zmieniają się przy każdym ponownym uruchomieniu.
  • W przypadku jednego członka ustaw replicas: 1 i pozostaw w Job tylko mongo-0.
2

Redis

20-redis.yaml

Pytania i odpowiedzi

Odpowiedź: MongoDB 8 nie działa na jądrze Linux 6.19 i nowszych (SERVER-121912). Odkomentuj zmienną środowiskową GLIBC_TUNABLES w 10-mongo.yaml.
Odpowiedź: Domyślnie MongoDB przeznacza na pamięć podręczną połowę pamięci węzła pomniejszoną o 1 GB i widzi pamięć węzła, a nie limit poda. Ustaw --wiredTigerCacheSizeGB odpowiednio do swoich węzłów; przy 0.25 każdy członek zużywał około 200–260 MiB na naszych testowych węzłach z 4 GB pamięci.
Ostatnia modyfikacja 2 listopada 2026