Skip to content

Kubernetes components overview


Kubernetes is a popular open-source container orchestration platform that is commonly used for managing containerized applications. It automates various tasks such as deploying, scaling, and managing containerized applications. In this blog post, we will provide an overview of the main components of Kubernetes.

Kubernetes Components

Master Node Components

The master components of Kubernetes are responsible for managing the overall state of the cluster. It orchestrates the deployment and scaling of containerized applications. The master components include:

API Server

The API server is the central management entity of Kubernetes. It serves all the RESTful API calls that are made to the cluster. It is responsible for validating and processing API requests and updating the state of the cluster.


etcd is a distributed key-value store that is used to store the configuration data of the cluster. It is used as the backing store for all cluster data.

Controller Manager

The controller manager is responsible for managing various controllers that regulate the state of the cluster. It ensures that the desired state of the cluster matches the actual state.


The scheduler is responsible for scheduling the deployment of containers on the worker nodes. It selects the best node for a given pod and ensures that the required resources are available before scheduling the pod.

Worker Node Components

The node components run on each worker node in the cluster. They are responsible for managing the containers and the associated resources on the node. The node components include:


Kubelet is the primary agent that runs on each worker node. It is responsible for managing the state of the containers running on the node. It communicates with the API server to receive instructions on which containers to run and ensures that the containers are healthy.


kube-proxy is responsible for managing the network connectivity between different pods and services in the cluster. It ensures that each pod can communicate with other pods and external services.

Container Runtime

The container runtime is responsible for running the containers. Kubernetes supports various container runtimes, including Docker, containerd, and CRI-O.

Component name Control plane, worker node, or client
Kubeadm Admin tool
Kube-apiserver Control plane (master node)
Etcd Control plane (master node)
Kube-scheduler Control plane (master node)
Kube-controller-manager Control plane (master node)
Kubelet Worker node
Kube-proxy Worker node
Container Engine Worker node
kubectl Client

Interacting with the API server

  • CLI: kubectl
  • API:

Basic usage of kubectl & kubeadm

kubectl create
kubectl get
kubectl apply
kubectl describe
kubectl exec
kubectl run

kubeadm config
kubeadm init
kubeadm join
kubeadm reset

Frequently used API Resources Shortname

configmaps cm
endpoints ep
events ev
namespaces ns
nodes no
persistentvolumeclaims pvc
persistentvolumes pv
pods po
replicationcontrollers rc
serviceaccounts sa
services svc
daemonsets ds
deployments deploy
replicasets rs
cronjobs cj
networkpolicies netpol
podsecuritypolicies psp

API Resources

kubectl api-resources --sort-by name -o wide
bindings v1 TRUE Binding
componentstatuses cs v1 FALSE ComponentStatus
configmaps cm v1 TRUE ConfigMap
endpoints ep v1 TRUE Endpoints
events ev v1 TRUE Event
limitranges limits v1 TRUE LimitRange
namespaces ns v1 FALSE Namespace
nodes no v1 FALSE Node
persistentvolumeclaims pvc v1 TRUE PersistentVolumeClaim
persistentvolumes pv v1 FALSE PersistentVolume
pods po v1 TRUE Pod
podtemplates v1 TRUE PodTemplate
replicationcontrollers rc v1 TRUE ReplicationController
resourcequotas quota v1 TRUE ResourceQuota
secrets v1 TRUE Secret
serviceaccounts sa v1 TRUE ServiceAccount
services svc v1 TRUE Service
mutatingwebhookconfigurations FALSE MutatingWebhookConfiguration
validatingwebhookconfigurations FALSE ValidatingWebhookConfiguration
customresourcedefinitions crd,crds FALSE CustomResourceDefinition
apiservices FALSE APIService
controllerrevisions apps/v1 TRUE ControllerRevision
daemonsets ds apps/v1 TRUE DaemonSet
deployments deploy apps/v1 TRUE Deployment
replicasets rs apps/v1 TRUE ReplicaSet
statefulsets sts apps/v1 TRUE StatefulSet
tokenreviews FALSE TokenReview
localsubjectaccessreviews TRUE LocalSubjectAccessReview
selfsubjectaccessreviews FALSE SelfSubjectAccessReview
selfsubjectrulesreviews FALSE SelfSubjectRulesReview
subjectaccessreviews FALSE SubjectAccessReview
horizontalpodautoscalers hpa autoscaling/v2 TRUE HorizontalPodAutoscaler
cronjobs cj batch/v1 TRUE CronJob
jobs batch/v1 TRUE Job
certificatesigningrequests csr FALSE CertificateSigningRequest
leases TRUE Lease
bgpconfigurations FALSE BGPConfiguration
bgppeers FALSE BGPPeer
blockaffinities FALSE BlockAffinity
caliconodestatuses FALSE CalicoNodeStatus
clusterinformations FALSE ClusterInformation
felixconfigurations FALSE FelixConfiguration
globalnetworkpolicies FALSE GlobalNetworkPolicy
globalnetworksets FALSE GlobalNetworkSet
hostendpoints FALSE HostEndpoint
ipamblocks FALSE IPAMBlock
ipamconfigs FALSE IPAMConfig
ipamhandles FALSE IPAMHandle
ippools FALSE IPPool
ipreservations FALSE IPReservation
kubecontrollersconfigurations FALSE KubeControllersConfiguration
networkpolicies TRUE NetworkPolicy
networksets TRUE NetworkSet
endpointslices TRUE EndpointSlice
events ev TRUE Event
flowschemas FALSE FlowSchema
prioritylevelconfigurations FALSE PriorityLevelConfiguration
ingressclasses FALSE IngressClass
ingresses ing TRUE Ingress
networkpolicies netpol TRUE NetworkPolicy
runtimeclasses FALSE RuntimeClass
poddisruptionbudgets pdb policy/v1 TRUE PodDisruptionBudget
clusterrolebindings FALSE ClusterRoleBinding
clusterroles FALSE ClusterRole
rolebindings TRUE RoleBinding
roles TRUE Role
priorityclasses pc FALSE PriorityClass
csidrivers FALSE CSIDriver
csinodes FALSE CSINode
csistoragecapacities TRUE CSIStorageCapacity
storageclasses sc FALSE StorageClass
volumeattachments FALSE VolumeAttachment

Components at a glance


Network at a glance



  • Kubernetes – An Enterprise Guide (Marc Boorshtein, Scott Surovich)
  • Certified Kubernetes Administrator (CKA) Study Guide (Benjamin Muschko)