If you want to use multiple nodes, you should look into Docker Swarm. Portainer can manage Docker Swarm with a single instance.
We run a dedicated service with dedicated database (within DB cluster) per tenant, of course you can start with creating them manually in Portsiner. But when you reach 20+ services, you rather want a fool-proof process, maybe look into ansible or other automation and deployment tools.
The whole setup gets more complicated when you start looking into HA (“high availability”), so you can tolerate the failure of one node.