How to separate different services+deployments into their own nodes

My current architecture is a simple client, server, postgres database. From what I have learned so far, I was able to put my services and deployments for each container into a single node. If I increase their replicas, should these deployments be separated into their own nodes? i.e 10 replicas of client in 1 node, 10 replicas of server in another? I understand kubernetes has a default scheduler watches newly created deployments / pods and puts them in the best node for it. Is the default configuration for node assignment good enough or is there an even better practice?