JMeter slaves execute the Test Plan which is being sent to them by the master so if you define 1000 users under a Thread Group - each slave will kick off 1000 threads.
Looking into Distributed Testing documentation:
Note: The same test plan is run by all the servers. JMeter does not distribute the load between servers, each runs the full test plan. So if you set 1000 Threads and have 6 JMeter server, you end up injecting 6000 Threads.
so be careful and try to not overwhelm the application under test
Master doesn't produce any load, it just configures the slaves and collects results (unless you launch a slave process on the master as well)
More information: How to Perform Distributed Testing in JMeter