KubeCon EUBooth 1151, Amsterdam. March 23-26

Policies & Rules

Configure optimization policies to control how DevZero rightsizes workloads and manages nodes.

Policies & Rules

Policies define the rules for how DevZero optimizes your cluster. They control which workloads are eligible, how aggressive the optimization should be, and whether changes require manual approval.

Creating a Workload Policy

A workload policy targets specific deployments, statefulsets, or daemonsets and defines optimization behavior for them.

Target Selectors

Policies use label selectors and namespace filters to target workloads:

SelectorExampleEffect
NamespaceproductionOnly workloads in the production namespace
Labelapp=apiOnly workloads with the app=api label
KindDeploymentOnly Deployments (not StatefulSets or DaemonSets)
Name patternapi-*Workloads matching the name pattern

Resource Boundaries

Set minimum and maximum resource values that recommendations cannot exceed:

ParameterDescription
Min CPU requestsRecommendations won't go below this value
Max CPU requestsRecommendations won't exceed this value
Min memory requestsFloor for memory recommendations
Max memory requestsCeiling for memory recommendations

Recommendation Mode

Choose the aggressiveness of recommendations:

  • Conservative -- 1.2x max observed usage, limits unchanged
  • Balanced -- max observed usage, 50% max reduction cap
  • Aggressive -- P90 of usage, tighter limits

See Workload Optimization for detailed mode behavior.

Node Group Policies

Node group policies control how the Node Operator manages the node pool:

  • Which instance types and families are allowed
  • Spot vs. on-demand preference
  • Maximum node count
  • Consolidation aggressiveness

Policy Precedence

When multiple policies match a workload, the most specific policy wins:

  1. Policies targeting a specific workload by name
  2. Policies targeting by label selector
  3. Policies targeting by namespace
  4. Default policy (if configured)

Example Policies

On this page