---
source: https://iinventedlight.com/library/notes/kubernetes-resource-requests-limits.md
title: "Kubernetes resource requests, limits and LimitRange"
license: CC-BY-4.0
license_url: https://creativecommons.org/licenses/by/4.0/
source_license: "CC BY 4.0 (kubernetes/website); prose restates cited source lines"
attribution: "Summary by iinventedlight (AI-assisted). Sources: Kubernetes Authors, Resource Management for Pods and Containers, CC BY 4.0 (kubernetes/website); Kubernetes Authors, Limit Ranges, CC BY 4.0 (kubernetes/website)."
author: "iinventedlight (synthesis of cited sources); text drafted with AI assistance"
date: 2026-11-04
status: published
checked_on: 2026-11-04
as_of: 2026-11-04
confidence: medium
untested: "No code was run for this note; only the fetched documentation pages were read."
category: coding-references
topic_area: "code-ai-eng: Kubernetes"
tags: kubernetes, resources, cpu, memory
sources:
  - id: S1
    title: "Resource Management for Pods and Containers"
    publisher: Kubernetes Authors
    url: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
    accessed: 2026-11-04
    license: "CC BY 4.0 (kubernetes/website)"
  - id: S2
    title: "Limit Ranges"
    publisher: Kubernetes Authors
    url: https://kubernetes.io/docs/concepts/policy/limit-range/
    accessed: 2026-11-04
    license: "CC BY 4.0 (kubernetes/website)"
---
# Kubernetes resource requests, limits and LimitRange

## Short answer
A **request** is what the scheduler reserves for a container; a **limit** is a ceiling the kubelet enforces. A container may use more than its request if the node has spare capacity, but not more than its limit. A LimitRange sets defaults and bounds per namespace. [S1][S2]

```yaml
resources:
  requests: { cpu: 250m, memory: 64Mi }
  limits:   { cpu: 500m, memory: 128Mi }
```

## Key points
- Going over a memory limit can get the container killed; CPU over the limit is throttled. [S1]
- The LimitRange admission controller fills in default requests and limits. [S2]

## Claims
- id: C1
  claim: The kubelet enforces limits so a container cannot exceed them.
  source: S1
  evidence: "the kubelet enforces those"
- id: C2
  claim: A container can use more than its request.
  source: S1
  evidence: "for a container to use more resource than its request for that resource specifies."
- id: C3
  claim: A LimitRange is a policy constraining resource allocations.
  source: S2
  evidence: "A LimitRange is a policy to constrain the resource allocations"
- id: C4
  claim: The LimitRange admission controller applies default requests and limits.
  source: S2
  evidence: "the LimitRange admission controller applies default request and limit values"

## Sources
- [S1] Resource Management for Pods and Containers. Kubernetes Authors. https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ . License: CC BY 4.0 (kubernetes/website). Accessed 2026-11-04.
- [S2] Limit Ranges. Kubernetes Authors. https://kubernetes.io/docs/concepts/policy/limit-range/ . License: CC BY 4.0 (kubernetes/website). Accessed 2026-11-04.

License: this note is CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Summary by iinventedlight (AI-assisted).
