Skip to main content
Ayakaleaf Pro a besoin de :
  • MongoDB 8 en replica set (il utilise des transactions). Trois membres répartis sur trois nœuds survivent à la perte d’un nœud ; un seul membre fonctionne également.
  • Redis 7, un seul serveur avec persistance AOF. Redis contient les modifications qui ne sont pas encore écrites dans MongoDB, les sessions et les messages échangés entre les services Overleaf. Overleaf se connecte à un seul serveur Redis : Sentinel et Redis Cluster ne sont pas pris en charge.
Vous pouvez utiliser des services managés à la place, comme MongoDB Atlas ou le Redis de votre cloud. Ignorez cette page et faites pointer OVERLEAF_MONGO_URL et OVERLEAF_REDIS_HOST vers eux à l’étape 4.
1

MongoDB

10-mongo.yaml
Au bout de quelques secondes, un membre doit être PRIMARY et les autres SECONDARY. Le Job réessaie jusqu’à ce que tous les membres répondent ; quelques pods de Job en échec sont donc normaux.
  • Le Service headless a besoin de publishNotReadyAddresses: true : les membres doivent se trouver mutuellement par leur nom avant que le replica set n’existe.
  • Les membres sont ajoutés avec leurs noms stables (mongo-0.mongo.overleaf.svc.cluster.local), jamais avec les IP des pods, qui changent à chaque redémarrage.
  • Pour un seul membre, définissez replicas: 1 et ne conservez que mongo-0 dans le Job.
2

Redis

20-redis.yaml

Q&A

Réponse : MongoDB 8 échoue sur les noyaux Linux 6.19 et ultérieurs (SERVER-121912). Décommentez la variable d’environnement GLIBC_TUNABLES dans 10-mongo.yaml.
Réponse : Par défaut, MongoDB utilise pour son cache la moitié de la mémoire du nœud moins 1 Go, et il voit la mémoire du nœud, pas la limite du pod. Ajustez --wiredTigerCacheSizeGB à vos nœuds ; 0.25 a maintenu chaque membre à environ 200 à 260 Mio sur nos nœuds de test de 4 Go.
Dernière modification le 2 novembre 2026