1.2.10 Ensure that the admission control plugin EventRateLimit is set

Information

Limit the rate at which the API server accepts requests.

Rationale:

Using EventRateLimit admission control enforces a limit on the number of events that the API Server will accept in a given time slice. A misbehaving workload could overwhelm and DoS the API Server, making it unavailable. This particularly applies to a multi-tenant cluster, where there might be a small percentage of misbehaving tenants which could have a significant impact on the performance of the cluster overall. Hence, it is recommended to limit the rate of events that the API server will accept.

Note: This is an Alpha feature in the Kubernetes 1.15 release.

Solution

Follow the Kubernetes documentation and set the desired limits in a configuration file.
Then, edit the API server pod specification file /etc/kubernetes/manifests/kube-apiserver.yaml and set the below parameters.

--enable-admission-plugins=...,EventRateLimit,...
--admission-control-config-file=<path/to/configuration/file>

Impact:

You need to carefully tune in limits as per your environment.

Default Value:

By default, EventRateLimit is not set.

References:

https://kubernetes.io/docs/admin/kube-apiserver/

https://kubernetes.io/docs/admin/admission-controllers/#eventratelimit

https://github.com/staebler/community/blob/9873b632f4d99b5d99c38c9b15fe2f8b93d0a746/contributors/design-proposals/admission_control_event_rate_limit.md

See Also

https://workbench.cisecurity.org/files/2662

Item Details

Category: ACCESS CONTROL

References: 800-53|AC-6, CSCv6|8.4, CSCv7|8.3

Plugin: Unix

Control ID: 001c469fa5fce088ed55d208e09860434934df436f085b34beba18e86b7e5805