Kubernetes Resources
In Kubernetes, resources are like building blocks used to create and manage your cluster. Each resource is an object with metadata (such as names and labels) and a desired state that defines its behavior. All objects in Kubernetes are managed by an API and stored in the etcd database.
For example, a Pod resource defines how to run a group of containers, while a Service resource manages network access to those containers. Everything you can manage with kubectl
or the Kubernetes API - like workloads, storage, or configuration - is a resource, making them essential for defining and controlling your cluster's behavior.
The following command lists all the resources that can be managed in a Kubernetes cluster, including their names, short names, API versions, and whether they are namespaced:
kubectl api-resources
The most relevant resources for the KCNA exam are marked red
Resource Overview
You can link to the table here
Core Resources
- Pod
- Service
- ConfigMap
- Secret
- Namespace
- PersistentVolume
- PersistentVolumeClaim
- ServiceAccount
- Binding
- ComponentStatus
- Endpoints
- Event
- LimitRange
- PodTemplate
- ReplicationController
- ResourceQuota
Workloads
- Deployment
- ReplicaSet
- DaemonSet
- StatefulSet
- CronJob
- Job
- ControllerRevision
Networking
- Ingress
- NetworkPolicy
- IngressClass
RBAC (Role-Based Access Control)
- Role
- RoleBinding
- ClusterRole
- ClusterRoleBinding
Storage
- StorageClass
- CSIDriver
- CSINode
- CSIStorageCapacity
- VolumeAttachment
Admission Control
- MutatingWebhookConfiguration
- ValidatingWebhookConfiguration
API Extensions
- CustomResourceDefinition
- APIService
Authentication and Authorization
- TokenReview
- LocalSubjectAccessReview
- SelfSubjectAccessReview
- SelfSubjectRulesReview
- SubjectAccessReview
Autoscaling
- HorizontalPodAutoscaler
Certificates
- CertificateSigningRequest
Coordination
- Lease
Discovery
- EndpointSlice
Events
- Event
Flow Control
- FlowSchema
- PriorityLevelConfiguration
Node Management
- RuntimeClass
Policies
- PodDisruptionBudget
- PodSecurityPolicy
Scheduling
- PriorityClass