[SERVER-36915] Config servers using large amount of RAM Created: 29/Aug/18  Updated: 27/Oct/23  Resolved: 01/Oct/18

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: 3.4.9
Fix Version/s: None

Type: Question Priority: Minor - P4
Reporter: Roelof Spijker Assignee: Nick Brewer
Resolution: Gone away Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File serverstatus_primary.json     File serverstatus_secondary.json    
Participants:

 Description   

In our production setup, we see a rather large (5-6GB) RAM footprint for the config servers. This seems an unreasonable amount of RAM used by the config server. The DB servers in the cluster use approximately 10GB of RAM.

We have 2 shards, both consisting of a 3-member replica set. For this cluster we have 3 config servers setup in a replica set. Furthermore, we have approximately 15 mongos processes running on various machines.

I can't imagine that this level of memory usage is by design or intended. It is unclear to me at the moment what is causing the size of the footprint, and what will cause it to increase. This makes it impossible to determine how this will scale with future changes to the data and setup.

I've attached the (sanitized w.r.t. host names) output of serverStatus on both the primary and a secondary config server. My question is whether or not this behaviour is expected. If so, what causes it to scale? If not, what is causing it?



 Comments   
Comment by Nick Brewer [ 01/Oct/18 ]

rspijker Since there's been no activity on this ticket in some time, I'm going to close it. Feel free to update this ticket with the requested information, and we'll reopen it for you.

-Nick

Comment by Nick Brewer [ 14/Sep/18 ]

rspijker Have you had a chance to gather the information we requested? Thanks in advance.

-Nick

Comment by Nick Brewer [ 30/Aug/18 ]

rspijker I've generated a secure portal for you. Let us know once you've uploaded the files and we'll take a look.

-Nick

Comment by Roelof Spijker [ 30/Aug/18 ]

Hey Nick,

I'd prefer a secure portal. Furthermore, I'd prefer to capture the logs etc. from our acceptance environment, since the data there is somewhat less sensitive. We are seeing the same behaviour here, albeit on a slightly smaller scale (absolute RAM taken is around 3GB, but compared to machine limits and DB size it's comparable).

Comment by Nick Brewer [ 29/Aug/18 ]

rspijker The amount of memory used by the config servers is determined by a few things: the number of databases / collections (and how active the balancer is across them), the number of mongos in use, and and the number of users. As these numbers increase, so does the amount of RAM needed on the config server.

If you'd like us to take a closer look at this, could you archive (tar or zip) the diagnostic.data directory from the dbpath of both the config server replica set and the mongod(s), along with their logs? We can provide a secure portal if you'd prefer not to upload the logs publicly on this ticket.

-Nick

Generated at Thu Feb 08 04:44:27 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.