- What workloads are eligible for automation
- Which resource dimensions can change
- How and when changes are applied
- Which safety checks must pass before any mutation
Why This Matters
Automation Engine is designed to reduce manual tuning while preserving workload stability and platform controls. Key outcomes include:- Continuous rightsizing for CPU and memory
- Lower infrastructure waste
- Better scheduler packing efficiency
- Safer automation with Kubernetes-aware guardrails
Core Components
A standard deployment includes:- A single
kubex-automation-enginedeployment that evaluates policy, performs safety checks, and applies in-place or eviction-based resize - Mutating admission webhook configuration for admission-time pod mutation
- Gateway sidecar that retrieves recommendations from Kubex
- Custom resources for global behavior, strategy, policy, and runtime evaluation state
Key Features
- Declarative automation model using CRDs or Helm-generated resources
- Recommendation-driven and static policy support
- Zero-downtime optimization with in-place resize on Kubernetes 1.33+ and eviction fallback when required
- Namespaced and cluster-scoped control patterns
- Admission-time and proactive enforcement paths
- Fail-closed safety model with health gating and prechecks
- Smart pause control with per-pod annotations
- GitOps-friendly adoption path with backward compatibility for values-based settings
Supported Workload Owners
Recommendation-driven automation can target:- Deployment
- StatefulSet
- CronJob
- Rollout
- Job
- AnalysisRun
- StrimziPodSet
- DaemonSet
Engine Model in One View
The Automation Engine separates behavior from scope:AutomationStrategyandClusterAutomationStrategy: Define how rightsizing is allowed to happenProactivePolicyandClusterProactivePolicy: Define where recommendation-driven automation appliesStaticPolicyandClusterStaticPolicy: Define fixed resource behavior when recommendations are not usedGlobalConfiguration: Defines cluster-wide runtime behavior
- Helm-managed
scopeandpolicy.policiespreserve the existing values-driven flow by generating cluster-scoped strategy and proactive policy resources - Namespaced
AutomationStrategy,ProactivePolicy,StaticPolicy, and cluster static policies are supported by the controller and can be managed independently through CR manifests

