The Heart of Kubernetes: The kube-apiserver
Learn about the kube-apiserver.
The kube-apiserver
The kube-apiserver
is the most essential and complicated component in Kubernetes.
It sits in the center of Kubernetes as the primary management point, receiving and handling all RESTful requests, such as creating/updating/deleting a Pod
, querying a group of resources, etc. It accepts various kinds of information from requests and disseminates them to all clients. The kubectl
client is one of the most commonly used clients for interacting with the kube-apiserver
. We can think of the kube-apiserver
as the front-end server for the control plane. This is why we regard the kube-apiserver
as the “heart” of Kubernetes.
It’s the only component allowed to communicate with the back-end etcd
storage. This is an excellent way to decouple applications with data, which makes the kube-apiserver
stateless and horizontally scalable. The kube-apiserver
is so essential that it should be deployed with multiple replicas to provide high availability service for the entire cluster. Additionally, security must be taken into account, which is crucial for such a distributed system.
The kube-apiserver
provides authentications and authorizations for all requests, including those from other Kubernetes components, such as kube-scheduler
, kube-controller-manager
, etc.
The kube-apiserver
will also create and maintain RESTful APIs for every
Get hands-on with 1400+ tech skills courses.