Skip to main content

Resource Control

Resource control is critical in a data-intensive environment. To enhance Ilum's utility and efficiency, we added the integration with Kubernetes Resource Quotas and Limit Ranges which enforce resource limits at the namespace level.

What are Resource Quotas?

Resource Quotas in Kubernetes enable administrators to impose limits on the total resource consumption within a namespace. By defining quotas, you can restrict the usage of resources like Pods, CPU and memory, ensuring that no single namespace use more than its fair share of resources. You can read more about Resource Quotas here.

What are Limit Ranges?

Limit Ranges in Kubernetes allow administrators to define constraints on resource allocation for individual Pods or Containers within a namespace. By setting limits, you can enforce minimum and maximum CPU and memory usage, ensuring fair resource distribution and preventing resource exhaustion. Additionally, Limit Ranges can specify default resource requests and limits for workloads that do not define them explicitly. You can read more about Limit Ranges here.

How does it work in Ilum

In Ilum, you can specify Limit Range and Resource Quota quickly and easily in Kubernetes Cluster settings. Both Limit Range and Resource Quota concern the cluster namespace

Image below shows Resource Quota settings

Ilum

Here we can specify next parameters:

  • Limits Pod - the number of Pods cannot exceed this value.
  • Limits Cpu - the sum of CPU limits cannot exceed this value.
  • Limits Memory - the sum of memory limits cannot exceed this value.
  • Requests Cpu - the sum of CPU requests cannot exceed this value.
  • Requests Memory - the sum of memory requests cannot exceed this value.

Images below show Limit Range settings

Ilum

Ilum

Here we can specify next parameters:

  • CPU/Memory Default Request - sets default CPU/memory request for single Pod
  • CPU/Memory Minimum Request - enforces minimum CPU/memory usage per Pod
  • CPU/Memory Default Limit - sets default CPU/memory limit for single Pod
  • CPU/Memory Maximum Limit - enforces maximum CPU/memory usage per Pod
  • CPU/Memory Max Limit Request Ratio - enforces a maximum ratio between request and limit