Skip to main content
Ayakaleaf Pro benötigt:
  • MongoDB 8 als Replikatset (es verwendet Transaktionen). Drei auf drei Knoten verteilte Mitglieder überstehen den Ausfall eines Knotens; ein einzelnes Mitglied funktioniert ebenfalls.
  • Redis 7, einen Server mit AOF-Persistenz. Redis enthält die noch nicht in MongoDB geschriebenen Bearbeitungen, die Sitzungen und die Nachrichten zwischen den Overleaf-Diensten. Overleaf verbindet sich mit einem einzelnen Redis-Server: Sentinel und Redis Cluster werden nicht unterstützt.
Sie können stattdessen verwaltete Dienste verwenden, etwa MongoDB Atlas oder das Redis Ihrer Cloud. Überspringen Sie diese Seite und setzen Sie OVERLEAF_MONGO_URL und OVERLEAF_REDIS_HOST in Schritt 4 auf diese Dienste.
1

MongoDB

10-mongo.yaml
Nach einigen Sekunden sollte ein Mitglied PRIMARY und die anderen SECONDARY sein. Der Job versucht es erneut, bis alle Mitglieder antworten, daher sind einige fehlgeschlagene Job-Pods normal.
  • Der Headless Service benötigt publishNotReadyAddresses: true: Die Mitglieder müssen sich gegenseitig über ihren Namen finden, bevor das Replikatset existiert.
  • Die Mitglieder werden mit ihren stabilen Namen (mongo-0.mongo.overleaf.svc.cluster.local) hinzugefügt, nie mit Pod-IPs, die sich bei jedem Neustart ändern.
  • Für ein einzelnes Mitglied setzen Sie replicas: 1 und behalten im Job nur mongo-0.
2

Redis

20-redis.yaml

Q&A

Antwort: MongoDB 8 schlägt unter Linux-Kernel 6.19 und neuer fehl (SERVER-121912). Kommentieren Sie die Umgebungsvariable GLIBC_TUNABLES in 10-mongo.yaml ein.
Antwort: Standardmäßig verwendet MongoDB die Hälfte des Knotenspeichers abzüglich 1 GB für seinen Cache, und es sieht den Speicher des Knotens, nicht das Limit des Pods. Setzen Sie --wiredTigerCacheSizeGB passend zu Ihren Knoten; mit 0.25 blieb jedes Mitglied auf unseren Testknoten mit 4 GB bei etwa 200 bis 260 MiB.
Zuletzt geändert am 2. November 2026