Live
Tangible Certification: Turning a Kubernetes Badge into a Gold NecklaceGoogle Data Cloud GA updates: agent‑centric tooling, hybrid Spanner, and expanded Lakehouse catalogCloudflare folds Deno runtime into Workers: practical impact on serverless deploymentsManaging Copilot Code Review Costs and License Scope with New Org‑Level ControlsEdge-native multimodal decisions: Clef-omni adds audio/video to Workers AI, Clef-flash gets cheaper, and Clef inference speeds upDetecting Silent Agent Failures: Verifying Outcomes Instead of Run StatusLocal Sandboxing and Multi‑Account Support Arrive in GitHub Copilot CLI, App, and VS CodeKubernetes shifts to cgroup v2: practical steps for engineersTangible Certification: Turning a Kubernetes Badge into a Gold NecklaceGoogle Data Cloud GA updates: agent‑centric tooling, hybrid Spanner, and expanded Lakehouse catalogCloudflare folds Deno runtime into Workers: practical impact on serverless deploymentsManaging Copilot Code Review Costs and License Scope with New Org‑Level ControlsEdge-native multimodal decisions: Clef-omni adds audio/video to Workers AI, Clef-flash gets cheaper, and Clef inference speeds upDetecting Silent Agent Failures: Verifying Outcomes Instead of Run StatusLocal Sandboxing and Multi‑Account Support Arrive in GitHub Copilot CLI, App, and VS CodeKubernetes shifts to cgroup v2: practical steps for engineers
Kubernetes

Kubernetes v1.36: Server-Side Sharded List and Watch

AI SummaryPowered by AI

Kubernetes v1.36 introduces server-side sharded list and watch to solve scaling bottlenecks in high-cardinality resource management. This alpha feature allows the API server to filter events at the source, ensuring each controller replica processes only its specific slice of data.

As Kubernetes clusters expand to accommodate tens of thousands of nodes, the architecture faces a critical scaling wall. Controllers monitoring high-cardinality resources like Pods often encounter performance degradation because every replica receives the full stream of events from the API server. This design forces each replica to pay the CPU, memory, and network cost to deserialize every object, only to discard the ones it is not responsible for. Scaling out the controller does not reduce this per-replica cost; it merely multiplies the waste. Kubernetes v1.36 introduces server-side sharded list and watch as an alpha feature to address this inefficiency directly.

The Problem with Client-Side Sharding

Many existing controllers, such as kube-state-metrics, already support horizontal sharding. In this model, each replica is assigned a portion of the keyspace and discards objects that do not belong to it. While this approach works functionally, it fails to reduce the volume of data flowing from the API server. With N replicas, the system processes N times the full event stream. Every replica deserializes and processes every event before throwing away the unnecessary data. Consequently, network bandwidth scales with the number of replicas rather than the shard size, and CPU spent on deserialization is wasted on the discarded fraction.

Server-side sharded list and watch solves this by moving the filtering upstream into the API server. Each replica tells the API server which hash range it owns, and the API server only sends matching events. This architectural shift ensures that the network bandwidth and CPU resources are utilized efficiently, as the data sent over the wire is already filtered for the specific controller instance.

Architectural Mechanics of the New Feature

The implementation relies on the API server to perform the filtering logic at the source. Instead of pushing a massive dataset to the client and letting the client filter it, the server intercepts the request and applies the shard logic before transmission. This requires the API server to maintain state regarding which hash ranges are assigned to which replica. When a controller replica initiates a watch, it specifies its ownership range. The API server then constructs a response containing only the events falling within that range.

This mechanism is particularly relevant for engineers preparing for Kubernetes certifications who need to understand the internals of the control plane. The feature fundamentally changes how the API server handles list and watch requests for large-scale deployments. By offloading the filtering burden to the server, the system achieves linear scalability with respect to the number of replicas, rather than the number of events processed.

Operational Considerations and Use Cases

Enabling this feature is critical for environments where controllers manage high-cardinality resources. For example, a metrics collector managing thousands of pods would previously waste significant resources processing events for pods outside its shard. With server-side sharding, the collector receives only the metrics it needs. This reduces latency and lowers the overall resource footprint of the control plane components.

DevOps professionals managing large-scale clusters should evaluate the trade-offs of enabling this alpha feature. While it offers significant performance benefits, it requires the API server to handle the additional logic for filtering. This is a necessary trade-off for clusters approaching the scaling limits of the current architecture. The feature is currently in alpha, meaning it is subject to change, but the underlying principle of server-side filtering is a robust architectural pattern.

What This Means For You

For cloud engineers and architects, this update represents a significant step forward in managing the complexity of modern Kubernetes clusters. It addresses a fundamental inefficiency that has plagued large-scale deployments for years. By adopting server-side sharded list and watch, you can ensure that your controllers scale efficiently without incurring the hidden costs of processing unnecessary data. This capability is essential for maintaining performance as your infrastructure grows, ensuring that your control plane remains responsive and cost-effective.

Originally published atKUBERNETES