Due to a planned migration of date from an old system, our data is going to grow.
Currently we are not using shards, and all our data is using one server (actually 3 replicas, but no sharding).
I was wondering if there is a rule of thumb on the size limit of data on a single shard/server.
In other words - what is the max size of my data that requires using more than one server and using shards?
Do I understand correctly that you are running 3 instances of the replica set on the same machine? Or do you have 3 machines.
Except for experimentation, there is not point in running 3 instances on the same hardware. This is a single point of failure. If you can live with a single point of failure you are better off with 1 mongod instance.
Sharding is powerful but also challenging to maintain. , generally you can always try vertical scaling first until you get to the ceiling before you start horizontal scaling (i believe this is also recommended by many books/sites). This is more a thing to ask your team than to mongo team.