There are two types of nodes (master and worker), worker nodes are responsible for running containerized applications, master node (often called Control Plane) is responsible for managing, planning, scheduling, and monitoring worker nodes. Also responsible for making global decisions, and responding to cluster events. A cluster is a group of machines while a node is a single machine
Control Plane components: kube-apiserver, etcd, kube-scheduler, kube-controller-manager, cloud-controller-manager
Worker node components: ****kubelet, kube-proxy, container runtime engine
Control Plane node also has Worker node components, you can even have more than one control plane node, no worker nodes and still manage to deploy your application in the cluster (rewrite)
Refer to this document about the architecture