kube-proxy is a Kubernetes component that runs on each worker node. It provides connectivity to applications by load-balancing network traffic between application instances. section 1.2.3
When an application is deployed, controllers create its instances, the scheduler assigns them to nodes, and Kubelets start them through the container runtime. After the instances become ready, kube-proxy notices them and configures a load balancer so clients can connect. section 1.2.4
Connecting clients to application instances
A manifest defines applications exposed through services. After the manifest reaches the Kubernetes API and the application instances are running, kube-proxy configures traffic distribution across those instances, rather than requiring clients to address each instance separately. section 1.2.4
Figure 1.13 The Kubernetes components that run on each node
Use the node-components diagram to locate kube-proxy alongside the Kubelet and container runtime on a worker node. section 1.2.3
Figure 1.14 Deploying an application to Kubernetes
Use the deployment-flow diagram to follow how submitted application objects become running instances and receive load-balanced connectivity. section 1.2.4

