One core part of resource management for Pods and Containers are Requests and Limits for CPU and Memory.
Therefore without any further ado here are the five things you should really know about Kubernetes resources:
- Requests and limits are on a per-container basis.
- Requests are what the container is guaranteed to get and Limits are what the container is allowed to use, and it is restricted to go above limits.
- Pods are scheduled based on CPU and Memory requests.
- Removing CPU Limits it okay as long as the requests are pretty close to the expected load.
- CPU is considered a “compressible ” resource, whereas memory is not since K8s cannot throttle memory usage.
For a more detailed presentation you can check Kubernetes capacity management — resources and metrics.