Resource limit per Namespace
- Source
 - 
Developer
 - Stimulus
 - 
Deploys new workload in a Namespace
 - Environment
 - 
Any APPUiO Zone
 - Artifact
 - 
kubectl
 - Response
 - 
Workloads are denied if they exceed the resource limit. Workloads can comprise the following Kubernetes resources:
- 
Pods
 - 
PersistentVolumeClaims
 - 
ConfigMaps
 - 
Secrets
 - 
Services
 - 
ImageStreams
 - 
ImageStreamTags
 
 - 
 - Response measure
 - 
The workload is denied if they exceed any of the following resource quotas.
- 
Count of
- 
NotTerminatingPods - 
TerminatingPods - 
PersistentVolumeClaims
 - 
ConfigMaps
 - 
Secrets
 - 
Services
 - 
ImageStreams
 - 
ImageStreamTags
 
 - 
 - 
Cumulative CPU requests or limits across all containers in all
NotTerminatingPods - 
Cumulative CPU limits across all containers in all
TerminatingPods - 
Cumulative memory requests or limits across all containers in all
NotTerminatingPods - 
Cumulative memory limits across all containers in all
TerminatingPods - 
Cumulative storage requests (across all PVCs)
 - 
Cumulative ephemeral storage consumption (EmptyDirs and writable container layers)
 
 - 
 
As listed, pods are separated into NotTerminating and Terminating.
A Terminating pod is a pod which has .spec.activeDeadlineSeconds >= 0.
A NotTerminating pod is a pod which has .spec.activeDeadlineSecons = nil.
See the Kubernetes docs on Quota Scopes for the official documentation about NotTerminating and Terminating pods.
See the APPUiO Cloud Commodore component for the exact default quota values.
- Rationale
 - 
- 
The APPUiO Zone shall be protected from abusive resource usage.
 - 
A quota prevents a developer (or a system account) from creating potentially billable workload (accidental or purposefully) that could lead to surprises in the bill.
 - 
Quotas slow down resource consumption on a cluster level and that gives time for cluster admins to do capacity planning, for example to scale up a nearly-full APPUiO Zone.
 
 - 
 - See also