OpsCanary
Back to daily brief
kubernetesoperatorsPractitioner

Mastering Admission Control in Kubernetes: What You Need to Know

5 min read Kubernetes DocsApr 27, 2026
Share
PractitionerHands-on experience recommended

Admission control is essential for maintaining the integrity and security of your Kubernetes cluster. It acts as a gatekeeper, intercepting requests to the API server before they are persisted. This process happens after authentication and authorization, ensuring that only valid requests are processed. By implementing admission controllers, you can enforce policies, modify requests, and prevent unwanted changes to your resources.

The admission control process operates in two distinct phases. First, mutating admission controllers are executed, allowing modifications to the resource data. Next, validating admission controllers run, which can only validate but not alter the data. If any controller in either phase rejects a request, the entire request is denied, and an error is returned to the user. You can configure which admission plugins to enable or disable using the --enable-admission-plugins and --disable-admission-plugins parameters when starting the API server. For instance, you might enable plugins like NamespaceLifecycle and LimitRanger to enforce namespace policies and resource limits.

In production, it's crucial to be aware of the default admission controllers that come with Kubernetes 1.36, such as LimitRanger, PodSecurity, and ResourceQuota. These controllers help manage resources effectively, but you must ensure they align with your cluster's needs. Also, be cautious about how you apply these settings, as the method can vary based on your cluster's deployment. Always check your API server's configuration to avoid unexpected behavior.

Key takeaways

  • Understand the two phases of admission control: mutating and validating.
  • Configure admission plugins using `--enable-admission-plugins` and `--disable-admission-plugins`.
  • Be aware of default admission controllers in Kubernetes 1.36, like `LimitRanger` and `PodSecurity`.
  • Check your API server's configuration to ensure proper application of admission control settings.

Why it matters

Effective admission control can prevent misconfigurations and security breaches, ensuring that only compliant resources are deployed in your Kubernetes environment.

Code examples

Bash
kube-apiserver --enable-admission-plugins=NamespaceLifecycle,LimitRanger ...
Bash
kube-apiserver --disable-admission-plugins=PodNodeSelector,AlwaysDeny ...
Bash
kube-apiserver -h | grep enable-admission-plugins

When NOT to use this

The official docs don't call out specific anti-patterns here. Use your judgment based on your scale and requirements.

Want the complete reference?

Read official docs

Test what you just learned

Quiz questions written from this article

Take the quiz →

Get the daily digest

One email. 5 articles. Every morning.

No spam. Unsubscribe anytime.