The Cluster master decides what runs on all of the clusters's nodes. This includes upgrades, managing the workloads life cycle, scaling, and scheduling workloads. Network and storage resources for those workloads are also managed by the master.
Kubernetes APIs are used by the master and nodes for communication.