- MongoDB 8 jako replica set (používá transakce). Tři členové rozložení na tři uzly přežijí výpadek uzlu; funguje i jeden člen.
- Redis 7, jeden server s perzistencí AOF. Redis uchovává úpravy, které ještě nejsou zapsány do MongoDB, relace a zprávy mezi službami Overleafu. Overleaf se připojuje k jedinému serveru Redis: Sentinel a Redis Cluster nejsou podporovány.
Místo toho můžete použít spravované služby, například MongoDB Atlas nebo Redis svého cloudu. Tuto stránku přeskočte a v kroku 4 na ně nastavte
OVERLEAF_MONGO_URL a OVERLEAF_REDIS_HOST.1
MongoDB
10-mongo.yaml
PRIMARY a ostatní SECONDARY. Job to zkouší znovu, dokud neodpovědí všichni členové, takže několik neúspěšných podů Jobu je normální.- Headless Service potřebuje
publishNotReadyAddresses: true: členové se musí navzájem najít podle názvu dříve, než replica set existuje. - Členové se přidávají se svými stabilními názvy (
mongo-0.mongo.overleaf.svc.cluster.local), nikdy ne s IP adresami podů, které se mění při každém restartu. - Pro jediného člena nastavte
replicas: 1a v Jobu ponechte pouzemongo-0.
2
Redis
20-redis.yaml
Q&A
MongoDB 8 na novém jádře při startu padá. Proč?
MongoDB 8 na novém jádře při startu padá. Proč?
Odpověď: MongoDB 8 selhává na linuxovém jádře 6.19 a novějším (SERVER-121912). Odkomentujte proměnnou prostředí
GLIBC_TUNABLES v 10-mongo.yaml.Kolik paměti MongoDB potřebuje?
Kolik paměti MongoDB potřebuje?
Odpověď: Ve výchozím nastavení používá MongoDB pro svou cache polovinu paměti uzlu minus 1 GB a vidí paměť uzlu, nikoli limit podu. Nastavte
--wiredTigerCacheSizeGB podle svých uzlů; 0.25 udrželo každého člena na našich testovacích uzlech se 4 GB na přibližně 200 až 260 MiB.
