- Kube API Server
- Kube Controller Manager
- Kube Scheduler
- Container Runtime
In the Cluster, we have master and worker nodes.
- Kube API Server that is responsible for orchestrating all operations within the cluster.
- ETCD stores information about the cluster.
- Kube Scheduler that is responsible for scheduling applications or containers on Nodes.
- Kube Controller Manager that takes care of different functions like node controller, replication controller, etc.
- Kubelet that listens for instructions from the Kube API Server and manages containers
- Kube-proxy is used to enable connectivity between pods and services across different nodes in the cluster.
- Container Runtime is the underlying software that is used to run containers in one of the examples is Docker. There are other options as well.
In Kubernetes cluster, The components exist as pos
$ kubectl get pod -n kube-system NAME READY STATUS RESTARTS AGE coredns-f9fd979d6-qth5d 1/1 Running 1 24h etcd-minikube 1/1 Running 1 24h kube-apiserver-minikube 1/1 Running 1 24h kube-controller-manager-minikube 1/1 Running 1 24h kube-proxy-t7559 1/1 Running 1 24h kube-scheduler-minikube 1/1 Running 1 24h storage-provisioner 1/1 Running 2 24h