Autonomous Resource
ManagementKnowledge · Context · Evidence
Wiki reference

Autoscaling and feedback loops

How capacity follows demand, and why signals, limits, and recovery matter.

By ARM Editorial · Updated

AI-assisted source synthesis; no independent expert review claimed.

What autoscaling changes

Autoscaling adjusts capacity in response to observed or anticipated demand. The Kubernetes documentation distinguishes horizontal scaling, vertical scaling, and infrastructure scaling. Adding replicas, changing resources assigned to a workload, and adding nodes affect different parts of a system.

Choosing a scaling mechanism starts with the bottleneck. More application replicas may not help a saturated shared database. More node capacity may not help an application that cannot use it. Compare resource scheduling and allocation when the problem is where work can run.

Signals and decisions

A controller compares measurements with a target and requests a change. Signals might include queue age, request latency, or resource utilization. The useful signal depends on what the service is trying to achieve.

For a hypothetical batch queue, an editor's design example is: add one worker when the oldest job exceeds an agreed wait threshold, cap the worker count, and require a stable period before removing capacity. The example illustrates decision structure; it is not a tested production configuration.

Tradeoffs to evaluate

  • Responsiveness: a fast reaction can reduce waiting but may chase short-lived noise.
  • Stability: frequent opposing adjustments can interrupt work or waste capacity.
  • Cost: spare capacity can improve response time while increasing spend.
  • Availability: a request to scale does not prove that capacity was obtained.

Review these tradeoffs together. Cost controls and observability make the operating consequences easier to inspect.

Failure and recovery

Specify the response to stale metrics, failed allocations, quota exhaustion, and interrupted scale-down. Test those responses against the actual workload. A controller should not interpret missing demand data as proof that demand is zero.

The underlying loop is described in Kubernetes controller concepts. Applying that pattern to a particular service still requires workload-specific measurement and testing.

Sources and scope

  1. Kubernetes: Autoscaling workloadsHorizontal, vertical, and infrastructure scaling.
  2. Kubernetes: ControllersControl loops and desired state.

Continue reading

Explore capacity and workload placement: Do I need more capacity, or a different allocation?

For the wider context, read what autonomous resource management means.

View revision history · View article source · Suggest a correction