Rettede det:
sudo sysctl net.ipv4.tcp_tw_reuse=1
Genstart derefter mongo.
Alternativt kan du tilføje den til /etc/sysctl.conf (så den køres ved genstart):
net.ipv4.tcp_tw_reuse=1
Kør derefter dette for at genindlæse (uden at skulle genstarte)
sudo sysctl -p /etc/sysctl.conf
Denne "fix" vil deaktivere timewait-tilstanden for TCP-sockets (server-dækkende). Så det er virkelig ikke en løsning overhovedet. Men indtil mongo reducerer deres timewait-tilstand ved hjælp af SO_LINGER, vil et stort antal serversockets samle sig i TIME_WAIT-tilstanden og forblive ubrugelige til nye forbindelser. Du kan se antallet af forbindelser i TIME_WAIT med dette:
netstat -an | grep TIME_WAIT | wc -l
Med det var jeg i stand til at se det fejle ved omkring 28k TIME_WAIT-forbindelser. Brug af dette kerneflag:
sysctl net.ipv4.ip_local_port_range="18000 65535"
Serveren fejler ved 45k forbindelser. Så for at genskabe fejlen nemmere kan du sænke området til 200 eller noget lille.
Så resultatet af dette var et programmeringsspørgsmål trods alt (som du kan se fra sidste link):
TCP-mulighed SO_LINGER (nul ) - når det er påkrævet
http://alas.matf.bg.ac.rs /manuals/lspe/snode=105.html